LLVM 22.0.0git
|
An instruction consists of a DWARF CFI opcode and an optional sequence of operands. More...
#include "llvm/DebugInfo/DWARF/LowLevel/DWARFCFIProgram.h"
Public Member Functions | |
Instruction (uint8_t Opcode) | |
LLVM_ABI Expected< uint64_t > | getOperandAsUnsigned (const CFIProgram &CFIP, uint32_t OperandIdx) const |
LLVM_ABI Expected< int64_t > | getOperandAsSigned (const CFIProgram &CFIP, uint32_t OperandIdx) const |
Public Attributes | |
uint8_t | Opcode |
Operands | Ops |
std::optional< DWARFExpression > | Expression |
An instruction consists of a DWARF CFI opcode and an optional sequence of operands.
If it refers to an expression, then this expression has its own sequence of operations and operands handled separately by DWARFExpression.
Definition at line 42 of file DWARFCFIProgram.h.
|
inline |
Definition at line 43 of file DWARFCFIProgram.h.
llvm::Expected< int64_t > CFIProgram::Instruction::getOperandAsSigned | ( | const CFIProgram & | CFIP, |
uint32_t | OperandIdx | ||
) | const |
Definition at line 90 of file DWARFCFIProgram.cpp.
References llvm::createStringError(), llvm::dwarf::CFIProgram::dataAlign(), llvm::dwarf::CFIProgram::getOperandTypes(), llvm::invalid_argument, llvm_unreachable, llvm::dwarf::CFIProgram::MaxOperands, llvm::dwarf::CFIProgram::operandTypeString(), llvm::dwarf::CFIProgram::OT_Address, llvm::dwarf::CFIProgram::OT_AddressSpace, llvm::dwarf::CFIProgram::OT_Expression, llvm::dwarf::CFIProgram::OT_FactoredCodeOffset, llvm::dwarf::CFIProgram::OT_None, llvm::dwarf::CFIProgram::OT_Offset, llvm::dwarf::CFIProgram::OT_Register, llvm::dwarf::CFIProgram::OT_SignedFactDataOffset, llvm::dwarf::CFIProgram::OT_Unset, and llvm::dwarf::CFIProgram::OT_UnsignedFactDataOffset.
llvm::Expected< uint64_t > CFIProgram::Instruction::getOperandAsUnsigned | ( | const CFIProgram & | CFIP, |
uint32_t | OperandIdx | ||
) | const |
Definition at line 45 of file DWARFCFIProgram.cpp.
References llvm::dwarf::CFIProgram::codeAlign(), llvm::createStringError(), llvm::dwarf::CFIProgram::getOperandTypes(), llvm::invalid_argument, llvm_unreachable, llvm::dwarf::CFIProgram::MaxOperands, Opcode, llvm::dwarf::CFIProgram::operandTypeString(), Ops, llvm::dwarf::CFIProgram::OT_Address, llvm::dwarf::CFIProgram::OT_AddressSpace, llvm::dwarf::CFIProgram::OT_Expression, llvm::dwarf::CFIProgram::OT_FactoredCodeOffset, llvm::dwarf::CFIProgram::OT_None, llvm::dwarf::CFIProgram::OT_Offset, llvm::dwarf::CFIProgram::OT_Register, llvm::dwarf::CFIProgram::OT_SignedFactDataOffset, llvm::dwarf::CFIProgram::OT_Unset, and llvm::dwarf::CFIProgram::OT_UnsignedFactDataOffset.
std::optional<DWARFExpression> llvm::dwarf::CFIProgram::Instruction::Expression |
Definition at line 48 of file DWARFCFIProgram.h.
uint8_t llvm::dwarf::CFIProgram::Instruction::Opcode |
Definition at line 45 of file DWARFCFIProgram.h.
Referenced by getOperandAsUnsigned().
Operands llvm::dwarf::CFIProgram::Instruction::Ops |
Definition at line 46 of file DWARFCFIProgram.h.
Referenced by getOperandAsUnsigned().