LLVM  8.0.1
Functions
MCWin64EH.cpp File Reference
#include "llvm/MC/MCWin64EH.h"
#include "llvm/ADT/Twine.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCObjectFileInfo.h"
#include "llvm/MC/MCObjectStreamer.h"
#include "llvm/MC/MCSectionCOFF.h"
#include "llvm/MC/MCStreamer.h"
#include "llvm/MC/MCSymbol.h"
#include "llvm/Support/Win64EH.h"
Include dependency graph for MCWin64EH.cpp:

Go to the source code of this file.

Functions

static uint8_t CountOfUnwindCodes (std::vector< WinEH::Instruction > &Insns)
 
static void EmitAbsDifference (MCStreamer &Streamer, const MCSymbol *LHS, const MCSymbol *RHS)
 
static void EmitUnwindCode (MCStreamer &streamer, const MCSymbol *begin, WinEH::Instruction &inst)
 
static void EmitSymbolRefWithOfs (MCStreamer &streamer, const MCSymbol *Base, const MCSymbol *Other)
 
static void EmitRuntimeFunction (MCStreamer &streamer, const WinEH::FrameInfo *info)
 
static void EmitUnwindInfo (MCStreamer &streamer, WinEH::FrameInfo *info)
 
static int64_t GetAbsDifference (MCStreamer &Streamer, const MCSymbol *LHS, const MCSymbol *RHS)
 
static uint32_t ARM64CountOfUnwindCodes (const std::vector< WinEH::Instruction > &Insns)
 
static void ARM64EmitUnwindCode (MCStreamer &streamer, const MCSymbol *begin, WinEH::Instruction &inst)
 
static MCSymbolFindMatchingEpilog (const std::vector< WinEH::Instruction > &EpilogInstrs, const std::vector< MCSymbol *> &Epilogs, const WinEH::FrameInfo *info)
 
static void ARM64EmitUnwindInfo (MCStreamer &streamer, WinEH::FrameInfo *info)
 
static void ARM64EmitRuntimeFunction (MCStreamer &streamer, const WinEH::FrameInfo *info)
 

Function Documentation

◆ ARM64CountOfUnwindCodes()

static uint32_t ARM64CountOfUnwindCodes ( const std::vector< WinEH::Instruction > &  Insns)
static

◆ ARM64EmitRuntimeFunction()

static void ARM64EmitRuntimeFunction ( MCStreamer streamer,
const WinEH::FrameInfo info 
)
static

◆ ARM64EmitUnwindCode()

static void ARM64EmitUnwindCode ( MCStreamer streamer,
const MCSymbol begin,
WinEH::Instruction inst 
)
static

◆ ARM64EmitUnwindInfo()

static void ARM64EmitUnwindInfo ( MCStreamer streamer,
WinEH::FrameInfo info 
)
static

◆ CountOfUnwindCodes()

static uint8_t CountOfUnwindCodes ( std::vector< WinEH::Instruction > &  Insns)
static

◆ EmitAbsDifference()

static void EmitAbsDifference ( MCStreamer Streamer,
const MCSymbol LHS,
const MCSymbol RHS 
)
static

◆ EmitRuntimeFunction()

static void EmitRuntimeFunction ( MCStreamer streamer,
const WinEH::FrameInfo info 
)
static

◆ EmitSymbolRefWithOfs()

static void EmitSymbolRefWithOfs ( MCStreamer streamer,
const MCSymbol Base,
const MCSymbol Other 
)
static

◆ EmitUnwindCode()

static void EmitUnwindCode ( MCStreamer streamer,
const MCSymbol begin,
WinEH::Instruction inst 
)
static

◆ EmitUnwindInfo()

static void EmitUnwindInfo ( MCStreamer streamer,
WinEH::FrameInfo info 
)
static

◆ FindMatchingEpilog()

static MCSymbol* FindMatchingEpilog ( const std::vector< WinEH::Instruction > &  EpilogInstrs,
const std::vector< MCSymbol *> &  Epilogs,
const WinEH::FrameInfo info 
)
static

Definition at line 461 of file MCWin64EH.cpp.

References assert(), llvm::WinEH::FrameInfo::EpilogMap, llvm::Match, Operation, and Register.

Referenced by ARM64EmitUnwindInfo().

◆ GetAbsDifference()

static int64_t GetAbsDifference ( MCStreamer Streamer,
const MCSymbol LHS,
const MCSymbol RHS 
)
static