Index: llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp =================================================================== --- llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp +++ llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp @@ -366,7 +366,8 @@ 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 Index: llvm/trunk/test/MC/Mips/elf_reginfo.s =================================================================== --- llvm/trunk/test/MC/Mips/elf_reginfo.s +++ llvm/trunk/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: }