[llvm] r238730 - [WinCOFF] Ignore .safeseh for non-x86 architectures
David Majnemer
david.majnemer at gmail.com
Mon Jun 1 00:34:27 PDT 2015
Author: majnemer
Date: Mon Jun 1 02:34:26 2015
New Revision: 238730
URL: http://llvm.org/viewvc/llvm-project?rev=238730&view=rev
Log:
[WinCOFF] Ignore .safeseh for non-x86 architectures
We don't want to bother with creating .sxdata sections on Win64; all the
relevant information is already in the .pdata section.
Modified:
llvm/trunk/lib/MC/WinCOFFStreamer.cpp
Modified: llvm/trunk/lib/MC/WinCOFFStreamer.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/WinCOFFStreamer.cpp?rev=238730&r1=238729&r2=238730&view=diff
==============================================================================
--- llvm/trunk/lib/MC/WinCOFFStreamer.cpp (original)
+++ llvm/trunk/lib/MC/WinCOFFStreamer.cpp Mon Jun 1 02:34:26 2015
@@ -159,6 +159,12 @@ void MCWinCOFFStreamer::EndCOFFSymbolDef
}
void MCWinCOFFStreamer::EmitCOFFSafeSEH(MCSymbol const *Symbol) {
+ // SafeSEH is a feature specific to 32-bit x86. It does not exist (and is
+ // unnecessary) on all platforms which use table-based exception dispatch.
+ if (getContext().getObjectFileInfo()->getTargetTriple().getArch() !=
+ Triple::x86)
+ return;
+
if (Symbol->getFlags() & COFF::SF_SafeSEH)
return;
More information about the llvm-commits
mailing list