]> granicus.if.org Git - clang/commitdiff
Update DataLayout/DescriptionString for ppc64le
authorWill Schmidt <will_schmidt@vnet.ibm.com>
Mon, 24 Mar 2014 15:48:02 +0000 (15:48 +0000)
committerWill Schmidt <will_schmidt@vnet.ibm.com>
Mon, 24 Mar 2014 15:48:02 +0000 (15:48 +0000)
Update DataLayout/DescriptionString for ppc64le

Similar LLVM change made in r203664

Testcase included.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@204613 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Basic/Targets.cpp
test/CodeGen/target-data.c

index 1030a8cc38424cd705bd943bba411ab984718abd..0e1292d48d5d89e1d30b78a792e0b432141ed3c0 100644 (file)
@@ -1245,8 +1245,13 @@ public:
       LongDoubleWidth = LongDoubleAlign = 64;
       LongDoubleFormat = &llvm::APFloat::IEEEdouble;
       DescriptionString = "E-m:e-i64:64-n32:64";
-    } else
-      DescriptionString = "E-m:e-i64:64-n32:64";
+    } else {
+      if ((Triple.getArch() == llvm::Triple::ppc64le)) {
+        DescriptionString = "e-m:e-i64:64-n32:64";
+      } else {
+        DescriptionString = "E-m:e-i64:64-n32:64";
+      }
+}
 
     // PPC64 supports atomics up to 8 bytes.
     MaxAtomicPromoteWidth = MaxAtomicInlineWidth = 64;
index 6ef445a408479da8cc204d316df83e4ab6ff22aa..0cc46b82a75c7f0c4f5514cd8ceb3fd9350f85c0 100644 (file)
 // RUN: FileCheck %s -check-prefix=PPC64-LINUX
 // PPC64-LINUX: target datalayout = "E-m:e-i64:64-n32:64"
 
+// RUN: %clang_cc1 -triple powerpc64le-linux -o - -emit-llvm %s | \
+// RUN: FileCheck %s -check-prefix=PPC64LE-LINUX
+// PPC64LE-LINUX: target datalayout = "e-m:e-i64:64-n32:64"
+
 // RUN: %clang_cc1 -triple powerpc-darwin -o - -emit-llvm %s | \
 // RUN: FileCheck %s -check-prefix=PPC32-DARWIN
 // PPC32-DARWIN: target datalayout = "E-m:o-p:32:32-f64:32:64-n32"