SPRUI03E June 2015 – January 2023
The assembler has several types of predefined symbols.
$, the dollar-sign character, represents the current value of the section program counter (SPC).
In addition, the following predefined processor symbolic constants are available:
Symbol name | Description |
---|---|
_ _TI_EABI_ _ | Set to 1 if EABI is enabled. EABI is now the only supported ABI; see Section 5.5. |
.TMS320C6X | Always set to 1 |
.TMS320C6400_PLUS | Set to 1 if target is C6400+, C6740, or C6600; otherwise 0 |
.TMS320C6600 | Set to 1 if target is C6600, otherwise 0 |
.TMS320C6740 | Set to 1 if target is C6740 or C6600, otherwise 0 |
.LITTLE_ENDIAN | Set to 1 if little-endian mode is selected (the -me assembler option is not used); otherwise 0 |
__TI_ASSEMBLER_VERSION__ | Set to major * 1000000 + minor * 1000 + patch version. |
.BIG_ENDIAN | Set to 1 if big-endian mode is selected (the -me assembler option is used); otherwise 0 |
.SMALL_MODEL | Set to 1 if --memory_model:code=near and --memory_model:data=near, otherwise 0. |
.LARGE_MODEL | Set to 1 if .SMALL_MODEL is 0, otherwise 0. |
The symbol __TI_ASSEMBLER_VERSION__ is set to an integer indicating the assembler version number. Version X.Y.Z is represented by XXXYYYZZZ where each portion, X, Y and Z, is expanded to three digits and concatenated together. For example, 3.2.1 is represented as 3002001. You can use this symbol to write code that will be assembled conditionally according to the assembler version:
.if __TI_ASSEMBLER_VERSION__ == 3002001
.word 0x110
.endif
.if __TI_ASSEMBLER_VERSION__ == 4003003
.word 0x120
.endif