diff options
author | Tom Stellard <thomas.stellard@amd.com> | 2014-04-08 14:27:58 +0000 |
---|---|---|
committer | Tom Stellard <thomas.stellard@amd.com> | 2014-04-08 14:27:58 +0000 |
commit | 16fbfb406f11a05ff2a745639a60237fb071b1a6 (patch) | |
tree | 04f4a342f8c7d60948c9c75fac4411911d7c1b34 | |
parent | aa3637aafbbe22081f47309184666593cb45b606 (diff) | |
download | llvm-16fbfb406f11a05ff2a745639a60237fb071b1a6.tar.gz llvm-16fbfb406f11a05ff2a745639a60237fb071b1a6.tar.bz2 llvm-16fbfb406f11a05ff2a745639a60237fb071b1a6.tar.xz |
Merging r197574:
------------------------------------------------------------------------
r197574 | rafael.espindola | 2013-12-18 10:06:25 -0500 (Wed, 18 Dec 2013) | 8 lines
Fix f64 and f128 for ppc-darwin.
This patch adds -f64:32:64 to 32 bit ppc darwin since a f64 inside a
structure are only 32 bit aligned.
The patch also drop -f128:64:128 from all ppc darwin, since f128 is
128 bit aligned.
------------------------------------------------------------------------
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_34@205767 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/PowerPC/PPCTargetMachine.cpp | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/lib/Target/PowerPC/PPCTargetMachine.cpp b/lib/Target/PowerPC/PPCTargetMachine.cpp index 44abfbcf6a..d6767d51f2 100644 --- a/lib/Target/PowerPC/PPCTargetMachine.cpp +++ b/lib/Target/PowerPC/PPCTargetMachine.cpp @@ -50,14 +50,12 @@ static std::string getDataLayoutString(const PPCSubtarget &ST) { // documentation are wrong; these are correct (i.e. "what gcc does"). if (ST.isPPC64() || ST.isSVR4ABI()) Ret += "-f64:64:64-i64:64:64"; + else + Ret += "-f64:32:64"; // Set support for 128 floats depending on the ABI. - if (ST.isPPC64() && ST.isSVR4ABI()) { - if (T.getOS() != llvm::Triple::FreeBSD) - Ret += "-f128:128:128"; - } else { + if (!ST.isPPC64() && ST.isSVR4ABI()) Ret += "-f128:64:128"; - } // Some ABIs support 128 bit vectors. if (ST.isPPC64() && ST.isSVR4ABI()) |