LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
llvm::UnwindOpcodeAssembler Class Reference

#include <ARMUnwindOpAsm.h>

Public Member Functions

 UnwindOpcodeAssembler ()
 
void Reset ()
 Reset the unwind opcode assembler. More...
 
void setPersonality (const MCSymbol *Per)
 Set the personality index. More...
 
void EmitRegSave (uint32_t RegSave)
 Emit unwind opcodes for .save directives. More...
 
void EmitVFPRegSave (uint32_t VFPRegSave)
 Emit unwind opcodes for .vsave directives. More...
 
void EmitSetSP (uint16_t Reg)
 Emit unwind opcodes to copy address from source register to $sp. More...
 
void EmitSPOffset (int64_t Offset)
 Emit unwind opcodes to add $sp with an offset. More...
 
void Finalize (unsigned &PersonalityIndex, SmallVectorImpl< uint8_t > &Result)
 Finalize the unwind opcode sequence for EmitBytes() More...
 

Detailed Description

Definition at line 28 of file ARMUnwindOpAsm.h.

Constructor & Destructor Documentation

llvm::UnwindOpcodeAssembler::UnwindOpcodeAssembler ( )
inline

Member Function Documentation

void UnwindOpcodeAssembler::EmitRegSave ( uint32_t  RegSave)
void UnwindOpcodeAssembler::EmitSetSP ( uint16_t  Reg)

Emit unwind opcodes to copy address from source register to $sp.

Definition at line 155 of file ARMUnwindOpAsm.cpp.

References llvm::UNWIND_OPCODE_SET_VSP.

void UnwindOpcodeAssembler::EmitSPOffset ( int64_t  Offset)

Emit unwind opcodes to add $sp with an offset.

Definition at line 160 of file ARMUnwindOpAsm.cpp.

References llvm::encodeULEB128(), llvm::UNWIND_OPCODE_DEC_VSP, llvm::UNWIND_OPCODE_INC_VSP, and llvm::UNWIND_OPCODE_INC_VSP_ULEB128.

void UnwindOpcodeAssembler::EmitVFPRegSave ( uint32_t  VFPRegSave)

Emit unwind opcodes for .vsave directives.

Definition at line 107 of file ARMUnwindOpAsm.cpp.

References llvm::tgtok::Bit, llvm::UNWIND_OPCODE_POP_VFP_REG_RANGE_FSTMFDD, and llvm::UNWIND_OPCODE_POP_VFP_REG_RANGE_FSTMFDD_D16.

void UnwindOpcodeAssembler::Finalize ( unsigned PersonalityIndex,
SmallVectorImpl< uint8_t > &  Result 
)
void llvm::UnwindOpcodeAssembler::Reset ( )
inline

Reset the unwind opcode assembler.

Definition at line 41 of file ARMUnwindOpAsm.h.

References llvm::SmallVectorImpl< T >::clear(), and llvm::SmallVectorTemplateBase< T, isPodLike >::push_back().

Referenced by Finalize().

void llvm::UnwindOpcodeAssembler::setPersonality ( const MCSymbol Per)
inline

Set the personality index.

Definition at line 49 of file ARMUnwindOpAsm.h.


The documentation for this class was generated from the following files: