AArch64 Backend [¶]
AArch64 backend.
Emitters
- a64::Assembler - AArch64 assembler (must read, provides examples).
- a64::Builder - AArch64 builder.
- a64::Compiler - AArch64 compiler.
- a64::Emitter - AArch64 emitter (abstract).
Supported Instructions
- Emitters:
- a64::EmitterExplicitT - Provides all instructions that use explicit operands, provides also utility functions. The member functions provided are part of all AArch64 emitters.
- Instruction representation:
- a64::Inst::Id - instruction identifiers.
Register Operands
- a64::Gp - General purpose register (abstracts 32-bit and 64-bit general purpose registers).
- a64::Vec - Vector register (abstracts B, H, S, D, and Q NEON register with possible element type and index).
Memory Operands
- a64::Mem - AArch64 memory operand that provides support for all ARM addressing features including base, index, pre/post increment, and ARM-specific shift addressing + index extending.
Other
- arm::Shift - Shift operation and value.
- arm::Utils - Utilities that can help during code generation for AArch32 and AArch64.