Home
last modified time | relevance | path

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

12

/llvm-project-15.0.7/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()
33 static WinEH::Instruction PushMachFrame(MCSymbol *L, bool Code) { in PushMachFrame()
36 static WinEH::Instruction SaveNonVol(MCSymbol *L, unsigned Reg, in SaveNonVol()
42 static WinEH::Instruction SaveXMM(MCSymbol *L, unsigned Reg, in SaveXMM()
49 return WinEH::Instruction(UOP_SetFPReg, L, Reg, Off); in SetFPReg()
53 class UnwindEmitter : public WinEH::UnwindEmitter {
56 void EmitUnwindInfo(MCStreamer &Streamer, WinEH::FrameInfo *FI,
60 class ARMUnwindEmitter : public WinEH::UnwindEmitter {
[all …]
H A DMCAsmInfo.h33 namespace WinEH {
459 WinEH::EncodingType WinEHEncodingType = WinEH::EncodingType::Invalid;
778 WinEH::EncodingType getWinEHEncodingType() const { return WinEHEncodingType; } in getWinEHEncodingType()
794 return ExceptionsType == ExceptionHandling::WinEH && in usesWindowsCFI()
795 (WinEHEncodingType != WinEH::EncodingType::Invalid && in usesWindowsCFI()
796 WinEHEncodingType != WinEH::EncodingType::X86); in usesWindowsCFI()
H A DMCStreamer.h221 std::vector<std::unique_ptr<WinEH::FrameInfo>> WinFrameInfos;
223 WinEH::FrameInfo *CurrentWinFrameInfo;
259 WinEH::FrameInfo *getCurrentWinFrameInfo() { in getCurrentWinFrameInfo()
263 virtual void emitWindowsUnwindTables(WinEH::FrameInfo *Frame);
313 WinEH::FrameInfo *EnsureValidWinFrameInfo(SMLoc Loc);
321 ArrayRef<std::unique_ptr<WinEH::FrameInfo>> getWinFrameInfos() const { in getWinFrameInfos()
H A DMCTargetOptions.h23 WinEH, ///< Windows Exception Handling enumerator
H A DMCWinEH.h20 namespace WinEH {
/llvm-project-15.0.7/llvm/lib/Target/ARM/MCTargetDesc/
H A DARMWinCOFFStreamer.cpp32 void emitWindowsUnwindTables(WinEH::FrameInfo *Frame) override;
114 WinEH::FrameInfo *CurFrame = S.EnsureValidWinFrameInfo(SMLoc()); in emitARMWinUnwindCode()
118 auto Inst = WinEH::Instruction(UnwindCode, Label, Reg, Offset); in emitARMWinUnwindCode()
210 WinEH::FrameInfo *CurFrame = S.EnsureValidWinFrameInfo(SMLoc()); in emitARMWinCFIPrologEnd()
216 WinEH::Instruction Inst = in emitARMWinCFIPrologEnd()
217 WinEH::Instruction(Win64EH::UOP_End, /*Label=*/nullptr, -1, 0); in emitARMWinCFIPrologEnd()
225 WinEH::FrameInfo *CurFrame = S.EnsureValidWinFrameInfo(SMLoc()); in emitARMWinCFIEpilogStart()
236 WinEH::FrameInfo *CurFrame = S.EnsureValidWinFrameInfo(SMLoc()); in emitARMWinCFIEpilogEnd()
246 std::vector<WinEH::Instruction> &Epilog = in emitARMWinCFIEpilogEnd()
251 WinEH::Instruction EndInstr = Epilog.back(); in emitARMWinCFIEpilogEnd()
[all …]
H A DARMMCAsmInfo.cpp91 ExceptionsType = ExceptionHandling::WinEH; in ARMCOFFMCAsmInfoMicrosoft()
92 WinEHEncodingType = WinEH::EncodingType::Itanium; in ARMCOFFMCAsmInfoMicrosoft()
114 ExceptionsType = ExceptionHandling::WinEH; in ARMCOFFMCAsmInfoGNU()
115 WinEHEncodingType = WinEH::EncodingType::Itanium; in ARMCOFFMCAsmInfoGNU()
/llvm-project-15.0.7/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()
187 WinEH::FrameInfo *CurFrame = S.EnsureValidWinFrameInfo(SMLoc()); in emitARM64WinCFIEpilogStart()
197 WinEH::FrameInfo *CurFrame = S.EnsureValidWinFrameInfo(SMLoc()); in emitARM64WinCFIEpilogEnd()
202 WinEH::Instruction Inst = in emitARM64WinCFIEpilogEnd()
[all …]
H A DAArch64MCAsmInfo.cpp115 ExceptionsType = ExceptionHandling::WinEH; in AArch64MCAsmInfoMicrosoftCOFF()
116 WinEHEncodingType = WinEH::EncodingType::Itanium; in AArch64MCAsmInfoMicrosoftCOFF()
132 ExceptionsType = ExceptionHandling::WinEH; in AArch64MCAsmInfoGNUCOFF()
133 WinEHEncodingType = WinEH::EncodingType::Itanium; in AArch64MCAsmInfoGNUCOFF()
/llvm-project-15.0.7/llvm/lib/MC/
H A DMCWin64EH.cpp64 WinEH::Instruction &inst) { in EmitUnwindCode()
545 const WinEH::FrameInfo *info) { in FindMatchingEpilog()
625 for (WinEH::Instruction &Inst : Instructions) in simplifyARM64Opcodes()
658 const std::vector<WinEH::Instruction> &Epilog = in checkARM64PackedEpilog()
1708 const WinEH::FrameInfo::Epilog &EpilogInfo = in tryARMPackedUnwind()
1731 for (const WinEH::Instruction &Inst : Epilog) { in tryARMPackedUnwind()
2191 WinEH::Instruction inst = EpilogInstrs[i]; in ARMEmitUnwindInfo()
2226 WinEH::FrameInfo *Info = CFI.get(); in Emit()
2236 WinEH::FrameInfo *Info = CFI.get(); in Emit()
2271 WinEH::FrameInfo *Info = CFI.get(); in Emit()
[all …]
H A DMCStreamer.cpp728 WinEH::FrameInfo *CurFrame = EnsureValidWinFrameInfo(Loc); in emitWinCFIEndProc()
746 WinEH::FrameInfo *CurFrame = EnsureValidWinFrameInfo(Loc); in emitWinCFIFuncletOrFuncEnd()
757 WinEH::FrameInfo *CurFrame = EnsureValidWinFrameInfo(Loc); in emitWinCFIStartChained()
770 WinEH::FrameInfo *CurFrame = EnsureValidWinFrameInfo(Loc); in emitWinCFIEndChained()
785 WinEH::FrameInfo *CurFrame = EnsureValidWinFrameInfo(Loc); in emitWinEHHandler()
801 WinEH::FrameInfo *CurFrame = EnsureValidWinFrameInfo(Loc); in emitWinEHHandlerData()
865 WinEH::FrameInfo *CurFrame = EnsureValidWinFrameInfo(Loc); in emitWinCFIPushReg()
878 WinEH::FrameInfo *CurFrame = EnsureValidWinFrameInfo(Loc); in emitWinCFISetFrame()
892 WinEH::Instruction Inst = Win64EH::Instruction::SetFPReg( in emitWinCFISetFrame()
899 WinEH::FrameInfo *CurFrame = EnsureValidWinFrameInfo(Loc); in emitWinCFIAllocStack()
[all …]
H A DMCWinEH.cpp12 namespace WinEH { namespace
/llvm-project-15.0.7/llvm/lib/Target/X86/MCTargetDesc/
H A DX86MCAsmInfo.cpp123 WinEHEncodingType = WinEH::EncodingType::Itanium; in X86MCAsmInfoMicrosoft()
128 WinEHEncodingType = WinEH::EncodingType::X86; in X86MCAsmInfoMicrosoft()
131 ExceptionsType = ExceptionHandling::WinEH; in X86MCAsmInfoMicrosoft()
161 WinEHEncodingType = WinEH::EncodingType::Itanium; in X86MCAsmInfoGNUCOFF()
162 ExceptionsType = ExceptionHandling::WinEH; in X86MCAsmInfoGNUCOFF()
H A DX86WinCOFFStreamer.cpp30 void emitWindowsUnwindTables(WinEH::FrameInfo *Frame) override;
41 if (WinEH::FrameInfo *CurFrame = getCurrentWinFrameInfo()) in emitWinEHHandlerData()
45 void X86WinCOFFStreamer::emitWindowsUnwindTables(WinEH::FrameInfo *Frame) { in emitWindowsUnwindTables()
/llvm-project-15.0.7/llvm/lib/Support/
H A DARMWinEH.cpp13 namespace WinEH { namespace
/llvm-project-15.0.7/clang/test/CodeGenObjCXX/
H A Darc-exceptions-seh.mm3 // WinEH requires funclet tokens on nounwind intrinsics if they can lower to
/llvm-project-15.0.7/llvm/test/Feature/OperandBundles/
H A Dinliner-funclet-wineh.ll3 ; WinEH requires funclet tokens on nounwind intrinsics if they can lower to
/llvm-project-15.0.7/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 {
/llvm-project-15.0.7/llvm/test/CodeGen/X86/
H A Dwin64-funclet-preisel-intrinsics.ll3 ; WinEH requires funclet tokens on nounwind intrinsics if they can lower to
/llvm-project-15.0.7/clang/include/clang/Basic/
H A DLangOptions.h293 enum class ExceptionHandlingKind { None, SjLj, WinEH, DwarfCFI, Wasm }; enumerator
581 return getExceptionHandling() == ExceptionHandlingKind::WinEH; in hasSEHExceptions()
/llvm-project-15.0.7/llvm/include/llvm/Support/
H A DARMWinEH.h17 namespace WinEH {
/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/
H A DAsmPrinter.cpp564 case ExceptionHandling::WinEH: in doInitialization()
567 case WinEH::EncodingType::Invalid: in doInitialization()
569 case WinEH::EncodingType::X86: in doInitialization()
570 case WinEH::EncodingType::Itanium: in doInitialization()
3588 MAI->getExceptionHandlingType() == ExceptionHandling::WinEH) { in emitBasicBlockStart()
/llvm-project-15.0.7/llvm/lib/CodeGen/
H A DCommandFlags.cpp173 clEnumValN(ExceptionHandling::WinEH, "wineh", in CGOPT()
/llvm-project-15.0.7/llvm/include/llvm/CodeGen/
H A DCodeGenPassBuilder.h694 case ExceptionHandling::WinEH: in addPassesToHandleExceptions()

12