Home
last modified time | relevance | path

Searched refs:WinEH (Results 1 – 25 of 33) sorted by relevance

12

/freebsd/contrib/llvm-project/llvm/include/llvm/MC/
H A DMCWin64EH.h26 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 DMCAsmInfo.h40 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 DMCStreamer.h233 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 DMCWinEH.h22 namespace WinEH {
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/MCTargetDesc/
H A DARMWinCOFFStreamer.cpp32 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 DARMMCAsmInfo.cpp123 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 DMCWin64EH.cpp31 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 DMCStreamer.cpp715 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 DMCWinEH.cpp12 namespace WinEH { namespace
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/MCTargetDesc/
H A DAArch64WinCOFFStreamer.cpp32 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 DAArch64MCAsmInfo.cpp257 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 DX86MCAsmInfo.cpp157 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 DX86WinCOFFStreamer.cpp31 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 DMipsMCAsmInfo.cpp55 WinEHEncodingType = WinEH::EncodingType::Itanium; in MipsCOFFMCAsmInfo()
57 ExceptionsType = ExceptionHandling::WinEH; in MipsCOFFMCAsmInfo()
/freebsd/contrib/llvm-project/llvm/lib/Support/
H A DARMWinEH.cpp13 namespace WinEH { namespace
/freebsd/contrib/llvm-project/llvm/include/llvm/Support/
H A DCodeGen.h58 WinEH, ///< Windows Exception Handling enumerator
H A DARMWinEH.h18 namespace WinEH {
/freebsd/contrib/llvm-project/clang/lib/Driver/ToolChains/
H A DCygwin.cpp52 return llvm::ExceptionHandling::WinEH; in GetExceptionModel()
H A DMinGW.cpp619 return llvm::ExceptionHandling::WinEH; in GetExceptionModel()
/freebsd/contrib/llvm-project/llvm/tools/llvm-readobj/
H A DARMWinEHPrinter.cpp75 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 DARMWinEHPrinter.h18 namespace WinEH {
/freebsd/contrib/llvm-project/clang/include/clang/Basic/
H A DLangOptions.h341 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 DCommandFlags.cpp188 clEnumValN(ExceptionHandling::WinEH, "wineh", in CGOPT()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/AsmPrinter/
H A DAsmPrinter.cpp621 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 DCodeGenPassBuilder.h832 case ExceptionHandling::WinEH: in addPassesToHandleExceptions()

12