LLVM 22.0.0git
llvm::CFIInstBuilder Class Reference

Helper class for creating CFI instructions and inserting them into MIR. More...

#include "llvm/CodeGen/CFIInstBuilder.h"

Public Member Functions

 CFIInstBuilder (MachineBasicBlock &MBB, MachineBasicBlock::iterator InsertPt, MachineInstr::MIFlag MIFlag, bool IsEH=true)
 CFIInstBuilder (MachineBasicBlock *MBB, MachineInstr::MIFlag MIFlag, bool IsEH=true)
void setInsertPoint (MachineBasicBlock::iterator IP)
void insertCFIInst (const MCCFIInstruction &CFIInst) const
void buildDefCFA (MCRegister Reg, int64_t Offset) const
void buildDefCFARegister (MCRegister Reg) const
void buildDefCFAOffset (int64_t Offset, MCSymbol *Label=nullptr) const
void buildAdjustCFAOffset (int64_t Adjustment) const
void buildOffset (MCRegister Reg, int64_t Offset) const
void buildNegateRAState () const
void buildNegateRAStateWithPC () const
void buildRegister (MCRegister Reg1, MCRegister Reg2) const
void buildWindowSave () const
void buildRestore (MCRegister Reg) const
void buildUndefined (MCRegister Reg) const
void buildSameValue (MCRegister Reg) const
void buildEscape (StringRef Bytes, StringRef Comment="") const

Detailed Description

Helper class for creating CFI instructions and inserting them into MIR.

Definition at line 20 of file CFIInstBuilder.h.

Constructor & Destructor Documentation

◆ CFIInstBuilder() [1/2]

llvm::CFIInstBuilder::CFIInstBuilder ( MachineBasicBlock & MBB,
MachineBasicBlock::iterator InsertPt,
MachineInstr::MIFlag MIFlag,
bool IsEH = true )
inline

Definition at line 39 of file CFIInstBuilder.h.

References llvm::get(), getParent(), and setInsertPoint().

Referenced by CFIInstBuilder().

◆ CFIInstBuilder() [2/2]

llvm::CFIInstBuilder::CFIInstBuilder ( MachineBasicBlock * MBB,
MachineInstr::MIFlag MIFlag,
bool IsEH = true )
inline

Definition at line 48 of file CFIInstBuilder.h.

References CFIInstBuilder().

Member Function Documentation

◆ buildAdjustCFAOffset()

void llvm::CFIInstBuilder::buildAdjustCFAOffset ( int64_t Adjustment) const
inline

◆ buildDefCFA()

◆ buildDefCFAOffset()

◆ buildDefCFARegister()

◆ buildEscape()

void llvm::CFIInstBuilder::buildEscape ( StringRef Bytes,
StringRef Comment = "" ) const
inline

Definition at line 116 of file CFIInstBuilder.h.

References llvm::MCCFIInstruction::createEscape(), and insertCFIInst().

Referenced by emitSCSPrologue().

◆ buildNegateRAState()

void llvm::CFIInstBuilder::buildNegateRAState ( ) const
inline

◆ buildNegateRAStateWithPC()

void llvm::CFIInstBuilder::buildNegateRAStateWithPC ( ) const
inline

◆ buildOffset()

◆ buildRegister()

void llvm::CFIInstBuilder::buildRegister ( MCRegister Reg1,
MCRegister Reg2 ) const
inline

◆ buildRestore()

void llvm::CFIInstBuilder::buildRestore ( MCRegister Reg) const
inline

◆ buildSameValue()

void llvm::CFIInstBuilder::buildSameValue ( MCRegister Reg) const
inline

◆ buildUndefined()

void llvm::CFIInstBuilder::buildUndefined ( MCRegister Reg) const
inline

Definition at line 106 of file CFIInstBuilder.h.

References llvm::MCCFIInstruction::createUndefined(), insertCFIInst(), and Reg.

◆ buildWindowSave()

void llvm::CFIInstBuilder::buildWindowSave ( ) const
inline

◆ insertCFIInst()

◆ setInsertPoint()


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