15 #ifndef LLVM_LIB_TARGET_ARM_MCTARGETDESC_ARMUNWINDOPASM_H
16 #define LLVM_LIB_TARGET_ARM_MCTARGETDESC_ARMUNWINDOPASM_H
20 #include "llvm/Support/DataTypes.h"
70 void Finalize(
unsigned &PersonalityIndex,
74 void EmitInt8(
unsigned Opcode) {
79 void EmitInt16(
unsigned Opcode) {
85 void EmitBytes(
const uint8_t *Opcode,
size_t Size) {
86 Ops.
insert(Ops.
end(), Opcode, Opcode + Size);
void EmitRaw(const SmallVectorImpl< uint8_t > &Opcodes)
Emit unwind raw opcodes.
void push_back(const T &Elt)
MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...
void Finalize(unsigned &PersonalityIndex, SmallVectorImpl< uint8_t > &Result)
Finalize the unwind opcode sequence for EmitBytes()
Reg
All possible values of the reg field in the ModR/M byte.
void Reset()
Reset the unwind opcode assembler.
void EmitSPOffset(int64_t Offset)
Emit unwind opcodes to add $sp with an offset.
void EmitRegSave(uint32_t RegSave)
Emit unwind opcodes for .save directives.
iterator insert(iterator I, T &&Elt)
void EmitVFPRegSave(uint32_t VFPRegSave)
Emit unwind opcodes for .vsave directives.
void setPersonality(const MCSymbol *Per)
Set the personality.
void EmitSetSP(uint16_t Reg)
Emit unwind opcodes to copy address from source register to $sp.