forked from pool/binutils
fd2a841d44
- Update to binutils 2.38: * elfedit: Add --output-abiversion option to update ABIVERSION. * Add support for the LoongArch instruction set. * Tools which display symbols or strings (readelf, strings, nm, objdump) have a new command line option which controls how unicode characters are handled. By default they are treated as normal for the tool. Using --unicode=locale will display them according to the current locale. Using --unicode=hex will display them as hex byte values, whilst --unicode=escape will display them as escape sequences. In addition using --unicode=highlight will display them as unicode escape sequences highlighted in red (if supported by the output device). * readelf -r dumps RELR relative relocations now. * Support for efi-app-aarch64, efi-rtdrv-aarch64 and efi-bsdrv-aarch64 has been added to objcopy in order to enable UEFI development using binutils. * ar: Add --thin for creating thin archives. -T is a deprecated alias without diagnostics. In many ar implementations -T has a different meaning, as specified by X/Open System Interface. * Add support for AArch64 system registers that were missing in previous releases. * Add support for the LoongArch instruction set. * Add a command-line option, -muse-unaligned-vector-move, for x86 target to encode aligned vector move as unaligned vector move. * Add support for Cortex-R52+ for Arm. * Add support for Cortex-A510, Cortex-A710, Cortex-X2 for AArch64. * Add support for Cortex-A710 for Arm. * Add support for Scalable Matrix Extension (SME) for AArch64. * The --multibyte-handling=[allow|warn|warn-sym-only] option tells the assembler what to when it encoutners multibyte characters in the input. The default is to allow them. Setting the option to "warn" will generate a warning message whenever any multibyte character is encountered. Using the There are no new CVEs fixed in the release. OBS-URL: https://build.opensuse.org/request/show/953949 OBS-URL: https://build.opensuse.org/package/show/devel:gcc/binutils?expand=0&rev=387
64 lines
2.6 KiB
Diff
64 lines
2.6 KiB
Diff
This adjusts some testcases that expect new behaviour:
|
|
* that relaxable relocations are generated
|
|
* that separate-code is default
|
|
- this also implies that default max-page-size is 0x1000, instead of the
|
|
old 0x200000, so some testcases need to encode that as well
|
|
diff --git a/ld/testsuite/ld-elf/linux-x86.exp b/ld/testsuite/ld-elf/linux-x86.exp
|
|
index 2e0cbd37f17..fcd3dd920e4 100644
|
|
--- a/ld/testsuite/ld-elf/linux-x86.exp
|
|
+++ b/ld/testsuite/ld-elf/linux-x86.exp
|
|
@@ -275,7 +275,7 @@ proc check_pr25749a {testname srcfilea srcfileb cflags ldflags lderror} {
|
|
}
|
|
|
|
# Suppress warning for unsupported attribute from older GCC.
|
|
- append cflags " -w"
|
|
+ append cflags " -w -Wa,-mrelax-relocations=yes"
|
|
|
|
exec cp $srcdir/$subdir/$srcfilea $srcfilea
|
|
exec chmod +w $srcfilea
|
|
@@ -396,7 +396,7 @@ proc check_pr25749b {testname srcfilea srcfileb cflags ldflags dsoldflags args}
|
|
[list \
|
|
"Build lib${testname}.so ($dsoldflags)" \
|
|
"-shared $dsoldflags tmpdir/pr25749-bin.o" \
|
|
- "-fPIC -I../bfd" \
|
|
+ "-fPIC -I../bfd -Wa,-mrelax-relocations=yes" \
|
|
[list $srcfileb] \
|
|
{{readelf {-Wr} pr25749.rd}} \
|
|
"lib${testname}.so" \
|
|
diff --git a/ld/testsuite/ld-i386/report-reloc-1.d b/ld/testsuite/ld-i386/report-reloc-1.d
|
|
index 162161592a1..ee96047043d 100644
|
|
--- a/ld/testsuite/ld-i386/report-reloc-1.d
|
|
+++ b/ld/testsuite/ld-i386/report-reloc-1.d
|
|
@@ -1,6 +1,6 @@
|
|
#source: report-reloc-1.s
|
|
#as: --32
|
|
-#ld: -pie -melf_i386 -z report-relative-reloc $NO_DT_RELR_LDFLAGS
|
|
+#ld: -pie -melf_i386 -z report-relative-reloc -z separate-code $NO_DT_RELR_LDFLAGS
|
|
#warning_output: report-reloc-1.l
|
|
#readelf: -r --wide
|
|
|
|
diff --git a/ld/testsuite/ld-x86-64/report-reloc-1-x32.d b/ld/testsuite/ld-x86-64/report-reloc-1-x32.d
|
|
index 63fe7b1bb8a..29a94ff8762 100644
|
|
--- a/ld/testsuite/ld-x86-64/report-reloc-1-x32.d
|
|
+++ b/ld/testsuite/ld-x86-64/report-reloc-1-x32.d
|
|
@@ -1,6 +1,6 @@
|
|
#source: report-reloc-1.s
|
|
#as: --x32
|
|
-#ld: -pie -melf32_x86_64 -z report-relative-reloc $NO_DT_RELR_LDFLAGS
|
|
+#ld: -pie -melf32_x86_64 -z report-relative-reloc -z separate-code -z max-page-size=4096 $NO_DT_RELR_LDFLAGS
|
|
#warning_output: report-reloc-1.l
|
|
#readelf: -r --wide
|
|
|
|
diff --git a/ld/testsuite/ld-x86-64/report-reloc-1.d b/ld/testsuite/ld-x86-64/report-reloc-1.d
|
|
index 69f164c9434..63079acc98a 100644
|
|
--- a/ld/testsuite/ld-x86-64/report-reloc-1.d
|
|
+++ b/ld/testsuite/ld-x86-64/report-reloc-1.d
|
|
@@ -1,6 +1,6 @@
|
|
#source: report-reloc-1.s
|
|
#as: --64
|
|
-#ld: -pie -melf_x86_64 -z report-relative-reloc $NO_DT_RELR_LDFLAGS
|
|
+#ld: -pie -melf_x86_64 -z report-relative-reloc -z separate-code -z max-page-size=4096 $NO_DT_RELR_LDFLAGS
|
|
#warning_output: report-reloc-1.l
|
|
#readelf: -r --wide
|
|
|