[cfe-commits] r91705 - /cfe/trunk/lib/Basic/Targets.cpp

Daniel Dunbar daniel at zuster.org
Fri Dec 18 11:57:13 PST 2009


Author: ddunbar
Date: Fri Dec 18 13:57:13 2009
New Revision: 91705

URL: http://llvm.org/viewvc/llvm-project?rev=91705&view=rev
Log:
ARM: Define __thumb2__ for V6T2 targets and only define
__USING_SJLJ_EXCEPTIONS__ on Darwin.

Modified:
    cfe/trunk/lib/Basic/Targets.cpp

Modified: cfe/trunk/lib/Basic/Targets.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targets.cpp?rev=91705&r1=91704&r2=91705&view=diff

==============================================================================
--- cfe/trunk/lib/Basic/Targets.cpp (original)
+++ cfe/trunk/lib/Basic/Targets.cpp Fri Dec 18 13:57:13 2009
@@ -1194,13 +1194,11 @@
   ARMTargetInfo(const std::string &TripleStr)
     : TargetInfo(TripleStr), ABI("aapcs-linux"), CPU("arm1136j-s")
   {
-    llvm::Triple Triple(TripleStr);
-
     SizeType = UnsignedInt;
     PtrDiffType = SignedInt;
 
     // FIXME: Should we just treat this as a feature?
-    IsThumb = Triple.getArchName().startswith("thumb");
+    IsThumb = getTriple().getArchName().startswith("thumb");
     if (IsThumb) {
       DescriptionString = ("e-p:32:32:32-i1:8:32-i8:8:32-i16:16:32-i32:32:32-"
                            "i64:64:64-f32:32:32-f64:64:64-"
@@ -1308,7 +1306,7 @@
     if (IsThumb) {
       Define(Defs, "__THUMBEL__");
       Define(Defs, "__thumb__");
-      if (CPUArch.startswith("7"))
+      if (CPUArch == "6T2" || CPUArch.startswith("7"))
         Define(Defs, "__thumb2__");
     }
 
@@ -1317,7 +1315,8 @@
     // FIXME: This should be conditional on VFP instruction support.
     Define(Defs, "__VFP_FP__");
 
-    Define(Defs, "__USING_SJLJ_EXCEPTIONS__");
+    if (getTriple().getOS() == llvm::Triple::Darwin)
+      Define(Defs, "__USING_SJLJ_EXCEPTIONS__");
   }
   virtual void getTargetBuiltins(const Builtin::Info *&Records,
                                  unsigned &NumRecords) const {





More information about the cfe-commits mailing list