aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/X86/X86TargetMachine.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2013-12-19 00:44:37 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2013-12-19 00:44:37 +0000
commitddb913cc8f95709ef68be05a9a95c2cf225d4a28 (patch)
tree991b3b5caa0f5d9dc67da970f8731a4e87a03e76 /llvm/lib/Target/X86/X86TargetMachine.cpp
parentf037bd1e7c5bcd905c1a5678ddc671cd012ec4d9 (diff)
downloadllvm-ddb913cc8f95709ef68be05a9a95c2cf225d4a28.zip
llvm-ddb913cc8f95709ef68be05a9a95c2cf225d4a28.tar.gz
llvm-ddb913cc8f95709ef68be05a9a95c2cf225d4a28.tar.bz2
Synchronize the NaCl DataLayout strings with the ones in clang.
Patch by Derek Schuff. llvm-svn: 197640
Diffstat (limited to 'llvm/lib/Target/X86/X86TargetMachine.cpp')
-rw-r--r--llvm/lib/Target/X86/X86TargetMachine.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/llvm/lib/Target/X86/X86TargetMachine.cpp b/llvm/lib/Target/X86/X86TargetMachine.cpp
index 64816e4..04c1d7e 100644
--- a/llvm/lib/Target/X86/X86TargetMachine.cpp
+++ b/llvm/lib/Target/X86/X86TargetMachine.cpp
@@ -39,13 +39,16 @@ static std::string computeDataLayout(const X86Subtarget &ST) {
Ret += "-p:32:32";
// Some ABIs align 64 bit integers and doubles to 64 bits, others to 32.
- if (ST.is64Bit() || ST.isTargetCygMing() || ST.isTargetWindows())
+ if (ST.is64Bit() || ST.isTargetCygMing() || ST.isTargetWindows() ||
+ ST.isTargetNaCl())
Ret += "-i64:64";
else
Ret += "-f64:32:64";
// Some ABIs align long double to 128 bits, others to 32.
- if (ST.is64Bit() || ST.isTargetDarwin())
+ if (ST.isTargetNaCl())
+ ; // No f80
+ else if (ST.is64Bit() || ST.isTargetDarwin())
Ret += "-f80:128";
else
Ret += "-f80:32";