LLVM 22.0.0git
llvm::object::XCOFFTracebackTable Class Reference

This class provides methods to extract traceback table data from a buffer. More...

#include "llvm/Object/XCOFFObjectFile.h"

Public Member Functions

LLVM_ABI uint8_t getVersion () const
LLVM_ABI uint8_t getLanguageID () const
LLVM_ABI bool isGlobalLinkage () const
LLVM_ABI bool isOutOfLineEpilogOrPrologue () const
LLVM_ABI bool hasTraceBackTableOffset () const
LLVM_ABI bool isInternalProcedure () const
LLVM_ABI bool hasControlledStorage () const
LLVM_ABI bool isTOCless () const
LLVM_ABI bool isFloatingPointPresent () const
LLVM_ABI bool isFloatingPointOperationLogOrAbortEnabled () const
LLVM_ABI bool isInterruptHandler () const
LLVM_ABI bool isFuncNamePresent () const
LLVM_ABI bool isAllocaUsed () const
LLVM_ABI uint8_t getOnConditionDirective () const
LLVM_ABI bool isCRSaved () const
LLVM_ABI bool isLRSaved () const
LLVM_ABI bool isBackChainStored () const
LLVM_ABI bool isFixup () const
LLVM_ABI uint8_t getNumOfFPRsSaved () const
LLVM_ABI bool hasVectorInfo () const
LLVM_ABI bool hasExtensionTable () const
LLVM_ABI uint8_t getNumOfGPRsSaved () const
LLVM_ABI uint8_t getNumberOfFixedParms () const
LLVM_ABI uint8_t getNumberOfFPParms () const
LLVM_ABI bool hasParmsOnStack () const
const std::optional< SmallString< 32 > > & getParmsType () const
const std::optional< uint32_t > & getTraceBackTableOffset () const
const std::optional< uint32_t > & getHandlerMask () const
const std::optional< uint32_t > & getNumOfCtlAnchors ()
const std::optional< SmallVector< uint32_t, 8 > > & getControlledStorageInfoDisp ()
const std::optional< StringRef > & getFunctionName () const
const std::optional< uint8_t > & getAllocaRegister () const
const std::optional< TBVectorExt > & getVectorExt () const
const std::optional< uint8_t > & getExtensionTable () const
const std::optional< uint64_t > & getEhInfoDisp () const

Static Public Member Functions

static LLVM_ABI Expected< XCOFFTracebackTablecreate (const uint8_t *Ptr, uint64_t &Size, bool Is64Bits=false)
 Parse an XCOFF Traceback Table from Ptr with Size bytes.

Detailed Description

This class provides methods to extract traceback table data from a buffer.

The various accessors may reference the buffer provided via the constructor.

Definition at line 908 of file XCOFFObjectFile.h.

Member Function Documentation

◆ create()

Expected< XCOFFTracebackTable > llvm::object::XCOFFTracebackTable::create ( const uint8_t * Ptr,
uint64_t & Size,
bool Is64Bits = false )
static

Parse an XCOFF Traceback Table from Ptr with Size bytes.

Returns an XCOFFTracebackTable upon successful parsing, otherwise an Error is returned.

Parameters
[in]PtrA pointer that points just past the initial 4 bytes of zeros at the beginning of an XCOFF Traceback Table.
[in,out]SizeA 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, Size will be updated to be the size up to the end of the last successfully parsed field of the table.

Definition at line 1454 of file XCOFFObjectFile.cpp.

References Ptr, Size, and llvm::Error::success().

◆ getAllocaRegister()

const std::optional< uint8_t > & llvm::object::XCOFFTracebackTable::getAllocaRegister ( ) const
inline

Definition at line 990 of file XCOFFObjectFile.h.

◆ getControlledStorageInfoDisp()

const std::optional< SmallVector< uint32_t, 8 > > & llvm::object::XCOFFTracebackTable::getControlledStorageInfoDisp ( )
inline

Definition at line 984 of file XCOFFObjectFile.h.

◆ getEhInfoDisp()

const std::optional< uint64_t > & llvm::object::XCOFFTracebackTable::getEhInfoDisp ( ) const
inline

Definition at line 997 of file XCOFFObjectFile.h.

◆ getExtensionTable()

const std::optional< uint8_t > & llvm::object::XCOFFTracebackTable::getExtensionTable ( ) const
inline

Definition at line 994 of file XCOFFObjectFile.h.

◆ getFunctionName()

const std::optional< StringRef > & llvm::object::XCOFFTracebackTable::getFunctionName ( ) const
inline

Definition at line 987 of file XCOFFObjectFile.h.

◆ getHandlerMask()

const std::optional< uint32_t > & llvm::object::XCOFFTracebackTable::getHandlerMask ( ) const
inline

Definition at line 979 of file XCOFFObjectFile.h.

◆ getLanguageID()

uint8_t llvm::object::XCOFFTracebackTable::getLanguageID ( ) const

Definition at line 1566 of file XCOFFObjectFile.cpp.

References GETBITWITHMASKSHIFT.

◆ getNumberOfFixedParms()

uint8_t llvm::object::XCOFFTracebackTable::getNumberOfFixedParms ( ) const

Definition at line 1651 of file XCOFFObjectFile.cpp.

References GETBITWITHMASKSHIFT.

◆ getNumberOfFPParms()

uint8_t llvm::object::XCOFFTracebackTable::getNumberOfFPParms ( ) const

Definition at line 1656 of file XCOFFObjectFile.cpp.

References GETBITWITHMASKSHIFT.

◆ getNumOfCtlAnchors()

const std::optional< uint32_t > & llvm::object::XCOFFTracebackTable::getNumOfCtlAnchors ( )
inline

Definition at line 980 of file XCOFFObjectFile.h.

◆ getNumOfFPRsSaved()

uint8_t llvm::object::XCOFFTracebackTable::getNumOfFPRsSaved ( ) const

Definition at line 1635 of file XCOFFObjectFile.cpp.

References GETBITWITHMASKSHIFT.

◆ getNumOfGPRsSaved()

uint8_t llvm::object::XCOFFTracebackTable::getNumOfGPRsSaved ( ) const

Definition at line 1647 of file XCOFFObjectFile.cpp.

References GETBITWITHMASKSHIFT.

◆ getOnConditionDirective()

uint8_t llvm::object::XCOFFTracebackTable::getOnConditionDirective ( ) const

Definition at line 1614 of file XCOFFObjectFile.cpp.

References GETBITWITHMASKSHIFT.

◆ getParmsType()

const std::optional< SmallString< 32 > > & llvm::object::XCOFFTracebackTable::getParmsType ( ) const
inline

Definition at line 973 of file XCOFFObjectFile.h.

◆ getTraceBackTableOffset()

const std::optional< uint32_t > & llvm::object::XCOFFTracebackTable::getTraceBackTableOffset ( ) const
inline

Definition at line 976 of file XCOFFObjectFile.h.

◆ getVectorExt()

const std::optional< TBVectorExt > & llvm::object::XCOFFTracebackTable::getVectorExt ( ) const
inline

Definition at line 993 of file XCOFFObjectFile.h.

◆ getVersion()

uint8_t llvm::object::XCOFFTracebackTable::getVersion ( ) const

Definition at line 1562 of file XCOFFObjectFile.cpp.

References GETBITWITHMASKSHIFT.

◆ hasControlledStorage()

bool llvm::object::XCOFFTracebackTable::hasControlledStorage ( ) const

Definition at line 1586 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ hasExtensionTable()

bool llvm::object::XCOFFTracebackTable::hasExtensionTable ( ) const

Definition at line 1639 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ hasParmsOnStack()

bool llvm::object::XCOFFTracebackTable::hasParmsOnStack ( ) const

Definition at line 1661 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ hasTraceBackTableOffset()

bool llvm::object::XCOFFTracebackTable::hasTraceBackTableOffset ( ) const

Definition at line 1578 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ hasVectorInfo()

bool llvm::object::XCOFFTracebackTable::hasVectorInfo ( ) const

Definition at line 1643 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ isAllocaUsed()

bool llvm::object::XCOFFTracebackTable::isAllocaUsed ( ) const

Definition at line 1610 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ isBackChainStored()

bool llvm::object::XCOFFTracebackTable::isBackChainStored ( ) const

Definition at line 1627 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ isCRSaved()

bool llvm::object::XCOFFTracebackTable::isCRSaved ( ) const

Definition at line 1619 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ isFixup()

bool llvm::object::XCOFFTracebackTable::isFixup ( ) const

Definition at line 1631 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ isFloatingPointOperationLogOrAbortEnabled()

bool llvm::object::XCOFFTracebackTable::isFloatingPointOperationLogOrAbortEnabled ( ) const

Definition at line 1598 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ isFloatingPointPresent()

bool llvm::object::XCOFFTracebackTable::isFloatingPointPresent ( ) const

Definition at line 1594 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ isFuncNamePresent()

bool llvm::object::XCOFFTracebackTable::isFuncNamePresent ( ) const

Definition at line 1606 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ isGlobalLinkage()

bool llvm::object::XCOFFTracebackTable::isGlobalLinkage ( ) const

Definition at line 1570 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ isInternalProcedure()

bool llvm::object::XCOFFTracebackTable::isInternalProcedure ( ) const

Definition at line 1582 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ isInterruptHandler()

bool llvm::object::XCOFFTracebackTable::isInterruptHandler ( ) const

Definition at line 1602 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ isLRSaved()

bool llvm::object::XCOFFTracebackTable::isLRSaved ( ) const

Definition at line 1623 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ isOutOfLineEpilogOrPrologue()

bool llvm::object::XCOFFTracebackTable::isOutOfLineEpilogOrPrologue ( ) const

Definition at line 1574 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.

◆ isTOCless()

bool llvm::object::XCOFFTracebackTable::isTOCless ( ) const

Definition at line 1590 of file XCOFFObjectFile.cpp.

References GETBITWITHMASK.


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