Hi @sidisyom,
Here are my two cents (which may fully help you or may get you closer to a solution).
I would mark the variable SYSCFG_EXTICR_Reg as aliased just in case. Aliased just tells the compiler that the variable needs to live somewhere in memory but not the heap. It may not be needed, but still. Secondly, if you think there is some endianess issues… Tell the compiler to follow the convention you want! See Gem #140: Bridging the Endianness Gap | AdaCore
type Arbitrary_Unmapped_Space is array (Positive range <>) of Boolean with Component_Size => 1, Unreferenced; I would add the Pack attribute or even the Size too, just for good measure.
If you sourced the Community package from 2021, you are not just using an older GPRbuild, but an entirely different toolchain too! I believe Alire already has the newer GPRbuild v24, so you should be able to update to it using the toolchain system of Alire. Additionally, what happens if you build your code in release mode in Alire? What happens if you do an assembly comparison between the different generated binaries from the different toolchains?
Best regards,
Fer