-stuff [V2.03.00 or later]
|
This option allocates variables to sections separated according to the number of alignment.
[Specification format]
-stuff[=<variable-type>[,...]]
<variable-type>:{bss|data|const}
|
- | Interpretation when omitted |
Variables are allocated without separating sections.
[Detailed description]
- | This option allocates the variables belonging to the specified <variable-type> to sections separated according to the number of alignment. |
- | bss specifies uninitialized variables, data specifies initialized variables, and const specifies const variables. |
- | If <variable-type> is omitted, all types of variables are applicable. |
- | If this option is specified multiple times, all specified types of variables are applicable. |
- | If the same variable type is specified multiple times, the compiler handles this as one specification. For this, no warning is issued. |
- | If anything other than bss, data, and const is specified for <variable-type>, an error occurs. |
- | Variables are output to a section whose section name has <number-of-alignment>.
However, if the number of alignment is 4, "_4" is not added to a section name. |
Examples:
When the number of alignment of variables is 4: .bss
When the number of alignment of variables is 2: .bss_2
When the number of alignment of variables is 1: .bss_1
[Example of use]
const char c=1;
const short s=2;
const long l=3;
|
|
|
.section .const, const
_c:
.db 0x01
.align 2
_s:
.dhw 0x0002
.align 4
_l:
.dw 0x00000003
|
.section .const_1, const, align=1
_c:
.db 0x01
.section .const_2, const, align=2
.align 2
_s:
.dhw 0x0002
.section .const, const
.align 4
_l:
.dw 0x00000003
|
[Remark]
- | Each section name reflects the following options or specification in #pragma section: |
-Xsection, -Xmulti_level