mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-18 10:31:57 +00:00
When generating against the Win64 EH scheme, set the handler to the GCC-specific
handler. At this moment, only GCC-style exceptions are supported. Other kinds of exceptions, including "traditional" SEH and Microsoft Visual C++ exceptions, need more work--and an compiler exception model that isn't specific to GCC-style exceptions! In particular, I imagine that it would be possible to mix "traditional" SEH with GCC-style EH or Microsoft C++ EH. Currently LLVM has no way (beyond some target-specific defaults and whole-module compiler switches) of knowing which scheme to use when. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132283 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
04507f062f
commit
12e3349de9
@ -76,6 +76,13 @@ void Win64Exception::BeginFunction(const MachineFunction *MF) {
|
||||
return;
|
||||
|
||||
Asm->OutStreamer.EmitWin64EHStartProc(Asm->CurrentFnSym);
|
||||
|
||||
if (!shouldEmitPersonality)
|
||||
return;
|
||||
|
||||
MCSymbol *GCCHandlerSym =
|
||||
Asm->GetExternalSymbolSymbol("_GCC_specific_handler");
|
||||
Asm->OutStreamer.EmitWin64EHHandler(GCCHandlerSym, true, true);
|
||||
}
|
||||
|
||||
/// EndFunction - Gather and emit post-function exception information.
|
||||
|
Loading…
Reference in New Issue
Block a user