| 
    LLVM 22.0.0git
    
   | 
 
#include "CodeGen/AsmPrinter/WinException.h"
Public Member Functions | |
| WinException (AsmPrinter *A) | |
| ~WinException () override | |
| void | endModule () override | 
| Emit all exception information that should come after the content.   | |
| void | beginFunction (const MachineFunction *MF) override | 
| Gather pre-function exception information.   | |
| void | markFunctionEnd () override | 
| void | endFunction (const MachineFunction *) override | 
| Gather and emit post-function exception information.   | |
| void | beginFunclet (const MachineBasicBlock &MBB, MCSymbol *Sym) override | 
| Emit target-specific EH funclet machinery.   | |
| void | endFunclet () override | 
| Public Member Functions inherited from llvm::EHStreamer | |
| EHStreamer (AsmPrinter *A) | |
| ~EHStreamer () override | |
| Public Member Functions inherited from llvm::AsmPrinterHandler | |
| virtual | ~AsmPrinterHandler () | 
| Pin vtables to this file.   | |
| virtual void | beginModule (Module *M) | 
| virtual void | beginBasicBlockSection (const MachineBasicBlock &MBB) | 
| Process the beginning of a new basic-block-section within a function.   | |
| virtual void | endBasicBlockSection (const MachineBasicBlock &MBB) | 
| Process the end of a basic-block-section within a function.   | |
| virtual void | setSymbolSize (const MCSymbol *Sym, uint64_t Size) | 
| For symbols that have a size designated (e.g.   | |
| virtual void | beginInstruction (const MachineInstr *MI) | 
| Process beginning of an instruction.   | |
| virtual void | endInstruction () | 
| Process end of an instruction.   | |
| virtual void | beginCodeAlignment (const MachineBasicBlock &MBB) | 
Additional Inherited Members | |
| Static Public Member Functions inherited from llvm::EHStreamer | |
| static bool | callToNoUnwindFunction (const MachineInstr *MI) | 
| Return ‘true’ if this is a call to a function marked ‘nounwind’.   | |
| Protected Types inherited from llvm::EHStreamer | |
| using | RangeMapType = DenseMap<MCSymbol *, PadRange> | 
| Protected Member Functions inherited from llvm::EHStreamer | |
| void | computeActionsTable (const SmallVectorImpl< const LandingPadInfo * > &LandingPads, SmallVectorImpl< ActionEntry > &Actions, SmallVectorImpl< unsigned > &FirstActions) | 
| Compute the actions table and gather the first action index for each landing pad site.   | |
| void | computePadMap (const SmallVectorImpl< const LandingPadInfo * > &LandingPads, RangeMapType &PadMap) | 
| virtual void | computeCallSiteTable (SmallVectorImpl< CallSiteEntry > &CallSites, SmallVectorImpl< CallSiteRange > &CallSiteRanges, const SmallVectorImpl< const LandingPadInfo * > &LandingPads, const SmallVectorImpl< unsigned > &FirstActions) | 
| Compute the call-site table and the call-site ranges.   | |
| MCSymbol * | emitExceptionTable () | 
| Emit landing pads and actions.   | |
| virtual void | emitTypeInfos (unsigned TTypeEncoding, MCSymbol *TTBaseLabel) | 
| Static Protected Member Functions inherited from llvm::EHStreamer | |
| static unsigned | sharedTypeIDs (const LandingPadInfo *L, const LandingPadInfo *R) | 
| How many leading type ids two landing pads have in common.   | |
| static bool | isFilterEHSelector (int Selector) | 
| static bool | isCleanupEHSelector (int Selector) | 
| static bool | isCatchEHSelector (int Selector) | 
| Protected Attributes inherited from llvm::EHStreamer | |
| AsmPrinter * | Asm | 
| Target of directive emission.   | |
| MachineModuleInfo * | MMI | 
| Collected machine module information.   | |
Definition at line 26 of file WinException.h.
| WinException::WinException | ( | AsmPrinter * | A | ) | 
Definition at line 35 of file WinException.cpp.
References A(), llvm::EHStreamer::Asm, and llvm::EHStreamer::EHStreamer().
      
  | 
  overridedefault | 
References beginFunclet(), beginFunction(), endFunclet(), endFunction(), endModule(), markFunctionEnd(), and MBB.
      
  | 
  overridevirtual | 
Emit target-specific EH funclet machinery.
Reimplemented from llvm::AsmPrinterHandler.
Definition at line 189 of file WinException.cpp.
References llvm::EHStreamer::Asm, llvm::dyn_cast(), F, llvm::TargetLoweringObjectFile::getCFIPersonalitySymbol(), getMCSymbolForMBB(), llvm::COFF::IMAGE_SYM_CLASS_STATIC, llvm::COFF::IMAGE_SYM_DTYPE_FUNCTION, MBB, llvm::EHStreamer::MMI, and llvm::COFF::SCT_COMPLEX_TYPE_SHIFT.
Referenced by beginFunction(), and ~WinException().
      
  | 
  overridevirtual | 
Gather pre-function exception information.
Assumes being emitted immediately after the function entry point.
Implements llvm::AsmPrinterHandler.
Definition at line 63 of file WinException.cpp.
References llvm::EHStreamer::Asm, beginFunclet(), llvm::classifyEHPersonality(), llvm::GlobalValue::dropLLVMManglingEscape(), llvm::dwarf::DW_EH_PE_omit, llvm::dyn_cast(), F, llvm::MachineFunction::front(), llvm::MachineFunction::getFunction(), llvm::MachineFunction::getLandingPads(), llvm::TargetLoweringObjectFile::getLSDAEncoding(), llvm::Value::getName(), llvm::TargetLoweringObjectFile::getPersonalityEncoding(), llvm::MachineFunction::getWinEHFuncInfo(), llvm::MachineFunction::hasEHFunclets(), llvm::MachineFunction::hasWinCFI(), llvm::isNoOpWithoutInvoke(), llvm::MSVC_X86SEH, and llvm::Unknown.
Referenced by ~WinException().
      
  | 
  overridevirtual | 
Reimplemented from llvm::AsmPrinterHandler.
Definition at line 240 of file WinException.cpp.
References llvm::EHStreamer::Asm.
Referenced by ~WinException().
      
  | 
  overridevirtual | 
Gather and emit post-function exception information.
endFunction - Gather and emit post-function exception information.
Implements llvm::AsmPrinterHandler.
Definition at line 124 of file WinException.cpp.
References llvm::append_range(), llvm::EHStreamer::Asm, llvm::classifyEHPersonality(), llvm::CoreCLR, llvm::EHStreamer::emitExceptionTable(), F, llvm::MachineFunction::getEHContTargets(), llvm::MachineFunction::getFunction(), llvm::MachineFunction::hasEHFunclets(), llvm::MSVC_CXX, llvm::MSVC_TableSEH, llvm::MSVC_X86SEH, and llvm::Unknown.
Referenced by ~WinException().
      
  | 
  overridevirtual | 
Emit all exception information that should come after the content.
endModule - Emit all exception information that should come after the content.
Implements llvm::AsmPrinterHandler.
Definition at line 47 of file WinException.cpp.
References llvm::EHStreamer::Asm, F, and llvm::EHStreamer::MMI.
Referenced by ~WinException().
      
  | 
  overridevirtual | 
Reimplemented from llvm::AsmPrinterHandler.
Definition at line 116 of file WinException.cpp.
References llvm::EHStreamer::Asm.
Referenced by ~WinException().