Also discard the `.MIPS.options' section, used with n64 MIPS binaries,
along with similar other MIPS sections (`.reginfo', `.MIPS.abiflags')
not relevant for the test cases concerned, fixing these regressions:
mips64-openbsd -FAIL: ld-elf/group3a
mips64-openbsd -FAIL: ld-elf/group3b
mips64-openbsd -FAIL: Place orphan sections (map file check)
mips64-openbsd -FAIL: ld-elf/orphan-region
mips64-openbsd -FAIL: ld-elf/orphan
mips64-openbsd -FAIL: overlay size (map file check)
mips64-openbsd -FAIL: overlay size
mips64el-openbsd -FAIL: ld-elf/group3a
mips64el-openbsd -FAIL: ld-elf/group3b
mips64el-openbsd -FAIL: Place orphan sections (map file check)
mips64el-openbsd -FAIL: ld-elf/orphan-region
mips64el-openbsd -FAIL: ld-elf/orphan
mips64el-openbsd -FAIL: overlay size (map file check)
mips64el-openbsd -FAIL: overlay size
Co-Authored-By: Maciej W. Rozycki <macro@orcam.me.uk>
binutils/
* testsuite/binutils-all/strip-3.d: Add `-R .MIPS.options' to
the `strip' tag.
ld/
* testsuite/ld-elf/group.ld: Also discard `.MIPS.options'.
* testsuite/ld-elf/orphan-region.ld: Likewise.
* testsuite/ld-elf/orphan.ld: Likewise.
* testsuite/ld-mips-elf/got-page-1.ld: Likewise.
* testsuite/ld-scripts/overlay-size.t: Likewise.
#PROG: strip
#source: empty.s
-#strip: -R .text -R .data -R .bss -R .ARM.attributes -R .reginfo -R .gnu.attributes -R .MIPS.abiflags -R .pdr -R .xtensa.info -R .ARC.attributes -R .note.gnu.property -R .riscv.attributes -R .csky.attributes
+#strip: -R .text -R .data -R .bss -R .ARM.attributes -R .reginfo -R .gnu.attributes -R .MIPS.abiflags -R .MIPS.options -R .pdr -R .xtensa.info -R .ARC.attributes -R .note.gnu.property -R .riscv.attributes -R .csky.attributes
#readelf: -S --wide
#name: strip empty file
#target: *-*-linux* *-*-gnu* arm*-*-uclinuxfdpiceabi
{
. = 0x1000;
.text : { *(.text) *(.rodata.brlt) } :image :header
- /DISCARD/ : { *(.dropme) *(.reginfo) *(.MIPS.abiflags) }
+ /DISCARD/ : { *(.dropme) *(.reginfo) *(.MIPS.abiflags) *(.MIPS.options) }
}
{
.text : ALIGN (4) { *(.text) } > region
.rodata : ALIGN (4) { *(.rodata) } > region
- /DISCARD/ : { *(.reginfo) *(.MIPS.abiflags) *(.trampolines) *(.riscv.attributes) }
+ /DISCARD/ : { *(.reginfo) *(.MIPS.abiflags) *(.MIPS.options) *(.trampolines) *(.riscv.attributes) }
}
.bss : { *(.bss) *(COMMON) }
.sbss : { *(.sbss) }
.note : { *(.note) }
- /DISCARD/ : { *(.reginfo) *(.MIPS.abiflags) *(.trampolines) }
+ /DISCARD/ : { *(.reginfo) *(.MIPS.abiflags) *(.MIPS.options) *(.trampolines) }
}
. = ALIGN (0x400);
.bss : { *(.bss .bss.*) }
- /DISCARD/ : { *(.reginfo) *(.MIPS.abiflags) }
+ /DISCARD/ : { *(.reginfo) *(.MIPS.abiflags) *(.MIPS.options) }
}
VERSION
end_of_data_overlays = . ;
. = 0x8000;
- /DISCARD/ : { *(.reginfo) *(.MIPS.abiflags) }
+ /DISCARD/ : { *(.reginfo) *(.MIPS.abiflags) *(.MIPS.options) }
}