Symbol naming rules
You must follow some rules when naming symbols in assembly language source code.
The following rules apply:
- Symbol names must be unique within their scope.
- You can use uppercase letters, lowercase letters, numeric characters, or the underscore character in symbol names. Symbol names are case-sensitive, and all characters in the symbol name are significant.
- Do not use numeric characters for the first character of symbol names, except in numeric local labels.
- Symbols must not use the same name as built-in variable names or predefined symbol names.
- If you use the same name as an instruction mnemonic or directive, use double bars to
delimit the symbol name. For example:
The bars are not part of the symbol.
- You must not use the symbols
|$d|as program labels. These are mapping symbols that mark the beginning of A32, T32, and A64 code, and data within the object file. You must not use
|$x|in A64 code.
- Symbols beginning with the characters $v are mapping symbols that relate to floating-point code. Arm recommends you avoid using symbols beginning with $v in your source code.
If you have to use a wider range of characters in symbols, for example, when working with compilers, use single bars to delimit the symbol name. For example:
The bars are not part of the symbol. You cannot use bars, semicolons, or newlines within the bars.