6.45.3. Constraints for asm Operands
6.45.3 Constraints for asm Operands
Here are specific details on what constraint letters you can use with asm
operands. Constraints can say whether an operand may be in a register, and which kinds of register; whether the operand can be a memory reference, and which kinds of address; whether the operand may be an immediate constant, and which possible values it may have. Constraints can also require two operands to match. Side-effects aren’t allowed in operands of inline asm
, unless ‘<’ or ‘>’ constraints are used, because there is no guarantee that the side-effects will happen exactly once in an instruction that can update the addressing register.
• Simple Constraints: | Basic use of constraints. | |
• Multi-Alternative: | When an insn has two alternative constraint-patterns. | |
• Modifiers: | More precise control over effects of constraints. | |
• Machine Constraints: | Special constraints for some particular machines. |
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-7.1.0/gcc/Constraints.html