Alignment values for i64 and f64 on ppc64 were wrong,
authorDale Johannesen <dalej@apple.com>
Fri, 27 Feb 2009 00:56:35 +0000 (00:56 +0000)
committerDale Johannesen <dalej@apple.com>
Fri, 27 Feb 2009 00:56:35 +0000 (00:56 +0000)
possibly for the reason suggested by the comment.
No wonder it didn't work very well.  This unblocks
bootstrap with assertions on ppc.

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

lib/Target/PowerPC/PPCSubtarget.h

index bb29d449507a31af0156725fa8c8b73ce43d5142..d268a7d9b73a019ee12835da334ac297c301a8ee 100644 (file)
@@ -108,7 +108,9 @@ public:
   /// getTargetDataString - Return the pointer size and type alignment
   /// properties of this subtarget.
   const char *getTargetDataString() const {
-    return isPPC64() ? "E-p:64:64-f64:32:64-i64:32:64-f128:64:128"
+    // Note, the alignment values for f64 and i64 on ppc64 in Darwin
+    // documentation are wrong; these are correct (i.e. "what gcc does").
+    return isPPC64() ? "E-p:64:64-f64:64:64-i64:64:64-f128:64:128"
                      : "E-p:32:32-f64:32:64-i64:32:64-f128:64:128";
   }