aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/X86/X86TargetMachine.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2013-12-16 19:31:14 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2013-12-16 19:31:14 +0000
commite89b41495ae804c8a5eaa910be910b6eff9bea5e (patch)
tree5af5990ec4acd1c9168c904854379f932a7bdd57 /llvm/lib/Target/X86/X86TargetMachine.cpp
parent5dfc94b160cbe600849caf3222434d3284b22979 (diff)
downloadllvm-e89b41495ae804c8a5eaa910be910b6eff9bea5e.zip
llvm-e89b41495ae804c8a5eaa910be910b6eff9bea5e.tar.gz
llvm-e89b41495ae804c8a5eaa910be910b6eff9bea5e.tar.bz2
One last cleanup of LLVM's DataLayout strings.
Produce them in the same order on every target. The order is that of getStringRepresentation: e|E-i*-f*-v*-a*-s*-n*-S*. llvm-svn: 197411
Diffstat (limited to 'llvm/lib/Target/X86/X86TargetMachine.cpp')
-rw-r--r--llvm/lib/Target/X86/X86TargetMachine.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/llvm/lib/Target/X86/X86TargetMachine.cpp b/llvm/lib/Target/X86/X86TargetMachine.cpp
index 2165aef..64816e4 100644
--- a/llvm/lib/Target/X86/X86TargetMachine.cpp
+++ b/llvm/lib/Target/X86/X86TargetMachine.cpp
@@ -38,11 +38,6 @@ static std::string computeDataLayout(const X86Subtarget &ST) {
if (ST.isTarget64BitILP32() || !ST.is64Bit())
Ret += "-p:32:32";
- // Objects on the stack ore aligned to 64 bits.
- // FIXME: of any size?
- if (ST.is64Bit())
- Ret += "-s:64";
-
// Some ABIs align 64 bit integers and doubles to 64 bits, others to 32.
if (ST.is64Bit() || ST.isTargetCygMing() || ST.isTargetWindows())
Ret += "-i64:64";
@@ -55,6 +50,10 @@ static std::string computeDataLayout(const X86Subtarget &ST) {
else
Ret += "-f80:32";
+ // Objects on the stack ore aligned to 64 bits.
+ if (ST.is64Bit())
+ Ret += "-s:64";
+
// The registers can hold 8, 16, 32 or, in x86-64, 64 bits.
if (ST.is64Bit())
Ret += "-n8:16:32:64";