diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2007-08-31 12:23:58 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2007-08-31 12:23:58 +0000 |
commit | 7240ae3cac925ea3cface5982d75aa19c1d7c4b7 (patch) | |
tree | e32271768793d50c742d825a67d5a0c783592bed /lib/Target/X86 | |
parent | d4e4937b79a7da789379a09117cc74f20cd60623 (diff) | |
download | external_llvm-7240ae3cac925ea3cface5982d75aa19c1d7c4b7.zip external_llvm-7240ae3cac925ea3cface5982d75aa19c1d7c4b7.tar.gz external_llvm-7240ae3cac925ea3cface5982d75aa19c1d7c4b7.tar.bz2 |
Align i64 and f64 at 8 byte on x86-64.
This is mandated table 3.1 at
http://www.x86-64.org/documentation/abi.pdf
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41642 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86')
-rw-r--r-- | lib/Target/X86/X86Subtarget.h | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/lib/Target/X86/X86Subtarget.h b/lib/Target/X86/X86Subtarget.h index 49af986..1b76d76 100644 --- a/lib/Target/X86/X86Subtarget.h +++ b/lib/Target/X86/X86Subtarget.h @@ -145,12 +145,18 @@ public: std::string getDataLayout() const { const char *p; - if (is64Bit()) - p = "e-p:64:64-f64:32:64-i64:32:64-f80:128:128"; - else if (isTargetDarwin()) - p = "e-p:32:32-f64:32:64-i64:32:64-f80:128:128"; - else - p = "e-p:32:32-f64:32:64-i64:32:64-f80:32:32"; + if (is64Bit()) { + if (isTargetDarwin()) + p = "e-p:64:64-f64:32:64-i64:32:64-f80:128:128"; + else + p = "e-p:64:64-f64:64:64-i64:64:64-f80:128:128"; + } + else { + if (isTargetDarwin()) + p = "e-p:32:32-f64:32:64-i64:32:64-f80:128:128"; + else + p = "e-p:32:32-f64:32:64-i64:32:64-f80:32:32"; + } return std::string(p); } |