]> granicus.if.org Git - clang/commitdiff
[SEH] Re-enable SEH on x86 Windows after r241699
authorReid Kleckner <reid@kleckner.net>
Wed, 8 Jul 2015 18:27:10 +0000 (18:27 +0000)
committerReid Kleckner <reid@kleckner.net>
Wed, 8 Jul 2015 18:27:10 +0000 (18:27 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@241704 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/Basic/TargetInfo.h
test/CodeGen/exceptions-seh-finally.c
test/CodeGen/exceptions-seh.c

index 2c32e8c22bff12817eb853f9e72315f0e164f5a4..fed69a8281e94ad8753fa045ce9aa52308b7617e 100644 (file)
@@ -812,7 +812,8 @@ public:
   /// \brief Whether the target supports SEH __try.
   bool isSEHTrySupported() const {
     return getTriple().isOSWindows() &&
-           getTriple().getArch() == llvm::Triple::x86_64;
+           (getTriple().getArch() == llvm::Triple::x86 ||
+            getTriple().getArch() == llvm::Triple::x86_64);
   }
 
   /// \brief Return true if {|} are normal characters in the asm string.
index 513a1f3c89adfd116ec74acc5343f43d96f6198e..772e28306b58cf2f4bc8099fe4f6ef24d2b5d315 100644 (file)
@@ -1,6 +1,5 @@
 // RUN: %clang_cc1 %s -triple x86_64-pc-win32 -fms-extensions -emit-llvm -o - | FileCheck %s
-// FIXME: Re-enable 32-bit SEH.
-// RUNX: %clang_cc1 %s -triple i686-pc-win32 -fms-extensions -emit-llvm -o - | FileCheck %s
+// RUN: %clang_cc1 %s -triple i686-pc-win32 -fms-extensions -emit-llvm -o - | FileCheck %s
 
 void abort(void) __attribute__((noreturn));
 void might_crash(void);
index 702125b07a6f084de6828c138ae4d849a1c753b3..9707a9a31bebc6ef3bb3687ec8b84286dd09caef 100644 (file)
@@ -1,8 +1,7 @@
 // RUN: %clang_cc1 %s -triple x86_64-pc-win32 -fms-extensions -emit-llvm -o - \
 // RUN:         | FileCheck %s --check-prefix=CHECK --check-prefix=X64
-// FIXME: Re-enable 32-bit SEH.
-// RUNX: %clang_cc1 %s -triple i686-pc-win32 -fms-extensions -emit-llvm -o - \
-// RUNX:         | FileCheck %s --check-prefix=CHECK --check-prefix=X86
+// RUN: %clang_cc1 %s -triple i686-pc-win32 -fms-extensions -emit-llvm -o - \
+// RUN:         | FileCheck %s --check-prefix=CHECK --check-prefix=X86
 
 void try_body(int numerator, int denominator, int *myres) {
   *myres = numerator / denominator;