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