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() const
Declared 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() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:836
¶const Optional<llvm::StringRef>& getFunctionName()
const
const Optional<llvm::StringRef>& getFunctionName()
const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:833
¶const Optional<uint32_t>& getHandlerMask() const
const Optional<uint32_t>& getHandlerMask() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:828
¶uint8_t getLanguageID() const
uint8_t getLanguageID() const
Declared 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() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:813
¶uint8_t getNumOfGPRsSaved() const
uint8_t getNumOfGPRsSaved() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:817
¶uint8_t getNumberOfFPParms() const
uint8_t getNumberOfFPParms() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:821
¶uint8_t getNumberOfFixedParms() const
uint8_t getNumberOfFixedParms() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:819
¶uint8_t getOnConditionDirective() const
uint8_t getOnConditionDirective() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:807
¶const Optional<SmallString<32>>& getParmsType()
const
const Optional<SmallString<32>>& getParmsType()
const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:824
¶const Optional<uint32_t>&
getTraceBackTableOffset() const
const Optional<uint32_t>&
getTraceBackTableOffset() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:825
¶const Optional<llvm::object::TBVectorExt>&
getVectorExt() const
const Optional<llvm::object::TBVectorExt>&
getVectorExt() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:835
¶uint8_t getVersion() const
uint8_t getVersion() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:792
¶bool hasControlledStorage() const
bool hasControlledStorage() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:799
¶bool hasExtensionTable() const
bool hasExtensionTable() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:816
¶bool hasParmsOnStack() const
bool hasParmsOnStack() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:822
¶bool hasTraceBackTableOffset() const
bool hasTraceBackTableOffset() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:797
¶bool hasVectorInfo() const
bool hasVectorInfo() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:815
¶bool isAllocaUsed() const
bool isAllocaUsed() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:806
¶bool isBackChainStored() const
bool isBackChainStored() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:811
¶bool isCRSaved() const
bool isCRSaved() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:808
¶bool isFixup() const
bool isFixup() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:812
¶bool isFloatingPointOperationLogOrAbortEnabled()
const
bool isFloatingPointOperationLogOrAbortEnabled()
const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:802
¶bool isFloatingPointPresent() const
bool isFloatingPointPresent() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:801
¶bool isFuncNamePresent() const
bool isFuncNamePresent() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:805
¶bool isGlobalLinkage() const
bool isGlobalLinkage() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:795
¶bool isInternalProcedure() const
bool isInternalProcedure() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:798
¶bool isInterruptHandler() const
bool isInterruptHandler() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:804
¶bool isLRSaved() const
bool isLRSaved() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:809
¶bool isOutOfLineEpilogOrPrologue() const
bool isOutOfLineEpilogOrPrologue() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:796
¶bool isTOCless() const
bool isTOCless() const
Declared at: llvm/include/llvm/Object/XCOFFObjectFile.h:800