as: Xtensa Syntax
1
1 9.55.2 Assembler Syntax
1 -----------------------
1
1 Block comments are delimited by '/*' and '*/'. End of line comments may
1 be introduced with either '#' or '//'.
1
1 If a '#' appears as the first character of a line then the whole line
1 is treated as a comment, but in this case the line could also be a
1 logical line number directive (⇒Comments) or a preprocessor
1 control command (⇒Preprocessing).
1
1 Instructions consist of a leading opcode or macro name followed by
1 whitespace and an optional comma-separated list of operands:
1
1 OPCODE [OPERAND, ...]
1
1 Instructions must be separated by a newline or semicolon (';').
1
1 FLIX instructions, which bundle multiple opcodes together in a single
1 instruction, are specified by enclosing the bundled opcodes inside
1 braces:
1
1 {
1 [FORMAT]
1 OPCODE0 [OPERANDS]
1 OPCODE1 [OPERANDS]
1 OPCODE2 [OPERANDS]
1 ...
1 }
1
1 The opcodes in a FLIX instruction are listed in the same order as the
1 corresponding instruction slots in the TIE format declaration.
1 Directives and labels are not allowed inside the braces of a FLIX
1 instruction. A particular TIE format name can optionally be specified
1 immediately after the opening brace, but this is usually unnecessary.
1 The assembler will automatically search for a format that can encode the
1 specified opcodes, so the format name need only be specified in rare
1 cases where there is more than one applicable format and where it
1 matters which of those formats is used. A FLIX instruction can also be
1 specified on a single line by separating the opcodes with semicolons:
1
1 { [FORMAT;] OPCODE0 [OPERANDS]; OPCODE1 [OPERANDS]; OPCODE2 [OPERANDS]; ... }
1
1 If an opcode can only be encoded in a FLIX instruction but is not
1 specified as part of a FLIX bundle, the assembler will choose the
1 smallest format where the opcode can be encoded and will fill unused
1 instruction slots with no-ops.
1
Menu