diff options
author | Tim Northover <tnorthover@apple.com> | 2014-10-14 22:12:17 +0000 |
---|---|---|
committer | Tim Northover <tnorthover@apple.com> | 2014-10-14 22:12:17 +0000 |
commit | cf6ce0c8f750e8d62831f8058a9ee44f57a972cd (patch) | |
tree | dd0a00b39030d73c54ca5f1c7d102e2b6bd2fdbd /llvm/lib | |
parent | 9a4c043d675380904c76caa461741cc450c9831c (diff) | |
download | bcm5719-llvm-cf6ce0c8f750e8d62831f8058a9ee44f57a972cd.tar.gz bcm5719-llvm-cf6ce0c8f750e8d62831f8058a9ee44f57a972cd.zip |
ARM: remove ARM/Thumb distinction for preferred alignment.
Thumb1 has legitimate reasons for preferring 32-bit alignment of types
i1/i8/i16, since the 16-bit encoding of "add rD, sp, #imm" requires #imm to be
a multiple of 4. However, this is a trade-off betweem code size and RAM usage;
the DataLayout string is not the best place to represent it even if desired.
So this patch removes the extra Thumb requirements, hopefully making ARM and
Thumb completely compatible in this respect.
llvm-svn: 219734
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Target/ARM/ARMSubtarget.cpp | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/llvm/lib/Target/ARM/ARMSubtarget.cpp b/llvm/lib/Target/ARM/ARMSubtarget.cpp index bc04f37331e..89534fb0141 100644 --- a/llvm/lib/Target/ARM/ARMSubtarget.cpp +++ b/llvm/lib/Target/ARM/ARMSubtarget.cpp @@ -102,11 +102,6 @@ static std::string computeDataLayout(ARMSubtarget &ST) { // Pointers are 32 bits and aligned to 32 bits. Ret += "-p:32:32"; - // On thumb, i16,i18 and i1 have natural aligment requirements, but we try to - // align to 32. - if (ST.isThumb()) - Ret += "-i1:8:32-i8:8:32-i16:16:32"; - // ABIs other than APCS have 64 bit integers with natural alignment. if (!ST.isAPCS_ABI()) Ret += "-i64:64"; |