< Compile Options / Object Options >
[Format]
[Description]
- | When the stuff option is specified, all variables are allocated to 4-byte, 2-byte, or 1-byte boundary alignment sections depending on the alignment value (see Table 2.4). |
- | [V3.01.00 or later] When the dpfpu option is specified, double type and long double type variables are allocated to 8-byte boundary alignment sections. |
Table 2.4 | Correspondences between Variables and Their Output Sections When stuff Option is Specified |
|
|
|
const qualified variables
|
4
|
C_8*1
C*2
|
2
|
C_2
|
1
|
C_1
|
Initialized variables
|
4
|
D_8*1
D*2
|
2
|
D_2
|
1
|
D_1
|
Uninitialized variables
|
4
|
B_8*1
B*2
|
2
|
B_2
|
1
|
B_1
|
switch statement branch table
|
4
|
W
|
2
|
W_2
|
1
|
W_1
|
Notes 1. | When the variable type is double or long double with the dpfpu option specified |
Notes 2. | Cases other than note 1 |
- | C, D, and B are the section names specified by the section option or #pragma section. W is the section name specified by the section option. The data contents allocated to each section are output in the order they were defined. |
[Example]
int a;
char b=0;
const short c=0;
struct {
char x;
char y;
} ST;
|
.SECTION C_2,ROMDATA,ALIGN=2
.glb _c
_c:
.word 0000H
.SECTION D_1,ROMDATA
.glb _b
_b:
.byte 00H
.SECTION B,DATA,ALIGN=4
.glb _a
_a:
.blkl 1
.SECTION B_1,DATA
.glb _ST
_ST
.blkb 2
|
[Remarks]
- | The stuff option has no effect for sections other than B, D, C, and W. |