| /freebsd/contrib/llvm-project/llvm/include/llvm/MC/ |
| H A D | MCWin64EH.h | 26 static WinEH::Instruction PushNonVol(MCSymbol *L, unsigned Reg) { in PushNonVol() 27 return WinEH::Instruction(Win64EH::UOP_PushNonVol, L, Reg, -1); in PushNonVol() 29 static WinEH::Instruction Alloc(MCSymbol *L, unsigned Size) { in Alloc() 30 return WinEH::Instruction(Size > 128 ? UOP_AllocLarge : UOP_AllocSmall, L, in Alloc() 33 static WinEH::Instruction PushMachFrame(MCSymbol *L, bool Code) { in PushMachFrame() 34 return WinEH::Instruction(UOP_PushMachFrame, L, -1, Code ? 1 : 0); in PushMachFrame() 36 static WinEH::Instruction SaveNonVol(MCSymbol *L, unsigned Reg, in SaveNonVol() 38 return WinEH::Instruction(Offset > 512 * 1024 - 8 ? UOP_SaveNonVolBig in SaveNonVol() 42 static WinEH::Instruction SaveXMM(MCSymbol *L, unsigned Reg, in SaveXMM() 44 return WinEH::Instruction(Offset > 512 * 1024 - 8 ? UOP_SaveXMM128Big in SaveXMM() [all …]
|
| H A D | MCAsmInfo.h | 40 namespace WinEH { 365 WinEH::EncodingType WinEHEncodingType = WinEH::EncodingType::Invalid; 626 WinEH::EncodingType getWinEHEncodingType() const { return WinEHEncodingType; } in getWinEHEncodingType() 645 return ExceptionsType == ExceptionHandling::WinEH && in usesWindowsCFI() 646 (WinEHEncodingType != WinEH::EncodingType::Invalid && in usesWindowsCFI() 647 WinEHEncodingType != WinEH::EncodingType::X86); in usesWindowsCFI()
|
| H A D | MCStreamer.h | 233 std::vector<std::unique_ptr<WinEH::FrameInfo>> WinFrameInfos; 235 WinEH::FrameInfo *CurrentWinFrameInfo; 263 WinEH::FrameInfo::Epilog *CurrentWinEpilog = nullptr; 276 WinEH::FrameInfo *getCurrentWinFrameInfo() { in getCurrentWinFrameInfo() 280 virtual void emitWindowsUnwindTables(WinEH::FrameInfo *Frame); 334 WinEH::FrameInfo *EnsureValidWinFrameInfo(SMLoc Loc); 342 ArrayRef<std::unique_ptr<WinEH::FrameInfo>> getWinFrameInfos() const { in getWinFrameInfos() 346 WinEH::FrameInfo::Epilog *getCurrentWinEpilog() const { in getCurrentWinEpilog()
|
| H A D | MCWinEH.h | 22 namespace WinEH {
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/ARM/MCTargetDesc/ |
| H A D | ARMWinCOFFStreamer.cpp | 32 void emitWindowsUnwindTables(WinEH::FrameInfo *Frame) override; 46 void ARMWinCOFFStreamer::emitWindowsUnwindTables(WinEH::FrameInfo *Frame) { in emitWindowsUnwindTables() 109 WinEH::FrameInfo *CurFrame = S.EnsureValidWinFrameInfo(SMLoc()); in emitARMWinUnwindCode() 113 auto Inst = WinEH::Instruction(UnwindCode, Label, Reg, Offset); in emitARMWinUnwindCode() 205 WinEH::FrameInfo *CurFrame = S.EnsureValidWinFrameInfo(SMLoc()); in emitARMWinCFIPrologEnd() 211 WinEH::Instruction Inst = in emitARMWinCFIPrologEnd() 212 WinEH::Instruction(Win64EH::UOP_End, /*Label=*/nullptr, -1, 0); in emitARMWinCFIPrologEnd() 220 WinEH::FrameInfo *CurFrame = S.EnsureValidWinFrameInfo(SMLoc()); in emitARMWinCFIEpilogStart() 232 WinEH::FrameInfo *CurFrame = S.EnsureValidWinFrameInfo(SMLoc()); in emitARMWinCFIEpilogEnd() 237 std::vector<WinEH::Instruction> &Epilog = in emitARMWinCFIEpilogEnd() [all …]
|
| H A D | ARMMCAsmInfo.cpp | 123 ExceptionsType = ExceptionHandling::WinEH; in ARMCOFFMCAsmInfoMicrosoft() 124 WinEHEncodingType = WinEH::EncodingType::Itanium; in ARMCOFFMCAsmInfoMicrosoft() 147 ExceptionsType = ExceptionHandling::WinEH; in ARMCOFFMCAsmInfoGNU() 148 WinEHEncodingType = WinEH::EncodingType::Itanium; in ARMCOFFMCAsmInfoGNU()
|
| /freebsd/contrib/llvm-project/llvm/lib/MC/ |
| H A D | MCWin64EH.cpp | 31 MCUnwindV2EpilogTargetExpr(const WinEH::FrameInfo &FrameInfo, in MCUnwindV2EpilogTargetExpr() 32 const WinEH::FrameInfo::Epilog &Epilog, in MCUnwindV2EpilogTargetExpr() 40 create(const WinEH::FrameInfo &FrameInfo, in create() 41 const WinEH::FrameInfo::Epilog &Epilog, uint8_t EpilogSize_, in create() 68 static uint8_t CountOfUnwindCodes(std::vector<WinEH::Instruction> &Insns) { in CountOfUnwindCodes() 106 WinEH::Instruction &inst) { in EmitUnwindCode() 198 const WinEH::FrameInfo *info) { in EmitRuntimeFunction() 225 static void EmitUnwindInfo(MCStreamer &streamer, WinEH::FrameInfo *info) { in EmitUnwindInfo() 313 WinEH::Instruction &frameInst = info->Instructions[info->LastFrameInst]; in EmitUnwindInfo() 351 WinEH::Instruction inst = info->Instructions.back(); in EmitUnwindInfo() [all …]
|
| H A D | MCStreamer.cpp | 715 WinEH::FrameInfo *MCStreamer::EnsureValidWinFrameInfo(SMLoc Loc) { in EnsureValidWinFrameInfo() 743 std::make_unique<WinEH::FrameInfo>(Symbol, StartProc)); in emitWinCFIStartProc() 750 WinEH::FrameInfo *CurFrame = EnsureValidWinFrameInfo(Loc); in emitWinCFIEndProc() 768 WinEH::FrameInfo *CurFrame = EnsureValidWinFrameInfo(Loc); in emitWinCFIFuncletOrFuncEnd() 779 WinEH::FrameInfo *CurFrame = EnsureValidWinFrameInfo(Loc); in emitWinCFIStartChained() 785 WinFrameInfos.emplace_back(std::make_unique<WinEH::FrameInfo>( in emitWinCFIStartChained() 792 WinEH::FrameInfo *CurFrame = EnsureValidWinFrameInfo(Loc); in emitWinCFIEndChained() 802 CurrentWinFrameInfo = const_cast<WinEH::FrameInfo *>(CurFrame->ChainedParent); in emitWinCFIEndChained() 807 WinEH::FrameInfo *CurFrame = EnsureValidWinFrameInfo(Loc); in emitWinEHHandler() 823 WinEH::FrameInfo *CurFrame = EnsureValidWinFrameInfo(Loc); in emitWinEHHandlerData() [all …]
|
| H A D | MCWinEH.cpp | 12 namespace WinEH { namespace
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/MCTargetDesc/ |
| H A D | AArch64WinCOFFStreamer.cpp | 32 void emitWindowsUnwindTables(WinEH::FrameInfo *Frame) override; 45 void AArch64WinCOFFStreamer::emitWindowsUnwindTables(WinEH::FrameInfo *Frame) { in emitWindowsUnwindTables() 72 WinEH::FrameInfo *CurFrame = S.EnsureValidWinFrameInfo(SMLoc()); in emitARM64WinUnwindCode() 75 auto Inst = WinEH::Instruction(UnwindCode, /*Label=*/nullptr, Reg, Offset); in emitARM64WinUnwindCode() 173 WinEH::FrameInfo *CurFrame = S.EnsureValidWinFrameInfo(SMLoc()); in emitARM64WinCFIPrologEnd() 179 WinEH::Instruction Inst = in emitARM64WinCFIPrologEnd() 180 WinEH::Instruction(Win64EH::UOP_End, /*Label=*/nullptr, -1, 0); in emitARM64WinCFIPrologEnd() 191 WinEH::FrameInfo *CurFrame = S.EnsureValidWinFrameInfo(SMLoc()); in emitARM64WinCFIEpilogEnd() 196 WinEH::Instruction Inst = in emitARM64WinCFIEpilogEnd() 197 WinEH::Instruction(Win64EH::UOP_End, /*Label=*/nullptr, -1, 0); in emitARM64WinCFIEpilogEnd()
|
| H A D | AArch64MCAsmInfo.cpp | 257 ExceptionsType = ExceptionHandling::WinEH; in AArch64MCAsmInfoMicrosoftCOFF() 258 WinEHEncodingType = WinEH::EncodingType::Itanium; in AArch64MCAsmInfoMicrosoftCOFF() 287 ExceptionsType = ExceptionHandling::WinEH; in AArch64MCAsmInfoGNUCOFF() 288 WinEHEncodingType = WinEH::EncodingType::Itanium; in AArch64MCAsmInfoGNUCOFF()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/X86/MCTargetDesc/ |
| H A D | X86MCAsmInfo.cpp | 157 WinEHEncodingType = WinEH::EncodingType::Itanium; in X86MCAsmInfoMicrosoft() 162 WinEHEncodingType = WinEH::EncodingType::X86; in X86MCAsmInfoMicrosoft() 165 ExceptionsType = ExceptionHandling::WinEH; in X86MCAsmInfoMicrosoft() 197 WinEHEncodingType = WinEH::EncodingType::Itanium; in X86MCAsmInfoGNUCOFF() 198 ExceptionsType = ExceptionHandling::WinEH; in X86MCAsmInfoGNUCOFF()
|
| H A D | X86WinCOFFStreamer.cpp | 31 void emitWindowsUnwindTables(WinEH::FrameInfo *Frame) override; 47 if (WinEH::FrameInfo *CurFrame = getCurrentWinFrameInfo()) in emitWinEHHandlerData() 51 void X86WinCOFFStreamer::emitWindowsUnwindTables(WinEH::FrameInfo *Frame) { in emitWindowsUnwindTables()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/Mips/MCTargetDesc/ |
| H A D | MipsMCAsmInfo.cpp | 55 WinEHEncodingType = WinEH::EncodingType::Itanium; in MipsCOFFMCAsmInfo() 57 ExceptionsType = ExceptionHandling::WinEH; in MipsCOFFMCAsmInfo()
|
| /freebsd/contrib/llvm-project/llvm/lib/Support/ |
| H A D | ARMWinEH.cpp | 13 namespace WinEH { namespace
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Support/ |
| H A D | CodeGen.h | 58 WinEH, ///< Windows Exception Handling enumerator
|
| H A D | ARMWinEH.h | 18 namespace WinEH {
|
| /freebsd/contrib/llvm-project/clang/lib/Driver/ToolChains/ |
| H A D | Cygwin.cpp | 52 return llvm::ExceptionHandling::WinEH; in GetExceptionModel()
|
| H A D | MinGW.cpp | 619 return llvm::ExceptionHandling::WinEH; in GetExceptionModel()
|
| /freebsd/contrib/llvm-project/llvm/tools/llvm-readobj/ |
| H A D | ARMWinEHPrinter.cpp | 75 raw_ostream &operator<<(raw_ostream &OS, const ARM::WinEH::ReturnType &RT) { in operator <<() 77 case ARM::WinEH::ReturnType::RT_POP: in operator <<() 80 case ARM::WinEH::ReturnType::RT_B: in operator <<() 83 case ARM::WinEH::ReturnType::RT_BW: in operator <<() 86 case ARM::WinEH::ReturnType::RT_NoEpilogue: in operator <<() 114 namespace WinEH { namespace
|
| H A D | ARMWinEHPrinter.h | 18 namespace WinEH {
|
| /freebsd/contrib/llvm-project/clang/include/clang/Basic/ |
| H A D | LangOptions.h | 341 enum class ExceptionHandlingKind { None, SjLj, WinEH, DwarfCFI, Wasm }; enumerator 796 return getExceptionHandling() == ExceptionHandlingKind::WinEH; in hasSEHExceptions()
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | CommandFlags.cpp | 188 clEnumValN(ExceptionHandling::WinEH, "wineh", in CGOPT()
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/AsmPrinter/ |
| H A D | AsmPrinter.cpp | 621 case ExceptionHandling::WinEH: in doInitialization() 624 case WinEH::EncodingType::Invalid: in doInitialization() 626 case WinEH::EncodingType::X86: in doInitialization() 627 case WinEH::EncodingType::Itanium: in doInitialization() 4410 MAI->getExceptionHandlingType() == ExceptionHandling::WinEH) { in emitBasicBlockStart()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Passes/ |
| H A D | CodeGenPassBuilder.h | 832 case ExceptionHandling::WinEH: in addPassesToHandleExceptions()
|