class XCOFFTracebackTable
Declaration
class XCOFFTracebackTable { /* full declaration omitted */ };Description
This class provides methods to extract traceback table data from a buffer. The various accessors may reference the buffer provided via the constructor.
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:762
Member Variables
- private const uint8_t* const TBPtr
- private Optional<SmallString<32>> ParmsType
- private Optional<uint32_t> TraceBackTableOffset
- private Optional<uint32_t> HandlerMask
- private Optional<uint32_t> NumOfCtlAnchors
- private Optional<SmallVector<uint32_t, 8>> ControlledStorageInfoDisp
- private Optional<llvm::StringRef> FunctionName
- private Optional<uint8_t> AllocaRegister
- private Optional<llvm::object::TBVectorExt> VecExt
- private Optional<uint8_t> ExtensionTable
Method Overview
- private XCOFFTracebackTable(const uint8_t * Ptr, uint64_t & Size, llvm::Error & Err)
- public static Expected<llvm::object::XCOFFTracebackTable> create(const uint8_t * Ptr, uint64_t & Size)
- public const Optional<uint8_t> & getAllocaRegister() const
- public const Optional<SmallVector<uint32_t, 8>> & getControlledStorageInfoDisp()
- public const Optional<uint8_t> & getExtensionTable() const
- public const Optional<llvm::StringRef> & getFunctionName() const
- public const Optional<uint32_t> & getHandlerMask() const
- public uint8_t getLanguageID() const
- public const Optional<uint32_t> & getNumOfCtlAnchors()
- public uint8_t getNumOfFPRsSaved() const
- public uint8_t getNumOfGPRsSaved() const
- public uint8_t getNumberOfFPParms() const
- public uint8_t getNumberOfFixedParms() const
- public uint8_t getOnConditionDirective() const
- public const Optional<SmallString<32>> & getParmsType() const
- public const Optional<uint32_t> & getTraceBackTableOffset() const
- public const Optional<llvm::object::TBVectorExt> & getVectorExt() const
- public uint8_t getVersion() const
- public bool hasControlledStorage() const
- public bool hasExtensionTable() const
- public bool hasParmsOnStack() const
- public bool hasTraceBackTableOffset() const
- public bool hasVectorInfo() const
- public bool isAllocaUsed() const
- public bool isBackChainStored() const
- public bool isCRSaved() const
- public bool isFixup() const
- public bool isFloatingPointOperationLogOrAbortEnabled() const
- public bool isFloatingPointPresent() const
- public bool isFuncNamePresent() const
- public bool isGlobalLinkage() const
- public bool isInternalProcedure() const
- public bool isInterruptHandler() const
- public bool isLRSaved() const
- public bool isOutOfLineEpilogOrPrologue() const
- public bool isTOCless() const
Methods
¶XCOFFTracebackTable(const uint8_t* Ptr,
uint64_t& Size,
llvm::Error& Err)
XCOFFTracebackTable(const uint8_t* Ptr,
uint64_t& Size,
llvm::Error& Err)Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:774
Parameters
- const uint8_t* Ptr
- uint64_t& Size
- llvm::Error& Err
¶static Expected<llvm::object::XCOFFTracebackTable>
create(const uint8_t* Ptr, uint64_t& Size)
static Expected<llvm::object::XCOFFTracebackTable>
create(const uint8_t* Ptr, uint64_t& Size)Description
Parse an XCOFF Traceback Table from \a Ptr with \a Size bytes. Returns an XCOFFTracebackTable upon successful parsing, otherwise an Error is returned.
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:790
Parameters
- const uint8_t* Ptr
- A pointer that points just past the initial 4 bytes of zeros at the beginning of an XCOFF Traceback Table.
- uint64_t& Size
- A pointer that points to the length of the XCOFF Traceback Table. If the XCOFF Traceback Table is not parsed successfully or there are extra bytes that are not recognized, \a Size will be updated to be the size up to the end of the last successfully parsed field of the table.
¶const Optional<uint8_t>& getAllocaRegister() const
const Optional<uint8_t>& getAllocaRegister() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:834
¶const Optional<SmallVector<uint32_t, 8>>&
getControlledStorageInfoDisp()
const Optional<SmallVector<uint32_t, 8>>&
getControlledStorageInfoDisp()Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:830
¶const Optional<uint8_t>& getExtensionTable() const
const Optional<uint8_t>& getExtensionTable() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:836
¶const Optional<llvm::StringRef>& getFunctionName()
const
const Optional<llvm::StringRef>& getFunctionName()
constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:833
¶const Optional<uint32_t>& getHandlerMask() const
const Optional<uint32_t>& getHandlerMask() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:828
¶uint8_t getLanguageID() const
uint8_t getLanguageID() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:793
¶const Optional<uint32_t>& getNumOfCtlAnchors()
const Optional<uint32_t>& getNumOfCtlAnchors()Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:829
¶uint8_t getNumOfFPRsSaved() const
uint8_t getNumOfFPRsSaved() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:813
¶uint8_t getNumOfGPRsSaved() const
uint8_t getNumOfGPRsSaved() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:817
¶uint8_t getNumberOfFPParms() const
uint8_t getNumberOfFPParms() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:821
¶uint8_t getNumberOfFixedParms() const
uint8_t getNumberOfFixedParms() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:819
¶uint8_t getOnConditionDirective() const
uint8_t getOnConditionDirective() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:807
¶const Optional<SmallString<32>>& getParmsType()
const
const Optional<SmallString<32>>& getParmsType()
constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:824
¶const Optional<uint32_t>&
getTraceBackTableOffset() const
const Optional<uint32_t>&
getTraceBackTableOffset() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:825
¶const Optional<llvm::object::TBVectorExt>&
getVectorExt() const
const Optional<llvm::object::TBVectorExt>&
getVectorExt() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:835
¶uint8_t getVersion() const
uint8_t getVersion() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:792
¶bool hasControlledStorage() const
bool hasControlledStorage() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:799
¶bool hasExtensionTable() const
bool hasExtensionTable() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:816
¶bool hasParmsOnStack() const
bool hasParmsOnStack() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:822
¶bool hasTraceBackTableOffset() const
bool hasTraceBackTableOffset() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:797
¶bool hasVectorInfo() const
bool hasVectorInfo() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:815
¶bool isAllocaUsed() const
bool isAllocaUsed() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:806
¶bool isBackChainStored() const
bool isBackChainStored() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:811
¶bool isCRSaved() const
bool isCRSaved() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:808
¶bool isFixup() const
bool isFixup() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:812
¶bool isFloatingPointOperationLogOrAbortEnabled()
const
bool isFloatingPointOperationLogOrAbortEnabled()
constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:802
¶bool isFloatingPointPresent() const
bool isFloatingPointPresent() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:801
¶bool isFuncNamePresent() const
bool isFuncNamePresent() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:805
¶bool isGlobalLinkage() const
bool isGlobalLinkage() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:795
¶bool isInternalProcedure() const
bool isInternalProcedure() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:798
¶bool isInterruptHandler() const
bool isInterruptHandler() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:804
¶bool isLRSaved() const
bool isLRSaved() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:809
¶bool isOutOfLineEpilogOrPrologue() const
bool isOutOfLineEpilogOrPrologue() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:796
¶bool isTOCless() const
bool isTOCless() constDeclared at: llvm/include/llvm/Object/XCOFFObjectFile.h:800