r258994 - ARMv7k: simplify logic for deciding sjlj-exceptions.

Tim Northover via cfe-commits cfe-commits at lists.llvm.org
Wed Jan 27 14:14:03 PST 2016


Author: tnorthover
Date: Wed Jan 27 16:14:02 2016
New Revision: 258994

URL: http://llvm.org/viewvc/llvm-project?rev=258994&view=rev
Log:
ARMv7k: simplify logic for deciding sjlj-exceptions.

Slight change of behaviour in the odd armv7+watchos case, which should match
the other runtime components.

Modified:
    cfe/trunk/lib/Driver/ToolChains.cpp
    cfe/trunk/test/Driver/arch-armv7k.c

Modified: cfe/trunk/lib/Driver/ToolChains.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/ToolChains.cpp?rev=258994&r1=258993&r2=258994&view=diff
==============================================================================
--- cfe/trunk/lib/Driver/ToolChains.cpp (original)
+++ cfe/trunk/lib/Driver/ToolChains.cpp Wed Jan 27 16:14:02 2016
@@ -1076,8 +1076,7 @@ bool Darwin::UseSjLjExceptions(const Arg
 
   // Only watchOS uses the new DWARF/Compact unwinding method.
   llvm::Triple Triple(ComputeLLVMTriple(Args));
-  return !(Triple.getArchName() == "armv7k" ||
-           Triple.getArchName() == "thumbv7k") && !isTargetWatchOS();
+  return !Triple.isWatchABI();
 }
 
 bool MachO::isPICDefault() const { return true; }

Modified: cfe/trunk/test/Driver/arch-armv7k.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/arch-armv7k.c?rev=258994&r1=258993&r2=258994&view=diff
==============================================================================
--- cfe/trunk/test/Driver/arch-armv7k.c (original)
+++ cfe/trunk/test/Driver/arch-armv7k.c Wed Jan 27 16:14:02 2016
@@ -9,3 +9,6 @@
 // match.
 
 // RUN: %clang -target x86_64-apple-macosx10.9 -arch armv7k -miphoneos-version-min=9.0 -c %s -### 2>&1 | FileCheck %s
+
+// RUN: %clang -target x86_64-apple-macosx10.9 -arch armv7 -mwatchos-version-min=9.0 -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-SJLJ
+// CHECK-SJLJ: "-fsjlj-exceptions"




More information about the cfe-commits mailing list