summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorDaniel Sanders <daniel.sanders@imgtec.com>2014-07-17 10:10:04 +0000
committerDaniel Sanders <daniel.sanders@imgtec.com>2014-07-17 10:10:04 +0000
commit701e961650c56b1688c64fab62ab25383cd7185d (patch)
treeb09b9a4dd80fb1abec166e7b2a90c6f7cd3b782e /llvm
parent834609d80b9c366ae141dcd6dbda62279a8b0859 (diff)
downloadbcm5719-llvm-701e961650c56b1688c64fab62ab25383cd7185d.tar.gz
bcm5719-llvm-701e961650c56b1688c64fab62ab25383cd7185d.zip
[mips] .reginfo is 8 byte aligned on N32.
Differential Revision: http://reviews.llvm.org/D4540 llvm-svn: 213246
Diffstat (limited to 'llvm')
-rw-r--r--llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp3
-rw-r--r--llvm/test/MC/Mips/elf_reginfo.s2
2 files changed, 3 insertions, 2 deletions
diff --git a/llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp b/llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
index e017a27d6b9..4e7216921b9 100644
--- a/llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
+++ b/llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
@@ -366,7 +366,8 @@ void MipsTargetELFStreamer::finish() {
const MCSectionELF *Sec =
Context.getELFSection(".reginfo", ELF::SHT_MIPS_REGINFO, ELF::SHF_ALLOC,
SectionKind::getMetadata(), 24, "");
- MCA.getOrCreateSectionData(*Sec).setAlignment(4);
+ MCA.getOrCreateSectionData(*Sec)
+ .setAlignment(Features & Mips::FeatureN32 ? 8 : 4);
OS.SwitchSection(Sec);
OS.EmitIntValue(0, 4); // ri_gprmask
diff --git a/llvm/test/MC/Mips/elf_reginfo.s b/llvm/test/MC/Mips/elf_reginfo.s
index b88607a02d3..ba4788a39d9 100644
--- a/llvm/test/MC/Mips/elf_reginfo.s
+++ b/llvm/test/MC/Mips/elf_reginfo.s
@@ -27,6 +27,6 @@
# CHECK_32-LABEL: Name: .reginfo
# CHECK_32-NEXT: Type: SHT_MIPS_REGINFO
# CHECK_32-NEXT: Flags [ (0x2)
-# CHECK_32: AddressAlignment: 4
+# CHECK_32: AddressAlignment: 8
# CHECK_32: EntrySize: 24
# CHECK_32-LABEL: }
OpenPOWER on IntegriCloud