as: Xtensa Directives
1
1 9.55.5 Directives
1 -----------------
1
1 The Xtensa assembler supports a region-based directive syntax:
1
1 .begin DIRECTIVE [OPTIONS]
1 ...
1 .end DIRECTIVE
1
1 All the Xtensa-specific directives that apply to a region of code use
1 this syntax.
1
1 The directive applies to code between the '.begin' and the '.end'.
1 The state of the option after the '.end' reverts to what it was before
1 the '.begin'. A nested '.begin'/'.end' region can further change the
1 state of the directive without having to be aware of its outer state.
1 For example, consider:
1
1 .begin no-transform
1 L: add a0, a1, a2
1 .begin transform
1 M: add a0, a1, a2
1 .end transform
1 N: add a0, a1, a2
1 .end no-transform
1
1 The 'ADD' opcodes at 'L' and 'N' in the outer 'no-transform' region
1 both result in 'ADD' machine instructions, but the assembler selects an
1 'ADD.N' instruction for the 'ADD' at 'M' in the inner 'transform'
1 region.
1
1 The advantage of this style is that it works well inside macros which
1 can preserve the context of their callers.
1
1 The following directives are available:
Menu