Constants are placed into the read-only small data area and are accessed using the read-only small data area anchor R2.
The compiler generates appropriate global pointers to act as base pointers. The actual values of the SDA anchors are decided by the linker, in the final linking stages. For more information on the various sections of the memory see the “MicroBlaze Linker Scripts” section of the Vitis Unified Software Platform Documentation: Embedded Software Development (UG1400).
The compiler generates appropriate sections, depending on the command line options. See the “GNU Compiler Tools” chapter in the Vitis Unified Software Platform Documentation: Embedded Software Development (UG1400) for more information about these options.