LLVM 22.0.0git
llvm::WinEH::FrameInfo Struct Reference

#include "llvm/MC/MCWinEH.h"

Classes

struct  Epilog
struct  Segment

Public Member Functions

 FrameInfo ()=default
 FrameInfo (const MCSymbol *Function, const MCSymbol *BeginFuncEHLabel)
 FrameInfo (const MCSymbol *Function, const MCSymbol *BeginFuncEHLabel, const FrameInfo *ChainedParent)
bool empty () const

Public Attributes

const MCSymbolBegin = nullptr
const MCSymbolEnd = nullptr
const MCSymbolFuncletOrFuncEnd = nullptr
const MCSymbolExceptionHandler = nullptr
const MCSymbolFunction = nullptr
SMLoc FunctionLoc
const MCSymbolPrologEnd = nullptr
const MCSymbolSymbol = nullptr
MCSectionTextSection = nullptr
uint32_t PackedInfo = 0
uint32_t PrologCodeBytes = 0
bool HandlesUnwind = false
bool HandlesExceptions = false
bool EmitAttempted = false
bool Fragment = false
uint8_t Version = DefaultVersion
int LastFrameInst = -1
const FrameInfoChainedParent = nullptr
std::vector< InstructionInstructions
MapVector< MCSymbol *, EpilogEpilogMap
std::vector< SegmentSegments

Static Public Attributes

static constexpr uint8_t DefaultVersion = 1

Detailed Description

Definition at line 41 of file MCWinEH.h.

Constructor & Destructor Documentation

◆ FrameInfo() [1/3]

llvm::WinEH::FrameInfo::FrameInfo ( )
default

Referenced by FrameInfo().

◆ FrameInfo() [2/3]

llvm::WinEH::FrameInfo::FrameInfo ( const MCSymbol * Function,
const MCSymbol * BeginFuncEHLabel )
inline

Definition at line 90 of file MCWinEH.h.

References Begin, and Function.

◆ FrameInfo() [3/3]

llvm::WinEH::FrameInfo::FrameInfo ( const MCSymbol * Function,
const MCSymbol * BeginFuncEHLabel,
const FrameInfo * ChainedParent )
inline

Definition at line 92 of file MCWinEH.h.

References Begin, ChainedParent, FrameInfo(), and Function.

Member Function Documentation

◆ empty()

bool llvm::WinEH::FrameInfo::empty ( ) const
inline

Definition at line 97 of file MCWinEH.h.

References E(), EpilogMap, and Instructions.

Member Data Documentation

◆ Begin

const MCSymbol* llvm::WinEH::FrameInfo::Begin = nullptr

Definition at line 42 of file MCWinEH.h.

Referenced by FrameInfo(), and FrameInfo().

◆ ChainedParent

◆ DefaultVersion

uint8_t llvm::WinEH::FrameInfo::DefaultVersion = 1
staticconstexpr

Definition at line 58 of file MCWinEH.h.

Referenced by llvm::MCStreamer::emitWinCFIUnwindVersion().

◆ EmitAttempted

bool llvm::WinEH::FrameInfo::EmitAttempted = false

Definition at line 56 of file MCWinEH.h.

◆ End

const MCSymbol* llvm::WinEH::FrameInfo::End = nullptr

◆ EpilogMap

MapVector<MCSymbol *, Epilog> llvm::WinEH::FrameInfo::EpilogMap

Definition at line 72 of file MCWinEH.h.

Referenced by llvm::MCStreamer::emitWinCFIBeginEpilogue(), and empty().

◆ ExceptionHandler

const MCSymbol* llvm::WinEH::FrameInfo::ExceptionHandler = nullptr

Definition at line 45 of file MCWinEH.h.

Referenced by llvm::MCStreamer::emitWinEHHandler().

◆ Fragment

bool llvm::WinEH::FrameInfo::Fragment = false

Definition at line 57 of file MCWinEH.h.

◆ FuncletOrFuncEnd

const MCSymbol* llvm::WinEH::FrameInfo::FuncletOrFuncEnd = nullptr

◆ Function

◆ FunctionLoc

SMLoc llvm::WinEH::FrameInfo::FunctionLoc

Definition at line 47 of file MCWinEH.h.

◆ HandlesExceptions

bool llvm::WinEH::FrameInfo::HandlesExceptions = false

Definition at line 55 of file MCWinEH.h.

Referenced by llvm::MCStreamer::emitWinEHHandler().

◆ HandlesUnwind

bool llvm::WinEH::FrameInfo::HandlesUnwind = false

Definition at line 54 of file MCWinEH.h.

Referenced by llvm::MCStreamer::emitWinEHHandler().

◆ Instructions

◆ LastFrameInst

int llvm::WinEH::FrameInfo::LastFrameInst = -1

Definition at line 61 of file MCWinEH.h.

Referenced by llvm::MCStreamer::emitWinCFISetFrame().

◆ PackedInfo

uint32_t llvm::WinEH::FrameInfo::PackedInfo = 0

Definition at line 51 of file MCWinEH.h.

◆ PrologCodeBytes

uint32_t llvm::WinEH::FrameInfo::PrologCodeBytes = 0

Definition at line 52 of file MCWinEH.h.

◆ PrologEnd

◆ Segments

std::vector<Segment> llvm::WinEH::FrameInfo::Segments

Definition at line 87 of file MCWinEH.h.

◆ Symbol

const MCSymbol* llvm::WinEH::FrameInfo::Symbol = nullptr

Definition at line 49 of file MCWinEH.h.

◆ TextSection

MCSection* llvm::WinEH::FrameInfo::TextSection = nullptr

Definition at line 50 of file MCWinEH.h.

Referenced by llvm::MCStreamer::emitWinCFIEndProc().

◆ Version

uint8_t llvm::WinEH::FrameInfo::Version = DefaultVersion

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