|Non-Confidential||PDF version||ARM DUI0474M|
|Home > Scatter-loading Features > Root execution regions > Placement of __at sections at a specific address|
You can give a section a special name that encodes the address where it must be placed.
You specify the special name as follows:
is the required address of the section. The compiler
normalizes this to eight hexadecimal digits. You can specify this in hexadecimal or decimal.
Sections in the form of
.ARM.__at_ are referred
to by the abbreviation
In the compiler, you can assign variables to
__at sections by:
__atthat sets up the name of the section for you.
__atsections in C or C++ code
variable1in a section called
.ARM.__AT_int variable1 __attribute__((at(0x8000))) = 10; // place
variable2in a section called
.ARM.__at_int variable2 __attribute__((section(".ARM.__at_0x8000"))) = 10;
__attribute__((at(, the part of the
__atsection name representing
is normalized to an eight digit hexadecimal number. The name of the section is only significant if you are trying to match the section by name in a scatter file. Without overlays, the linker automatically assigns
__atsections when you use the
--autoatcommand-line option. This option is the default. If you are using overlays, then you cannot use