Hello community, here is the log from the commit of package binutils for openSUSE:Factory checked in at 2020-11-07 21:00:38 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/binutils (Old) and /work/SRC/openSUSE:Factory/.binutils.new.11331 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "binutils" Sat Nov 7 21:00:38 2020 rev:144 rq:834649 version:2.35 Changes: -------- --- /work/SRC/openSUSE:Factory/binutils/binutils.changes 2020-03-30 22:51:51.139787714 +0200 +++ /work/SRC/openSUSE:Factory/.binutils.new.11331/binutils.changes 2020-11-07 21:00:51.518074280 +0100 @@ -1,0 +2,46 @@ +Tue Sep 15 12:14:55 UTC 2020 - m...@suse.com + +- Update binutils-2.35-branch.diff.gz to commit 23f268a0: + * Add xBPF target + * Fix various problems with DWARF 5 support in gas +- Toolchain module update for SLE15 [jsc#ECO-2373] +- Includes changes that were SLE-only in binutils-add-z15-name.diff + for [bsc#1160590, jsc#SLE-7903 aka jsc#SLE-7464] + +------------------------------------------------------------------- +Sat Aug 15 08:42:59 UTC 2020 - Martin Liška <mli...@suse.cz> + +- Add binutils-2.35-branch.diff.gz: it includes fix for + nm -B for objects compiled with -flto and -fcommon. + +------------------------------------------------------------------- +Fri Aug 7 14:46:35 UTC 2020 - m...@suse.com + +- Add binutils-revert-nm-symversion.diff to be compatible with old + output of nm relied on in scripts. +- Add binutils-fix-abierrormsg.diff to work around an eager (new) + error message occuring without inputs and as-needed (affects + nvme-cli build). + +------------------------------------------------------------------- +Fri Jul 24 14:25:31 UTC 2020 - Martin Liška <mli...@suse.cz> + +- Update to binutils 2.35: + * The asseembler can now produce DWARF-5 format line number tables. + * Readelf now has a "lint" mode to enable extra checks of the files it is processing. + * Readelf will now display "[...]" when it has to truncate a symbol name. + The old behaviour - of displaying as many characters as possible, up to + the 80 column limit - can be restored by the use of the --silent-truncation + option. + * The linker can now produce a dependency file listing the inputs that it + has processed, much like the -M -MP option supported by the compiler. + +- Regenerate add-ulp-section.diff with -p1 due to a fuzzing issue. +- Remove binutils-2.34-branch.diff.gz. +- Regenerate binutils-build-as-needed.diff due to a fuzzing issue. +- Regenerate binutils-fix-invalid-op-errata.diff as one hunk was upstreamed. +- Remove upstreamed patch binutils-pr25593.diff. +- Regenerate unit-at-a-time.patch due to a fuzzing issue. +- Regenerate binutils-revert-plt32-in-branches.diff. + +------------------------------------------------------------------- cross-aarch64-binutils.changes: same change cross-arm-binutils.changes: same change cross-avr-binutils.changes: same change cross-epiphany-binutils.changes: same change cross-hppa-binutils.changes: same change cross-hppa64-binutils.changes: same change cross-i386-binutils.changes: same change cross-ia64-binutils.changes: same change cross-m68k-binutils.changes: same change cross-mips-binutils.changes: same change cross-ppc-binutils.changes: same change cross-ppc64-binutils.changes: same change cross-ppc64le-binutils.changes: same change cross-riscv64-binutils.changes: same change cross-rx-binutils.changes: same change cross-s390-binutils.changes: same change cross-s390x-binutils.changes: same change cross-sparc-binutils.changes: same change cross-sparc64-binutils.changes: same change cross-spu-binutils.changes: same change cross-x86_64-binutils.changes: same change cross-xtensa-binutils.changes: same change Old: ---- binutils-2.34-branch.diff.gz binutils-2.34.tar.bz2 binutils-2.34.tar.bz2.sig binutils-pr25593.diff New: ---- binutils-2.35-branch.diff.gz binutils-2.35.tar.bz2 binutils-2.35.tar.bz2.sig binutils-fix-abierrormsg.diff binutils-revert-nm-symversion.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ binutils.spec ++++++ --- /var/tmp/diff_new_pack.b6a085/_old 2020-11-07 21:01:08.466048404 +0100 +++ /var/tmp/diff_new_pack.b6a085/_new 2020-11-07 21:01:08.470048398 +0100 @@ -1,7 +1,7 @@ # # spec file for package binutils # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2020 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,7 +12,7 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# Please submit bugfixes or comments via http://bugs.opensuse.org/ # @@ -33,7 +33,7 @@ %else BuildRequires: zlib-devel %endif -Version: 2.34 +Version: 2.35 Release: 0 # # RUN_TESTS @@ -65,7 +65,7 @@ # # # -URL: http://www.gnu.org/software/binutils/ +Url: http://www.gnu.org/software/binutils/ PreReq: %{install_info_prereq} # bug437293 %ifarch ppc64 @@ -81,7 +81,7 @@ Source1: pre_checkin.sh Source2: README.First-for.SUSE.packagers Source3: baselibs.conf -Patch1: binutils-2.34-branch.diff.gz +Patch1: binutils-2.35-branch.diff.gz Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -96,7 +96,8 @@ Patch36: binutils-pr22868.diff Patch37: binutils-revert-plt32-in-branches.diff Patch38: binutils-fix-invalid-op-errata.diff -Patch40: binutils-pr25593.diff +Patch39: binutils-revert-nm-symversion.diff +Patch40: binutils-fix-abierrormsg.diff Patch100: add-ulp-section.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch @@ -188,8 +189,9 @@ %patch37 -p1 %endif %patch38 +%patch39 -p1 %patch40 -p1 -%patch100 +%patch100 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 ++++++ cross-aarch64-binutils.spec ++++++ --- /var/tmp/diff_new_pack.b6a085/_old 2020-11-07 21:01:08.494048361 +0100 +++ /var/tmp/diff_new_pack.b6a085/_new 2020-11-07 21:01:08.494048361 +0100 @@ -1,7 +1,7 @@ # # spec file for package cross-aarch64-binutils # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2020 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,7 +12,7 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# Please submit bugfixes or comments via http://bugs.opensuse.org/ # @@ -36,7 +36,7 @@ %else BuildRequires: zlib-devel %endif -Version: 2.34 +Version: 2.35 Release: 0 # # RUN_TESTS @@ -68,7 +68,7 @@ # # # -URL: http://www.gnu.org/software/binutils/ +Url: http://www.gnu.org/software/binutils/ PreReq: %{install_info_prereq} # bug437293 %ifarch ppc64 @@ -84,7 +84,7 @@ Source1: pre_checkin.sh Source2: README.First-for.SUSE.packagers Source3: baselibs.conf -Patch1: binutils-2.34-branch.diff.gz +Patch1: binutils-2.35-branch.diff.gz Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,7 +99,8 @@ Patch36: binutils-pr22868.diff Patch37: binutils-revert-plt32-in-branches.diff Patch38: binutils-fix-invalid-op-errata.diff -Patch40: binutils-pr25593.diff +Patch39: binutils-revert-nm-symversion.diff +Patch40: binutils-fix-abierrormsg.diff Patch100: add-ulp-section.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch @@ -191,8 +192,9 @@ %patch37 -p1 %endif %patch38 +%patch39 -p1 %patch40 -p1 -%patch100 +%patch100 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 cross-arm-binutils.spec: same change cross-avr-binutils.spec: same change cross-epiphany-binutils.spec: same change cross-hppa-binutils.spec: same change cross-hppa64-binutils.spec: same change cross-i386-binutils.spec: same change cross-ia64-binutils.spec: same change cross-m68k-binutils.spec: same change cross-mips-binutils.spec: same change cross-ppc-binutils.spec: same change cross-ppc64-binutils.spec: same change cross-ppc64le-binutils.spec: same change cross-riscv64-binutils.spec: same change cross-rx-binutils.spec: same change cross-s390-binutils.spec: same change cross-s390x-binutils.spec: same change cross-sparc-binutils.spec: same change cross-sparc64-binutils.spec: same change cross-spu-binutils.spec: same change cross-x86_64-binutils.spec: same change cross-xtensa-binutils.spec: same change ++++++ add-ulp-section.diff ++++++ --- /var/tmp/diff_new_pack.b6a085/_old 2020-11-07 21:01:09.030047543 +0100 +++ /var/tmp/diff_new_pack.b6a085/_new 2020-11-07 21:01:09.034047537 +0100 @@ -2,11 +2,26 @@ shared libs or executable (in the .ulp section) when one of the input files contains a section named .ulp.track. -Index: bfd/elflink.c +Index: binutils-2.35/bfd/elf-bfd.h =================================================================== ---- bfd/elflink.c.orig 2019-09-09 15:19:43.000000000 +0200 -+++ bfd/elflink.c 2019-11-18 21:43:18.000000000 +0100 -@@ -7070,6 +7070,13 @@ bfd_elf_size_dynamic_sections (bfd *outp +--- binutils-2.35.orig/bfd/elf-bfd.h 2020-07-24 11:12:19.000000000 +0200 ++++ binutils-2.35/bfd/elf-bfd.h 2020-08-10 16:30:46.555219071 +0200 +@@ -1476,6 +1476,10 @@ struct elf_backend_data + (const bfd *ibfd, bfd *obfd, const Elf_Internal_Shdr *isection, + Elf_Internal_Shdr *osection); + ++ bfd_boolean (*elf_backend_is_ulp_enabled) (bfd *abfd); ++ ++ bfd_boolean (*elf_backend_setup_ulp) (struct bfd_link_info *); ++ + /* Used to handle bad SHF_LINK_ORDER input. */ + void (*link_order_error_handler) (const char *, ...); + +Index: binutils-2.35/bfd/elflink.c +=================================================================== +--- binutils-2.35.orig/bfd/elflink.c 2020-07-24 11:12:19.000000000 +0200 ++++ binutils-2.35/bfd/elflink.c 2020-08-10 16:30:46.565219071 +0200 +@@ -7197,6 +7197,13 @@ bfd_elf_size_dynamic_sections (bfd *outp s = bfd_get_linker_section (dynobj, ".gnu.version"); s->flags |= SEC_EXCLUDE; } @@ -20,10 +35,38 @@ } return TRUE; } -Index: bfd/elfxx-x86.c +Index: binutils-2.35/bfd/elfxx-target.h +=================================================================== +--- binutils-2.35.orig/bfd/elfxx-target.h 2020-07-24 11:12:19.000000000 +0200 ++++ binutils-2.35/bfd/elfxx-target.h 2020-08-10 16:30:46.565219071 +0200 +@@ -768,6 +768,14 @@ + #define elf_backend_copy_special_section_fields _bfd_elf_copy_special_section_fields + #endif + ++#ifndef elf_backend_is_ulp_enabled ++#define elf_backend_is_ulp_enabled NULL ++#endif ++ ++#ifndef elf_backend_setup_ulp ++#define elf_backend_setup_ulp NULL ++#endif ++ + #ifndef elf_backend_compact_eh_encoding + #define elf_backend_compact_eh_encoding NULL + #endif +@@ -900,6 +908,8 @@ static struct elf_backend_data elfNN_bed + elf_backend_maybe_function_sym, + elf_backend_get_reloc_section, + elf_backend_copy_special_section_fields, ++ elf_backend_is_ulp_enabled, ++ elf_backend_setup_ulp, + elf_backend_link_order_error_handler, + elf_backend_relplt_name, + ELF_MACHINE_ALT1, +Index: binutils-2.35/bfd/elfxx-x86.c =================================================================== ---- bfd/elfxx-x86.c.orig 2019-09-09 15:19:43.000000000 +0200 -+++ bfd/elfxx-x86.c 2019-11-18 20:50:24.000000000 +0100 +--- binutils-2.35.orig/bfd/elfxx-x86.c 2020-07-24 11:12:19.000000000 +0200 ++++ binutils-2.35/bfd/elfxx-x86.c 2020-08-10 16:30:46.565219071 +0200 @@ -31,6 +31,8 @@ #define ELF64_DYNAMIC_INTERPRETER "/lib/ld64.so.1" #define ELFX32_DYNAMIC_INTERPRETER "/lib/ldx32.so.1" @@ -33,8 +76,8 @@ bfd_boolean _bfd_x86_elf_mkobject (bfd *abfd) { -@@ -952,6 +954,64 @@ _bfd_x86_elf_link_check_relocs (bfd *abf - return _bfd_elf_link_check_relocs (abfd, info); +@@ -984,6 +986,64 @@ _bfd_elf_x86_valid_reloc_p (asection *in + return valid_p; } +/* Check if input bfds are ulp-enabled by containing .ulp.track section */ @@ -98,7 +141,7 @@ /* Set the sizes of the dynamic sections. */ bfd_boolean -@@ -2935,7 +2995,26 @@ error_alignment: +@@ -2855,7 +2915,26 @@ _bfd_x86_elf_link_setup_gnu_properties htab->plt_second = sec; } @@ -126,11 +169,11 @@ if (!info->no_ld_generated_unwind_info) { -Index: bfd/elfxx-x86.h +Index: binutils-2.35/bfd/elfxx-x86.h =================================================================== ---- bfd/elfxx-x86.h.orig 2019-09-09 15:19:43.000000000 +0200 -+++ bfd/elfxx-x86.h 2019-11-18 20:48:33.000000000 +0100 -@@ -447,6 +447,7 @@ struct elf_x86_link_hash_table +--- binutils-2.35.orig/bfd/elfxx-x86.h 2020-07-24 11:12:19.000000000 +0200 ++++ binutils-2.35/bfd/elfxx-x86.h 2020-08-10 16:30:46.565219071 +0200 +@@ -449,6 +449,7 @@ struct elf_x86_link_hash_table asection *plt_second_eh_frame; asection *plt_got; asection *plt_got_eh_frame; @@ -138,7 +181,7 @@ /* Parameters describing PLT generation, lazy or non-lazy. */ struct elf_x86_plt_layout plt; -@@ -708,6 +709,12 @@ extern void _bfd_x86_elf_link_fixup_ifun +@@ -687,6 +688,12 @@ extern void _bfd_x86_elf_link_fixup_ifun (struct bfd_link_info *, struct elf_x86_link_hash_table *, struct elf_link_hash_entry *, Elf_Internal_Sym *sym); @@ -151,7 +194,7 @@ #define bfd_elf64_mkobject \ _bfd_x86_elf_mkobject #define bfd_elf32_mkobject \ -@@ -745,3 +752,7 @@ extern void _bfd_x86_elf_link_fixup_ifun +@@ -724,3 +731,7 @@ extern void _bfd_x86_elf_link_fixup_ifun _bfd_x86_elf_merge_gnu_properties #define elf_backend_fixup_gnu_properties \ _bfd_x86_elf_link_fixup_gnu_properties @@ -159,46 +202,3 @@ + _bfd_x86_elf_is_ulp_enabled +#define elf_backend_setup_ulp \ + _bfd_x86_elf_setup_ulp -Index: bfd/elf-bfd.h -=================================================================== ---- bfd/elf-bfd.h.orig 2019-09-09 15:19:43.000000000 +0200 -+++ bfd/elf-bfd.h 2019-11-18 20:48:33.000000000 +0100 -@@ -1423,6 +1423,10 @@ struct elf_backend_data - (const bfd *ibfd, bfd *obfd, const Elf_Internal_Shdr *isection, - Elf_Internal_Shdr *osection); - -+ bfd_boolean (*elf_backend_is_ulp_enabled) (bfd *abfd); -+ -+ bfd_boolean (*elf_backend_setup_ulp) (struct bfd_link_info *); -+ - /* Used to handle bad SHF_LINK_ORDER input. */ - void (*link_order_error_handler) (const char *, ...); - -Index: bfd/elfxx-target.h -=================================================================== ---- bfd/elfxx-target.h.orig 2019-09-09 15:19:43.000000000 +0200 -+++ bfd/elfxx-target.h 2019-11-18 20:48:33.000000000 +0100 -@@ -754,6 +754,14 @@ - #define elf_backend_copy_special_section_fields NULL - #endif - -+#ifndef elf_backend_is_ulp_enabled -+#define elf_backend_is_ulp_enabled NULL -+#endif -+ -+#ifndef elf_backend_setup_ulp -+#define elf_backend_setup_ulp NULL -+#endif -+ - #ifndef elf_backend_compact_eh_encoding - #define elf_backend_compact_eh_encoding NULL - #endif -@@ -867,6 +875,8 @@ static struct elf_backend_data elfNN_bed - elf_backend_maybe_function_sym, - elf_backend_get_reloc_section, - elf_backend_copy_special_section_fields, -+ elf_backend_is_ulp_enabled, -+ elf_backend_setup_ulp, - elf_backend_link_order_error_handler, - elf_backend_relplt_name, - ELF_MACHINE_ALT1, ++++++ binutils-2.34-branch.diff.gz -> binutils-2.35-branch.diff.gz ++++++ Binary files /work/SRC/openSUSE:Factory/binutils/binutils-2.34-branch.diff.gz and /work/SRC/openSUSE:Factory/.binutils.new.11331/binutils-2.35-branch.diff.gz differ ++++++ binutils-2.34.tar.bz2 -> binutils-2.35.tar.bz2 ++++++ /work/SRC/openSUSE:Factory/binutils/binutils-2.34.tar.bz2 /work/SRC/openSUSE:Factory/.binutils.new.11331/binutils-2.35.tar.bz2 differ: char 11, line 1 ++++++ binutils-build-as-needed.diff ++++++ --- /var/tmp/diff_new_pack.b6a085/_old 2020-11-07 21:01:09.086047458 +0100 +++ /var/tmp/diff_new_pack.b6a085/_new 2020-11-07 21:01:09.090047451 +0100 @@ -2,12 +2,12 @@ =================================================================== --- ld/ldmain.c.orig 2017-07-26 10:07:31.862559913 +0200 +++ ld/ldmain.c 2017-07-26 10:07:31.886560303 +0200 -@@ -302,6 +302,8 @@ main (int argc, char **argv) - #ifdef DEFAULT_NEW_DTAGS - link_info.new_dtags = DEFAULT_NEW_DTAGS; +@@ -307,6 +307,8 @@ main (int argc, char **argv) + yydebug = 1; + } #endif + if (getenv ("SUSE_ASNEEDED") && atoi(getenv ("SUSE_ASNEEDED")) > 0) + input_flags.add_DT_NEEDED_for_regular = TRUE; - ldfile_add_arch (""); - emulation = get_emulation (argc, argv); + config.build_constructors = TRUE; + config.rpath_separator = ':'; ++++++ binutils-fix-abierrormsg.diff ++++++ This fixes an error message given too eagerly on ppc64le, when no input files are used and as-needed is in effect. E.g.: % ld-new --as-needed -o /dev/null -lc gives an error message about input and output ABI versions being incompatible. This is because the ABI setting of "unknown" (0) to "from-input" is done in ppc64_elf_before_check_relocs, which isn't called for as-needed libraries (via check_directives callback). merge_private_bfd_data is called for as-needed and not-as-needed inputs (via notice_as_needed), so copy that code there. This construct is used in some packages to check for availability of libraries (e.g. in nvme-cli to check for -luuid). Redircting error output makes this siletently fail. Index: binutils-2.35/bfd/elf64-ppc.c =================================================================== --- binutils-2.35.orig/bfd/elf64-ppc.c 2020-07-24 11:12:19.000000000 +0200 +++ binutils-2.35/bfd/elf64-ppc.c 2020-08-10 17:25:00.205219071 +0200 @@ -5301,12 +5301,17 @@ ppc64_elf_merge_private_bfd_data (bfd *i } else if (iflags != oflags && iflags != 0) { - _bfd_error_handler - /* xgettext:c-format */ - (_("%pB: ABI version %ld is not compatible with ABI version %ld output"), - ibfd, iflags, oflags); - bfd_set_error (bfd_error_bad_value); - return FALSE; + if (abiversion (info->output_bfd) == 0) + set_abiversion (info->output_bfd, abiversion (ibfd)); + else + { + _bfd_error_handler + /* xgettext:c-format */ + (_("%pB: ABI version %ld is not compatible with ABI version %ld output"), + ibfd, iflags, oflags); + bfd_set_error (bfd_error_bad_value); + return FALSE; + } } if (!_bfd_elf_ppc_merge_fp_attributes (ibfd, info)) ++++++ binutils-fix-invalid-op-errata.diff ++++++ --- /var/tmp/diff_new_pack.b6a085/_old 2020-11-07 21:01:09.102047433 +0100 +++ /var/tmp/diff_new_pack.b6a085/_new 2020-11-07 21:01:09.102047433 +0100 @@ -13,21 +13,13 @@ --- bfd/elfnn-aarch64.c.mm 2019-09-09 13:19:43.000000000 +0000 +++ bfd/elfnn-aarch64.c 2019-11-20 11:44:00.000000000 +0000 -@@ -4312,7 +4312,8 @@ elfNN_aarch64_size_stubs (bfd *output_bf - - for (input_bfd = info->input_bfds; - input_bfd != NULL; input_bfd = input_bfd->link.next) -- if (!_bfd_aarch64_erratum_835769_scan (input_bfd, info, -+ if (input_bfd != stub_bfd -+ && !_bfd_aarch64_erratum_835769_scan (input_bfd, info, - &num_erratum_835769_fixes)) - return FALSE; - -@@ -4327,6 +4328,7 @@ elfNN_aarch64_size_stubs (bfd *output_bf - for (input_bfd = info->input_bfds; - input_bfd != NULL; - input_bfd = input_bfd->link.next) -+ if (input_bfd != stub_bfd) - { - asection *section; +@@ -4313,7 +4313,8 @@ elfNN_aarch64_size_stubs (bfd *output_bfd, + || (input_bfd->flags & BFD_LINKER_CREATED) != 0) + continue; +- if (!_bfd_aarch64_erratum_835769_scan (input_bfd, info, ++ if (input_bfd != stub_bfd ++ && !_bfd_aarch64_erratum_835769_scan (input_bfd, info, + &num_erratum_835769_fixes)) + return FALSE; + } ++++++ binutils-revert-nm-symversion.diff ++++++ Some packages of ours rely on the output of nm to not contain symversions. E.g. perf uses 'nm -D' to construct a linker input file with symbol names. ld errors on the '@' characters. Until those packages are fixed we use this patch. We have to carry it for old code streams forever. Index: binutils-2.35/binutils/nm.c =================================================================== --- binutils-2.35.orig/binutils/nm.c 2020-07-24 11:12:19.000000000 +0200 +++ binutils-2.35/binutils/nm.c 2020-08-07 16:42:58.000000000 +0200 @@ -411,7 +411,7 @@ print_symname (const char *form, struct } printf (form, name); - if (info != NULL && info->elfinfo) + if (info != NULL && info->elfinfo && 0) { const char *version_string; bfd_boolean hidden; Index: binutils-2.35/ld/testsuite/ld-elf/pr25708.d =================================================================== --- binutils-2.35.orig/ld/testsuite/ld-elf/pr25708.d 2020-07-24 11:12:20.000000000 +0200 +++ binutils-2.35/ld/testsuite/ld-elf/pr25708.d 2020-08-07 16:44:50.000000000 +0200 @@ -2,8 +2,9 @@ #ld: -shared -version-script pr13195.t #nm: -D #target: *-*-linux* *-*-gnu* arm*-*-uclinuxfdpiceabi -#xfail: hppa64-*-* ![check_shared_lib_support] +#xfail: *-*-* ![check_shared_lib_support] # h8300 doesn't support -shared, and hppa64 creates .foo +# our binutils revert the printing of symversions with nm -D #.. 0+ A VERS_2.0 ++++++ binutils-revert-plt32-in-branches.diff ++++++ --- /var/tmp/diff_new_pack.b6a085/_old 2020-11-07 21:01:09.126047396 +0100 +++ /var/tmp/diff_new_pack.b6a085/_new 2020-11-07 21:01:09.126047396 +0100 @@ -79,10 +79,10 @@ * testsuite/ld-x86-64/x86-64.exp: Run PR ld/22791 tests. diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c -index 79e68ff476..cee387da7d 100644 +index 311fb28a..5f1f0ce5 100644 --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c -@@ -1798,6 +1798,24 @@ rewrite_modrm_rex: +@@ -1834,6 +1834,24 @@ elf_x86_64_convert_load_reloc (bfd *abfd, return TRUE; } @@ -107,7 +107,7 @@ /* Look through the relocs for a section during the first phase, and calculate needed space in the global offset table, procedure linkage table, and dynamic reloc sections. */ -@@ -3089,28 +3107,30 @@ use_plt: +@@ -3143,28 +3161,30 @@ elf_x86_64_relocate_section (bfd *output_bfd, && (eh == NULL || !UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, eh))) @@ -145,7 +145,7 @@ } else if (no_copyreloc_p || bfd_link_dll (info)) { -@@ -3119,9 +3139,10 @@ use_plt: +@@ -3173,9 +3193,10 @@ elf_x86_64_relocate_section (bfd *output_bfd, relocations against default and protected symbols since address of protected function and location of protected data may not be in @@ -159,10 +159,10 @@ if (fail) diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c -index 8728725b82..527ae0b701 100644 +index ed514cf9..2fad4505 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c -@@ -7954,52 +7954,12 @@ output_branch (void) +@@ -8472,52 +8472,12 @@ output_branch (void) frag_var (rs_machine_dependent, 5, i.reloc[0], subtype, sym, off, p); } @@ -215,7 +215,7 @@ if (i.tm.opcode_modifier.jump == JUMP_BYTE) { -@@ -8067,17 +8027,8 @@ output_jump (void) +@@ -8585,17 +8545,8 @@ output_jump (void) abort (); } @@ -234,7 +234,7 @@ /* All jumps handled here are signed, but don't use a signed limit check for 32 and 16 bit jumps as we want to allow wrap around at -@@ -11263,10 +11214,6 @@ md_estimate_size_before_relax (fragS *fragP, segT segment) +@@ -11889,10 +11840,6 @@ md_estimate_size_before_relax (fragS *fragP, segT segment) reloc_type = (enum bfd_reloc_code_real) fragP->fr_var; else if (size == 2) reloc_type = BFD_RELOC_16_PCREL; @@ -246,7 +246,7 @@ reloc_type = BFD_RELOC_32_PCREL; diff --git a/gas/testsuite/gas/i386/ilp32/reloc64.d b/gas/testsuite/gas/i386/ilp32/reloc64.d -index 78ca3fd9e3..a961679754 100644 +index 78ca3fd9..a9616797 100644 --- a/gas/testsuite/gas/i386/ilp32/reloc64.d +++ b/gas/testsuite/gas/i386/ilp32/reloc64.d @@ -17,7 +17,7 @@ Disassembly of section \.text: @@ -259,7 +259,7 @@ .*[ ]+R_X86_64_GOT32[ ]+xtrn .*[ ]+R_X86_64_GOT32[ ]+xtrn diff --git a/gas/testsuite/gas/i386/ilp32/x86-64-branch.d b/gas/testsuite/gas/i386/ilp32/x86-64-branch.d -index 45ab6178b9..915dbf3f1c 100644 +index 5bfa2a46..46b0f809 100644 --- a/gas/testsuite/gas/i386/ilp32/x86-64-branch.d +++ b/gas/testsuite/gas/i386/ilp32/x86-64-branch.d @@ -20,9 +20,9 @@ Disassembly of section .text: @@ -272,11 +272,11 @@ +[ ]*[a-f0-9]+: 66 e8 00 00 00 00 data16 callq 0x2a 26: R_X86_64_PC32 foo-0x4 +[ ]*[a-f0-9]+: 66 e9 00 00 00 00 data16 jmpq 0x30 2c: R_X86_64_PC32 foo-0x4 +[ ]*[a-f0-9]+: 66 0f 82 00 00 00 00 data16 jb 0x37 33: R_X86_64_PC32 foo-0x4 + [ ]*[a-f0-9]+: 66 c3 data16 retq * + [ ]*[a-f0-9]+: 66 c2 08 00 data16 retq \$0x8 [ ]*[a-f0-9]+: ff d0 callq \*%rax - [ ]*[a-f0-9]+: ff d0 callq \*%rax - [ ]*[a-f0-9]+: 66 ff d0 data16 callq \*%rax diff --git a/gas/testsuite/gas/i386/reloc64.d b/gas/testsuite/gas/i386/reloc64.d -index 540a9b77d3..ea16c68de4 100644 +index 540a9b77..ea16c68d 100644 --- a/gas/testsuite/gas/i386/reloc64.d +++ b/gas/testsuite/gas/i386/reloc64.d @@ -20,7 +20,7 @@ Disassembly of section \.text: @@ -289,7 +289,7 @@ .*[ ]+R_X86_64_GOT64[ ]+xtrn .*[ ]+R_X86_64_GOT32[ ]+xtrn diff --git a/gas/testsuite/gas/i386/x86-64-jump.d b/gas/testsuite/gas/i386/x86-64-jump.d -index 1a1521d278..b898d7d5eb 100644 +index 1a1521d2..b898d7d5 100644 --- a/gas/testsuite/gas/i386/x86-64-jump.d +++ b/gas/testsuite/gas/i386/x86-64-jump.d @@ -9,7 +9,7 @@ Disassembly of section .text: @@ -311,7 +311,7 @@ [ ]*[a-f0-9]+: ff d7 callq \*%rdi [ ]*[a-f0-9]+: ff 17 callq \*\(%rdi\) diff --git a/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d b/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d -index 03e9675217..9d2ec05b7e 100644 +index 03e96752..9d2ec05b 100644 --- a/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d +++ b/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d @@ -23,9 +23,9 @@ Disassembly of section .text: @@ -328,7 +328,7 @@ [ ]*[a-f0-9]+: f2 0f 82 00 00 00 00 bnd jb 54 <foo2\+0x20> 50: R_X86_64_PLT32 foo-0x4 [ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd callq 5a <foo2\+0x26> 56: R_X86_64_PLT32 foo-0x4 diff --git a/gas/testsuite/gas/i386/x86-64-nop-3.d b/gas/testsuite/gas/i386/x86-64-nop-3.d -index 8514c4d077..617033a8ac 100644 +index 8514c4d0..617033a8 100644 --- a/gas/testsuite/gas/i386/x86-64-nop-3.d +++ b/gas/testsuite/gas/i386/x86-64-nop-3.d @@ -18,5 +18,5 @@ Disassembly of section .text: @@ -339,7 +339,7 @@ + +[a-f0-9]+: e9 00 00 00 00 jmpq 5 <_start\+0x5> 1: R_X86_64_PC32 foo-0x4 #pass diff --git a/gas/testsuite/gas/i386/x86-64-nop-4.d b/gas/testsuite/gas/i386/x86-64-nop-4.d -index 7b696624cf..8610fc4303 100644 +index 7b696624..8610fc43 100644 --- a/gas/testsuite/gas/i386/x86-64-nop-4.d +++ b/gas/testsuite/gas/i386/x86-64-nop-4.d @@ -21,5 +21,5 @@ Disassembly of section .altinstr_replacement: @@ -350,7 +350,7 @@ + +[a-f0-9]+: e9 00 00 00 00 jmpq b <_start\+0xb> 7: R_X86_64_PC32 foo-0x4 #pass diff --git a/gas/testsuite/gas/i386/x86-64-nop-5.d b/gas/testsuite/gas/i386/x86-64-nop-5.d -index b0b7854f8a..333263bd93 100644 +index b0b7854f..333263bd 100644 --- a/gas/testsuite/gas/i386/x86-64-nop-5.d +++ b/gas/testsuite/gas/i386/x86-64-nop-5.d @@ -24,5 +24,5 @@ Disassembly of section .altinstr_replacement: @@ -361,7 +361,7 @@ + +[a-f0-9]+: e9 00 00 00 00 jmpq d <_start\+0xd> 9: R_X86_64_PC32 foo-0x4 #pass diff --git a/gas/testsuite/gas/i386/x86-64-relax-2.d b/gas/testsuite/gas/i386/x86-64-relax-2.d -index 8f432dff52..6c7651886f 100644 +index 8f432dff..6c765188 100644 --- a/gas/testsuite/gas/i386/x86-64-relax-2.d +++ b/gas/testsuite/gas/i386/x86-64-relax-2.d @@ -11,12 +11,12 @@ Disassembly of section .text: @@ -383,7 +383,7 @@ 0+22 <hidden_def>: [ ]*[a-f0-9]+: c3 retq diff --git a/gas/testsuite/gas/i386/x86-64-relax-3.d b/gas/testsuite/gas/i386/x86-64-relax-3.d -index bb60508145..f1ffdb89f6 100644 +index bb605081..f1ffdb89 100644 --- a/gas/testsuite/gas/i386/x86-64-relax-3.d +++ b/gas/testsuite/gas/i386/x86-64-relax-3.d @@ -12,10 +12,10 @@ Disassembly of section .text: @@ -402,7 +402,7 @@ 0+1f <hidden_def>: [ ]*[a-f0-9]+: c3 retq diff --git a/ld/testsuite/ld-x86-64/mpx1c.rd b/ld/testsuite/ld-x86-64/mpx1c.rd -index d66524c883..d3b292cbdc 100644 +index d66524c8..d3b292cb 100644 --- a/ld/testsuite/ld-x86-64/mpx1c.rd +++ b/ld/testsuite/ld-x86-64/mpx1c.rd @@ -1,3 +1,3 @@ @@ -412,7 +412,7 @@ #... diff --git a/ld/testsuite/ld-x86-64/pr22791-1.err b/ld/testsuite/ld-x86-64/pr22791-1.err deleted file mode 100644 -index 8c5565992e..0000000000 +index 8c556599..00000000 --- a/ld/testsuite/ld-x86-64/pr22791-1.err +++ /dev/null @@ -1,2 +0,0 @@ @@ -420,7 +420,7 @@ -#... diff --git a/ld/testsuite/ld-x86-64/pr22791-1a.c b/ld/testsuite/ld-x86-64/pr22791-1a.c deleted file mode 100644 -index cd0130cacd..0000000000 +index cd0130ca..00000000 --- a/ld/testsuite/ld-x86-64/pr22791-1a.c +++ /dev/null @@ -1,4 +0,0 @@ @@ -430,7 +430,7 @@ -} diff --git a/ld/testsuite/ld-x86-64/pr22791-1b.s b/ld/testsuite/ld-x86-64/pr22791-1b.s deleted file mode 100644 -index 9751db49aa..0000000000 +index 9751db49..00000000 --- a/ld/testsuite/ld-x86-64/pr22791-1b.s +++ /dev/null @@ -1,6 +0,0 @@ @@ -442,7 +442,7 @@ - .size main, .-main diff --git a/ld/testsuite/ld-x86-64/pr22791-2.rd b/ld/testsuite/ld-x86-64/pr22791-2.rd deleted file mode 100644 -index 70deb30d84..0000000000 +index 70deb30d..00000000 --- a/ld/testsuite/ld-x86-64/pr22791-2.rd +++ /dev/null @@ -1,6 +0,0 @@ @@ -454,7 +454,7 @@ -#... diff --git a/ld/testsuite/ld-x86-64/pr22791-2a.s b/ld/testsuite/ld-x86-64/pr22791-2a.s deleted file mode 100644 -index 0a855024d7..0000000000 +index 0a855024..00000000 --- a/ld/testsuite/ld-x86-64/pr22791-2a.s +++ /dev/null @@ -1,8 +0,0 @@ @@ -468,7 +468,7 @@ - .section .note.GNU-stack,"",@progbits diff --git a/ld/testsuite/ld-x86-64/pr22791-2b.c b/ld/testsuite/ld-x86-64/pr22791-2b.c deleted file mode 100644 -index 79ef27c085..0000000000 +index 79ef27c0..00000000 --- a/ld/testsuite/ld-x86-64/pr22791-2b.c +++ /dev/null @@ -1,7 +0,0 @@ @@ -481,7 +481,7 @@ -} diff --git a/ld/testsuite/ld-x86-64/pr22791-2c.s b/ld/testsuite/ld-x86-64/pr22791-2c.s deleted file mode 100644 -index 1460d1b828..0000000000 +index 1460d1b8..00000000 --- a/ld/testsuite/ld-x86-64/pr22791-2c.s +++ /dev/null @@ -1,12 +0,0 @@ @@ -498,7 +498,7 @@ - .size main, .-main - .section .note.GNU-stack,"",@progbits diff --git a/ld/testsuite/ld-x86-64/pr22842b.S b/ld/testsuite/ld-x86-64/pr22842b.S -index f0659cd901..b9dd81345b 100644 +index f0659cd9..b9dd8134 100644 --- a/ld/testsuite/ld-x86-64/pr22842b.S +++ b/ld/testsuite/ld-x86-64/pr22842b.S @@ -7,7 +7,7 @@ main: @@ -511,10 +511,10 @@ popq %rcx retq diff --git a/ld/testsuite/ld-x86-64/x86-64.exp b/ld/testsuite/ld-x86-64/x86-64.exp -index 88f75e0e43..c632fe932c 100644 +index d836f334..b8a7de1f 100644 --- a/ld/testsuite/ld-x86-64/x86-64.exp +++ b/ld/testsuite/ld-x86-64/x86-64.exp -@@ -1244,44 +1244,6 @@ if { [isnative] && [check_compiler_available] } { +@@ -1214,44 +1214,6 @@ if { [isnative] && [check_compiler_available] } { {readelf -lW pr22393-3b.rd}} \ "pr22393-3-static" \ ] \ @@ -528,7 +528,7 @@ - ] \ - [list \ - "Build pr22791-1" \ -- "-pie -Wl,--no-as-needed tmpdir/pr22791-1.so" \ +- "-pie -Wl,--no-as-needed,-z,notext tmpdir/pr22791-1.so" \ - "$NOPIE_CFLAGS -Wa,-mx86-used-note=yes" \ - { pr22791-1b.s } \ - {{error_output "pr22791-1.err"}} \ @@ -559,7 +559,7 @@ [list \ "Build pr22842.so" \ "-shared" \ -@@ -1624,15 +1586,6 @@ if { [isnative] && [check_compiler_available] } { +@@ -1700,15 +1662,6 @@ if { [isnative] && [check_compiler_available] } { "pr22393-3-static" \ "pass.out" \ ] \ @@ -575,5 +575,3 @@ [list \ "Run pr22842" \ "-pie -Wl,--no-as-needed tmpdir/pr22842.so" \ --- -2.25.0 ++++++ unit-at-a-time.patch ++++++ --- /var/tmp/diff_new_pack.b6a085/_old 2020-11-07 21:01:09.222047250 +0100 +++ /var/tmp/diff_new_pack.b6a085/_new 2020-11-07 21:01:09.226047243 +0100 @@ -1,15 +1,15 @@ Index: ld/testsuite/ld-selective/selective.exp =================================================================== ---- ld/testsuite/ld-selective/selective.exp.orig +--- ld/testsuite/ld-selective/selective.exp +++ ld/testsuite/ld-selective/selective.exp -@@ -47,8 +47,8 @@ set seltests { +@@ -46,8 +46,8 @@ set seltests { {A::foo() B::foo() dropme1() dropme2()} {*-*-*}} } --set cflags "-w -O -ffunction-sections -fdata-sections" --set cxxflags "-fno-exceptions -fno-rtti" -+set cflags "-w -O -ffunction-sections -fdata-sections -fno-unit-at-a-time" -+set cxxflags "-fno-exceptions -fno-rtti -fno-unit-at-a-time" +-set cflags "-w -O -ffunction-sections -fdata-sections $NOSANTIZE_CFLAGS" +-set cxxflags "-fno-exceptions -fno-rtti $NOSANTIZE_CFLAGS" ++set cflags "-w -O -ffunction-sections -fdata-sections -fno-unit-at-a-time $NOSANTIZE_CFLAGS" ++set cxxflags "-fno-exceptions -fno-rtti -fno-unit-at-a-time $NOSANTIZE_CFLAGS" set ldflags "--gc-sections -Bstatic" if [istarget mips*-*] {