diff options
author | Reid Kleckner <reid@kleckner.net> | 2014-11-14 02:01:10 +0000 |
---|---|---|
committer | Reid Kleckner <reid@kleckner.net> | 2014-11-14 02:01:10 +0000 |
commit | b27216c806161a863227e115a7e6598b89f28445 (patch) | |
tree | 0cf4c94b8ce911adcf39379a7699a4d08b094ac6 /lib/Basic | |
parent | 22dc02b19ced0534aba95ded55b099b4da7b934a (diff) |
Remove -fseh-exceptions in favor of checking the triple
This option was misleading because it looked like it enabled the
language feature of SEH (__try / __except), when this option was really
controlling which EH personality function to use. Mingw only supports
SEH and SjLj EH on x86_64, so we can simply do away with this flag.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@221963 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Basic')
-rw-r--r-- | lib/Basic/Targets.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp index 171ea58887..a9cbfb8538 100644 --- a/lib/Basic/Targets.cpp +++ b/lib/Basic/Targets.cpp @@ -3546,6 +3546,10 @@ public: DefineStd(Builder, "WIN64", Opts); Builder.defineMacro("__MINGW64__"); addMinGWDefines(Opts, Builder); + + // GCC defines this macro when it is using __gxx_personality_seh0. + if (!Opts.SjLjExceptions) + Builder.defineMacro("__SEH__"); } }; } // end anonymous namespace |