Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package binutils for openSUSE:Factory checked in at 2021-11-06 18:13:03 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/binutils (Old) and /work/SRC/openSUSE:Factory/.binutils.new.1890 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "binutils" Sat Nov 6 18:13:03 2021 rev:151 rq:929013 version:2.37 Changes: -------- --- /work/SRC/openSUSE:Factory/binutils/binutils.changes 2021-09-17 23:25:29.989212010 +0200 +++ /work/SRC/openSUSE:Factory/.binutils.new.1890/binutils.changes 2021-11-06 18:13:07.872731525 +0100 @@ -1,0 +2,41 @@ +Wed Nov 3 08:23:52 UTC 2021 - Martin Li??ka <mli...@suse.cz> + +- Rebase binutils-2.37-branch.diff: fixes PR28523 aka boo#1188941. + +------------------------------------------------------------------- +Tue Nov 2 15:57:53 UTC 2021 - Michael Matz <m...@suse.com> + +- Fix empty man-pages from broken release tarball [PR28144]. + +------------------------------------------------------------------- +Mon Nov 1 09:34:38 UTC 2021 - Martin Li??ka <mli...@suse.cz> + +- Update binutils-skip-rpaths.patch with contained a memory corruption + (boo#1191473). + +------------------------------------------------------------------- +Fri Oct 8 14:11:44 UTC 2021 - Michael Matz <m...@suse.com> + +- Configure with --disable-x86-used-note on old code streams. +- Disable libalternatives temporarily for build cycle reasons. +- make TARGET-bfd=headers again, we patch bfd-in.h +- This state submitted to SLE12 and SLE15 code streams for annual + toolchain update. [jsc#PM-2767, jsc#SLE-21561, jsc#SLE-19618] +- Bump binutils-2.37-branch.diff to 66d5c7003, to include fixes for + PR28422, PR28192, PR28391. Also adds some s390x arch14 + instructions [jsc#SLE-18637]. + +------------------------------------------------------------------- +Fri Sep 10 23:16:12 CEST 2021 - Stefan Schubert sch...@suse.de + +- Using libalternatives instead of update-alternatives. + +------------------------------------------------------------------- +Wed Sep 8 15:09:58 UTC 2021 - Michael Matz <m...@suse.com> + +- Adjust for testsuite fails on older products that configure + binutils in different ways, adds binutils-compat-old-behaviour.diff + and adjusts binutils-revert-nm-symversion.diff and + 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 New: ---- binutils-compat-old-behaviour.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ binutils.spec ++++++ --- /var/tmp/diff_new_pack.9UimWo/_old 2021-11-06 18:13:11.812733589 +0100 +++ /var/tmp/diff_new_pack.9UimWo/_new 2021-11-06 18:13:11.816733590 +0100 @@ -36,6 +36,15 @@ %endif Version: 2.37 Release: 0 + +# disable libalternatives for now until it's changed to not +# introduce cmake/cunit-tests into the bootstrap cycle +%if 0 && 0%{?suse_version} > 1500 +%bcond_without libalternatives +%else +%bcond_with libalternatives +%endif + # # RUN_TESTS %define run_tests %(test ! -f %_sourcedir/RUN_TESTS ; echo $?) @@ -101,12 +110,17 @@ Patch39: binutils-revert-nm-symversion.diff Patch40: binutils-fix-abierrormsg.diff Patch41: binutils-fix-relax.diff +Patch42: binutils-compat-old-behaviour.diff Patch100: add-ulp-section.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build +%if %{with libalternatives} +Requires: alts +%else PreReq: update-alternatives +%endif %description C compiler utilities: ar, as, gprof, ld, nm, objcopy, objdump, ranlib, @@ -118,7 +132,11 @@ License: GPL-3.0-or-later Group: Development/Tools/Building Requires: binutils = %{version}-%{release} +%if %{with libalternatives} +Requires: alts +%else PreReq: update-alternatives +%endif %if 0%{!?cross:1} %define gold_archs %ix86 aarch64 %arm x86_64 ppc ppc64 ppc64le s390x %sparc %endif @@ -192,6 +210,9 @@ %patch39 -p1 %patch40 -p1 %patch41 -p1 +%if %{suse_version} < 1550 +%patch42 -p1 +%endif %patch100 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h @@ -202,6 +223,22 @@ # # test_vanilla %endif +# in parallel builds, when the flex or bison inputs are patched (possibly +# in the ...-branch.diff) it might happen that the dependency tracking +# of automake is confused and uses the old .c files from srcdir/ld/ while +# also generating the new .c files in builddir/ld leading to trouble. +# I haven't found the right entries to ensure this doesn't happen, so +# simply remove the intermediates +rm -f ld/ldlex.c +rm -f ld/ldgram.c ld/ldgram.h + +# The 2.37 released tarball contains wrongly pre-generated (empty) man pages +# so we remove those here as well. Consider removing for later releases. +rm -f binutils/doc/*.1 +rm -f binutils/doc/cxxfilt.man +rm -f gprof/*.1 +rm -f gas/doc/*.1 +rm -f ld/*.1 %build %define _lto_cflags %{nil} @@ -272,6 +309,7 @@ --enable-compressed-debug-sections=gas \ %endif %if %{suse_version} < 1550 + --disable-x86-used-note \ --disable-separate-code \ %endif --enable-new-dtags \ @@ -284,6 +322,16 @@ %endif --enable-obsolete +# we patch headers (bfd-in.h) that are input to other headers +# which are generated only with --enable-maintainer-mode (which we +# don't do) or explicitely by make headers, so do this: +make %{?_smp_mflags} all-bfd TARGET-bfd=headers +# the above interacts with --enable-pgo-build=lto because all-bfd doesn't +# have the PGO handling, hence it's config.cache files are wrong +# remove all of those for reconfigure +rm */config.cache +# force reconfiguring +rm bfd/Makefile make %{?_smp_mflags} %else @@ -351,6 +399,7 @@ %endif ${EXTRA_TARGETS:+--enable-targets="${EXTRA_TARGETS#,}"} make %{?_smp_mflags} all-bfd TARGET-bfd=headers +rm */config.cache # force reconfiguring rm bfd/Makefile make %{?_smp_mflags} @@ -369,7 +418,7 @@ %if 0%{?cross:1} make -k check CFLAGS="-O2 -g" CXXFLAGS="-O2 -g" CFLAGS_FOR_TARGET="-O2 -g" CXXFLAGS_FOR_TARGET="-O2 -g" || %{make_check_handling} %else -make -k check CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" CFLAGS_FOR_TARGET="$RPM_OPT_FLAGS" CXXFLAGS_FOR_TARGET="$RPM_OPT_FLAGS" || %{make_check_handling} +make -k check CFLAGS="-g $RPM_OPT_FLAGS" CXXFLAGS="-g $RPM_OPT_FLAGS" CFLAGS_FOR_TARGET="-g $RPM_OPT_FLAGS" CXXFLAGS_FOR_TARGET="-g $RPM_OPT_FLAGS" || %{make_check_handling} %endif %install @@ -388,12 +437,24 @@ else rm -f "%buildroot/%_bindir/ld"; fi +%if ! 0%{with libalternatives} mkdir -p "%buildroot/%_sysconfdir/alternatives"; # Keep older versions of brp-symlink happy %if %{suse_version} < 1310 ln -s "%_bindir/ld" "%buildroot/%_sysconfdir/alternatives/ld" %endif ln -s "%_sysconfdir/alternatives/ld" "%buildroot/%_bindir/ld"; +%else +ln -s %{_bindir}/alts "%buildroot/%_bindir/ld"; +mkdir -p %{buildroot}%{_datadir}/libalternatives/ld; +cat > %{buildroot}%{_datadir}/libalternatives/ld/1.conf <<EOF +binary=%{_bindir}/ld.gold +EOF +cat > %{buildroot}%{_datadir}/libalternatives/ld/2.conf <<EOF +binary=%{_bindir}/ld.bfd +EOF +%endif + rm -rf $RPM_BUILD_ROOT%{_prefix}/%{HOST}/bin mkdir -p $RPM_BUILD_ROOT%{_prefix}/%{HOST}/bin ln -sf ../../bin/{ar,as,ld,nm,ranlib,strip} $RPM_BUILD_ROOT%{_prefix}/%{HOST}/bin @@ -465,35 +526,57 @@ %if 0%{!?cross:1} %post /sbin/ldconfig +%if ! %{with libalternatives} "%_sbindir/update-alternatives" --install \ "%_bindir/ld" ld "%_bindir/ld.bfd" 2 +%endif %install_info --info-dir=%{_infodir} %{_infodir}/as.info.gz %install_info --info-dir=%{_infodir} %{_infodir}/bfd.info.gz %install_info --info-dir=%{_infodir} %{_infodir}/binutils.info.gz %install_info --info-dir=%{_infodir} %{_infodir}/gprof.info.gz %install_info --info-dir=%{_infodir} %{_infodir}/ld.info.gz +%if ! %{with libalternatives} %post gold "%_sbindir/update-alternatives" --install \ "%_bindir/ld" ld "%_bindir/ld.gold" 1 +%endif %post -n libctf0 -p /sbin/ldconfig %post -n libctf-nobfd0 -p /sbin/ldconfig +%if %{with libalternatives} +%pre +# removing old update-alternatives entries +if [ "$1" -gt 0 ] && [ -f %{_sbindir}/update-alternatives ] ; then + "%_sbindir/update-alternatives" --remove ld "%_bindir/ld.bfd"; +fi; + +%pre gold +# removing old update-alternatives entries +if [ "$1" -gt 0 ] && [ -f %{_sbindir}/update-alternatives ] ; then + "%_sbindir/update-alternatives" --remove ld "%_bindir/ld.gold"; +fi; +%endif + %preun %install_info_delete --info-dir=%{_infodir} %{_infodir}/as.info.gz %install_info_delete --info-dir=%{_infodir} %{_infodir}/bfd.info.gz %install_info_delete --info-dir=%{_infodir} %{_infodir}/binutils.info.gz %install_info_delete --info-dir=%{_infodir} %{_infodir}/gprof.info.gz %install_info_delete --info-dir=%{_infodir} %{_infodir}/ld.info.gz +%if ! %{with libalternatives} if [ "$1" = 0 ]; then "%_sbindir/update-alternatives" --remove ld "%_bindir/ld.bfd"; fi; +%endif +%if ! %{with libalternatives} %preun gold if [ "$1" = 0 ]; then "%_sbindir/update-alternatives" --remove ld "%_bindir/ld.gold"; fi; +%endif %postun -n libctf0 -p /sbin/ldconfig %postun -n libctf-nobfd0 -p /sbin/ldconfig @@ -512,7 +595,13 @@ %dir %{_libdir}/bfd-plugins %{_libdir}/bfd-plugins/libdep.so %{_bindir}/* +%if ! 0%{with libalternatives} %ghost %_sysconfdir/alternatives/ld +%else +%dir %{_datadir}/libalternatives +%dir %{_datadir}/libalternatives/ld +%{_datadir}/libalternatives/ld/2.conf +%endif %ifarch %gold_archs %exclude %{_bindir}/gold %exclude %{_bindir}/ld.gold @@ -531,6 +620,11 @@ %doc gold/NEWS gold/README %{_bindir}/gold %{_bindir}/ld.gold +%if %{with libalternatives} +%dir %{_datadir}/libalternatives +%dir %{_datadir}/libalternatives/ld +%{_datadir}/libalternatives/ld/1.conf +%endif %endif %if 0%{!?cross:1} ++++++ cross-aarch64-binutils.spec ++++++ --- /var/tmp/diff_new_pack.9UimWo/_old 2021-11-06 18:13:11.840733604 +0100 +++ /var/tmp/diff_new_pack.9UimWo/_new 2021-11-06 18:13:11.840733604 +0100 @@ -39,6 +39,15 @@ %endif Version: 2.37 Release: 0 + +# disable libalternatives for now until it's changed to not +# introduce cmake/cunit-tests into the bootstrap cycle +%if 0 && 0%{?suse_version} > 1500 +%bcond_without libalternatives +%else +%bcond_with libalternatives +%endif + # # RUN_TESTS %define run_tests %(test ! -f %_sourcedir/RUN_TESTS ; echo $?) @@ -104,12 +113,17 @@ Patch39: binutils-revert-nm-symversion.diff Patch40: binutils-fix-abierrormsg.diff Patch41: binutils-fix-relax.diff +Patch42: binutils-compat-old-behaviour.diff Patch100: add-ulp-section.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build +%if %{with libalternatives} +Requires: alts +%else PreReq: update-alternatives +%endif %description C compiler utilities: ar, as, gprof, ld, nm, objcopy, objdump, ranlib, @@ -121,7 +135,11 @@ License: GPL-3.0-or-later Group: Development/Tools/Building Requires: binutils = %{version}-%{release} +%if %{with libalternatives} +Requires: alts +%else PreReq: update-alternatives +%endif %if 0%{!?cross:1} %define gold_archs %ix86 aarch64 %arm x86_64 ppc ppc64 ppc64le s390x %sparc %endif @@ -195,6 +213,9 @@ %patch39 -p1 %patch40 -p1 %patch41 -p1 +%if %{suse_version} < 1550 +%patch42 -p1 +%endif %patch100 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h @@ -205,6 +226,22 @@ # # test_vanilla %endif +# in parallel builds, when the flex or bison inputs are patched (possibly +# in the ...-branch.diff) it might happen that the dependency tracking +# of automake is confused and uses the old .c files from srcdir/ld/ while +# also generating the new .c files in builddir/ld leading to trouble. +# I haven't found the right entries to ensure this doesn't happen, so +# simply remove the intermediates +rm -f ld/ldlex.c +rm -f ld/ldgram.c ld/ldgram.h + +# The 2.37 released tarball contains wrongly pre-generated (empty) man pages +# so we remove those here as well. Consider removing for later releases. +rm -f binutils/doc/*.1 +rm -f binutils/doc/cxxfilt.man +rm -f gprof/*.1 +rm -f gas/doc/*.1 +rm -f ld/*.1 %build %define _lto_cflags %{nil} @@ -275,6 +312,7 @@ --enable-compressed-debug-sections=gas \ %endif %if %{suse_version} < 1550 + --disable-x86-used-note \ --disable-separate-code \ %endif --enable-new-dtags \ @@ -287,6 +325,16 @@ %endif --enable-obsolete +# we patch headers (bfd-in.h) that are input to other headers +# which are generated only with --enable-maintainer-mode (which we +# don't do) or explicitely by make headers, so do this: +make %{?_smp_mflags} all-bfd TARGET-bfd=headers +# the above interacts with --enable-pgo-build=lto because all-bfd doesn't +# have the PGO handling, hence it's config.cache files are wrong +# remove all of those for reconfigure +rm */config.cache +# force reconfiguring +rm bfd/Makefile make %{?_smp_mflags} %else @@ -354,6 +402,7 @@ %endif ${EXTRA_TARGETS:+--enable-targets="${EXTRA_TARGETS#,}"} make %{?_smp_mflags} all-bfd TARGET-bfd=headers +rm */config.cache # force reconfiguring rm bfd/Makefile make %{?_smp_mflags} @@ -372,7 +421,7 @@ %if 0%{?cross:1} make -k check CFLAGS="-O2 -g" CXXFLAGS="-O2 -g" CFLAGS_FOR_TARGET="-O2 -g" CXXFLAGS_FOR_TARGET="-O2 -g" || %{make_check_handling} %else -make -k check CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" CFLAGS_FOR_TARGET="$RPM_OPT_FLAGS" CXXFLAGS_FOR_TARGET="$RPM_OPT_FLAGS" || %{make_check_handling} +make -k check CFLAGS="-g $RPM_OPT_FLAGS" CXXFLAGS="-g $RPM_OPT_FLAGS" CFLAGS_FOR_TARGET="-g $RPM_OPT_FLAGS" CXXFLAGS_FOR_TARGET="-g $RPM_OPT_FLAGS" || %{make_check_handling} %endif %install @@ -391,12 +440,24 @@ else rm -f "%buildroot/%_bindir/ld"; fi +%if ! 0%{with libalternatives} mkdir -p "%buildroot/%_sysconfdir/alternatives"; # Keep older versions of brp-symlink happy %if %{suse_version} < 1310 ln -s "%_bindir/ld" "%buildroot/%_sysconfdir/alternatives/ld" %endif ln -s "%_sysconfdir/alternatives/ld" "%buildroot/%_bindir/ld"; +%else +ln -s %{_bindir}/alts "%buildroot/%_bindir/ld"; +mkdir -p %{buildroot}%{_datadir}/libalternatives/ld; +cat > %{buildroot}%{_datadir}/libalternatives/ld/1.conf <<EOF +binary=%{_bindir}/ld.gold +EOF +cat > %{buildroot}%{_datadir}/libalternatives/ld/2.conf <<EOF +binary=%{_bindir}/ld.bfd +EOF +%endif + rm -rf $RPM_BUILD_ROOT%{_prefix}/%{HOST}/bin mkdir -p $RPM_BUILD_ROOT%{_prefix}/%{HOST}/bin ln -sf ../../bin/{ar,as,ld,nm,ranlib,strip} $RPM_BUILD_ROOT%{_prefix}/%{HOST}/bin @@ -468,35 +529,57 @@ %if 0%{!?cross:1} %post /sbin/ldconfig +%if ! %{with libalternatives} "%_sbindir/update-alternatives" --install \ "%_bindir/ld" ld "%_bindir/ld.bfd" 2 +%endif %install_info --info-dir=%{_infodir} %{_infodir}/as.info.gz %install_info --info-dir=%{_infodir} %{_infodir}/bfd.info.gz %install_info --info-dir=%{_infodir} %{_infodir}/binutils.info.gz %install_info --info-dir=%{_infodir} %{_infodir}/gprof.info.gz %install_info --info-dir=%{_infodir} %{_infodir}/ld.info.gz +%if ! %{with libalternatives} %post gold "%_sbindir/update-alternatives" --install \ "%_bindir/ld" ld "%_bindir/ld.gold" 1 +%endif %post -n libctf0 -p /sbin/ldconfig %post -n libctf-nobfd0 -p /sbin/ldconfig +%if %{with libalternatives} +%pre +# removing old update-alternatives entries +if [ "$1" -gt 0 ] && [ -f %{_sbindir}/update-alternatives ] ; then + "%_sbindir/update-alternatives" --remove ld "%_bindir/ld.bfd"; +fi; + +%pre gold +# removing old update-alternatives entries +if [ "$1" -gt 0 ] && [ -f %{_sbindir}/update-alternatives ] ; then + "%_sbindir/update-alternatives" --remove ld "%_bindir/ld.gold"; +fi; +%endif + %preun %install_info_delete --info-dir=%{_infodir} %{_infodir}/as.info.gz %install_info_delete --info-dir=%{_infodir} %{_infodir}/bfd.info.gz %install_info_delete --info-dir=%{_infodir} %{_infodir}/binutils.info.gz %install_info_delete --info-dir=%{_infodir} %{_infodir}/gprof.info.gz %install_info_delete --info-dir=%{_infodir} %{_infodir}/ld.info.gz +%if ! %{with libalternatives} if [ "$1" = 0 ]; then "%_sbindir/update-alternatives" --remove ld "%_bindir/ld.bfd"; fi; +%endif +%if ! %{with libalternatives} %preun gold if [ "$1" = 0 ]; then "%_sbindir/update-alternatives" --remove ld "%_bindir/ld.gold"; fi; +%endif %postun -n libctf0 -p /sbin/ldconfig %postun -n libctf-nobfd0 -p /sbin/ldconfig @@ -515,7 +598,13 @@ %dir %{_libdir}/bfd-plugins %{_libdir}/bfd-plugins/libdep.so %{_bindir}/* +%if ! 0%{with libalternatives} %ghost %_sysconfdir/alternatives/ld +%else +%dir %{_datadir}/libalternatives +%dir %{_datadir}/libalternatives/ld +%{_datadir}/libalternatives/ld/2.conf +%endif %ifarch %gold_archs %exclude %{_bindir}/gold %exclude %{_bindir}/ld.gold @@ -534,6 +623,11 @@ %doc gold/NEWS gold/README %{_bindir}/gold %{_bindir}/ld.gold +%if %{with libalternatives} +%dir %{_datadir}/libalternatives +%dir %{_datadir}/libalternatives/ld +%{_datadir}/libalternatives/ld/1.conf +%endif %endif %if 0%{!?cross:1} 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 ++++++ binutils-2.37-branch.diff.gz ++++++ ++++ 3365 lines (skipped) ++++ between /work/SRC/openSUSE:Factory/binutils/binutils-2.37-branch.diff.gz ++++ and /work/SRC/openSUSE:Factory/.binutils.new.1890/binutils-2.37-branch.diff.gz ++++++ binutils-bfd_h.patch ++++++ --- /var/tmp/diff_new_pack.9UimWo/_old 2021-11-06 18:13:12.456733926 +0100 +++ /var/tmp/diff_new_pack.9UimWo/_new 2021-11-06 18:13:12.460733928 +0100 @@ -1,8 +1,10 @@ Remove the #error to avoid issues with legacy not dealing with this ---- bfd/bfd-in.h.orig 2012-11-30 13:44:35.715871571 +0100 -+++ bfd/bfd-in.h 2012-11-30 13:44:43.428871298 +0100 -@@ -25,11 +25,6 @@ +Index: bfd/bfd-in.h +=================================================================== +--- bfd/bfd-in.h.orig ++++ bfd/bfd-in.h +@@ -23,11 +23,6 @@ #ifndef __BFD_H_SEEN__ #define __BFD_H_SEEN__ ++++++ binutils-compat-old-behaviour.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 Index: binutils-2.37/ld/testsuite/ld-elf/linux-x86.exp =================================================================== --- binutils-2.37.orig/ld/testsuite/ld-elf/linux-x86.exp +++ binutils-2.37/ld/testsuite/ld-elf/linux-x86.exp @@ -125,7 +125,7 @@ proc check_pr25749a {testname srcfilea s } # 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 @@ -246,7 +246,7 @@ proc check_pr25749b {testname srcfilea s [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" \ Index: binutils-2.37/ld/testsuite/ld-i386/report-reloc-1.d =================================================================== --- binutils-2.37.orig/ld/testsuite/ld-i386/report-reloc-1.d +++ binutils-2.37/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 +#ld: -pie -melf_i386 -z report-relative-reloc -z separate-code #warning_output: report-reloc-1.l #readelf: -r --wide Index: binutils-2.37/ld/testsuite/ld-x86-64/pe-x86-64.exp =================================================================== --- binutils-2.37.orig/ld/testsuite/ld-x86-64/pe-x86-64.exp +++ binutils-2.37/ld/testsuite/ld-x86-64/pe-x86-64.exp @@ -27,7 +27,7 @@ if {![istarget "x86_64-*-linux*"] } { run_ld_link_tests [list \ [list \ "Build pe-x86-64-1" \ - "-m elf_x86_64 --entry=begin" \ + "-m elf_x86_64 --entry=begin -z separate-code -z max-page-size=4096" \ "" \ "" \ {pe-x86-64-1a.obj.bz2 pe-x86-64-1b.obj.bz2 pe-x86-64-1c.obj.bz2} \ @@ -36,7 +36,7 @@ run_ld_link_tests [list \ ] \ [list \ "Build pe-x86-64-2" \ - "-m elf_x86_64 --entry=begin" \ + "-m elf_x86_64 --entry=begin -z separate-code -z max-page-size=4096" \ "" \ "" \ {pe-x86-64-2a.obj.bz2 pe-x86-64-2b.obj.bz2 pe-x86-64-2c.obj.bz2} \ @@ -45,7 +45,7 @@ run_ld_link_tests [list \ ] \ [list \ "Build pe-x86-64-3" \ - "-m elf_x86_64 --entry=begin" \ + "-m elf_x86_64 --entry=begin -z separate-code -z max-page-size=4096" \ "" \ "" \ {pe-x86-64-3a.obj.bz2 pe-x86-64-3b.obj.bz2 pe-x86-64-3c.obj.bz2 \ @@ -55,7 +55,7 @@ run_ld_link_tests [list \ ] \ [list \ "Build pe-x86-64-4" \ - "-m elf_x86_64 --entry=begin" \ + "-m elf_x86_64 --entry=begin -z separate-code -z max-page-size=4096" \ "" \ "" \ {pe-x86-64-4a.obj.bz2 pe-x86-64-4b.obj.bz2 pe-x86-64-4c.obj.bz2 \ @@ -65,7 +65,7 @@ run_ld_link_tests [list \ ] \ [list \ "Build pe-x86-64-5" \ - "-m elf_x86_64 --entry=begin" \ + "-m elf_x86_64 --entry=begin -z separate-code -z max-page-size=4096" \ "" \ "" \ {pe-x86-64-5.obj.bz2 } \ @@ -75,7 +75,7 @@ run_ld_link_tests [list \ ] \ [list \ "Build pe-x86-64-6" \ - "-m elf_x86_64 --entry=main" \ + "-m elf_x86_64 --entry=main -z separate-code -z max-page-size=4096" \ "" \ "" \ {pe-x86-64-6.obj.bz2 } \ Index: binutils-2.37/ld/testsuite/ld-x86-64/report-reloc-1-x32.d =================================================================== --- binutils-2.37.orig/ld/testsuite/ld-x86-64/report-reloc-1-x32.d +++ binutils-2.37/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 +#ld: -pie -melf32_x86_64 -z report-relative-reloc -z separate-code -z max-page-size=4096 #warning_output: report-reloc-1.l #readelf: -r --wide Index: binutils-2.37/ld/testsuite/ld-x86-64/report-reloc-1.d =================================================================== --- binutils-2.37.orig/ld/testsuite/ld-x86-64/report-reloc-1.d +++ binutils-2.37/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 +#ld: -pie -melf_x86_64 -z report-relative-reloc -z separate-code -z max-page-size=4096 #warning_output: report-reloc-1.l #readelf: -r --wide Index: binutils-2.37/ld/testsuite/ld-x86-64/pr19609-4e.d =================================================================== --- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr19609-4e.d +++ binutils-2.37/ld/testsuite/ld-x86-64/pr19609-4e.d @@ -1,6 +1,6 @@ #source: pr19609-4.s #as: --64 -mrelax-relocations=yes -#ld: -melf_x86_64 -Ttext=0x70000000 -Tdata=0xa0000000 --no-relax +#ld: -melf_x86_64 -Ttext=0x70000000 -Tdata=0xa0000000 --no-relax -z separate-code -z max-page-size=4096 #objdump: -dw .*: +file format .* Index: binutils-2.37/ld/testsuite/ld-x86-64/pr19609-6a.d =================================================================== --- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr19609-6a.d +++ binutils-2.37/ld/testsuite/ld-x86-64/pr19609-6a.d @@ -1,6 +1,6 @@ #source: pr19609-6.s #as: --64 -mrelax-relocations=yes -#ld: -melf_x86_64 --defsym foobar=0x80000000 +#ld: -melf_x86_64 --defsym foobar=0x80000000 -z separate-code -z max-page-size=4096 #objdump: -dw .*: +file format .* Index: binutils-2.37/ld/testsuite/ld-x86-64/pr19609-6b.d =================================================================== --- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr19609-6b.d +++ binutils-2.37/ld/testsuite/ld-x86-64/pr19609-6b.d @@ -1,6 +1,6 @@ #source: pr19609-6.s #as: --64 -mrelax-relocations=yes -#ld: -melf_x86_64 --defsym foobar=0x80000000 --no-relax +#ld: -melf_x86_64 --defsym foobar=0x80000000 --no-relax -z separate-code -z max-page-size=4096 #objdump: -dw .*: +file format .* Index: binutils-2.37/ld/testsuite/ld-x86-64/pr19609-7b.d =================================================================== --- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr19609-7b.d +++ binutils-2.37/ld/testsuite/ld-x86-64/pr19609-7b.d @@ -1,6 +1,6 @@ #source: pr19609-7.s #as: --64 -mrelax-relocations=yes -#ld: -melf_x86_64 -Ttext=0x80000000 --no-relax +#ld: -melf_x86_64 -Ttext=0x80000000 --no-relax -z separate-code -z max-page-size=4096 #objdump: -dw .*: +file format .* Index: binutils-2.37/ld/testsuite/ld-x86-64/pr19609-7d.d =================================================================== --- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr19609-7d.d +++ binutils-2.37/ld/testsuite/ld-x86-64/pr19609-7d.d @@ -1,6 +1,6 @@ #source: pr19609-7.s #as: --x32 -mrelax-relocations=yes -#ld: -melf32_x86_64 -Ttext=0x80000000 --no-relax +#ld: -melf32_x86_64 -Ttext=0x80000000 --no-relax -z separate-code -z max-page-size=4096 #objdump: -dw .*: +file format .* ++++++ binutils-revert-nm-symversion.diff ++++++ --- /var/tmp/diff_new_pack.9UimWo/_old 2021-11-06 18:13:12.480733939 +0100 +++ /var/tmp/diff_new_pack.9UimWo/_new 2021-11-06 18:13:12.484733941 +0100 @@ -4,31 +4,60 @@ those packages are fixed we use this patch. We have to carry it for old code streams forever. -diff --git a/binutils/nm.c b/binutils/nm.c -index 2637756c647..253714ef179 100644 ---- a/binutils/nm.c -+++ b/binutils/nm.c -@@ -458,7 +458,7 @@ print_symname (const char *form, struct extended_symbol_info *info, - name = alloc; - } +Index: binutils-2.37/binutils/nm.c +=================================================================== +--- binutils-2.37.orig/binutils/nm.c ++++ binutils-2.37/binutils/nm.c +@@ -183,7 +183,7 @@ static int show_version = 0; /* Show the + static int show_synthetic = 0; /* Display synthesized symbols too. */ + static int line_numbers = 0; /* Print line numbers for symbols. */ + static int allow_special_symbols = 0; /* Allow special symbols. */ +-static int with_symbol_versions = -1; /* Output symbol version information. */ ++static int with_symbol_versions = 0; /* Output symbol version information. */ + static int quiet = 0; /* Suppress "no symbols" diagnostic. */ -- if (info != NULL && info->elfinfo && with_symbol_versions) -+ if (info != NULL && info->elfinfo && with_symbol_versions && 0) - { - const char *version_string; - bool hidden; -diff --git a/ld/testsuite/ld-elf/pr25708.d b/ld/testsuite/ld-elf/pr25708.d -index 60b8e31807a..1b62e25347e 100644 ---- a/ld/testsuite/ld-elf/pr25708.d -+++ b/ld/testsuite/ld-elf/pr25708.d -@@ -2,8 +2,9 @@ - #ld: -shared -version-script pr13195.t - #nm: -D --with-symbol-versions - #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 + /* The characters to use for global and local ifunc symbols. */ +Index: binutils-2.37/ld/testsuite/ld-elf/shared.exp +=================================================================== +--- binutils-2.37.orig/ld/testsuite/ld-elf/shared.exp ++++ binutils-2.37/ld/testsuite/ld-elf/shared.exp +@@ -938,8 +938,7 @@ run_cc_link_tests [list \ + "-fPIC" \ + {pr26302b.c} \ + {{readelf {-sW} pr26302.rd} \ +- {nm {-u} pr26302.nd} \ +- {nm {-u -D} pr26302.nd} \ ++ {nm {-u --with-symbol-versions} pr26302.nd} \ + {nm {-u -D --with-symbol-versions} pr26302.nd}} \ + "pr26302b.so" \ + ] \ +Index: binutils-2.37/gas/testsuite/gas/symver/symver0.d +=================================================================== +--- binutils-2.37.orig/gas/testsuite/gas/symver/symver0.d ++++ binutils-2.37/gas/testsuite/gas/symver/symver0.d +@@ -1,4 +1,4 @@ +-#nm: -n ++#nm: -n --with-symbol-versions + #name: symver symver0 + # + # The #... and #pass are there to match extra symbols inserted by +Index: binutils-2.37/gas/testsuite/gas/symver/symver1.d +=================================================================== +--- binutils-2.37.orig/gas/testsuite/gas/symver/symver1.d ++++ binutils-2.37/gas/testsuite/gas/symver/symver1.d +@@ -1,4 +1,4 @@ +-#nm: -n ++#nm: -n --with-symbol-versions + #name: symver symver1 + # + # The #... and #pass are there to match extra symbols inserted by +Index: binutils-2.37/gas/testsuite/gas/symver/symver6.d +=================================================================== +--- binutils-2.37.orig/gas/testsuite/gas/symver/symver6.d ++++ binutils-2.37/gas/testsuite/gas/symver/symver6.d +@@ -1,4 +1,4 @@ +-#nm: -n ++#nm: -n --with-symbol-versions + #name: symver symver6 + # - #.. - 0+ A VERS_2.0 ++++++ binutils-revert-plt32-in-branches.diff ++++++ --- /var/tmp/diff_new_pack.9UimWo/_old 2021-11-06 18:13:12.492733945 +0100 +++ /var/tmp/diff_new_pack.9UimWo/_new 2021-11-06 18:13:12.492733945 +0100 @@ -79,11 +79,11 @@ * testsuite/ld-x86-64/pr22791-2c.s: Likewise. * 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 dc416a7f..b9f96729 100644 ---- a/bfd/elf64-x86-64.c -+++ b/bfd/elf64-x86-64.c -@@ -1832,6 +1832,24 @@ elf_x86_64_convert_load_reloc (bfd *abfd, +Index: binutils-2.37/bfd/elf64-x86-64.c +=================================================================== +--- binutils-2.37.orig/bfd/elf64-x86-64.c ++++ binutils-2.37/bfd/elf64-x86-64.c +@@ -1832,6 +1832,24 @@ elf_x86_64_convert_load_reloc (bfd *abfd return true; } @@ -108,7 +108,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. */ -@@ -3159,9 +3177,6 @@ elf_x86_64_relocate_section (bfd *output_bfd, +@@ -3154,9 +3172,6 @@ elf_x86_64_relocate_section (bfd *output && (eh == NULL || !UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, eh))) @@ -118,7 +118,7 @@ || (no_copyreloc_p && h->def_dynamic && !(h->root.u.def.section->flags & SEC_CODE)))) -@@ -3170,20 +3185,25 @@ elf_x86_64_relocate_section (bfd *output_bfd, +@@ -3165,20 +3180,25 @@ elf_x86_64_relocate_section (bfd *output || bfd_link_dll (info))) { bool fail = false; @@ -148,7 +148,7 @@ } else if (no_copyreloc_p || bfd_link_dll (info)) { -@@ -3192,9 +3212,10 @@ elf_x86_64_relocate_section (bfd *output_bfd, +@@ -3187,9 +3207,10 @@ elf_x86_64_relocate_section (bfd *output relocations against default and protected symbols since address of protected function and location of protected data may not be in @@ -161,11 +161,11 @@ } if (fail) -diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c -index d3441988e34..8f8fb086cd8 100644 ---- a/gas/config/tc-i386.c -+++ b/gas/config/tc-i386.c -@@ -8793,55 +8793,12 @@ output_branch (void) +Index: binutils-2.37/gas/config/tc-i386.c +=================================================================== +--- binutils-2.37.orig/gas/config/tc-i386.c ++++ binutils-2.37/gas/config/tc-i386.c +@@ -8770,55 +8770,12 @@ output_branch (void) frag_var (rs_machine_dependent, 5, i.reloc[0], subtype, sym, off, p); } @@ -221,7 +221,7 @@ if (i.tm.opcode_modifier.jump == JUMP_BYTE) { -@@ -8915,17 +8872,8 @@ output_jump (void) +@@ -8892,17 +8849,8 @@ output_jump (void) abort (); } @@ -240,7 +240,7 @@ /* All jumps handled here are signed, but don't unconditionally use a signed limit check for 32 and 16 bit jumps as we want to allow wrap -@@ -12184,10 +12132,6 @@ md_estimate_size_before_relax (fragS *fragP, segT segment) +@@ -12190,10 +12138,6 @@ md_estimate_size_before_relax (fragS *fr reloc_type = (enum bfd_reloc_code_real) fragP->fr_var; else if (size == 2) reloc_type = BFD_RELOC_16_PCREL; @@ -251,10 +251,10 @@ else 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 78ca3fd9e38..a961679754a 100644 ---- a/gas/testsuite/gas/i386/ilp32/reloc64.d -+++ b/gas/testsuite/gas/i386/ilp32/reloc64.d +Index: binutils-2.37/gas/testsuite/gas/i386/ilp32/reloc64.d +=================================================================== +--- binutils-2.37.orig/gas/testsuite/gas/i386/ilp32/reloc64.d ++++ binutils-2.37/gas/testsuite/gas/i386/ilp32/reloc64.d @@ -17,7 +17,7 @@ Disassembly of section \.text: .*[ ]+R_X86_64_PC8[ ]+xtrn\+0x0*1 .*[ ]+R_X86_64_PC32[ ]+xtrn-0x0*4 @@ -264,10 +264,10 @@ .*[ ]+R_X86_64_PC8[ ]+xtrn-0x0*1 .*[ ]+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 acf8c42ca97..57845fdc208 100644 ---- a/gas/testsuite/gas/i386/ilp32/x86-64-branch.d -+++ b/gas/testsuite/gas/i386/ilp32/x86-64-branch.d +Index: binutils-2.37/gas/testsuite/gas/i386/ilp32/x86-64-branch.d +=================================================================== +--- binutils-2.37.orig/gas/testsuite/gas/i386/ilp32/x86-64-branch.d ++++ binutils-2.37/gas/testsuite/gas/i386/ilp32/x86-64-branch.d @@ -20,9 +20,9 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 66 ff 20 data16 jmp \*\(%rax\) [ ]*[a-f0-9]+: e8 00 00 00 00 call (0x)?1f <.*> 1b: R_X86_64_PC32 \*ABS\*\+0x10003c @@ -281,10 +281,10 @@ [ ]*[a-f0-9]+: 66 c3 data16 ret * [ ]*[a-f0-9]+: 66 c2 08 00 data16 ret \$0x8 [ ]*[a-f0-9]+: 3e 74 03[ ]+je,pt +[0-9a-fx]+ <.*> -diff --git a/gas/testsuite/gas/i386/reloc64.d b/gas/testsuite/gas/i386/reloc64.d -index 540a9b77d35..ea16c68de4b 100644 ---- a/gas/testsuite/gas/i386/reloc64.d -+++ b/gas/testsuite/gas/i386/reloc64.d +Index: binutils-2.37/gas/testsuite/gas/i386/reloc64.d +=================================================================== +--- binutils-2.37.orig/gas/testsuite/gas/i386/reloc64.d ++++ binutils-2.37/gas/testsuite/gas/i386/reloc64.d @@ -20,7 +20,7 @@ Disassembly of section \.text: .*[ ]+R_X86_64_PC8[ ]+xtrn\+0x0*1 .*[ ]+R_X86_64_PC32[ ]+xtrn-0x0*4 @@ -294,10 +294,10 @@ .*[ ]+R_X86_64_PC8[ ]+xtrn-0x0*1 .*[ ]+R_X86_64_GOT64[ ]+xtrn .*[ ]+R_X86_64_GOT32[ ]+xtrn -diff --git a/gas/testsuite/gas/i386/x86-64-branch-2.d b/gas/testsuite/gas/i386/x86-64-branch-2.d -index fab75a6394c..e025de90b68 100644 ---- a/gas/testsuite/gas/i386/x86-64-branch-2.d -+++ b/gas/testsuite/gas/i386/x86-64-branch-2.d +Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-branch-2.d +=================================================================== +--- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-branch-2.d ++++ binutils-2.37/gas/testsuite/gas/i386/x86-64-branch-2.d @@ -9,12 +9,12 @@ Disassembly of section .text: 0+ <bar-0xb>: @@ -313,10 +313,10 @@ [ ]*[a-f0-9]+: 66 c3 retw * [ ]*[a-f0-9]+: 66 c2 08 00 retw \$0x8 #pass -diff --git a/gas/testsuite/gas/i386/x86-64-jump.d b/gas/testsuite/gas/i386/x86-64-jump.d -index 7d2c994ce26..58ad424badb 100644 ---- a/gas/testsuite/gas/i386/x86-64-jump.d -+++ b/gas/testsuite/gas/i386/x86-64-jump.d +Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-jump.d +=================================================================== +--- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-jump.d ++++ binutils-2.37/gas/testsuite/gas/i386/x86-64-jump.d @@ -9,7 +9,7 @@ Disassembly of section .text: 0+ <.text>: @@ -335,10 +335,10 @@ [ ]*[a-f0-9]+: ff 14 25 00 00 00 00 call \*0x0 3d: R_X86_64_32S xxx [ ]*[a-f0-9]+: ff d7 call \*%rdi [ ]*[a-f0-9]+: ff 17 call \*\(%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 795f3fdacc4..1d692e8f04d 100644 ---- a/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d -+++ b/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d +Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d +=================================================================== +--- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d ++++ binutils-2.37/gas/testsuite/gas/i386/x86-64-mpx-branch-1.d @@ -23,9 +23,9 @@ Disassembly of section .text: [ ]*[a-f0-9]+: f2 e8 00 00 00 00 bnd call 34 <foo2> @@ -352,10 +352,10 @@ [ ]*[a-f0-9]+: f2 e9 00 00 00 00 bnd jmp 4d <foo2\+0x19> 49: R_X86_64_PLT32 foo-0x4 [ ]*[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 call 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 1975481cc59..436487b5a99 100644 ---- a/gas/testsuite/gas/i386/x86-64-nop-3.d -+++ b/gas/testsuite/gas/i386/x86-64-nop-3.d +Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-nop-3.d +=================================================================== +--- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-nop-3.d ++++ binutils-2.37/gas/testsuite/gas/i386/x86-64-nop-3.d @@ -18,5 +18,5 @@ Disassembly of section .text: Disassembly of section .altinstr_replacement: @@ -363,32 +363,32 @@ - +[a-f0-9]+: e9 00 00 00 00 jmp 5 <_start\+0x5> 1: R_X86_64_PLT32 foo-0x4 + +[a-f0-9]+: e9 00 00 00 00 jmp 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 2da858db994..e390628b335 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: +Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-nop-4.d +=================================================================== +--- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-nop-4.d ++++ binutils-2.37/gas/testsuite/gas/i386/x86-64-nop-4.d +@@ -21,5 +21,5 @@ Disassembly of section .altinstr_replace +[a-f0-9]+: 89 c0 mov %eax,%eax +[a-f0-9]+: 89 c0 mov %eax,%eax +[a-f0-9]+: 89 c0 mov %eax,%eax - +[a-f0-9]+: e9 00 00 00 00 jmp b <_start\+0xb> 7: R_X86_64_PLT32 foo-0x4 + +[a-f0-9]+: e9 00 00 00 00 jmp 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 d5c84c1edf8..69820d54de8 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: +Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-nop-5.d +=================================================================== +--- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-nop-5.d ++++ binutils-2.37/gas/testsuite/gas/i386/x86-64-nop-5.d +@@ -24,5 +24,5 @@ Disassembly of section .altinstr_replace +[a-f0-9]+: 89 c0 mov %eax,%eax +[a-f0-9]+: 89 c0 mov %eax,%eax +[a-f0-9]+: 89 c0 mov %eax,%eax - +[a-f0-9]+: e9 00 00 00 00 jmp d <_start\+0xd> 9: R_X86_64_PLT32 foo-0x4 + +[a-f0-9]+: e9 00 00 00 00 jmp 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 fba47c14850..0949ab23907 100644 ---- a/gas/testsuite/gas/i386/x86-64-relax-2.d -+++ b/gas/testsuite/gas/i386/x86-64-relax-2.d +Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-relax-2.d +=================================================================== +--- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-relax-2.d ++++ binutils-2.37/gas/testsuite/gas/i386/x86-64-relax-2.d @@ -11,12 +11,12 @@ Disassembly of section .text: 0+ <foo>: [ ]*[a-f0-9]+: eb 24 jmp 26 <local> @@ -407,10 +407,10 @@ 0+22 <hidden_def>: [ ]*[a-f0-9]+: c3 ret * -diff --git a/gas/testsuite/gas/i386/x86-64-relax-3.d b/gas/testsuite/gas/i386/x86-64-relax-3.d -index 01df9ef340e..d16e6a55395 100644 ---- a/gas/testsuite/gas/i386/x86-64-relax-3.d -+++ b/gas/testsuite/gas/i386/x86-64-relax-3.d +Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-relax-3.d +=================================================================== +--- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-relax-3.d ++++ binutils-2.37/gas/testsuite/gas/i386/x86-64-relax-3.d @@ -12,10 +12,10 @@ Disassembly of section .text: [ ]*[a-f0-9]+: eb 1b jmp 1f <hidden_def> [ ]*[a-f0-9]+: eb 1b jmp 21 <global_def> @@ -426,37 +426,34 @@ 0+1f <hidden_def>: [ ]*[a-f0-9]+: c3 ret * -diff --git a/ld/testsuite/ld-x86-64/mpx1c.rd b/ld/testsuite/ld-x86-64/mpx1c.rd -index d66524c8834..d3b292cbdc1 100644 ---- a/ld/testsuite/ld-x86-64/mpx1c.rd -+++ b/ld/testsuite/ld-x86-64/mpx1c.rd +Index: binutils-2.37/ld/testsuite/ld-x86-64/mpx1c.rd +=================================================================== +--- binutils-2.37.orig/ld/testsuite/ld-x86-64/mpx1c.rd ++++ binutils-2.37/ld/testsuite/ld-x86-64/mpx1c.rd @@ -1,3 +1,3 @@ #... -[0-9a-f ]+R_X86_64_PLT32 +0+ +.* +[0-9a-f ]+R_X86_64_PC32 +0+ +.* #... -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 8c5565992e7..00000000000 ---- a/ld/testsuite/ld-x86-64/pr22791-1.err +Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22791-1.err +=================================================================== +--- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22791-1.err +++ /dev/null @@ -1,2 +0,0 @@ -.*relocation R_X86_64_PC32 against symbol `foo' can not be used when making a PIE object; recompile with -fPIE -#... -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 cd0130cacdf..00000000000 ---- a/ld/testsuite/ld-x86-64/pr22791-1a.c +Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22791-1a.c +=================================================================== +--- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22791-1a.c +++ /dev/null @@ -1,4 +0,0 @@ -void -foo (void) -{ -} -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 9751db49aa5..00000000000 ---- a/ld/testsuite/ld-x86-64/pr22791-1b.s +Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22791-1b.s +=================================================================== +--- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22791-1b.s +++ /dev/null @@ -1,6 +0,0 @@ - .text @@ -465,10 +462,9 @@ -main: - movl foo(%rip), %eax - .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 70deb30d84d..00000000000 ---- a/ld/testsuite/ld-x86-64/pr22791-2.rd +Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22791-2.rd +=================================================================== +--- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22791-2.rd +++ /dev/null @@ -1,6 +0,0 @@ -#failif @@ -477,10 +473,9 @@ -#... -[0-9a-f ]+R_X86_64_NONE.* -#... -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 0a855024d74..00000000000 ---- a/ld/testsuite/ld-x86-64/pr22791-2a.s +Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22791-2a.s +=================================================================== +--- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22791-2a.s +++ /dev/null @@ -1,8 +0,0 @@ - .text @@ -491,10 +486,9 @@ - jmp bar - .size foo, .-foo - .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 79ef27c0857..00000000000 ---- a/ld/testsuite/ld-x86-64/pr22791-2b.c +Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22791-2b.c +=================================================================== +--- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22791-2b.c +++ /dev/null @@ -1,7 +0,0 @@ -#include <stdio.h> @@ -504,10 +498,9 @@ -{ - puts ("PASS"); -} -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 1460d1b8288..00000000000 ---- a/ld/testsuite/ld-x86-64/pr22791-2c.s +Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22791-2c.s +=================================================================== +--- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22791-2c.s +++ /dev/null @@ -1,12 +0,0 @@ - .text @@ -522,10 +515,10 @@ - ret - .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 f0659cd901e..b9dd81345b7 100644 ---- a/ld/testsuite/ld-x86-64/pr22842b.S -+++ b/ld/testsuite/ld-x86-64/pr22842b.S +Index: binutils-2.37/ld/testsuite/ld-x86-64/pr22842b.S +=================================================================== +--- binutils-2.37.orig/ld/testsuite/ld-x86-64/pr22842b.S ++++ binutils-2.37/ld/testsuite/ld-x86-64/pr22842b.S @@ -7,7 +7,7 @@ main: leaq bar(%rip), %rdi addq %rax, %rdi @@ -535,15 +528,14 @@ xorl %eax, %eax popq %rcx retq -diff --git a/ld/testsuite/ld-x86-64/x86-64.exp b/ld/testsuite/ld-x86-64/x86-64.exp -index 17fd10ee121..b4ae52ab376 100644 ---- a/ld/testsuite/ld-x86-64/x86-64.exp -+++ b/ld/testsuite/ld-x86-64/x86-64.exp -@@ -1264,44 +1264,6 @@ if { [isnative] && [check_compiler_available] } { - {readelf -lW pr22393-3b.rd}} \ +Index: binutils-2.37/ld/testsuite/ld-x86-64/x86-64.exp +=================================================================== +--- binutils-2.37.orig/ld/testsuite/ld-x86-64/x86-64.exp ++++ binutils-2.37/ld/testsuite/ld-x86-64/x86-64.exp +@@ -1272,44 +1272,6 @@ if { [isnative] && [check_compiler_avail "pr22393-3-static" \ ] \ -- [list \ + [list \ - "Build pr22791-1.so" \ - "-shared" \ - "-fPIC -Wa,-mx86-used-note=yes" \ @@ -581,14 +573,14 @@ - {{readelf -drW pr22791-2.rd}} \ - "pr22791-2" \ - ] \ - [list \ +- [list \ "Build pr22842.so" \ "-shared" \ -@@ -1703,15 +1665,6 @@ if { [isnative] && [check_compiler_available] } { - "pr22393-3-static" \ + "-fPIC -Wa,-mx86-used-note=yes" \ +@@ -1719,15 +1681,6 @@ if { [isnative] && [check_compiler_avail "pass.out" \ ] \ -- [list \ + [list \ - "Run pr22791-2" \ - "-pie -Wl,--no-as-needed tmpdir/pr22791-2.so" \ - "-Wa,-mx86-used-note=yes" \ @@ -597,6 +589,32 @@ - "pass.out" \ - "$NOPIE_CFLAGS" \ - ] \ - [list \ +- [list \ "Run pr22842" \ "-pie -Wl,--no-as-needed tmpdir/pr22842.so" \ + "-Wa,-mx86-used-note=yes" \ +Index: binutils-2.37/gas/testsuite/gas/i386/x86-64-branch-3.d +=================================================================== +--- binutils-2.37.orig/gas/testsuite/gas/i386/x86-64-branch-3.d ++++ binutils-2.37/gas/testsuite/gas/i386/x86-64-branch-3.d +@@ -8,15 +8,15 @@ + Disassembly of section .text: + + 0+ <bar-0xd>: +-[ ]*[a-f0-9]+: 66 e9 00 00 00 00 data16 jmp 6 <bar-0x7> 2: R_X86_64_PLT32 foo-0x4 +-[ ]*[a-f0-9]+: 66 48 e9 00 00 00 00 data16 rex\.W jmp d <bar> 9: R_X86_64_PLT32 foo-0x4 ++[ ]*[a-f0-9]+: 66 e9 00 00 00 00 data16 jmp 6 <bar-0x7> 2: R_X86_64_PC32 foo-0x4 ++[ ]*[a-f0-9]+: 66 48 e9 00 00 00 00 data16 rex\.W jmp d <bar> 9: R_X86_64_PC32 foo-0x4 + + 0+d <bar>: + [ ]*[a-f0-9]+: 89 c3 mov %eax,%ebx +-[ ]*[a-f0-9]+: 66 e8 00 00 00 00 data16 call 15 <bar\+0x8> 11: R_X86_64_PLT32 foo-0x4 +-[ ]*[a-f0-9]+: 66 48 e8 00 00 00 00 data16 rex\.W call 1c <bar\+0xf> 18: R_X86_64_PLT32 foo-0x4 ++[ ]*[a-f0-9]+: 66 e8 00 00 00 00 data16 call 15 <bar\+0x8> 11: R_X86_64_PC32 foo-0x4 ++[ ]*[a-f0-9]+: 66 48 e8 00 00 00 00 data16 rex\.W call 1c <bar\+0xf> 18: R_X86_64_PC32 foo-0x4 + [ ]*[a-f0-9]+: 66 c7 f8 00 00 xbeginw 21 <bar\+0x14> 1f: R_X86_64_PC16 foo-0x2 +-[ ]*[a-f0-9]+: 66 48 c7 f8 00 00 00 00 data16 rex\.W xbegin 29 <bar\+0x1c> 25: R_X86_64_PLT32 foo-0x4 ++[ ]*[a-f0-9]+: 66 48 c7 f8 00 00 00 00 data16 rex\.W xbegin 29 <bar\+0x1c> 25: R_X86_64_PC32 foo-0x4 + [ ]*[a-f0-9]+: 48 ff 18 lcallq \*\(%rax\) + [ ]*[a-f0-9]+: 48 ff 29 ljmpq \*\(%rcx\) + #pass ++++++ binutils-skip-rpaths.patch ++++++ --- /var/tmp/diff_new_pack.9UimWo/_old 2021-11-06 18:13:12.500733949 +0100 +++ /var/tmp/diff_new_pack.9UimWo/_new 2021-11-06 18:13:12.500733949 +0100 @@ -56,7 +56,7 @@ asection *sinterp; bfd *abfd; struct bfd_link_hash_entry *ehdr_start = NULL; -@@ -1572,7 +1597,65 @@ ldelf_before_allocation (char *audit, char *depaudit, +@@ -1608,7 +1633,67 @@ ldelf_before_allocation (char *audit, char *depaudit, by dynamic linking. */ rpath = command_line.rpath; if (rpath == NULL) @@ -73,12 +73,14 @@ + fseek (ldso, 0, SEEK_END); + endcur = ftell (ldso); + fseek (ldso, 0, SEEK_SET); -+ dirs = xmalloc (endcur); ++ dirs = xmalloc (endcur + 1); + if (fread (dirs, 1, endcur, ldso) != (size_t) endcur) + { + free (dirs); + dirs = NULL; + } ++ else ++ dirs[endcur] = '\0'; + } + if (dirs) + {