From 4522633f01a680c8d0d0f8742edd006ec938254623610e560cc6dd429e84e4dc Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Wed, 8 Mar 2017 11:39:36 +0000 Subject: [PATCH 1/3] - Update to binutils 2.28. * Add support for locating separate debug info files using the build-id method, where the separate file has a name based upon the build-id of the original file. * This version of binutils fixes a problem with PowerPC VLE 16A and 16D relocations which were functionally swapped, for example, R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D performed like R_PPC_VLE_HA16A. This could have been fixed by renumbering relocations, which would keep object files created by an older version of gas compatible with a newer ld. However, that would require an ABI update, affecting other assemblers and linkers that create and process the relocations correctly. It is recommended that all VLE object files be recompiled, but ld can modify the relocations if --vle-reloc-fixup is passed to ld. If the new ld command line option is not used, ld will ld warn on finding relocations inconsistent with the instructions being relocated. * The nm program has a new command line option (--with-version-strings) which will display a symbol's version information, if any, after the symbol's name. * The ARC port of objdump now accepts a -M option to specify the extra instruction class(es) that should be disassembled. * The --remove-section option for objcopy and strip now accepts section patterns starting with an exclamation point to indicate a non-matching section. A non-matching section is removed from the set of sections matched by an earlier --remove-section pattern. * The --only-section option for objcopy now accepts section patterns starting with an exclamation point to indicate a non-matching section. A non-matching section is removed from the set of sections matched by an earlier --only-section pattern. * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. OBS-URL: https://build.opensuse.org/package/show/devel:gcc/binutils?expand=0&rev=231 --- aarch64-alignment-frags.patch | 110 - binutils-2.27-branch.diff | 2921 ----------------- binutils-2.27-fix-section-order.diff | 2205 ------------- binutils-2.27.tar.bz2 | 3 - binutils-2.28-branch.diff | 1167 +++++++ binutils-2.28.tar.bz2 | 3 + binutils.changes | 69 + binutils.spec | 11 +- cross-aarch64-binutils.changes | 69 + cross-aarch64-binutils.spec | 11 +- cross-arm-binutils.changes | 69 + cross-arm-binutils.spec | 11 +- cross-avr-binutils.changes | 69 + cross-avr-binutils.spec | 11 +- cross-epiphany-binutils.changes | 69 + cross-epiphany-binutils.spec | 11 +- cross-hppa-binutils.changes | 69 + cross-hppa-binutils.spec | 11 +- cross-hppa64-binutils.changes | 69 + cross-hppa64-binutils.spec | 11 +- cross-i386-binutils.changes | 69 + cross-i386-binutils.spec | 11 +- cross-ia64-binutils.changes | 69 + cross-ia64-binutils.spec | 11 +- cross-m68k-binutils.changes | 69 + cross-m68k-binutils.spec | 11 +- cross-mips-binutils.changes | 69 + cross-mips-binutils.spec | 11 +- cross-ppc-binutils.changes | 69 + cross-ppc-binutils.spec | 11 +- cross-ppc64-binutils.changes | 69 + cross-ppc64-binutils.spec | 11 +- cross-ppc64le-binutils.changes | 69 + cross-ppc64le-binutils.spec | 11 +- cross-rx-binutils.changes | 69 + cross-rx-binutils.spec | 11 +- cross-s390-binutils.changes | 69 + cross-s390-binutils.spec | 11 +- cross-s390x-binutils.changes | 69 + cross-s390x-binutils.spec | 11 +- cross-sparc-binutils.changes | 69 + cross-sparc-binutils.spec | 11 +- cross-sparc64-binutils.changes | 69 + cross-sparc64-binutils.spec | 11 +- cross-spu-binutils.changes | 69 + cross-spu-binutils.spec | 11 +- cross-x86_64-binutils.changes | 69 + cross-x86_64-binutils.spec | 11 +- ...ck_to_only_consider_compact_eh_frame.patch | 94 - 49 files changed, 2661 insertions(+), 5522 deletions(-) delete mode 100644 aarch64-alignment-frags.patch delete mode 100644 binutils-2.27-branch.diff delete mode 100644 binutils-2.27-fix-section-order.diff delete mode 100644 binutils-2.27.tar.bz2 create mode 100644 binutils-2.28-branch.diff create mode 100644 binutils-2.28.tar.bz2 delete mode 100644 refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch diff --git a/aarch64-alignment-frags.patch b/aarch64-alignment-frags.patch deleted file mode 100644 index 907e10f..0000000 --- a/aarch64-alignment-frags.patch +++ /dev/null @@ -1,110 +0,0 @@ -From 7ea12e5c3ad54da440c08f32da09534e63e515ca Mon Sep 17 00:00:00 2001 -From: Nick Clifton -Date: Fri, 5 Aug 2016 10:37:57 +0100 -Subject: [PATCH] Fix the generation of alignment frags in code sections for - AArch64. - - PR gas/20364 - * config/tc-aarch64.c (s_ltorg): Change the mapping state after - aligning the frag. - (aarch64_init): Treat rs_align frags in code sections as - containing code, not data. - * testsuite/gas/aarch64/pr20364.s: New test. - * testsuite/gas/aarch64/pr20364.d: New test driver. ---- - gas/ChangeLog | 10 ++++++++++ - gas/config/tc-aarch64.c | 10 +++++++--- - gas/testsuite/gas/aarch64/pr20364.d | 13 +++++++++++++ - gas/testsuite/gas/aarch64/pr20364.s | 28 ++++++++++++++++++++++++++++ - 4 files changed, 58 insertions(+), 3 deletions(-) - create mode 100644 gas/testsuite/gas/aarch64/pr20364.d - create mode 100644 gas/testsuite/gas/aarch64/pr20364.s - -Index: binutils-2.27/gas/config/tc-aarch64.c -=================================================================== ---- binutils-2.27.orig/gas/config/tc-aarch64.c -+++ binutils-2.27/gas/config/tc-aarch64.c -@@ -1736,13 +1736,13 @@ s_ltorg (int ignored ATTRIBUTE_UNUSED) - if (pool == NULL || pool->symbol == NULL || pool->next_free_entry == 0) - continue; - -- mapping_state (MAP_DATA); -- - /* Align pool as you have word accesses. - Only make a frag if we have to. */ - if (!need_pass_2) - frag_align (align, 0, 0); - -+ mapping_state (MAP_DATA); -+ - record_alignment (now_seg, align); - - sprintf (sym_name, "$$lit_\002%x", pool->id); -@@ -6373,11 +6373,15 @@ aarch64_init_frag (fragS * fragP, int ma - - switch (fragP->fr_type) - { -- case rs_align: - case rs_align_test: - case rs_fill: - mapping_state_2 (MAP_DATA, max_chars); - break; -+ case rs_align: -+ /* PR 20364: We can get alignment frags in code sections, -+ so do not just assume that we should use the MAP_DATA state. */ -+ mapping_state_2 (subseg_text_p (now_seg) ? MAP_INSN : MAP_DATA, max_chars); -+ break; - case rs_align_code: - mapping_state_2 (MAP_INSN, max_chars); - break; -Index: binutils-2.27/gas/testsuite/gas/aarch64/pr20364.d -=================================================================== ---- /dev/null -+++ binutils-2.27/gas/testsuite/gas/aarch64/pr20364.d -@@ -0,0 +1,13 @@ -+# Check that ".align , " does not set the mapping state to DATA, causing unnecessary frag generation. -+#name: PR20364 -+#objdump: -d -+ -+.*: file format .* -+ -+Disassembly of section \.vectors: -+ -+0+000 <.*>: -+ 0: d2800000 mov x0, #0x0 // #0 -+ 4: 94000000 bl 0 -+ 8: 17fffffe b 0 -+ -Index: binutils-2.27/gas/testsuite/gas/aarch64/pr20364.s -=================================================================== ---- /dev/null -+++ binutils-2.27/gas/testsuite/gas/aarch64/pr20364.s -@@ -0,0 +1,28 @@ -+ .macro vector_base label -+ .section .vectors, "ax" -+ .align 11, 0 -+ \label: -+ .endm -+ -+ .macro vector_entry label -+ .section .vectors, "ax" -+ .align 7, 0 -+ \label: -+ .endm -+ -+ .macro check_vector_size since -+ .if (. - \since) > (32 * 4) -+ .error "Vector exceeds 32 instructions" -+ .endif -+ .endm -+ -+ .globl bl1_exceptions -+ -+vector_base bl1_exceptions -+ -+vector_entry SynchronousExceptionSP0 -+ mov x0, #0x0 -+ bl plat_report_exception -+ b SynchronousExceptionSP0 -+ check_vector_size SynchronousExceptionSP0 -+ diff --git a/binutils-2.27-branch.diff b/binutils-2.27-branch.diff deleted file mode 100644 index 8fb9787..0000000 --- a/binutils-2.27-branch.diff +++ /dev/null @@ -1,2921 +0,0 @@ -diff --git a/bfd/ChangeLog b/bfd/ChangeLog -index 4f859c5..2eb6f2a 100644 ---- a/bfd/ChangeLog -+++ b/bfd/ChangeLog -@@ -1,3 +1,80 @@ -+2016-10-31 Alan Modra -+ -+ PR 20748 -+ * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Revert -+ 2016-05-13 change. -+ -+2016-10-10 Christophe Lyon -+ Backport from mainline -+ 2016-09-28 Christophe Lyon -+ -+ PR ld/20608 -+ * elf32-arm.c (arm_type_of_stub): Handle the case when the pre-PLT -+ Thumb-ARM stub is too far. -+ -+2016-09-06 Senthil Kumar Selvaraj -+ -+ Backport from mainline -+ 2016-09-02 Senthil Kumar Selvaraj -+ -+ PR ld/20545 -+ * elf32-avr.c (elf32_avr_relax_delete_bytes): Add parameter -+ delete_shrinks_insn. Modify computation of shrinked_insn_address. -+ Compute shrink_boundary and adjust addend only if -+ addend_within_shrink_boundary. -+ (elf32_avr_relax_section): Modify calls to -+ elf32_avr_relax_delete_bytes to pass extra parameter. -+ -+2016-09-01 Alan Modra -+ -+ * elf64-ppc.c (synthetic_opd): New static var. -+ (compare_symbols): Don't treat symbols in .opd specially for ELFv2. -+ (ppc64_elf_get_synthetic_symtab): Likewise. Comment. -+ -+2016-08-30 Alan Modra -+ -+ PR 20531 -+ * elf32-ppc.c (_bfd_elf_ppc_set_arch): Add missing "break". -+ -+2016-08-19 Alan Modra -+ -+ PR 20472 -+ * elf64-ppc.c (ppc64_elf_before_check_relocs): Tweak abiversion test. -+ (readonly_dynrelocs): Comment fix. -+ (global_entry_stub): New function. -+ (ppc64_elf_adjust_dynamic_symbol): Tweak abiversion test. Match -+ ELFv2 code deciding on dynamic relocs vs. global entry stubs to -+ that in size_global_entry_stubs, handling ifunc too. Delete dead -+ weak sym code. -+ (allocate_dynrelocs): Ensure dyn_relocs field is cleared when no -+ dyn_relocs are needed. Correct handling of ifunc dyn_relocs. -+ Tidy ELIMINATE_COPY_RELOCS code, only setting dynindx for -+ undefweak syms. Expand and correct comments. -+ (size_global_entry_stubs): Ensure symbol is defined. -+ (ppc64_elf_relocate_section): Match condition under which -+ dyn_relocs are emitted to that in allocate_dynrelocs. -+ -+2016-08-11 Alan Modra -+ -+ * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Don't exit with -+ non_got_ref true in any case where we could have generated dynbss -+ copies but decide not to do so. -+ -+2016-08-02 Nick Clifton -+ -+ PR ld/17739 -+ * elf32-sh.c (sh_elf_gc_sweep_hook): Delete. -+ (elf_backend_sweep_hook): Delete. -+ -+2016-08-03 Tristan Gingold -+ -+ * version.m4: Bump version to 2.27.0 -+ * configure: Regenerate. -+ -+2016-08-03 Tristan Gingold -+ -+ * development.sh: Set development to true. -+ - 2016-08-03 Tristan Gingold - - * version.m4: Bump version to 2.27 -diff --git a/bfd/configure b/bfd/configure -index 6e6283d..a437569 100755 ---- a/bfd/configure -+++ b/bfd/configure -@@ -1,6 +1,6 @@ - #! /bin/sh - # Guess values for system-dependent variables and create Makefiles. --# Generated by GNU Autoconf 2.64 for bfd 2.27. -+# Generated by GNU Autoconf 2.64 for bfd 2.27.0. - # - # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, - # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software -@@ -556,8 +556,8 @@ MAKEFLAGS= - # Identity of this package. - PACKAGE_NAME='bfd' - PACKAGE_TARNAME='bfd' --PACKAGE_VERSION='2.27' --PACKAGE_STRING='bfd 2.27' -+PACKAGE_VERSION='2.27.0' -+PACKAGE_STRING='bfd 2.27.0' - PACKAGE_BUGREPORT='' - PACKAGE_URL='' - -@@ -1353,7 +1353,7 @@ if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF --\`configure' configures bfd 2.27 to adapt to many kinds of systems. -+\`configure' configures bfd 2.27.0 to adapt to many kinds of systems. - - Usage: $0 [OPTION]... [VAR=VALUE]... - -@@ -1424,7 +1424,7 @@ fi - - if test -n "$ac_init_help"; then - case $ac_init_help in -- short | recursive ) echo "Configuration of bfd 2.27:";; -+ short | recursive ) echo "Configuration of bfd 2.27.0:";; - esac - cat <<\_ACEOF - -@@ -1545,7 +1545,7 @@ fi - test -n "$ac_init_help" && exit $ac_status - if $ac_init_version; then - cat <<\_ACEOF --bfd configure 2.27 -+bfd configure 2.27.0 - generated by GNU Autoconf 2.64 - - Copyright (C) 2009 Free Software Foundation, Inc. -@@ -2187,7 +2187,7 @@ cat >config.log <<_ACEOF - This file contains any messages produced by compilers while - running configure, to aid debugging if configure makes a mistake. - --It was created by bfd $as_me 2.27, which was -+It was created by bfd $as_me 2.27.0, which was - generated by GNU Autoconf 2.64. Invocation command line was - - $ $0 $@ -@@ -3996,7 +3996,7 @@ fi - - # Define the identity of the package. - PACKAGE='bfd' -- VERSION='2.27' -+ VERSION='2.27.0' - - - cat >>confdefs.h <<_ACEOF -@@ -16576,7 +16576,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - # report actual input values of CONFIG_FILES etc. instead of their - # values after options handling. - ac_log=" --This file was extended by bfd $as_me 2.27, which was -+This file was extended by bfd $as_me 2.27.0, which was - generated by GNU Autoconf 2.64. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES -@@ -16640,7 +16640,7 @@ Report bugs to the package provider." - _ACEOF - cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - ac_cs_version="\\ --bfd config.status 2.27 -+bfd config.status 2.27.0 - configured by $0, generated by GNU Autoconf 2.64, - with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" - -diff --git a/bfd/development.sh b/bfd/development.sh -index 5d00fa0..85dae6b 100644 ---- a/bfd/development.sh -+++ b/bfd/development.sh -@@ -16,4 +16,4 @@ - # along with this program. If not, see . - - # Controls whether to enable development-mode features by default. --development=false -+development=true -diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c -index 3d4a458..700bec3 100644 ---- a/bfd/elf32-arm.c -+++ b/bfd/elf32-arm.c -@@ -3877,17 +3877,43 @@ arm_type_of_stub (struct bfd_link_info *info, - /* Note when dealing with PLT entries: the main PLT stub is in - ARM mode, so if the branch is in Thumb mode, another - Thumb->ARM stub will be inserted later just before the ARM -- PLT stub. We don't take this extra distance into account -- here, because if a long branch stub is needed, we'll add a -- Thumb->Arm one and branch directly to the ARM PLT entry -- because it avoids spreading offset corrections in several -- places. */ -+ PLT stub. If a long branch stub is needed, we'll add a -+ Thumb->Arm one and branch directly to the ARM PLT entry. -+ Here, we have to check if a pre-PLT Thumb->ARM stub -+ is needed and if it will be close enough. */ - - destination = (splt->output_section->vma - + splt->output_offset - + root_plt->offset); - st_type = STT_FUNC; -- branch_type = ST_BRANCH_TO_ARM; -+ -+ /* Thumb branch/call to PLT: it can become a branch to ARM -+ or to Thumb. We must perform the same checks and -+ corrections as in elf32_arm_final_link_relocate. */ -+ if ((r_type == R_ARM_THM_CALL) -+ || (r_type == R_ARM_THM_JUMP24)) -+ { -+ if (globals->use_blx -+ && r_type == R_ARM_THM_CALL -+ && !thumb_only) -+ { -+ /* If the Thumb BLX instruction is available, convert -+ the BL to a BLX instruction to call the ARM-mode -+ PLT entry. */ -+ branch_type = ST_BRANCH_TO_ARM; -+ } -+ else -+ { -+ if (!thumb_only) -+ /* Target the Thumb stub before the ARM PLT entry. */ -+ destination -= PLT_THUMB_STUB_SIZE; -+ branch_type = ST_BRANCH_TO_THUMB; -+ } -+ } -+ else -+ { -+ branch_type = ST_BRANCH_TO_ARM; -+ } - } - } - /* Calls to STT_GNU_IFUNC symbols should go through a PLT. */ -@@ -3923,6 +3949,15 @@ arm_type_of_stub (struct bfd_link_info *info, - || (r_type == R_ARM_THM_JUMP19)) - && !use_plt)) - { -+ /* If we need to insert a Thumb-Thumb long branch stub to a -+ PLT, use one that branches directly to the ARM PLT -+ stub. If we pretended we'd use the pre-PLT Thumb->ARM -+ stub, undo this now. */ -+ if ((branch_type == ST_BRANCH_TO_THUMB) && use_plt && !thumb_only) { -+ branch_type = ST_BRANCH_TO_ARM; -+ branch_offset += PLT_THUMB_STUB_SIZE; -+ } -+ - if (branch_type == ST_BRANCH_TO_THUMB) - { - /* Thumb to thumb. */ -diff --git a/bfd/elf32-avr.c b/bfd/elf32-avr.c -index a0a5c69..eea76a4 100644 ---- a/bfd/elf32-avr.c -+++ b/bfd/elf32-avr.c -@@ -1808,13 +1808,17 @@ elf32_avr_adjust_diff_reloc_value (bfd *abfd, - /* Delete some bytes from a section while changing the size of an instruction. - The parameter "addr" denotes the section-relative offset pointing just - behind the shrinked instruction. "addr+count" point at the first -- byte just behind the original unshrinked instruction. */ -+ byte just behind the original unshrinked instruction. If delete_shrinks_insn -+ is FALSE, we are deleting redundant padding bytes from relax_info prop -+ record handling. In that case, addr is section-relative offset of start -+ of padding, and count is the number of padding bytes to delete. */ - - static bfd_boolean - elf32_avr_relax_delete_bytes (bfd *abfd, - asection *sec, - bfd_vma addr, -- int count) -+ int count, -+ bfd_boolean delete_shrinks_insn) - { - Elf_Internal_Shdr *symtab_hdr; - unsigned int sec_shndx; -@@ -1829,6 +1833,7 @@ elf32_avr_relax_delete_bytes (bfd *abfd, - struct avr_relax_info *relax_info; - struct avr_property_record *prop_record = NULL; - bfd_boolean did_shrink = FALSE; -+ bfd_boolean did_pad = FALSE; - - symtab_hdr = &elf_tdata (abfd)->symtab_hdr; - sec_shndx = _bfd_elf_section_from_bfd_section (abfd, sec); -@@ -1909,6 +1914,7 @@ elf32_avr_relax_delete_bytes (bfd *abfd, - to remember we didn't delete anything i.e. don't set did_shrink, - so that we don't corrupt reloc offsets or symbol values.*/ - memset (contents + toaddr - count, fill, count); -+ did_pad = TRUE; - - /* Adjust the TOADDR to avoid moving symbols located at the address - of the property record, which has not moved. */ -@@ -1965,7 +1971,9 @@ elf32_avr_relax_delete_bytes (bfd *abfd, - continue; - - shrinked_insn_address = (sec->output_section->vma -- + sec->output_offset + addr - count); -+ + sec->output_offset + addr); -+ if (delete_shrinks_insn) -+ shrinked_insn_address -= count; - - irel = elf_section_data (isec)->relocs; - /* PR 12161: Read in the relocs for this section if necessary. */ -@@ -2002,6 +2010,13 @@ elf32_avr_relax_delete_bytes (bfd *abfd, - a symbol or section associated with it. */ - if (sym_sec == sec) - { -+ /* If there is an alignment boundary, we only need to -+ adjust addends that end up below the boundary. */ -+ bfd_vma shrink_boundary = (reloc_toaddr -+ + sec->output_section->vma -+ + sec->output_offset); -+ bfd_boolean addend_within_shrink_boundary = FALSE; -+ - symval += sym_sec->output_section->vma - + sym_sec->output_offset; - -@@ -2015,8 +2030,17 @@ elf32_avr_relax_delete_bytes (bfd *abfd, - (unsigned int) (symval + irel->r_addend), - (unsigned int) shrinked_insn_address); - -+ /* If we padded bytes, then the boundary didn't change, -+ so there's no need to adjust addends pointing at the boundary. -+ If we didn't pad, then we actually shrank the boundary, so -+ addends pointing at the boundary need to be adjusted too. */ -+ addend_within_shrink_boundary = did_pad -+ ? ((symval + irel->r_addend) < shrink_boundary) -+ : ((symval + irel->r_addend) <= shrink_boundary); -+ - if (symval <= shrinked_insn_address -- && (symval + irel->r_addend) > shrinked_insn_address) -+ && (symval + irel->r_addend) > shrinked_insn_address -+ && addend_within_shrink_boundary) - { - if (elf32_avr_is_diff_reloc (irel)) - { -@@ -2648,7 +2672,8 @@ elf32_avr_relax_section (bfd *abfd, - { - /* Delete two bytes of data. */ - if (!elf32_avr_relax_delete_bytes (abfd, sec, -- irel->r_offset + 2, 2)) -+ irel->r_offset + 2, 2, -+ TRUE)) - goto error_return; - - /* That will change things, so, we should relax again. -@@ -2972,7 +2997,8 @@ elf32_avr_relax_section (bfd *abfd, - - /* Delete two bytes of data. */ - if (!elf32_avr_relax_delete_bytes (abfd, sec, -- irel->r_offset + insn_size, 2)) -+ irel->r_offset + insn_size, 2, -+ TRUE)) - goto error_return; - - /* That will change things, so, we should relax -@@ -3040,7 +3066,7 @@ elf32_avr_relax_section (bfd *abfd, - record->offset -= count; - elf32_avr_relax_delete_bytes (abfd, sec, - addr - count, -- count); -+ count, FALSE); - *again = TRUE; - } - } -diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c -index 5496d16..d964e17 100644 ---- a/bfd/elf32-microblaze.c -+++ b/bfd/elf32-microblaze.c -@@ -3400,13 +3400,13 @@ microblaze_elf_finish_dynamic_sections (bfd *output_bfd, - { - asection *s; - -- s = bfd_get_linker_section (dynobj, name); -+ s = bfd_get_section_by_name (output_bfd, name); - if (s == NULL) - dyn.d_un.d_val = 0; - else - { - if (! size) -- dyn.d_un.d_ptr = s->output_section->vma + s->output_offset; -+ dyn.d_un.d_ptr = s->vma; - else - dyn.d_un.d_val = s->size; - } -diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c -index 95ce1dc..e42ef1c 100644 ---- a/bfd/elf32-ppc.c -+++ b/bfd/elf32-ppc.c -@@ -2246,6 +2246,7 @@ _bfd_elf_ppc_set_arch (bfd *abfd) - case PPC_APUINFO_BRLOCK: - if (mach != bfd_mach_ppc_vle) - mach = bfd_mach_ppc_e500; -+ break; - - case PPC_APUINFO_VLE: - mach = bfd_mach_ppc_vle; -diff --git a/bfd/elf32-sh.c b/bfd/elf32-sh.c -index 52a5fd1..5609b55 100644 ---- a/bfd/elf32-sh.c -+++ b/bfd/elf32-sh.c -@@ -5682,6 +5682,7 @@ sh_elf_gc_mark_hook (asection *sec, - return _bfd_elf_gc_mark_hook (sec, info, rel, h, sym); - } - -+#if 0 - /* Update the got entry reference counts for the section being removed. */ - - static bfd_boolean -@@ -5895,6 +5896,7 @@ sh_elf_gc_sweep_hook (bfd *abfd, struct bfd_link_info *info, - - return TRUE; - } -+#endif - - /* Copy the extra info we tack onto an elf_link_hash_entry. */ - -@@ -7455,7 +7457,7 @@ sh_elf_encode_eh_address (bfd *abfd, - sh_elf_merge_private_data - - #define elf_backend_gc_mark_hook sh_elf_gc_mark_hook --#define elf_backend_gc_sweep_hook sh_elf_gc_sweep_hook -+//#define elf_backend_gc_sweep_hook sh_elf_gc_sweep_hook - #define elf_backend_check_relocs sh_elf_check_relocs - #define elf_backend_copy_indirect_symbol \ - sh_elf_copy_indirect_symbol -diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c -index d7af888..d236732 100644 ---- a/bfd/elf64-ppc.c -+++ b/bfd/elf64-ppc.c -@@ -3085,6 +3085,7 @@ get_opd_info (asection * sec) - - /* Parameters for the qsort hook. */ - static bfd_boolean synthetic_relocatable; -+static asection *synthetic_opd; - - /* qsort comparison function for ppc64_elf_get_synthetic_symtab. */ - -@@ -3101,12 +3102,15 @@ compare_symbols (const void *ap, const void *bp) - return 1; - - /* then .opd symbols. */ -- if (strcmp (a->section->name, ".opd") == 0 -- && strcmp (b->section->name, ".opd") != 0) -- return -1; -- if (strcmp (a->section->name, ".opd") != 0 -- && strcmp (b->section->name, ".opd") == 0) -- return 1; -+ if (synthetic_opd != NULL) -+ { -+ if (strcmp (a->section->name, ".opd") == 0 -+ && strcmp (b->section->name, ".opd") != 0) -+ return -1; -+ if (strcmp (a->section->name, ".opd") != 0 -+ && strcmp (b->section->name, ".opd") == 0) -+ return 1; -+ } - - /* then other code symbols. */ - if ((a->section->flags & (SEC_CODE | SEC_ALLOC | SEC_THREAD_LOCAL)) -@@ -3265,6 +3269,7 @@ ppc64_elf_get_synthetic_symtab (bfd *abfd, - memcpy (syms, static_syms, (symcount + 1) * sizeof (*syms)); - - synthetic_relocatable = relocatable; -+ synthetic_opd = opd; - qsort (syms, symcount, sizeof (*syms), compare_symbols); - - if (!relocatable && symcount > 1) -@@ -3281,7 +3286,11 @@ ppc64_elf_get_synthetic_symtab (bfd *abfd, - } - - i = 0; -- if (strcmp (syms[i]->section->name, ".opd") == 0) -+ /* Note that here and in compare_symbols we can't compare opd and -+ sym->section directly. With separate debug info files, the -+ symbols will be extracted from the debug file while abfd passed -+ to this function is the real binary. */ -+ if (opd != NULL && strcmp (syms[i]->section->name, ".opd") == 0) - ++i; - codesecsym = i; - -@@ -3297,9 +3306,10 @@ ppc64_elf_get_synthetic_symtab (bfd *abfd, - break; - secsymend = i; - -- for (; i < symcount; ++i) -- if (strcmp (syms[i]->section->name, ".opd") != 0) -- break; -+ if (opd != NULL) -+ for (; i < symcount; ++i) -+ if (strcmp (syms[i]->section->name, ".opd") != 0) -+ break; - opdsymend = i; - - for (; i < symcount; ++i) -@@ -5081,7 +5091,7 @@ ppc64_elf_before_check_relocs (bfd *ibfd, struct bfd_link_info *info) - { - if (abiversion (ibfd) == 0) - set_abiversion (ibfd, 1); -- else if (abiversion (ibfd) == 2) -+ else if (abiversion (ibfd) >= 2) - { - info->callbacks->einfo (_("%P: %B .opd not allowed in ABI" - " version %d\n"), -@@ -7102,7 +7112,8 @@ ppc64_elf_func_desc_adjust (bfd *obfd ATTRIBUTE_UNUSED, - return TRUE; - } - --/* Return true if we have dynamic relocs that apply to read-only sections. */ -+/* Return true if we have dynamic relocs against H that apply to -+ read-only sections. */ - - static bfd_boolean - readonly_dynrelocs (struct elf_link_hash_entry *h) -@@ -7121,6 +7132,27 @@ readonly_dynrelocs (struct elf_link_hash_entry *h) - return FALSE; - } - -+ -+/* Return true if a global entry stub will be created for H. Valid -+ for ELFv2 before plt entries have been allocated. */ -+ -+static bfd_boolean -+global_entry_stub (struct elf_link_hash_entry *h) -+{ -+ struct plt_entry *pent; -+ -+ if (!h->pointer_equality_needed -+ || h->def_regular) -+ return FALSE; -+ -+ for (pent = h->plt.plist; pent != NULL; pent = pent->next) -+ if (pent->plt.refcount > 0 -+ && pent->addend == 0) -+ return TRUE; -+ -+ return FALSE; -+} -+ - /* Adjust a symbol defined by a dynamic object and referenced by a - regular object. The current definition is in some section of the - dynamic object, but we're not including those sections. We have to -@@ -7160,35 +7192,25 @@ ppc64_elf_adjust_dynamic_symbol (struct bfd_link_info *info, - h->needs_plt = 0; - h->pointer_equality_needed = 0; - } -- else if (abiversion (info->output_bfd) == 2) -+ else if (abiversion (info->output_bfd) >= 2) - { - /* Taking a function's address in a read/write section - doesn't require us to define the function symbol in the - executable on a global entry stub. A dynamic reloc can -- be used instead. */ -- if (h->pointer_equality_needed -- && h->type != STT_GNU_IFUNC -+ be used instead. The reason we prefer a few more dynamic -+ relocs is that calling via a global entry stub costs a -+ few more instructions, and pointer_equality_needed causes -+ extra work in ld.so when resolving these symbols. */ -+ if (global_entry_stub (h) - && !readonly_dynrelocs (h)) - { - h->pointer_equality_needed = 0; -+ /* After adjust_dynamic_symbol, non_got_ref set in -+ the non-pic case means that dyn_relocs for this -+ symbol should be discarded. */ - h->non_got_ref = 0; - } - -- /* After adjust_dynamic_symbol, non_got_ref set in the -- non-shared case means that we have allocated space in -- .dynbss for the symbol and thus dyn_relocs for this -- symbol should be discarded. -- If we get here we know we are making a PLT entry for this -- symbol, and in an executable we'd normally resolve -- relocations against this symbol to the PLT entry. Allow -- dynamic relocs if the reference is weak, and the dynamic -- relocs will not cause text relocation. */ -- else if (!h->ref_regular_nonweak -- && h->non_got_ref -- && h->type != STT_GNU_IFUNC -- && !readonly_dynrelocs (h)) -- h->non_got_ref = 0; -- - /* If making a plt entry, then we don't need copy relocs. */ - return TRUE; - } -@@ -7223,29 +7245,20 @@ ppc64_elf_adjust_dynamic_symbol (struct bfd_link_info *info, - return TRUE; - - /* Don't generate a copy reloc for symbols defined in the executable. */ -- if (!h->def_dynamic || !h->ref_regular || h->def_regular) -- return TRUE; -+ if (!h->def_dynamic || !h->ref_regular || h->def_regular - -- /* If -z nocopyreloc was given, don't generate them either. */ -- if (info->nocopyreloc) -- { -- h->non_got_ref = 0; -- return TRUE; -- } -+ /* If -z nocopyreloc was given, don't generate them either. */ -+ || info->nocopyreloc - -- /* If we didn't find any dynamic relocs in read-only sections, then -- we'll be keeping the dynamic relocs and avoiding the copy reloc. */ -- if (ELIMINATE_COPY_RELOCS && !readonly_dynrelocs (h)) -- { -- h->non_got_ref = 0; -- return TRUE; -- } -+ /* If we didn't find any dynamic relocs in read-only sections, then -+ we'll be keeping the dynamic relocs and avoiding the copy reloc. */ -+ || (ELIMINATE_COPY_RELOCS && !readonly_dynrelocs (h)) - -- /* Protected variables do not work with .dynbss. The copy in -- .dynbss won't be used by the shared library with the protected -- definition for the variable. Text relocations are preferable -- to an incorrect program. */ -- if (h->protected_def) -+ /* Protected variables do not work with .dynbss. The copy in -+ .dynbss won't be used by the shared library with the protected -+ definition for the variable. Text relocations are preferable -+ to an incorrect program. */ -+ || h->protected_def) - { - h->non_got_ref = 0; - return TRUE; -@@ -9547,7 +9560,6 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) - struct ppc_link_hash_table *htab; - asection *s; - struct ppc_link_hash_entry *eh; -- struct elf_dyn_relocs *p; - struct got_entry **pgent, *gent; - - if (h->root.type == bfd_link_hash_indirect) -@@ -9627,10 +9639,14 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) - allocate_got (h, info, gent); - } - -- if (eh->dyn_relocs != NULL -- && (htab->elf.dynamic_sections_created -- || h->type == STT_GNU_IFUNC)) -+ if (!htab->elf.dynamic_sections_created -+ && h->type != STT_GNU_IFUNC) -+ eh->dyn_relocs = NULL; -+ -+ if (eh->dyn_relocs != NULL) - { -+ struct elf_dyn_relocs *p, **pp; -+ - /* In the shared -Bsymbolic case, discard space allocated for - dynamic pc-relative relocs against symbols which turn out to - be defined in regular objects. For the normal shared case, -@@ -9648,8 +9664,6 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) - avoid writing weird assembly. */ - if (SYMBOL_CALLS_LOCAL (info, h)) - { -- struct elf_dyn_relocs **pp; -- - for (pp = &eh->dyn_relocs; (p = *pp) != NULL; ) - { - p->count -= p->pc_count; -@@ -9681,36 +9695,47 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) - } - else if (h->type == STT_GNU_IFUNC) - { -- if (!h->non_got_ref) -+ /* A plt entry is always created when making direct calls to -+ an ifunc, even when building a static executable, but -+ that doesn't cover all cases. We may have only an ifunc -+ initialised function pointer for a given ifunc symbol. -+ -+ For ELFv2, dynamic relocations are not required when -+ generating a global entry PLT stub. */ -+ if (abiversion (info->output_bfd) >= 2) -+ { -+ if (global_entry_stub (h)) -+ eh->dyn_relocs = NULL; -+ } -+ -+ /* For ELFv1 we have function descriptors. Descriptors need -+ to be treated like PLT entries and thus have dynamic -+ relocations. One exception is when the function -+ descriptor is copied into .dynbss (which should only -+ happen with ancient versions of gcc). */ -+ else if (h->needs_copy) - eh->dyn_relocs = NULL; - } - else if (ELIMINATE_COPY_RELOCS) - { -- /* For the non-shared case, discard space for relocs against -+ /* For the non-pic case, discard space for relocs against - symbols which turn out to need copy relocs or are not - dynamic. */ - -- if (!h->non_got_ref -- && !h->def_regular) -- { -- /* Make sure this symbol is output as a dynamic symbol. -- Undefined weak syms won't yet be marked as dynamic. */ -- if (h->dynindx == -1 -- && !h->forced_local) -- { -- if (! bfd_elf_link_record_dynamic_symbol (info, h)) -- return FALSE; -- } -- -- /* If that succeeded, we know we'll be keeping all the -- relocs. */ -- if (h->dynindx != -1) -- goto keep; -- } -- -- eh->dyn_relocs = NULL; -+ /* First make sure this symbol is output as a dynamic symbol. -+ Undefined weak syms won't yet be marked as dynamic. */ -+ if (h->root.type == bfd_link_hash_undefweak -+ && !h->non_got_ref -+ && !h->def_regular -+ && h->dynindx == -1 -+ && !h->forced_local -+ && !bfd_elf_link_record_dynamic_symbol (info, h)) -+ return FALSE; - -- keep: ; -+ if (h->non_got_ref -+ || h->def_regular -+ || h->dynindx == -1) -+ eh->dyn_relocs = NULL; - } - - /* Finally, allocate space. */ -@@ -9827,6 +9852,7 @@ size_global_entry_stubs (struct elf_link_hash_entry *h, void *inf) - need to define the symbol in the executable on a call stub. - This is to avoid text relocations. */ - s->size = (s->size + 15) & -16; -+ h->root.type = bfd_link_hash_defined; - h->root.u.def.section = s; - h->root.u.def.value = s->size; - s->size += 16; -@@ -14679,22 +14705,25 @@ ppc64_elf_relocate_section (bfd *output_bfd, - if (NO_OPD_RELOCS && is_opd) - break; - -- if ((bfd_link_pic (info) -- && (h == NULL -- || ELF_ST_VISIBILITY (h->elf.other) == STV_DEFAULT -- || h->elf.root.type != bfd_link_hash_undefweak) -- && (must_be_dyn_reloc (info, r_type) -- || !SYMBOL_CALLS_LOCAL (info, &h->elf))) -- || (ELIMINATE_COPY_RELOCS -- && !bfd_link_pic (info) -- && h != NULL -- && h->elf.dynindx != -1 -- && !h->elf.non_got_ref -- && !h->elf.def_regular) -- || (!bfd_link_pic (info) -- && (h != NULL -- ? h->elf.type == STT_GNU_IFUNC -- : ELF_ST_TYPE (sym->st_info) == STT_GNU_IFUNC))) -+ if (bfd_link_pic (info) -+ ? ((h == NULL -+ || ELF_ST_VISIBILITY (h->elf.other) == STV_DEFAULT -+ || h->elf.root.type != bfd_link_hash_undefweak) -+ && (must_be_dyn_reloc (info, r_type) -+ || !SYMBOL_CALLS_LOCAL (info, &h->elf))) -+ : (h == NULL -+ ? ELF_ST_TYPE (sym->st_info) == STT_GNU_IFUNC -+ : (h->elf.type == STT_GNU_IFUNC -+ ? (abiversion (output_bfd) >= 2 -+ ? !(h->elf.pointer_equality_needed -+ && !h->elf.def_regular -+ && h->elf.root.type == bfd_link_hash_defined -+ && h->elf.root.u.def.section == htab->glink) -+ : !h->elf.needs_copy) -+ : (ELIMINATE_COPY_RELOCS -+ && !(h->elf.non_got_ref -+ || h->elf.def_regular -+ || h->elf.dynindx == -1))))) - { - bfd_boolean skip, relocate; - asection *sreloc; -diff --git a/bfd/version.h b/bfd/version.h -index 9ca8ab8..b032cc5 100644 ---- a/bfd/version.h -+++ b/bfd/version.h -@@ -1,4 +1,4 @@ --#define BFD_VERSION_DATE 20160803 -+#define BFD_VERSION_DATE 20161129 - #define BFD_VERSION @bfd_version@ - #define BFD_VERSION_STRING @bfd_version_package@ @bfd_version_string@ - #define REPORT_BUGS_TO @report_bugs_to@ -diff --git a/bfd/version.m4 b/bfd/version.m4 -index e474848..fdf3606 100644 ---- a/bfd/version.m4 -+++ b/bfd/version.m4 -@@ -1 +1 @@ --m4_define([BFD_VERSION], [2.27]) -+m4_define([BFD_VERSION], [2.27.0]) -diff --git a/binutils/ChangeLog b/binutils/ChangeLog -index b92bf46..a70bdb7 100644 ---- a/binutils/ChangeLog -+++ b/binutils/ChangeLog -@@ -2,6 +2,10 @@ - - * configure: Regenerate. - -+2016-08-03 Tristan Gingold -+ -+ * configure: Regenerate. -+ - 2016-07-01 Nick Clifton - - * Import this patch from the mainline: -diff --git a/binutils/configure b/binutils/configure -index ea013d1..6cbf17c 100755 ---- a/binutils/configure -+++ b/binutils/configure -@@ -1,6 +1,6 @@ - #! /bin/sh - # Guess values for system-dependent variables and create Makefiles. --# Generated by GNU Autoconf 2.64 for binutils 2.27. -+# Generated by GNU Autoconf 2.64 for binutils 2.27.0. - # - # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, - # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software -@@ -556,8 +556,8 @@ MAKEFLAGS= - # Identity of this package. - PACKAGE_NAME='binutils' - PACKAGE_TARNAME='binutils' --PACKAGE_VERSION='2.27' --PACKAGE_STRING='binutils 2.27' -+PACKAGE_VERSION='2.27.0' -+PACKAGE_STRING='binutils 2.27.0' - PACKAGE_BUGREPORT='' - PACKAGE_URL='' - -@@ -1337,7 +1337,7 @@ if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF --\`configure' configures binutils 2.27 to adapt to many kinds of systems. -+\`configure' configures binutils 2.27.0 to adapt to many kinds of systems. - - Usage: $0 [OPTION]... [VAR=VALUE]... - -@@ -1408,7 +1408,7 @@ fi - - if test -n "$ac_init_help"; then - case $ac_init_help in -- short | recursive ) echo "Configuration of binutils 2.27:";; -+ short | recursive ) echo "Configuration of binutils 2.27.0:";; - esac - cat <<\_ACEOF - -@@ -1529,7 +1529,7 @@ fi - test -n "$ac_init_help" && exit $ac_status - if $ac_init_version; then - cat <<\_ACEOF --binutils configure 2.27 -+binutils configure 2.27.0 - generated by GNU Autoconf 2.64 - - Copyright (C) 2009 Free Software Foundation, Inc. -@@ -2171,7 +2171,7 @@ cat >config.log <<_ACEOF - This file contains any messages produced by compilers while - running configure, to aid debugging if configure makes a mistake. - --It was created by binutils $as_me 2.27, which was -+It was created by binutils $as_me 2.27.0, which was - generated by GNU Autoconf 2.64. Invocation command line was - - $ $0 $@ -@@ -3980,7 +3980,7 @@ fi - - # Define the identity of the package. - PACKAGE='binutils' -- VERSION='2.27' -+ VERSION='2.27.0' - - - cat >>confdefs.h <<_ACEOF -@@ -15179,7 +15179,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - # report actual input values of CONFIG_FILES etc. instead of their - # values after options handling. - ac_log=" --This file was extended by binutils $as_me 2.27, which was -+This file was extended by binutils $as_me 2.27.0, which was - generated by GNU Autoconf 2.64. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES -@@ -15243,7 +15243,7 @@ Report bugs to the package provider." - _ACEOF - cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - ac_cs_version="\\ --binutils config.status 2.27 -+binutils config.status 2.27.0 - configured by $0, generated by GNU Autoconf 2.64, - with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" - -diff --git a/gas/ChangeLog b/gas/ChangeLog -index 5553b6c..50fcf52 100644 ---- a/gas/ChangeLog -+++ b/gas/ChangeLog -@@ -1,3 +1,31 @@ -+2016-09-16 Peter Bergner -+ -+ Apply from master. -+ 2016-09-14 Peter Bergner -+ -+ * testsuite/gas/ppc/power9.d New tests. -+ : Remove tests. -+ : Update tests. -+ * testsuite/gas/ppc/power9.s: Likewise. -+ -+2016-08-25 Thomas Preud'homme -+ -+ Backport from mainline -+ 2016-08-25 Thomas Preud'homme -+ -+ * config/tc-arm.c (v7m_psrs): Remove msp_s, MSP_S, psp_s and PSP_S -+ special registers. -+ * testsuite/gas/arm/archv8m-cmse-msr.s: Remove test for above special -+ registers. -+ * testsuite/gas/arm/archv8m-cmse-msr-base.d: Likewise. -+ * testsuite/gas/arm/archv8m-cmse-msr-main.d: Likewise. -+ * testsuite/gas/arm/archv8m-main-dsp-4.d: Likewise. -+ -+2016-08-03 Tristan Gingold -+ -+ * configure: Regenerate. -+ - 2016-08-03 Tristan Gingold - - * configure: Regenerate. -diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c -index 73d0531..4fa0bfc 100644 ---- a/gas/config/tc-arm.c -+++ b/gas/config/tc-arm.c -@@ -18788,8 +18788,8 @@ static const struct asm_psr v7m_psrs[] = - {"ipsr", 5 }, {"IPSR", 5 }, - {"epsr", 6 }, {"EPSR", 6 }, - {"iepsr", 7 }, {"IEPSR", 7 }, -- {"msp", 8 }, {"MSP", 8 }, {"msp_s", 8 }, {"MSP_S", 8 }, -- {"psp", 9 }, {"PSP", 9 }, {"psp_s", 9 }, {"PSP_S", 9 }, -+ {"msp", 8 }, {"MSP", 8 }, -+ {"psp", 9 }, {"PSP", 9 }, - {"primask", 16}, {"PRIMASK", 16}, - {"basepri", 17}, {"BASEPRI", 17}, - {"basepri_max", 18}, {"BASEPRI_MAX", 18}, -diff --git a/gas/configure b/gas/configure -index 7b48a58..f7753b8 100755 ---- a/gas/configure -+++ b/gas/configure -@@ -1,6 +1,6 @@ - #! /bin/sh - # Guess values for system-dependent variables and create Makefiles. --# Generated by GNU Autoconf 2.64 for gas 2.27. -+# Generated by GNU Autoconf 2.64 for gas 2.27.0. - # - # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, - # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software -@@ -556,8 +556,8 @@ MAKEFLAGS= - # Identity of this package. - PACKAGE_NAME='gas' - PACKAGE_TARNAME='gas' --PACKAGE_VERSION='2.27' --PACKAGE_STRING='gas 2.27' -+PACKAGE_VERSION='2.27.0' -+PACKAGE_STRING='gas 2.27.0' - PACKAGE_BUGREPORT='' - PACKAGE_URL='' - -@@ -1328,7 +1328,7 @@ if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF --\`configure' configures gas 2.27 to adapt to many kinds of systems. -+\`configure' configures gas 2.27.0 to adapt to many kinds of systems. - - Usage: $0 [OPTION]... [VAR=VALUE]... - -@@ -1399,7 +1399,7 @@ fi - - if test -n "$ac_init_help"; then - case $ac_init_help in -- short | recursive ) echo "Configuration of gas 2.27:";; -+ short | recursive ) echo "Configuration of gas 2.27.0:";; - esac - cat <<\_ACEOF - -@@ -1521,7 +1521,7 @@ fi - test -n "$ac_init_help" && exit $ac_status - if $ac_init_version; then - cat <<\_ACEOF --gas configure 2.27 -+gas configure 2.27.0 - generated by GNU Autoconf 2.64 - - Copyright (C) 2009 Free Software Foundation, Inc. -@@ -1931,7 +1931,7 @@ cat >config.log <<_ACEOF - This file contains any messages produced by compilers while - running configure, to aid debugging if configure makes a mistake. - --It was created by gas $as_me 2.27, which was -+It was created by gas $as_me 2.27.0, which was - generated by GNU Autoconf 2.64. Invocation command line was - - $ $0 $@ -@@ -3740,7 +3740,7 @@ fi - - # Define the identity of the package. - PACKAGE='gas' -- VERSION='2.27' -+ VERSION='2.27.0' - - - cat >>confdefs.h <<_ACEOF -@@ -15137,7 +15137,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - # report actual input values of CONFIG_FILES etc. instead of their - # values after options handling. - ac_log=" --This file was extended by gas $as_me 2.27, which was -+This file was extended by gas $as_me 2.27.0, which was - generated by GNU Autoconf 2.64. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES -@@ -15201,7 +15201,7 @@ Report bugs to the package provider." - _ACEOF - cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - ac_cs_version="\\ --gas config.status 2.27 -+gas config.status 2.27.0 - configured by $0, generated by GNU Autoconf 2.64, - with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" - -diff --git a/gas/testsuite/gas/arm/archv8m-cmse-msr-base.d b/gas/testsuite/gas/arm/archv8m-cmse-msr-base.d -index 4bbb82d..0c46a44 100644 ---- a/gas/testsuite/gas/arm/archv8m-cmse-msr-base.d -+++ b/gas/testsuite/gas/arm/archv8m-cmse-msr-base.d -@@ -7,26 +7,18 @@ - - Disassembly of section .text: - 0+.* <[^>]*> f380 8808 msr MSP, r0 --0+.* <[^>]*> f380 8808 msr MSP, r0 - 0+.* <[^>]*> f380 8888 msr MSP_NS, r0 - 0+.* <[^>]*> f380 8809 msr PSP, r0 --0+.* <[^>]*> f380 8809 msr PSP, r0 - 0+.* <[^>]*> f380 8889 msr PSP_NS, r0 - 0+.* <[^>]*> f380 8808 msr MSP, r0 --0+.* <[^>]*> f380 8808 msr MSP, r0 - 0+.* <[^>]*> f380 8888 msr MSP_NS, r0 - 0+.* <[^>]*> f380 8809 msr PSP, r0 --0+.* <[^>]*> f380 8809 msr PSP, r0 - 0+.* <[^>]*> f380 8889 msr PSP_NS, r0 - 0+.* <[^>]*> f3ef 8008 mrs r0, MSP --0+.* <[^>]*> f3ef 8008 mrs r0, MSP - 0+.* <[^>]*> f3ef 8088 mrs r0, MSP_NS - 0+.* <[^>]*> f3ef 8009 mrs r0, PSP --0+.* <[^>]*> f3ef 8009 mrs r0, PSP - 0+.* <[^>]*> f3ef 8089 mrs r0, PSP_NS - 0+.* <[^>]*> f3ef 8008 mrs r0, MSP --0+.* <[^>]*> f3ef 8008 mrs r0, MSP - 0+.* <[^>]*> f3ef 8088 mrs r0, MSP_NS - 0+.* <[^>]*> f3ef 8009 mrs r0, PSP --0+.* <[^>]*> f3ef 8009 mrs r0, PSP - 0+.* <[^>]*> f3ef 8089 mrs r0, PSP_NS -diff --git a/gas/testsuite/gas/arm/archv8m-cmse-msr-main.d b/gas/testsuite/gas/arm/archv8m-cmse-msr-main.d -index 30a3361..42d3ba9 100644 ---- a/gas/testsuite/gas/arm/archv8m-cmse-msr-main.d -+++ b/gas/testsuite/gas/arm/archv8m-cmse-msr-main.d -@@ -7,26 +7,18 @@ - - Disassembly of section .text: - 0+.* <[^>]*> f380 8808 msr MSP, r0 --0+.* <[^>]*> f380 8808 msr MSP, r0 - 0+.* <[^>]*> f380 8888 msr MSP_NS, r0 - 0+.* <[^>]*> f380 8809 msr PSP, r0 --0+.* <[^>]*> f380 8809 msr PSP, r0 - 0+.* <[^>]*> f380 8889 msr PSP_NS, r0 - 0+.* <[^>]*> f380 8808 msr MSP, r0 --0+.* <[^>]*> f380 8808 msr MSP, r0 - 0+.* <[^>]*> f380 8888 msr MSP_NS, r0 - 0+.* <[^>]*> f380 8809 msr PSP, r0 --0+.* <[^>]*> f380 8809 msr PSP, r0 - 0+.* <[^>]*> f380 8889 msr PSP_NS, r0 - 0+.* <[^>]*> f3ef 8008 mrs r0, MSP --0+.* <[^>]*> f3ef 8008 mrs r0, MSP - 0+.* <[^>]*> f3ef 8088 mrs r0, MSP_NS - 0+.* <[^>]*> f3ef 8009 mrs r0, PSP --0+.* <[^>]*> f3ef 8009 mrs r0, PSP - 0+.* <[^>]*> f3ef 8089 mrs r0, PSP_NS - 0+.* <[^>]*> f3ef 8008 mrs r0, MSP --0+.* <[^>]*> f3ef 8008 mrs r0, MSP - 0+.* <[^>]*> f3ef 8088 mrs r0, MSP_NS - 0+.* <[^>]*> f3ef 8009 mrs r0, PSP --0+.* <[^>]*> f3ef 8009 mrs r0, PSP - 0+.* <[^>]*> f3ef 8089 mrs r0, PSP_NS -diff --git a/gas/testsuite/gas/arm/archv8m-cmse-msr.s b/gas/testsuite/gas/arm/archv8m-cmse-msr.s -index 897be1a..66a3b64 100644 ---- a/gas/testsuite/gas/arm/archv8m-cmse-msr.s -+++ b/gas/testsuite/gas/arm/archv8m-cmse-msr.s -@@ -1,25 +1,17 @@ - T: - msr MSP, r0 --msr MSP_S, r0 - msr MSP_NS, r0 - msr PSP, r0 --msr PSP_S, r0 - msr PSP_NS, r0 - msr msp, r0 --msr msp_s, r0 - msr msp_ns, r0 - msr psp, r0 --msr psp_s, r0 - msr psp_ns, r0 - mrs r0, MSP --mrs r0, MSP_S - mrs r0, MSP_NS - mrs r0, PSP --mrs r0, PSP_S - mrs r0, PSP_NS - mrs r0, msp --mrs r0, msp_s - mrs r0, msp_ns - mrs r0, psp --mrs r0, psp_s - mrs r0, psp_ns -diff --git a/gas/testsuite/gas/arm/archv8m-main-dsp-4.d b/gas/testsuite/gas/arm/archv8m-main-dsp-4.d -index 248f75e..7ebc9c1 100644 ---- a/gas/testsuite/gas/arm/archv8m-main-dsp-4.d -+++ b/gas/testsuite/gas/arm/archv8m-main-dsp-4.d -@@ -7,26 +7,18 @@ - - Disassembly of section .text: - 0+.* <[^>]*> f380 8808 msr MSP, r0 --0+.* <[^>]*> f380 8808 msr MSP, r0 - 0+.* <[^>]*> f380 8888 msr MSP_NS, r0 - 0+.* <[^>]*> f380 8809 msr PSP, r0 --0+.* <[^>]*> f380 8809 msr PSP, r0 - 0+.* <[^>]*> f380 8889 msr PSP_NS, r0 - 0+.* <[^>]*> f380 8808 msr MSP, r0 --0+.* <[^>]*> f380 8808 msr MSP, r0 - 0+.* <[^>]*> f380 8888 msr MSP_NS, r0 - 0+.* <[^>]*> f380 8809 msr PSP, r0 --0+.* <[^>]*> f380 8809 msr PSP, r0 - 0+.* <[^>]*> f380 8889 msr PSP_NS, r0 - 0+.* <[^>]*> f3ef 8008 mrs r0, MSP --0+.* <[^>]*> f3ef 8008 mrs r0, MSP - 0+.* <[^>]*> f3ef 8088 mrs r0, MSP_NS - 0+.* <[^>]*> f3ef 8009 mrs r0, PSP --0+.* <[^>]*> f3ef 8009 mrs r0, PSP - 0+.* <[^>]*> f3ef 8089 mrs r0, PSP_NS - 0+.* <[^>]*> f3ef 8008 mrs r0, MSP --0+.* <[^>]*> f3ef 8008 mrs r0, MSP - 0+.* <[^>]*> f3ef 8088 mrs r0, MSP_NS - 0+.* <[^>]*> f3ef 8009 mrs r0, PSP --0+.* <[^>]*> f3ef 8009 mrs r0, PSP - 0+.* <[^>]*> f3ef 8089 mrs r0, PSP_NS -diff --git a/gas/testsuite/gas/ppc/power9.d b/gas/testsuite/gas/ppc/power9.d -index 1135d26..31e4530 100644 ---- a/gas/testsuite/gas/ppc/power9.d -+++ b/gas/testsuite/gas/ppc/power9.d -@@ -280,14 +280,6 @@ Disassembly of section \.text: - .*: (7f a8 49 80|80 49 a8 7f) cmprb cr7,1,r8,r9 - .*: (7d e0 01 00|00 01 e0 7d) setb r15,cr0 - .*: (7d fc 01 00|00 01 fc 7d) setb r15,cr7 --.*: (7e 00 01 01|01 01 00 7e) setbool r16,lt --.*: (7e 01 01 01|01 01 01 7e) setbool r16,gt --.*: (7e 02 01 01|01 01 02 7e) setbool r16,eq --.*: (7e 03 01 01|01 01 03 7e) setbool r16,so --.*: (7e 1c 01 01|01 01 1c 7e) setbool r16,4\*cr7\+lt --.*: (7e 1d 01 01|01 01 1d 7e) setbool r16,4\*cr7\+gt --.*: (7e 1e 01 01|01 01 1e 7e) setbool r16,4\*cr7\+eq --.*: (7e 1f 01 01|01 01 1f 7e) setbool r16,4\*cr7\+so - .*: (7f 40 52 1a|1a 52 40 7f) lxvl vs26,0,r10 - .*: (7f 14 52 1b|1b 52 14 7f) lxvl vs56,r20,r10 - .*: (7f 60 5b 1a|1a 5b 60 7f) stxvl vs27,0,r11 -@@ -331,6 +323,7 @@ Disassembly of section \.text: - .*: (4c e0 80 04|04 80 e0 4c) addpcis r7,-32768 - .*: (4c e0 80 04|04 80 e0 4c) addpcis r7,-32768 - .*: (7c 00 02 a4|a4 02 00 7c) slbsync -+.*: (7d 40 06 a4|a4 06 40 7d) slbiag r10 - .*: (7d 40 5b a4|a4 5b 40 7d) slbieg r10,r11 - .*: (7c 60 27 26|26 27 60 7c) slbmfee r3,r4 - .*: (7c 60 27 26|26 27 60 7c) slbmfee r3,r4 -@@ -344,14 +337,9 @@ Disassembly of section \.text: - .*: (7c 00 1a 24|24 1a 00 7c) tlbiel r3 - .*: (7c 00 1a 24|24 1a 00 7c) tlbiel r3 - .*: (7c 8f 1a 24|24 1a 8f 7c) tlbiel r3,r4,3,1,1 --.*: (7c 0c 6e 0c|0c 6e 0c 7c) copy r12,r13 --.*: (7c 2c 6e 0c|0c 6e 2c 7c) copy_first r12,r13 --.*: (7c 2c 6e 0c|0c 6e 2c 7c) copy_first r12,r13 --.*: (7c 0a 5f 0c|0c 5f 0a 7c) paste r10,r11 --.*: (7c 0a 5f 0c|0c 5f 0a 7c) paste r10,r11 --.*: (7c 2a 5f 0d|0d 5f 2a 7c) paste_last r10,r11 --.*: (7c 2a 5f 0d|0d 5f 2a 7c) paste_last r10,r11 --.*: (7c 00 06 8c|8c 06 00 7c) cp_abort -+.*: (7c 2c 6e 0c|0c 6e 2c 7c) copy r12,r13 -+.*: (7c 2a 5f 0d|0d 5f 2a 7c) paste\. r10,r11 -+.*: (7c 00 06 8c|8c 06 00 7c) cpabort - .*: (7c 00 04 ac|ac 04 00 7c) hwsync - .*: (7c 00 04 ac|ac 04 00 7c) hwsync - .*: (7c 00 04 ac|ac 04 00 7c) hwsync -@@ -359,8 +347,6 @@ Disassembly of section \.text: - .*: (7c 20 04 ac|ac 04 20 7c) lwsync - .*: (7c 40 04 ac|ac 04 40 7c) ptesync - .*: (7c 40 04 ac|ac 04 40 7c) ptesync --.*: (7c 07 04 ac|ac 04 07 7c) sync 0,7 --.*: (7c 28 04 ac|ac 04 28 7c) sync 1,8 - .*: (7e 80 04 cc|cc 04 80 7e) ldat r20,0,0 - .*: (7e 8a e4 cc|cc e4 8a 7e) ldat r20,r10,28 - .*: (7e a0 04 8c|8c 04 a0 7e) lwat r21,0,0 -@@ -373,8 +359,6 @@ Disassembly of section \.text: - .*: (7c 00 f6 e4|e4 f6 00 7c) rmieg r30 - .*: (7d 40 7a 6a|6a 7a 40 7d) ldmx r10,0,r15 - .*: (7d 43 7a 6a|6a 7a 43 7d) ldmx r10,r3,r15 --.*: (7d 60 83 6a|6a 83 60 7d) lwzmx r11,0,r16 --.*: (7d 63 83 6a|6a 83 63 7d) lwzmx r11,r3,r16 - .*: (4c 00 02 e4|e4 02 00 4c) stop - .*: (7c 00 00 3c|3c 00 00 7c) wait - .*: (7c 00 00 3c|3c 00 00 7c) wait -@@ -397,9 +381,6 @@ Disassembly of section \.text: - .*: (7d 6c 69 54|54 69 6c 7d) addex r11,r12,r13,0 - .*: (7d 6c 6b 54|54 6b 6c 7d) addex r11,r12,r13,1 - .*: (7d 6c 6d 54|54 6d 6c 7d) addex r11,r12,r13,2 --.*: (7e b6 b9 55|55 b9 b6 7e) addex\. r21,r22,r23,0 --.*: (7e b6 bb 55|55 bb b6 7e) addex\. r21,r22,r23,1 --.*: (7e b6 bd 55|55 bd b6 7e) addex\. r21,r22,r23,2 - .*: (ff 20 04 8e|8e 04 20 ff) mffs f25 - .*: (ff 20 04 8f|8f 04 20 ff) mffs\. f25 - .*: (ff 41 04 8e|8e 04 41 ff) mffsce f26 -@@ -410,12 +391,4 @@ Disassembly of section \.text: - .*: (ff d7 04 8e|8e 04 d7 ff) mffscrni f30,0 - .*: (ff d7 1c 8e|8e 1c d7 ff) mffscrni f30,3 - .*: (ff f8 04 8e|8e 04 f8 ff) mffsl f31 --.*: (7e 8a 01 76|76 01 8a 7e) brd r10,r20 --.*: (7e ab 01 b6|b6 01 ab 7e) brh r11,r21 --.*: (7e cc 01 36|36 01 cc 7e) brw r12,r22 --.*: (11 6a 63 77|77 63 6a 11) nandxor r10,r11,r12,r13 --.*: (12 b4 b5 f6|f6 b5 b4 12) xor3 r20,r21,r22,r23 --.*: (11 6a 60 34|34 60 6a 11) rldixor r10,r11,0,r12 --.*: (11 6a 66 f4|f4 66 6a 11) rldixor r10,r11,27,r12 --.*: (11 6a 67 f5|f5 67 6a 11) rldixor r10,r11,63,r12 - #pass -diff --git a/gas/testsuite/gas/ppc/power9.s b/gas/testsuite/gas/ppc/power9.s -index 21edb9c..469435d 100644 ---- a/gas/testsuite/gas/ppc/power9.s -+++ b/gas/testsuite/gas/ppc/power9.s -@@ -271,14 +271,6 @@ power9: - cmprb 7,1,8,9 - setb 15,0 - setb 15,7 -- setbool 16,0 -- setbool 16,1 -- setbool 16,2 -- setbool 16,3 -- setbool 16,28 -- setbool 16,29 -- setbool 16,30 -- setbool 16,31 - lxvl 26,0,10 - lxvl 56,20,10 - stxvl 27,0,11 -@@ -322,6 +314,7 @@ power9: - addpcis 7,-0x8000 - subpcis 7,0x8000 - slbsync -+ slbiag 10 - slbieg 10,11 - slbmfee 3,4 - slbmfee 3,4,0 -@@ -335,23 +328,16 @@ power9: - tlbiel 3 - tlbiel 3,0,0,0,0 - tlbiel 3,4,3,1,1 -- copy 12,13,0 -- copy_first 12,13 -- copy 12,13,1 -- paste 10,11,0 -- paste 10,11 -- paste. 10,11,1 -- paste_last 10,11 -- cp_abort -+ copy 12,13 -+ paste. 10,11 -+ cpabort - hwsync - sync -- sync 0,0x0 -+ sync 0 - lwsync -- sync 1,0x0 -+ sync 1 - ptesync -- sync 2,0x0 -- sync 0,0x7 -- sync 1,0x8 -+ sync 2 - ldat 20,0,0x0 - ldat 20,10,0x1c - lwat 21,0,0x0 -@@ -364,8 +350,6 @@ power9: - rmieg 30 - ldmx 10,0,15 - ldmx 10,3,15 -- lwzmx 11,0,16 -- lwzmx 11,3,16 - stop - wait - wait 0 -@@ -388,9 +372,6 @@ power9: - addex 11,12,13,0 - addex 11,12,13,1 - addex 11,12,13,2 -- addex. 21,22,23,0 -- addex. 21,22,23,1 -- addex. 21,22,23,2 - mffs 25 - mffs. 25 - mffsce 26 -@@ -401,11 +382,3 @@ power9: - mffscrni 30,0 - mffscrni 30,3 - mffsl 31 -- brd 10,20 -- brh 11,21 -- brw 12,22 -- nandxor 10,11,12,13 -- xor3 20,21,22,23 -- rldixor 10,11,0,12 -- rldixor 10,11,27,12 -- rldixor 10,11,63,12 -diff --git a/gold/ChangeLog b/gold/ChangeLog -index 239df36..f5005ef 100644 ---- a/gold/ChangeLog -+++ b/gold/ChangeLog -@@ -1,6 +1,72 @@ -+2016-09-26 Cary Coutant -+ -+ PR gold/20238 -+ * symtab.cc (Symbol_table::define_default_version): Check that -+ unversioned symbol is defined. -+ -+2016-08-23 Roland McGrath -+ -+ * options.h (General_options): Grok -z stack-size. -+ * output.h (Output_segment::set_size): New method. -+ * layout.cc (Layout::create_executable_stack_info): Renamed to ... -+ (Layout::create_stack_segment): ... this. Always create the -+ segment if -z stack-size was used. -+ (Layout::set_segment_offsets): Don't call ->set_offset on the -+ PT_GNU_STACK segment. -+ -+2016-08-17 Cary Coutant -+ -+ * i386.cc (Target_i386): Reset skip_call_tls_get_addr_ after printing -+ error message. -+ * testsuite/Makefile.am (pr20216a): Add missing dependencies. -+ (pr20308a): Add -Bgcctestdir/ to compile rules. -+ * testsuite/Makefile.in: Regenerate. -+ -+2016-08-12 Roland McGrath -+ -+ PR gold/20462 -+ * script-sections.cc (Script_sections::release_segments): -+ Reset this->segments_created_. -+ -+2016-08-12 Roland McGrath -+ -+ * yyscript.y (HIDDEN): New %token. -+ (assignment): Handle HIDDEN(string = expr) syntax. -+ * script.cc (script_keyword_parsecodes): Add HIDDEN. -+ -+2016-08-10 Cary Coutant -+ -+ PR gold/20216 -+ * x86_64.cc (Target_x86_64::Relocate::relocate): Add check for -+ R_X86_64_GOTPCREL. Reset skip_call_tls_get_addr_ after printing -+ error message. -+ * testsuite/Makefile.am (pr20216_gd.o): Add -Bgcctestdir/. -+ (pr20216_ld.o): Likewise. -+ * testsuite/Makefile.in: Regenerate. -+ -+2016-08-10 James Clarke -+ -+ PR gold/20443 -+ * symtab.cc (Symbol_table::add_from_relobj): Handle NULL symbols, -+ which will be present for STT_SPARC_REGISTER. -+ (Symbol_table::add_from_pluginobj): Likewise. -+ (Symbol_table::add_from_dynobj): Likewise. -+ (Symbol_table::add_from_incrobj): Removed dead code. -+ -+2016-08-10 James Clarke -+ -+ PR gold/20442 -+ * sparc.cc (Target_sparc::Relocate::relocate): R_SPARC_GOTDATA_OP_LOX10 -+ should fall back on R_SPARC_GOT10, not R_SPARC_GOT13. -+ -+2016-08-10 James Clarke -+ -+ PR gold/20441 -+ * sparc.cc (Target_sparc::Scan::check_non_pic): Allow R_SPARC_32 on -+ sparc64. -+ - 2016-06-29 Cary Coutant - --gold/ - PR gold/20310 - * testsuite/dynamic_list.sh: Remove check for _ZdlPv. - -diff --git a/gold/i386.cc b/gold/i386.cc -index 28864cd..ec515c4 100644 ---- a/gold/i386.cc -+++ b/gold/i386.cc -@@ -2794,8 +2794,11 @@ Target_i386::Relocate::relocate(const Relocate_info<32, false>* relinfo, - && r_type != elfcpp::R_386_PC32) - || gsym == NULL - || strcmp(gsym->name(), "___tls_get_addr") != 0) -- gold_error_at_location(relinfo, relnum, rel.get_r_offset(), -- _("missing expected TLS relocation")); -+ { -+ gold_error_at_location(relinfo, relnum, rel.get_r_offset(), -+ _("missing expected TLS relocation")); -+ this->skip_call_tls_get_addr_ = false; -+ } - else - { - this->skip_call_tls_get_addr_ = false; -diff --git a/gold/layout.cc b/gold/layout.cc -index 376051d..d14f27b 100644 ---- a/gold/layout.cc -+++ b/gold/layout.cc -@@ -2135,7 +2135,7 @@ void - Layout::create_notes() - { - this->create_gold_note(); -- this->create_executable_stack_info(); -+ this->create_stack_segment(); - this->create_build_id(); - } - -@@ -2785,7 +2785,7 @@ Layout::finalize(const Input_objects* input_objects, Symbol_table* symtab, - if (load_seg != NULL) - ehdr_start->set_output_segment(load_seg, Symbol::SEGMENT_START); - else -- ehdr_start->set_undefined(); -+ ehdr_start->set_undefined(); - } - - // Set the file offsets of all the non-data sections we've seen so -@@ -2985,25 +2985,29 @@ Layout::create_gold_note() - // executable. Otherwise, if at least one input file a - // .note.GNU-stack section, and some input file has no .note.GNU-stack - // section, we use the target default for whether the stack should be --// executable. Otherwise, we don't generate a stack note. When --// generating a object file, we create a .note.GNU-stack section with --// the appropriate marking. When generating an executable or shared --// library, we create a PT_GNU_STACK segment. -+// executable. If -z stack-size was used to set a p_memsz value for -+// PT_GNU_STACK, we generate the segment regardless. Otherwise, we -+// don't generate a stack note. When generating a object file, we -+// create a .note.GNU-stack section with the appropriate marking. -+// When generating an executable or shared library, we create a -+// PT_GNU_STACK segment. - - void --Layout::create_executable_stack_info() -+Layout::create_stack_segment() - { - bool is_stack_executable; - if (parameters->options().is_execstack_set()) - { - is_stack_executable = parameters->options().is_stack_executable(); - if (!is_stack_executable -- && this->input_requires_executable_stack_ -- && parameters->options().warn_execstack()) -+ && this->input_requires_executable_stack_ -+ && parameters->options().warn_execstack()) - gold_warning(_("one or more inputs require executable stack, " -- "but -z noexecstack was given")); -+ "but -z noexecstack was given")); - } -- else if (!this->input_with_gnu_stack_note_) -+ else if (!this->input_with_gnu_stack_note_ -+ && (!parameters->options().user_set_stack_size() -+ || parameters->options().relocatable())) - return; - else - { -@@ -3032,7 +3036,12 @@ Layout::create_executable_stack_info() - int flags = elfcpp::PF_R | elfcpp::PF_W; - if (is_stack_executable) - flags |= elfcpp::PF_X; -- this->make_output_segment(elfcpp::PT_GNU_STACK, flags); -+ Output_segment* seg = -+ this->make_output_segment(elfcpp::PT_GNU_STACK, flags); -+ seg->set_size(parameters->options().stack_size()); -+ // BFD lets targets override this default alignment, but the only -+ // targets that do so are ones that Gold does not support so far. -+ seg->set_minimum_p_align(16); - } - } - -@@ -3718,7 +3727,9 @@ Layout::set_segment_offsets(const Target* target, Output_segment* load_seg, - p != this->segment_list_.end(); - ++p) - { -- if ((*p)->type() != elfcpp::PT_LOAD) -+ // PT_GNU_STACK was set up correctly when it was created. -+ if ((*p)->type() != elfcpp::PT_LOAD -+ && (*p)->type() != elfcpp::PT_GNU_STACK) - (*p)->set_offset((*p)->type() == elfcpp::PT_GNU_RELRO - ? increase_relro - : 0); -diff --git a/gold/layout.h b/gold/layout.h -index c369fef..b2d699f 100644 ---- a/gold/layout.h -+++ b/gold/layout.h -@@ -1037,9 +1037,9 @@ class Layout - void - create_gold_note(); - -- // Record whether the stack must be executable. -+ // Record whether the stack must be executable, and a user-supplied size. - void -- create_executable_stack_info(); -+ create_stack_segment(); - - // Create a build ID note if needed. - void -diff --git a/gold/options.h b/gold/options.h -index 23c9658..4c5b2ae 100644 ---- a/gold/options.h -+++ b/gold/options.h -@@ -647,7 +647,7 @@ class General_options - DEFINE_bool(apply_dynamic_relocs, options::TWO_DASHES, '\0', true, - N_("Apply link-time values for dynamic relocations (default)"), - N_("(aarch64 only) Do not apply link-time values " -- "for dynamic relocations")); -+ "for dynamic relocations")); - - DEFINE_bool(as_needed, options::TWO_DASHES, '\0', false, - N_("Only set DT_NEEDED for shared libraries if used"), -@@ -1293,7 +1293,7 @@ class General_options - N_("Mark output as requiring executable stack"), NULL); - DEFINE_bool(global, options::DASH_Z, '\0', false, - N_("Make symbols in DSO available for subsequently loaded " -- "objects"), NULL); -+ "objects"), NULL); - DEFINE_bool(initfirst, options::DASH_Z, '\0', false, - N_("Mark DSO to be initialized first at runtime"), - NULL); -@@ -1339,6 +1339,8 @@ class General_options - DEFINE_bool(relro, options::DASH_Z, '\0', DEFAULT_LD_Z_RELRO, - N_("Where possible mark variables read-only after relocation"), - N_("Don't mark variables read-only after relocation")); -+ DEFINE_uint64(stack_size, options::DASH_Z, '\0', 0, -+ N_("Set PT_GNU_STACK segment p_memsz to SIZE"), N_("SIZE")); - DEFINE_bool(text, options::DASH_Z, '\0', false, - N_("Do not permit relocations in read-only segments"), - N_("Permit relocations in read-only segments (default)")); -diff --git a/gold/output.h b/gold/output.h -index d8a8aaa..6b9186b 100644 ---- a/gold/output.h -+++ b/gold/output.h -@@ -2499,7 +2499,7 @@ class Output_data_got : public Output_data_got_base - // entry. - bool - add_local(Relobj* object, unsigned int sym_index, unsigned int got_type, -- uint64_t addend); -+ uint64_t addend); - - // Like add_local, but use the PLT offset of the local symbol if it - // has one. -@@ -2643,7 +2643,7 @@ class Output_data_got : public Output_data_got_base - - // Create a local symbol entry plus addend. - Got_entry(Relobj* object, unsigned int local_sym_index, -- bool use_plt_or_tls_offset, uint64_t addend) -+ bool use_plt_or_tls_offset, uint64_t addend) - : local_sym_index_(local_sym_index), - use_plt_or_tls_offset_(use_plt_or_tls_offset), addend_(addend) - { -@@ -4796,6 +4796,13 @@ class Output_segment - this->min_p_align_ = align; - } - -+ // Set the memory size of this segment. -+ void -+ set_size(uint64_t size) -+ { -+ this->memsz_ = size; -+ } -+ - // Set the offset of this segment based on the section. This should - // only be called for a non-PT_LOAD segment. - void -diff --git a/gold/script-sections.cc b/gold/script-sections.cc -index 96c68de..bf25391 100644 ---- a/gold/script-sections.cc -+++ b/gold/script-sections.cc -@@ -244,10 +244,10 @@ Memory_region::attributes_compatible(elfcpp::Elf_Xword flags, - attrs &= ~ (attrs & - attrs); - } - while (attrs != 0); -- -+ - return match; - } -- -+ - // Print a memory region. - - void -@@ -1503,7 +1503,7 @@ class Input_section_info - private: - // Input section, can be a relaxed section. - Output_section::Input_section input_section_; -- // Name of the section. -+ // Name of the section. - std::string section_name_; - // Section size. - uint64_t size_; -@@ -1545,7 +1545,7 @@ Input_section_sorter::get_init_priority(const char* name) - // GCC uses the following section names for the init_priority - // attribute with numerical values 101 and 65535 inclusive. A - // lower value means a higher priority. -- // -+ // - // 1: .init_array.NNNN/.fini_array.NNNN: Where NNNN is the - // decimal numerical value of the init_priority attribute. - // The order of execution in .init_array is forward and -@@ -1666,7 +1666,7 @@ Output_section_element_input::set_section_addresses( - while (p != input_sections->end()) - { - Relobj* relobj = p->relobj(); -- unsigned int shndx = p->shndx(); -+ unsigned int shndx = p->shndx(); - Input_section_info isi(*p); - - // Calling section_name and section_addralign is not very -@@ -1758,7 +1758,7 @@ Output_section_element_input::set_section_addresses( - - uint64_t this_subalign = sis.addralign(); - if (!sis.is_input_section()) -- sis.output_section_data()->finalize_data_size(); -+ sis.output_section_data()->finalize_data_size(); - uint64_t data_size = sis.data_size(); - if (this_subalign < subalign) - { -@@ -2029,7 +2029,7 @@ class Output_section_definition : public Sections_element - void - set_section_vma(Expression* address) - { this->address_ = address; } -- -+ - void - set_section_lma(Expression* address) - { this->load_address_ = address; } -@@ -2037,7 +2037,7 @@ class Output_section_definition : public Sections_element - const std::string& - get_section_name() const - { return this->name_; } -- -+ - private: - static const char* - script_section_type_name(Script_section_type); -@@ -2402,9 +2402,9 @@ Output_section_definition::set_section_addresses(Symbol_table* symtab, - uint64_t old_load_address = *load_address; - - // If input section sorting is requested via --section-ordering-file or -- // linker plugins, then do it here. This is important because we want -+ // linker plugins, then do it here. This is important because we want - // any sorting specified in the linker scripts, which will be done after -- // this, to take precedence. The final order of input sections is then -+ // this, to take precedence. The final order of input sections is then - // guaranteed to be according to the linker script specification. - if (this->output_section_ != NULL - && this->output_section_->input_section_order_specified()) -@@ -2495,7 +2495,7 @@ Output_section_definition::set_section_addresses(Symbol_table* symtab, - // The LMA address was explicitly set to the given region. - laddr = lma_region->get_current_address()->eval(symtab, layout, - false); -- else -+ else - { - // We are not going to use the discovered lma_region, so - // make sure that we do not update it in the code below. -@@ -2987,9 +2987,9 @@ Orphan_output_section::set_section_addresses(Symbol_table*, Layout*, - address = align_address(address, this->os_->addralign()); - - // If input section sorting is requested via --section-ordering-file or -- // linker plugins, then do it here. This is important because we want -+ // linker plugins, then do it here. This is important because we want - // any sorting specified in the linker scripts, which will be done after -- // this, to take precedence. The final order of input sections is then -+ // this, to take precedence. The final order of input sections is then - // guaranteed to be according to the linker script specification. - if (this->os_ != NULL - && this->os_->input_section_order_specified()) -@@ -3023,7 +3023,7 @@ Orphan_output_section::set_section_addresses(Symbol_table*, Layout*, - { - uint64_t addralign = p->addralign(); - if (!p->is_input_section()) -- p->output_section_data()->finalize_data_size(); -+ p->output_section_data()->finalize_data_size(); - uint64_t size = p->data_size(); - address = align_address(address, addralign); - this->os_->add_script_input_section(*p); -@@ -3605,7 +3605,7 @@ Output_segment* - Script_sections::set_section_addresses(Symbol_table* symtab, Layout* layout) - { - gold_assert(this->saw_sections_clause_); -- -+ - // Implement ONLY_IF_RO/ONLY_IF_RW constraints. These are a pain - // for our representation. - for (Sections_elements::iterator p = this->sections_elements_->begin(); -@@ -3674,7 +3674,7 @@ Script_sections::set_section_addresses(Symbol_table* symtab, Layout* layout) - Output_section* os = (*p)->get_output_section(); - - // Handle -Ttext, -Tdata and -Tbss options. We do this by looking for -- // the special sections by names and doing dot assignments. -+ // the special sections by names and doing dot assignments. - if (use_tsection_options - && os != NULL - && (os->flags() & elfcpp::SHF_ALLOC) != 0) -@@ -3703,7 +3703,7 @@ Script_sections::set_section_addresses(Symbol_table* symtab, Layout* layout) - - (*p)->set_section_addresses(symtab, layout, &dot_value, &dot_alignment, - &load_address); -- } -+ } - - if (this->phdrs_elements_ != NULL) - { -@@ -3890,7 +3890,7 @@ Script_sections::create_segments(Layout* layout, uint64_t dot_alignment) - layout->get_allocated_sections(§ions); - - // Sort the sections by address. -- std::stable_sort(sections.begin(), sections.end(), -+ std::stable_sort(sections.begin(), sections.end(), - Sort_output_sections(this->sections_elements_)); - - this->create_note_and_tls_segments(layout, §ions); -@@ -4217,7 +4217,7 @@ Script_sections::attach_sections_using_phdrs_clause(Layout* layout) - // Output sections in the script which do not list segments are - // attached to the same set of segments as the immediately preceding - // output section. -- -+ - String_list* phdr_names = NULL; - bool load_segments_only = false; - for (Sections_elements::const_iterator p = this->sections_elements_->begin(); -@@ -4262,7 +4262,7 @@ Script_sections::attach_sections_using_phdrs_clause(Layout* layout) - // filtering. - if (old_phdr_names != phdr_names) - load_segments_only = false; -- -+ - // If this is an orphan section--one that was not explicitly - // mentioned in the linker script--then it should not inherit - // any segment type other than PT_LOAD. Otherwise, e.g., the -@@ -4459,6 +4459,7 @@ Script_sections::release_segments() - ++p) - (*p)->release_segment(); - } -+ this->segments_created_ = false; - } - - // Print the SECTIONS clause to F for debugging. -diff --git a/gold/script.cc b/gold/script.cc -index d6aa7b2..bb8b437 100644 ---- a/gold/script.cc -+++ b/gold/script.cc -@@ -1755,6 +1755,7 @@ script_keyword_parsecodes[] = - { "FLOAT", FLOAT }, - { "FORCE_COMMON_ALLOCATION", FORCE_COMMON_ALLOCATION }, - { "GROUP", GROUP }, -+ { "HIDDEN", HIDDEN }, - { "HLL", HLL }, - { "INCLUDE", INCLUDE }, - { "INFO", INFO }, -@@ -2696,7 +2697,7 @@ script_add_library(void* closurev, const char* name, size_t length) - - if (name_string[0] != 'l') - gold_error(_("library name must be prefixed with -l")); -- -+ - Input_file_argument file(name_string.c_str() + 1, - Input_file_argument::INPUT_FILE_TYPE_LIBRARY, - "", false, -diff --git a/gold/sparc.cc b/gold/sparc.cc -index dc4612d..8e66b77 100644 ---- a/gold/sparc.cc -+++ b/gold/sparc.cc -@@ -2150,6 +2150,7 @@ Target_sparc::Scan::check_non_pic(Relobj* object, unsigned int - case elfcpp::R_SPARC_RELATIVE: - case elfcpp::R_SPARC_IRELATIVE: - case elfcpp::R_SPARC_COPY: -+ case elfcpp::R_SPARC_32: - case elfcpp::R_SPARC_64: - case elfcpp::R_SPARC_GLOB_DAT: - case elfcpp::R_SPARC_JMP_SLOT: -@@ -3468,6 +3469,13 @@ Target_sparc::Relocate::relocate( - Reloc::lo10(view, object, psymval, addend); - break; - -+ case elfcpp::R_SPARC_GOTDATA_OP_LOX10: -+ if (gdop_valid) -+ { -+ Reloc::gdop_lox10(view, got_offset); -+ break; -+ } -+ /* Fall through. */ - case elfcpp::R_SPARC_GOT10: - Reloc::lo10(view, got_offset, addend); - break; -@@ -3486,13 +3494,6 @@ Target_sparc::Relocate::relocate( - } - break; - -- case elfcpp::R_SPARC_GOTDATA_OP_LOX10: -- if (gdop_valid) -- { -- Reloc::gdop_lox10(view, got_offset); -- break; -- } -- /* Fall through. */ - case elfcpp::R_SPARC_GOT13: - Reloc::rela32_13(view, got_offset, addend); - break; -diff --git a/gold/symtab.cc b/gold/symtab.cc -index 5ce5c31..c872f47 100644 ---- a/gold/symtab.cc -+++ b/gold/symtab.cc -@@ -882,6 +882,7 @@ Symbol_table::define_default_version(Sized_symbol* sym, - ; - else if (pdef->second->is_from_dynobj() - && sym->is_from_dynobj() -+ && pdef->second->is_defined() - && pdef->second->object() != sym->object()) - ; - else -@@ -1325,6 +1326,9 @@ Symbol_table::add_from_relobj( - res = this->add_from_object(relobj, name, name_key, ver, ver_key, - is_default_version, *psym, st_shndx, - is_ordinary, orig_st_shndx); -+ -+ if (res == NULL) -+ continue; - - if (is_forced_local) - this->force_local(res); -@@ -1406,6 +1410,9 @@ Symbol_table::add_from_pluginobj( - is_default_version, *sym, st_shndx, - is_ordinary, st_shndx); - -+ if (res == NULL) -+ return NULL; -+ - if (is_forced_local) - this->force_local(res); - -@@ -1602,6 +1609,9 @@ Symbol_table::add_from_dynobj( - } - } - -+ if (res == NULL) -+ continue; -+ - // Note that it is possible that RES was overridden by an - // earlier object, in which case it can't be aliased here. - if (st_shndx != elfcpp::SHN_UNDEF -@@ -1640,7 +1650,6 @@ Symbol_table::add_from_incrobj( - - Stringpool::Key ver_key = 0; - bool is_default_version = false; -- bool is_forced_local = false; - - Stringpool::Key name_key; - name = this->namepool_.add(name, true, &name_key); -@@ -1650,9 +1659,6 @@ Symbol_table::add_from_incrobj( - is_default_version, *sym, st_shndx, - is_ordinary, st_shndx); - -- if (is_forced_local) -- this->force_local(res); -- - return res; - } - -diff --git a/gold/testsuite/Makefile.am b/gold/testsuite/Makefile.am -index c8d3093..3b97673 100644 ---- a/gold/testsuite/Makefile.am -+++ b/gold/testsuite/Makefile.am -@@ -1192,11 +1192,11 @@ pr20216a.so: pr20216_gd.o pr20216_ld.o gcctestdir/ld - pr20216b.so: pr20216_def.o gcctestdir/ld - $(LINK) -Bgcctestdir/ -shared pr20216_def.o - --pr20216_gd.o: pr20216_gd.S -- $(COMPILE) -c -o $@ $< -+pr20216_gd.o: pr20216_gd.S gcctestdir/as -+ $(COMPILE) -Bgcctestdir/ -c -o $@ $< - --pr20216_ld.o: pr20216_ld.S -- $(COMPILE) -c -o $@ $< -+pr20216_ld.o: pr20216_ld.S gcctestdir/as -+ $(COMPILE) -Bgcctestdir/ -c -o $@ $< - - endif DEFAULT_TARGET_X86_64_OR_X32 - -@@ -1297,11 +1297,11 @@ pr20308a.so: pr20308_gd.o pr20308_ld.o gcctestdir/ld - pr20308b.so: pr20308_def.o gcctestdir/ld - $(LINK) -Bgcctestdir/ -shared pr20308_def.o - --pr20308_gd.o: pr20308_gd.S -- $(COMPILE) -c -o $@ $< -+pr20308_gd.o: pr20308_gd.S gcctestdir/as -+ $(COMPILE) -Bgcctestdir/ -c -o $@ $< - --pr20308_ld.o: pr20308_ld.S -- $(COMPILE) -c -o $@ $< -+pr20308_ld.o: pr20308_ld.S gcctestdir/as -+ $(COMPILE) -Bgcctestdir/ -c -o $@ $< - - endif DEFAULT_TARGET_I386 - -diff --git a/gold/testsuite/Makefile.in b/gold/testsuite/Makefile.in -index 4185287..bb6f44d 100644 ---- a/gold/testsuite/Makefile.in -+++ b/gold/testsuite/Makefile.in -@@ -6145,11 +6145,11 @@ uninstall-am: - @DEFAULT_TARGET_X86_64_OR_X32_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@pr20216b.so: pr20216_def.o gcctestdir/ld - @DEFAULT_TARGET_X86_64_OR_X32_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(LINK) -Bgcctestdir/ -shared pr20216_def.o - --@DEFAULT_TARGET_X86_64_OR_X32_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@pr20216_gd.o: pr20216_gd.S --@DEFAULT_TARGET_X86_64_OR_X32_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(COMPILE) -c -o $@ $< -+@DEFAULT_TARGET_X86_64_OR_X32_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@pr20216_gd.o: pr20216_gd.S gcctestdir/as -+@DEFAULT_TARGET_X86_64_OR_X32_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(COMPILE) -Bgcctestdir/ -c -o $@ $< - --@DEFAULT_TARGET_X86_64_OR_X32_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@pr20216_ld.o: pr20216_ld.S --@DEFAULT_TARGET_X86_64_OR_X32_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(COMPILE) -c -o $@ $< -+@DEFAULT_TARGET_X86_64_OR_X32_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@pr20216_ld.o: pr20216_ld.S gcctestdir/as -+@DEFAULT_TARGET_X86_64_OR_X32_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(COMPILE) -Bgcctestdir/ -c -o $@ $< - - @DEFAULT_TARGET_I386_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@i386_mov_to_lea1.o: i386_mov_to_lea1.s - @DEFAULT_TARGET_I386_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(TEST_AS) --32 -o $@ $< -@@ -6200,11 +6200,11 @@ uninstall-am: - @DEFAULT_TARGET_I386_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@pr20308b.so: pr20308_def.o gcctestdir/ld - @DEFAULT_TARGET_I386_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(LINK) -Bgcctestdir/ -shared pr20308_def.o - --@DEFAULT_TARGET_I386_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@pr20308_gd.o: pr20308_gd.S --@DEFAULT_TARGET_I386_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(COMPILE) -c -o $@ $< -+@DEFAULT_TARGET_I386_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@pr20308_gd.o: pr20308_gd.S gcctestdir/as -+@DEFAULT_TARGET_I386_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(COMPILE) -Bgcctestdir/ -c -o $@ $< - --@DEFAULT_TARGET_I386_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@pr20308_ld.o: pr20308_ld.S --@DEFAULT_TARGET_I386_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(COMPILE) -c -o $@ $< -+@DEFAULT_TARGET_I386_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@pr20308_ld.o: pr20308_ld.S gcctestdir/as -+@DEFAULT_TARGET_I386_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(COMPILE) -Bgcctestdir/ -c -o $@ $< - @GCC_TRUE@@NATIVE_LINKER_TRUE@many_sections_define.h: - @GCC_TRUE@@NATIVE_LINKER_TRUE@ (for i in `seq 1 70000`; do \ - @GCC_TRUE@@NATIVE_LINKER_TRUE@ echo "int var_$$i __attribute__((section(\"section_$$i\"))) = $$i;"; \ -diff --git a/gold/x86_64.cc b/gold/x86_64.cc -index 6aa489a..8d494ea 100644 ---- a/gold/x86_64.cc -+++ b/gold/x86_64.cc -@@ -3505,6 +3505,7 @@ Target_x86_64::Relocate::relocate( - if (this->skip_call_tls_get_addr_) - { - if ((r_type != elfcpp::R_X86_64_PLT32 -+ && r_type != elfcpp::R_X86_64_GOTPCREL - && r_type != elfcpp::R_X86_64_GOTPCRELX - && r_type != elfcpp::R_X86_64_PLT32_BND - && r_type != elfcpp::R_X86_64_PC32_BND -@@ -3514,6 +3515,7 @@ Target_x86_64::Relocate::relocate( - { - gold_error_at_location(relinfo, relnum, rela.get_r_offset(), - _("missing expected TLS relocation")); -+ this->skip_call_tls_get_addr_ = false; - } - else - { -diff --git a/gold/yyscript.y b/gold/yyscript.y -index 7e6bd27..38831d5 100644 ---- a/gold/yyscript.y -+++ b/gold/yyscript.y -@@ -137,6 +137,7 @@ - %token FORCE_COMMON_ALLOCATION - %token GLOBAL /* global */ - %token GROUP -+%token HIDDEN - %token HLL - %token INCLUDE - %token INHIBIT_COMMON_ALLOCATION -@@ -864,6 +865,8 @@ assignment: - Expression_ptr e = script_exp_binary_bitwise_or(s, $3); - script_set_symbol(closure, $1.value, $1.length, e, 0, 0); - } -+ | HIDDEN '(' string '=' parse_exp ')' -+ { script_set_symbol(closure, $3.value, $3.length, $5, 0, 1); } - | PROVIDE '(' string '=' parse_exp ')' - { script_set_symbol(closure, $3.value, $3.length, $5, 1, 0); } - | PROVIDE_HIDDEN '(' string '=' parse_exp ')' -diff --git a/gprof/ChangeLog b/gprof/ChangeLog -index a02b3ce..19c596a 100644 ---- a/gprof/ChangeLog -+++ b/gprof/ChangeLog -@@ -2,6 +2,10 @@ - - * configure: Regenerate. - -+2016-08-03 Tristan Gingold -+ -+ * configure: Regenerate. -+ - 2016-07-01 Tristan Gingold - - * configure: Regenerate. -diff --git a/gprof/configure b/gprof/configure -index 4c17248..bf3ecaa 100755 ---- a/gprof/configure -+++ b/gprof/configure -@@ -1,6 +1,6 @@ - #! /bin/sh - # Guess values for system-dependent variables and create Makefiles. --# Generated by GNU Autoconf 2.64 for gprof 2.27. -+# Generated by GNU Autoconf 2.64 for gprof 2.27.0. - # - # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, - # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software -@@ -556,8 +556,8 @@ MAKEFLAGS= - # Identity of this package. - PACKAGE_NAME='gprof' - PACKAGE_TARNAME='gprof' --PACKAGE_VERSION='2.27' --PACKAGE_STRING='gprof 2.27' -+PACKAGE_VERSION='2.27.0' -+PACKAGE_STRING='gprof 2.27.0' - PACKAGE_BUGREPORT='' - PACKAGE_URL='' - -@@ -1301,7 +1301,7 @@ if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF --\`configure' configures gprof 2.27 to adapt to many kinds of systems. -+\`configure' configures gprof 2.27.0 to adapt to many kinds of systems. - - Usage: $0 [OPTION]... [VAR=VALUE]... - -@@ -1372,7 +1372,7 @@ fi - - if test -n "$ac_init_help"; then - case $ac_init_help in -- short | recursive ) echo "Configuration of gprof 2.27:";; -+ short | recursive ) echo "Configuration of gprof 2.27.0:";; - esac - cat <<\_ACEOF - -@@ -1478,7 +1478,7 @@ fi - test -n "$ac_init_help" && exit $ac_status - if $ac_init_version; then - cat <<\_ACEOF --gprof configure 2.27 -+gprof configure 2.27.0 - generated by GNU Autoconf 2.64 - - Copyright (C) 2009 Free Software Foundation, Inc. -@@ -1843,7 +1843,7 @@ cat >config.log <<_ACEOF - This file contains any messages produced by compilers while - running configure, to aid debugging if configure makes a mistake. - --It was created by gprof $as_me 2.27, which was -+It was created by gprof $as_me 2.27.0, which was - generated by GNU Autoconf 2.64. Invocation command line was - - $ $0 $@ -@@ -3652,7 +3652,7 @@ fi - - # Define the identity of the package. - PACKAGE='gprof' -- VERSION='2.27' -+ VERSION='2.27.0' - - - cat >>confdefs.h <<_ACEOF -@@ -12743,7 +12743,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - # report actual input values of CONFIG_FILES etc. instead of their - # values after options handling. - ac_log=" --This file was extended by gprof $as_me 2.27, which was -+This file was extended by gprof $as_me 2.27.0, which was - generated by GNU Autoconf 2.64. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES -@@ -12807,7 +12807,7 @@ Report bugs to the package provider." - _ACEOF - cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - ac_cs_version="\\ --gprof config.status 2.27 -+gprof config.status 2.27.0 - configured by $0, generated by GNU Autoconf 2.64, - with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" - -diff --git a/ld/ChangeLog b/ld/ChangeLog -index a57cd66..6cc35c7 100644 ---- a/ld/ChangeLog -+++ b/ld/ChangeLog -@@ -1,3 +1,56 @@ -+2016-10-14 Alan Modra -+ -+ * scripttempl/DWARF.sc: Add .debug_addr. -+ -+2016-10-10 Christophe Lyon -+ -+ Backport from mainline -+ 2016-09-28 Christophe Lyon -+ -+ PR ld/20608 -+ * testsuite/ld-arm/arm-elf.exp: Handle new testcase. -+ * testsuite/ld-arm/farcall-mixed-app2.d: New file. -+ * testsuite/ld-arm/farcall-mixed-app2.r: Likewise. -+ * testsuite/ld-arm/farcall-mixed-app2.s: Likewise. -+ * testsuite/ld-arm/farcall-mixed-app2.sym: Likewise. -+ -+2016-09-06 Senthil Kumar Selvaraj -+ -+ Backport from mainline -+ 2016-09-02 Senthil Kumar Selvaraj -+ -+ PR ld/20545 -+ * testsuite/ld-avr/avr-prop-7.d: New test. -+ * testsuite/ld-avr/avr-prop-7.s: New test. -+ * testsuite/ld-avr/avr-prop-8.d: New test. -+ * testsuite/ld-avr/avr-prop-8.s: New test. -+ -+2016-08-09 Roland McGrath -+ -+ * emulparams/armelf.sh (GENERATE_PIE_SCRIPT): Set to yes. -+ -+2016-08-02 Nick Clifton -+ -+ PR ld/17739 -+ * emulparams/shelf.sh (CHECK_RELOCS_AFTER_OPEN_INPUT): Define with -+ valye 'yes'. -+ * emulparams/shelf32.sh: Likewise. -+ * emulparams/shelf32.sh: Likewise. -+ * emulparams/shelf_nto.sh: Likewise. -+ * emulparams/shelf_nto.sh: Likewise. -+ * emulparams/shelf_vxworks.sh: Likewise. -+ * emulparams/shelf_vxworks.sh: Likewise. -+ * emulparams/shlelf32_linux.sh: Likewise. -+ * emulparams/shlelf32_linux.sh: Likewise. -+ * emulparams/shlelf_linux.sh: Likewise. -+ * emulparams/shlelf_linux.sh: Likewise. -+ * emulparams/shlelf_nto.sh: Likewise. -+ * emulparams/shlelf_nto.sh: Likewise. -+ -+2016-08-03 Tristan Gingold -+ -+ * configure: Regenerate. -+ - 2016-08-03 Tristan Gingold - - * configure: Regenerate. -diff --git a/ld/configure b/ld/configure -index c6f871d..f9be51a 100755 ---- a/ld/configure -+++ b/ld/configure -@@ -1,6 +1,6 @@ - #! /bin/sh - # Guess values for system-dependent variables and create Makefiles. --# Generated by GNU Autoconf 2.64 for ld 2.27. -+# Generated by GNU Autoconf 2.64 for ld 2.27.0. - # - # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, - # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software -@@ -556,8 +556,8 @@ MAKEFLAGS= - # Identity of this package. - PACKAGE_NAME='ld' - PACKAGE_TARNAME='ld' --PACKAGE_VERSION='2.27' --PACKAGE_STRING='ld 2.27' -+PACKAGE_VERSION='2.27.0' -+PACKAGE_STRING='ld 2.27.0' - PACKAGE_BUGREPORT='' - PACKAGE_URL='' - -@@ -1353,7 +1353,7 @@ if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF --\`configure' configures ld 2.27 to adapt to many kinds of systems. -+\`configure' configures ld 2.27.0 to adapt to many kinds of systems. - - Usage: $0 [OPTION]... [VAR=VALUE]... - -@@ -1424,7 +1424,7 @@ fi - - if test -n "$ac_init_help"; then - case $ac_init_help in -- short | recursive ) echo "Configuration of ld 2.27:";; -+ short | recursive ) echo "Configuration of ld 2.27.0:";; - esac - cat <<\_ACEOF - -@@ -1549,7 +1549,7 @@ fi - test -n "$ac_init_help" && exit $ac_status - if $ac_init_version; then - cat <<\_ACEOF --ld configure 2.27 -+ld configure 2.27.0 - generated by GNU Autoconf 2.64 - - Copyright (C) 2009 Free Software Foundation, Inc. -@@ -2258,7 +2258,7 @@ cat >config.log <<_ACEOF - This file contains any messages produced by compilers while - running configure, to aid debugging if configure makes a mistake. - --It was created by ld $as_me 2.27, which was -+It was created by ld $as_me 2.27.0, which was - generated by GNU Autoconf 2.64. Invocation command line was - - $ $0 $@ -@@ -4068,7 +4068,7 @@ fi - - # Define the identity of the package. - PACKAGE='ld' -- VERSION='2.27' -+ VERSION='2.27.0' - - - cat >>confdefs.h <<_ACEOF -@@ -17769,7 +17769,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - # report actual input values of CONFIG_FILES etc. instead of their - # values after options handling. - ac_log=" --This file was extended by ld $as_me 2.27, which was -+This file was extended by ld $as_me 2.27.0, which was - generated by GNU Autoconf 2.64. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES -@@ -17833,7 +17833,7 @@ Report bugs to the package provider." - _ACEOF - cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - ac_cs_version="\\ --ld config.status 2.27 -+ld config.status 2.27.0 - configured by $0, generated by GNU Autoconf 2.64, - with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" - -diff --git a/ld/emulparams/armelf.sh b/ld/emulparams/armelf.sh -index 672b208..f581c68 100644 ---- a/ld/emulparams/armelf.sh -+++ b/ld/emulparams/armelf.sh -@@ -21,6 +21,7 @@ OTHER_READONLY_SECTIONS=" - DATA_START_SYMBOLS='__data_start = . ;'; - - GENERATE_SHLIB_SCRIPT=yes -+GENERATE_PIE_SCRIPT=yes - - ARCH=arm - MACHINE= -diff --git a/ld/emulparams/shelf.sh b/ld/emulparams/shelf.sh -index 83680a6..d3f4752 100644 ---- a/ld/emulparams/shelf.sh -+++ b/ld/emulparams/shelf.sh -@@ -11,6 +11,9 @@ MACHINE= - TEMPLATE_NAME=elf32 - GENERATE_SHLIB_SCRIPT=yes - EMBEDDED=yes -+# PR 17739. Delay checking relocs until after all files have -+# been opened and linker garbage collection has taken place. -+CHECK_RELOCS_AFTER_OPEN_INPUT=yes - - # These are for compatibility with the COFF toolchain. - ENTRY=start -diff --git a/ld/emulparams/shelf32.sh b/ld/emulparams/shelf32.sh -index 966bd30..bf362c5 100644 ---- a/ld/emulparams/shelf32.sh -+++ b/ld/emulparams/shelf32.sh -@@ -11,6 +11,9 @@ ALIGNMENT=8 - TEMPLATE_NAME=elf32 - GENERATE_SHLIB_SCRIPT=yes - EMBEDDED=yes -+# PR 17739. Delay checking relocs until after all files have -+# been opened and linker garbage collection has taken place. -+CHECK_RELOCS_AFTER_OPEN_INPUT=yes - - DATA_START_SYMBOLS='PROVIDE (___data = .);' - -diff --git a/ld/emulparams/shelf_nto.sh b/ld/emulparams/shelf_nto.sh -index c4d71aa..46efd87 100644 ---- a/ld/emulparams/shelf_nto.sh -+++ b/ld/emulparams/shelf_nto.sh -@@ -9,3 +9,6 @@ TEMPLATE_NAME=elf32 - GENERATE_SHLIB_SCRIPT=yes - TEXT_START_SYMBOLS='_btext = .;' - ENTRY=_start -+# PR 17739. Delay checking relocs until after all files have -+# been opened and linker garbage collection has taken place. -+CHECK_RELOCS_AFTER_OPEN_INPUT=yes -diff --git a/ld/emulparams/shelf_vxworks.sh b/ld/emulparams/shelf_vxworks.sh -index 77619cb..759ffac 100644 ---- a/ld/emulparams/shelf_vxworks.sh -+++ b/ld/emulparams/shelf_vxworks.sh -@@ -14,6 +14,10 @@ TEMPLATE_NAME=elf32 - GENERATE_SHLIB_SCRIPT=yes - ENTRY=__start - SYMPREFIX=_ -+# PR 17739. Delay checking relocs until after all files have -+# been opened and linker garbage collection has taken place. -+CHECK_RELOCS_AFTER_OPEN_INPUT=yes -+ - GOT=".got ${RELOCATING-0} : { - PROVIDE(__GLOBAL_OFFSET_TABLE_ = .); - *(.got.plt) *(.got) }" -diff --git a/ld/emulparams/shlelf32_linux.sh b/ld/emulparams/shlelf32_linux.sh -index 81aea39..0327e57 100644 ---- a/ld/emulparams/shlelf32_linux.sh -+++ b/ld/emulparams/shlelf32_linux.sh -@@ -13,7 +13,9 @@ ALIGNMENT=8 - TEMPLATE_NAME=elf32 - GENERATE_SHLIB_SCRIPT=yes - GENERATE_PIE_SCRIPT=yes -- -+# PR 17739. Delay checking relocs until after all files have -+# been opened and linker garbage collection has taken place. -+CHECK_RELOCS_AFTER_OPEN_INPUT=yes - - DATA_START_SYMBOLS='PROVIDE (___data = .);' - -diff --git a/ld/emulparams/shlelf_linux.sh b/ld/emulparams/shlelf_linux.sh -index c14aae2..4e2a581 100644 ---- a/ld/emulparams/shlelf_linux.sh -+++ b/ld/emulparams/shlelf_linux.sh -@@ -12,6 +12,9 @@ MACHINE= - TEMPLATE_NAME=elf32 - GENERATE_SHLIB_SCRIPT=yes - GENERATE_PIE_SCRIPT=yes -+# PR 17739. Delay checking relocs until after all files have -+# been opened and linker garbage collection has taken place. -+CHECK_RELOCS_AFTER_OPEN_INPUT=yes - - DATA_START_SYMBOLS='PROVIDE (__data_start = .);'; - -diff --git a/ld/emulparams/shlelf_nto.sh b/ld/emulparams/shlelf_nto.sh -index 16f6508..f8ffc13 100644 ---- a/ld/emulparams/shlelf_nto.sh -+++ b/ld/emulparams/shlelf_nto.sh -@@ -9,3 +9,6 @@ TEMPLATE_NAME=elf32 - GENERATE_SHLIB_SCRIPT=yes - TEXT_START_SYMBOLS='_btext = .;' - ENTRY=_start -+# PR 17739. Delay checking relocs until after all files have -+# been opened and linker garbage collection has taken place. -+CHECK_RELOCS_AFTER_OPEN_INPUT=yes -diff --git a/ld/scripttempl/DWARF.sc b/ld/scripttempl/DWARF.sc -index a8bcb97..cbb2999 100644 ---- a/ld/scripttempl/DWARF.sc -+++ b/ld/scripttempl/DWARF.sc -@@ -42,4 +42,5 @@ cat <: -+ .*: e52de004 push {lr} ; \(str lr, \[sp, #-4\]!\) -+ .*: e59fe004 ldr lr, \[pc, #4\] ; .* -+ .*: e08fe00e add lr, pc, lr -+ .*: e5bef008 ldr pc, \[lr, #8\]! -+ .*: .* -+.* : -+ .*: 4778 bx pc -+ .*: 46c0 nop ; \(mov r8, r8\) -+ .*: e28fc6.* add ip, pc, #.* -+ .*: e28cca.* add ip, ip, #.* ; 0x.* -+ .*: e5bcf.* ldr pc, \[ip, #.*\]!.* -+.* : -+ .*: e28fc6.* add ip, pc, #.* -+ .*: e28cca.* add ip, ip, #.* ; 0x.* -+ .*: e5bcf.* ldr pc, \[ip, #.*\]!.* -+ -+Disassembly of section .text: -+ -+.* <_start>: -+ .*: e1a0c00d mov ip, sp -+ .*: e92dd800 push {fp, ip, lr, pc} -+ .*: eb000008 bl .* <__app_func_veneer> -+ .*: ebfffff6 bl .* -+ .*: ebfffff2 bl .* -+ .*: e89d6800 ldm sp, {fp, sp, lr} -+ .*: e12fff1e bx lr -+ .*: e1a00000 nop ; \(mov r0, r0\) -+ -+.* : -+ .*: b500 push {lr} -+ .*: f7ff efde blx 81e0 -+ .*: bd00 pop {pc} -+ .*: 4770 bx lr -+ .*: 46c0 nop ; \(mov r8, r8\) -+#... -+ -+.* <__app_func_veneer>: -+ .*: e51ff004 ldr pc, \[pc, #-4\] ; 8234 <__app_func_veneer\+0x4> -+ .*: 02100000 .word 0x02100000 -+ -+Disassembly of section .mid_thumb: -+ -+.* : -+#... -+ .*: f400 9000 b.w .* -+ .*: f000 b800 b.w .* <__lib_func2_from_thumb> -+ -+.* <__lib_func2_from_thumb>: -+ .*: 4778 bx pc -+ .*: 46c0 nop ; \(mov r8, r8\) -+ .*: e51ff004 ldr pc, \[pc, #-4\] ; 10081e8 <__lib_func2_from_thumb\+0x8> -+ .*: 000081e0 .word 0x000081e0 -+ .*: 00000000 .word 0x00000000 -+ -+Disassembly of section .far_arm: -+ -+.* : -+ .*: e1a0c00d mov ip, sp -+ .*: e92dd800 push {fp, ip, lr, pc} -+ .*: eb000006 bl .* <__lib_func1_veneer> -+ .*: eb000007 bl .* <__lib_func2_veneer> -+ .*: e89d6800 ldm sp, {fp, sp, lr} -+ .*: e12fff1e bx lr -+ .*: e1a00000 nop ; \(mov r0, r0\) -+ .*: e1a00000 nop ; \(mov r0, r0\) -+ -+.* : -+ .*: e12fff1e bx lr -+#... -+ -+.* <__lib_func1_veneer>: -+ .*: e51ff004 ldr pc, \[pc, #-4\] ; .* <__lib_func1_veneer\+0x4> -+ .*: 000081ec .word 0x000081ec -+.* <__lib_func2_veneer>: -+ .*: e51ff004 ldr pc, \[pc, #-4\] ; .* <__lib_func2_veneer\+0x4> -+ .*: 000081e0 .word 0x000081e0 -+ -+Disassembly of section .far_thumb: -+ -+.* : -+ .*: b500 push {lr} -+ .*: f000 e806 blx .* <__lib_func2_from_thumb> -+ .*: bd00 pop {pc} -+ .*: 4770 bx lr -+ .*: 46c0 nop ; \(mov r8, r8\) -+#... -+ -+.* <__lib_func2_from_thumb>: -+ .*: e51ff004 ldr pc, \[pc, #-4\] ; 2200014 <__lib_func2_from_thumb\+0x4> -+ .*: 000081e0 .word 0x000081e0 -diff --git a/ld/testsuite/ld-arm/farcall-mixed-app2.r b/ld/testsuite/ld-arm/farcall-mixed-app2.r -new file mode 100644 -index 0000000..910a361 ---- /dev/null -+++ b/ld/testsuite/ld-arm/farcall-mixed-app2.r -@@ -0,0 +1,10 @@ -+ -+tmpdir/farcall-mixed-app.*: file format elf32-(little|big)arm -+ -+DYNAMIC RELOCATION RECORDS -+OFFSET TYPE VALUE -+.* R_ARM_COPY data_obj -+.* R_ARM_JUMP_SLOT lib_func2 -+.* R_ARM_JUMP_SLOT lib_func1 -+ -+ -diff --git a/ld/testsuite/ld-arm/farcall-mixed-app2.s b/ld/testsuite/ld-arm/farcall-mixed-app2.s -new file mode 100644 -index 0000000..ee315e9 ---- /dev/null -+++ b/ld/testsuite/ld-arm/farcall-mixed-app2.s -@@ -0,0 +1,76 @@ -+ .text -+ .p2align 4 -+ .globl _start -+_start: -+ mov ip, sp -+ stmdb sp!, {r11, ip, lr, pc} -+ bl app_func -+ bl lib_func1 -+ bl lib_func2 -+ ldmia sp, {r11, sp, lr} -+ bx lr -+ -+ .p2align 4 -+ .globl app_tfunc_close -+ .type app_tfunc_close,%function -+ .thumb_func -+ .code 16 -+app_tfunc_close: -+ push {lr} -+ bl lib_func2 -+ pop {pc} -+ bx lr -+ -+@ We will place the section .mid_thumb at 0xFFFEF8. -+@ Just far enough for XXXX -+ .section .mid_thumb, "xa" -+ -+ .p2align 4 -+ .globl mid_tfunc -+ .type mid_tfunc,%function -+ .thumb_func -+ .code 16 -+mid_tfunc: -+ .syntax unified -+ .space 24 -+ b.w lib_func2 -+ b.w lib_func2 -+ -+@ We will place the section .far_arm at 0x2100000. -+ .section .far_arm, "xa" -+ -+ .arm -+ .p2align 4 -+ .globl app_func -+ .type app_func,%function -+app_func: -+ mov ip, sp -+ stmdb sp!, {r11, ip, lr, pc} -+ bl lib_func1 -+ bl lib_func2 -+ ldmia sp, {r11, sp, lr} -+ bx lr -+ -+ .arm -+ .p2align 4 -+ .globl app_func2 -+ .type app_func2,%function -+app_func2: -+ bx lr -+ -+@ We will place the section .far_thumb at 0x2200000. -+ .section .far_thumb, "xa" -+ -+ .p2align 4 -+ .globl app_tfunc -+ .type app_tfunc,%function -+ .thumb_func -+ .code 16 -+app_tfunc: -+ push {lr} -+ bl lib_func2 -+ pop {pc} -+ bx lr -+ -+ .data -+ .long data_obj -diff --git a/ld/testsuite/ld-arm/farcall-mixed-app2.sym b/ld/testsuite/ld-arm/farcall-mixed-app2.sym -new file mode 100644 -index 0000000..1d3bd1d ---- /dev/null -+++ b/ld/testsuite/ld-arm/farcall-mixed-app2.sym -@@ -0,0 +1,15 @@ -+ -+Symbol table for image: -+ +Num +Buc: +Value +Size +Type +Bind +Vis +Ndx +Name -+ +.. +..: ........ +0 +NOTYPE +GLOBAL +DEFAULT +11 _edata -+ +.. +..: ........ +0 +NOTYPE +GLOBAL +DEFAULT +12 __bss_start__ -+ +.. +..: ........ +0 +NOTYPE +GLOBAL +DEFAULT +12 _end -+ +.. +..: ........ +4 +OBJECT +GLOBAL +DEFAULT +12 data_obj -+ +.. +..: ........ +0 +NOTYPE +GLOBAL +DEFAULT +12 __bss_end__ -+ +.. +..: 0*[^0]*.* +0 +FUNC +GLOBAL +DEFAULT +UND lib_func1 -+ +.. +..: ........ +0 +NOTYPE +GLOBAL +DEFAULT +11 __data_start -+ +.. +..: ........ +0 +NOTYPE +GLOBAL +DEFAULT +12 __end__ -+ +.. +..: ........ +0 +NOTYPE +GLOBAL +DEFAULT +12 __bss_start -+ +.. +..: .......0 +0 +FUNC +GLOBAL +DEFAULT +15 app_func2 -+ +.. +..: 0*[^0]*.* +0 +FUNC +GLOBAL +DEFAULT +UND lib_func2 -+ +.. +..: ........ +0 +NOTYPE +GLOBAL +DEFAULT +12 _bss_end__ -diff --git a/ld/testsuite/ld-avr/avr-prop-7.d b/ld/testsuite/ld-avr/avr-prop-7.d -new file mode 100644 -index 0000000..9f2cea9 ---- /dev/null -+++ b/ld/testsuite/ld-avr/avr-prop-7.d -@@ -0,0 +1,15 @@ -+#name: AVR .avr.prop, AVR_7_PCREL after align -+#as: -mavrxmega2 -mlink-relax -+#ld: -mavrxmega2 --relax -+#source: avr-prop-7.s -+#objdump: -S -+#target: avr-*-* -+ -+#... -+00000000 <__ctors_end>: -+ 0: 04 d0 rcall .+8 ; 0xa -+ 2: 00 00 nop -+ 4: 00 00 nop -+ 6: 86 e0 ldi r24, 0x06 ; 6 -+ 8: f0 f7 brcc .-4 ; 0x6 <__ctors_end\+0x6> -+#... -diff --git a/ld/testsuite/ld-avr/avr-prop-7.s b/ld/testsuite/ld-avr/avr-prop-7.s -new file mode 100644 -index 0000000..38276ba ---- /dev/null -+++ b/ld/testsuite/ld-avr/avr-prop-7.s -@@ -0,0 +1,8 @@ -+ call foo -+ nop -+ .p2align 1 -+ nop -+.L618: -+ ldi r24,lo8(6) -+ brsh .L618 -+foo: nop -diff --git a/ld/testsuite/ld-avr/avr-prop-8.d b/ld/testsuite/ld-avr/avr-prop-8.d -new file mode 100644 -index 0000000..2905f98 ---- /dev/null -+++ b/ld/testsuite/ld-avr/avr-prop-8.d -@@ -0,0 +1,13 @@ -+#name: AVR .avr.prop, AVR_7_PCREL just before align -+#as: -mavrxmega2 -mlink-relax -+#ld: -mavrxmega2 --relax -+#source: avr-prop-8.s -+#objdump: -S -+#target: avr-*-* -+ -+#... -+00000000 <__ctors_end>: -+ 0: ff cf rjmp .-2 ; 0x0 <__ctors_end> -+ 2: fe df rcall .-4 ; 0x0 <__ctors_end> -+ 4: f8 f7 brcc .-2 ; 0x4 <__ctors_end\+0x4> -+#... -diff --git a/ld/testsuite/ld-avr/avr-prop-8.s b/ld/testsuite/ld-avr/avr-prop-8.s -new file mode 100644 -index 0000000..34554f2 ---- /dev/null -+++ b/ld/testsuite/ld-avr/avr-prop-8.s -@@ -0,0 +1,7 @@ -+foo: -+ jmp foo -+ call foo -+.L1: -+ brsh .L1 -+.p2align 1 -+ nop -diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog -index c420bdd..43841f5 100644 ---- a/opcodes/ChangeLog -+++ b/opcodes/ChangeLog -@@ -1,3 +1,26 @@ -+2016-09-16 Peter Bergner -+ -+ Apply from master. -+ 2016-09-14 Peter Bergner -+ -+ * ppc-opc.c (powerpc_opcodes) : New mnemonic. -+ : Delete mnemonics. -+ : Rename mnemonic from ... -+ : ...to this. -+ : Change to a X form instruction. -+ : Change to 1 operand form. -+ : Delete mnemonic. -+ : Rename mnemonic from ... -+ : ...to this. -+ : Delete mnemonics. -+ : Rename mnemonic from ... -+ : ...to this. -+ -+2016-08-03 Tristan Gingold -+ -+ * configure: Regenerate. -+ - 2016-08-03 Tristan Gingold - - * configure: Regenerate. -diff --git a/opcodes/configure b/opcodes/configure -index 5a4da06..f615634 100755 ---- a/opcodes/configure -+++ b/opcodes/configure -@@ -1,6 +1,6 @@ - #! /bin/sh - # Guess values for system-dependent variables and create Makefiles. --# Generated by GNU Autoconf 2.64 for opcodes 2.27. -+# Generated by GNU Autoconf 2.64 for opcodes 2.27.0. - # - # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, - # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software -@@ -556,8 +556,8 @@ MAKEFLAGS= - # Identity of this package. - PACKAGE_NAME='opcodes' - PACKAGE_TARNAME='opcodes' --PACKAGE_VERSION='2.27' --PACKAGE_STRING='opcodes 2.27' -+PACKAGE_VERSION='2.27.0' -+PACKAGE_STRING='opcodes 2.27.0' - PACKAGE_BUGREPORT='' - PACKAGE_URL='' - -@@ -1321,7 +1321,7 @@ if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF --\`configure' configures opcodes 2.27 to adapt to many kinds of systems. -+\`configure' configures opcodes 2.27.0 to adapt to many kinds of systems. - - Usage: $0 [OPTION]... [VAR=VALUE]... - -@@ -1392,7 +1392,7 @@ fi - - if test -n "$ac_init_help"; then - case $ac_init_help in -- short | recursive ) echo "Configuration of opcodes 2.27:";; -+ short | recursive ) echo "Configuration of opcodes 2.27.0:";; - esac - cat <<\_ACEOF - -@@ -1499,7 +1499,7 @@ fi - test -n "$ac_init_help" && exit $ac_status - if $ac_init_version; then - cat <<\_ACEOF --opcodes configure 2.27 -+opcodes configure 2.27.0 - generated by GNU Autoconf 2.64 - - Copyright (C) 2009 Free Software Foundation, Inc. -@@ -1909,7 +1909,7 @@ cat >config.log <<_ACEOF - This file contains any messages produced by compilers while - running configure, to aid debugging if configure makes a mistake. - --It was created by opcodes $as_me 2.27, which was -+It was created by opcodes $as_me 2.27.0, which was - generated by GNU Autoconf 2.64. Invocation command line was - - $ $0 $@ -@@ -3718,7 +3718,7 @@ fi - - # Define the identity of the package. - PACKAGE='opcodes' -- VERSION='2.27' -+ VERSION='2.27.0' - - - cat >>confdefs.h <<_ACEOF -@@ -13260,7 +13260,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - # report actual input values of CONFIG_FILES etc. instead of their - # values after options handling. - ac_log=" --This file was extended by opcodes $as_me 2.27, which was -+This file was extended by opcodes $as_me 2.27.0, which was - generated by GNU Autoconf 2.64. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES -@@ -13324,7 +13324,7 @@ Report bugs to the package provider." - _ACEOF - cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - ac_cs_version="\\ --opcodes config.status 2.27 -+opcodes config.status 2.27.0 - configured by $0, generated by GNU Autoconf 2.64, - with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" - -diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c -index 8106ab7..7003e0c 100644 ---- a/opcodes/ppc-opc.c -+++ b/opcodes/ppc-opc.c -@@ -3161,7 +3161,6 @@ const struct powerpc_opcode powerpc_opcodes[] = { - {"machhwu.", XO (4, 12,0,1), XO_MASK, MULHW, 0, {RT, RA, RB}}, - {"ps_muls1", A (4, 13,0), AFRB_MASK, PPCPS, 0, {FRT, FRA, FRC}}, - {"ps_muls1.", A (4, 13,1), AFRB_MASK, PPCPS, 0, {FRT, FRA, FRC}}, --{"rldixor", VXASH(4,26), VXASH_MASK, POWER9, 0, {RA, RS, SH6, RB}}, - {"ps_madds0", A (4, 14,0), A_MASK, PPCPS, 0, {FRT, FRA, FRC, FRB}}, - {"ps_madds0.", A (4, 14,1), A_MASK, PPCPS, 0, {FRT, FRA, FRC, FRB}}, - {"ps_madds1", A (4, 15,0), A_MASK, PPCPS, 0, {FRT, FRA, FRC, FRB}}, -@@ -3203,8 +3202,6 @@ const struct powerpc_opcode powerpc_opcodes[] = { - {"ps_msub.", A (4, 28,1), A_MASK, PPCPS, 0, {FRT, FRA, FRC, FRB}}, - {"ps_madd", A (4, 29,0), A_MASK, PPCPS, 0, {FRT, FRA, FRC, FRB}}, - {"ps_madd.", A (4, 29,1), A_MASK, PPCPS, 0, {FRT, FRA, FRC, FRB}}, --{"xor3", VXA(4, 54), VXA_MASK, POWER9, 0, {RA, RS, RB, RC}}, --{"nandxor", VXA(4, 55), VXA_MASK, POWER9, 0, {RA, RS, RB, RC}}, - {"vpermr", VXA(4, 59), VXA_MASK, PPCVEC3, 0, {VD, VA, VB, VC}}, - {"ps_nmsub", A (4, 30,0), A_MASK, PPCPS, 0, {FRT, FRA, FRC, FRB}}, - {"vaddeuqm", VXA(4, 60), VXA_MASK, PPCVEC2, 0, {VD, VA, VB, VC}}, -@@ -4943,8 +4940,7 @@ const struct powerpc_opcode powerpc_opcodes[] = { - - {"dcbfep", XRT(31,127,0), XRT_MASK, E500MC|PPCA2, 0, {RA0, RB}}, - --{"setb", VX(31,256), VXVB_MASK|(3<<16), POWER9, 0, {RT, BFA}}, --{"setbool", VX(31,257), VXVB_MASK, POWER9, 0, {RT, BA}}, -+{"setb", X(31,128), XRB_MASK|(3<<16), POWER9, 0, {RT, BFA}}, - - {"wrtee", X(31,131), XRARB_MASK, PPC403|BOOKE|PPCA2|PPC476, 0, {RS}}, - -@@ -4994,8 +4990,6 @@ const struct powerpc_opcode powerpc_opcodes[] = { - - {"prtyw", X(31,154), XRB_MASK, POWER6|PPCA2|PPC476, 0, {RA, RS}}, - --{"brw", X(31,155), XRB_MASK, POWER9, 0, {RA, RS}}, -- - {"stdepx", X(31,157), X_MASK, E500MC|PPCA2, 0, {RS, RA0, RB}}, - - {"stwepx", X(31,159), X_MASK, E500MC|PPCA2, 0, {RS, RA0, RB}}, -@@ -5008,7 +5002,6 @@ const struct powerpc_opcode powerpc_opcodes[] = { - {"sthfcmx", APU(31,167,0), APU_MASK, PPC405, 0, {FCRT, RA, RB}}, - - {"addex", ZRC(31,170,0), Z2_MASK, POWER9, 0, {RT, RA, RB, CY}}, --{"addex.", ZRC(31,170,1), Z2_MASK, POWER9, 0, {RT, RA, RB, CY}}, - - {"msgclrp", XRTRA(31,174,0,0), XRTRA_MASK, POWER8, 0, {RB}}, - {"dcbtlse", X(31,174), X_MASK, PPCCHLK, E500MC, {CT, RA0, RB}}, -@@ -5033,8 +5026,6 @@ const struct powerpc_opcode powerpc_opcodes[] = { - - {"prtyd", X(31,186), XRB_MASK, POWER6|PPCA2, 0, {RA, RS}}, - --{"brd", X(31,187), XRB_MASK, POWER9, 0, {RA, RS}}, -- - {"cmprb", X(31,192), XCMP_MASK, POWER9, 0, {BF, L, RA, RB}}, - - {"icblq.", XRC(31,198,1), X_MASK, E6500, 0, {CT, RA0, RB}}, -@@ -5073,8 +5064,6 @@ const struct powerpc_opcode powerpc_opcodes[] = { - {"sleq", XRC(31,217,0), X_MASK, M601, 0, {RA, RS, RB}}, - {"sleq.", XRC(31,217,1), X_MASK, M601, 0, {RA, RS, RB}}, - --{"brh", X(31,219), XRB_MASK, POWER9, 0, {RA, RS}}, -- - {"stbepx", X(31,223), X_MASK, E500MC|PPCA2, 0, {RS, RA0, RB}}, - - {"cmpeqb", X(31,224), XCMPL_MASK, POWER9, 0, {BF, RA, RB}}, -@@ -5541,8 +5530,6 @@ const struct powerpc_opcode powerpc_opcodes[] = { - - {"mtvsrdd", X(31,435), XX1_MASK, PPCVSX3, 0, {XT6, RA0, RB}}, - --{"lwzmx", X(31,437), X_MASK, POWER9, 0, {RT, RA0, RB}}, -- - {"ecowx", X(31,438), X_MASK, PPC, E500|TITAN, {RT, RA0, RB}}, - - {"sthux", X(31,439), X_MASK, COM, 0, {RS, RAS, RB}}, -@@ -5906,8 +5893,8 @@ const struct powerpc_opcode powerpc_opcodes[] = { - {"hwsync", XSYNC(31,598,0), 0xffffffff, POWER4, BOOKE|PPC476, {0}}, - {"lwsync", XSYNC(31,598,1), 0xffffffff, PPC, E500, {0}}, - {"ptesync", XSYNC(31,598,2), 0xffffffff, PPC64, 0, {0}}, --{"sync", X(31,598), XSYNCLE_MASK, POWER9|E6500, 0, {LS, ESYNC}}, --{"sync", X(31,598), XSYNC_MASK, PPCCOM, BOOKE|PPC476|POWER9, {LS}}, -+{"sync", X(31,598), XSYNCLE_MASK, E6500, 0, {LS, ESYNC}}, -+{"sync", X(31,598), XSYNC_MASK, PPCCOM, BOOKE|PPC476, {LS}}, - {"msync", X(31,598), 0xffffffff, BOOKE|PPCA2|PPC476, 0, {0}}, - {"sync", X(31,598), 0xffffffff, BOOKE|PPC476, E6500, {0}}, - {"lwsync", X(31,598), 0xffffffff, E500, 0, {0}}, -@@ -6072,8 +6059,7 @@ const struct powerpc_opcode powerpc_opcodes[] = { - - {"lvsm", X(31,773), X_MASK, PPCVEC2, 0, {VD, RA0, RB}}, - --{"copy_first", XOPL(31,774,1), XRT_MASK, POWER9, 0, {RA0, RB}}, --{"copy", X(31,774), XLRT_MASK, POWER9, 0, {RA0, RB, L}}, -+{"copy", XOPL(31,774,1), XRT_MASK, POWER9, 0, {RA0, RB}}, - - {"stvepxl", X(31,775), X_MASK, PPCVEC2, 0, {VS, RA0, RB}}, - {"lvlxl", X(31,775), X_MASK, CELL, 0, {VD, RA0, RB}}, -@@ -6143,7 +6129,7 @@ const struct powerpc_opcode powerpc_opcodes[] = { - - {"lvtlxl", X(31,837), X_MASK, PPCVEC2, 0, {VD, RA0, RB}}, - --{"cp_abort", X(31,838), XRTRARB_MASK,POWER9, 0, {0}}, -+{"cpabort", X(31,838), XRTRARB_MASK,POWER9, 0, {0}}, - - {"divo", XO(31,331,1,0), XO_MASK, M601, 0, {RT, RA, RB}}, - {"divo.", XO(31,331,1,1), XO_MASK, M601, 0, {RT, RA, RB}}, -@@ -6155,6 +6141,7 @@ const struct powerpc_opcode powerpc_opcodes[] = { - - {"tlbsrx.", XRC(31,850,1), XRT_MASK, PPCA2, 0, {RA0, RB}}, - -+{"slbiag", X(31,850), XRARB_MASK, POWER9, 0, {RS}}, - {"slbmfev", X(31,851), XRLA_MASK, POWER9, 0, {RT, RB, A_L}}, - {"slbmfev", X(31,851), XRA_MASK, PPC64, POWER9, {RT, RB}}, - -@@ -6190,9 +6177,7 @@ const struct powerpc_opcode powerpc_opcodes[] = { - {"extswsli", XS(31,445,0), XS_MASK, POWER9, 0, {RA, RS, SH6}}, - {"extswsli.", XS(31,445,1), XS_MASK, POWER9, 0, {RA, RS, SH6}}, - --{"paste", XRC(31,902,0), XLRT_MASK, POWER9, 0, {RA0, RB, L0}}, --{"paste_last", XRCL(31,902,1,1),XRT_MASK, POWER9, 0, {RA0, RB}}, --{"paste.", XRC(31,902,1), XLRT_MASK, POWER9, 0, {RA0, RB, L1}}, -+{"paste.", XRCL(31,902,1,1),XRT_MASK, POWER9, 0, {RA0, RB}}, - - {"stvlxl", X(31,903), X_MASK, CELL, 0, {VS, RA0, RB}}, - {"stdfcmux", APU(31,903,0), APU_MASK, PPC405, 0, {FCRT, RA, RB}}, diff --git a/binutils-2.27-fix-section-order.diff b/binutils-2.27-fix-section-order.diff deleted file mode 100644 index 2cc0084..0000000 --- a/binutils-2.27-fix-section-order.diff +++ /dev/null @@ -1,2205 +0,0 @@ -commit dd90581873482f67922a4ace92dafdfdfed09f3c -Author: Nick Clifton -Date: Fri Aug 19 09:16:30 2016 +0100 - - Place .shstrtab section after .symtab and .strtab, thus restoring monotonically increasing section offsets. - - bfd - * elf.c (assign_section_numbers): Assign number for the .shstrtab - section after the symbol table and string table sections. - - binutils - * testsuite/binutils-all/readelf.s: Adjust expected ordering of - sections. - * testsuite/binutils-all/readelf.s-64: Likewise. - - gas - * testsuite/gas/i386/ilp32/x86-64-unwind.d: Adjust expected ordering - of sections. - * testsuite/gas/i386/x86-64-unwind.d: Likewise. - * testsuite/gas/ia64/alias-ilp32.d: Likewise. - * testsuite/gas/ia64/alias.d: Likewise. - * testsuite/gas/ia64/group-1.d: Likewise. - * testsuite/gas/ia64/group-2.d: Likewise. - * testsuite/gas/ia64/secname-ilp32.d: Likewise. - * testsuite/gas/ia64/secname.d: Likewise. - * testsuite/gas/ia64/unwind-ilp32.d: Likewise. - * testsuite/gas/ia64/unwind.d: Likewise. - * testsuite/gas/ia64/xdata-ilp32.d: Likewise. - * testsuite/gas/ia64/xdata.d: Likewise. - * testsuite/gas/mmix/bspec-1.d: Likewise. - * testsuite/gas/mmix/bspec-2.d: Likewise. - * testsuite/gas/mmix/byte-1.d: Likewise. - * testsuite/gas/mmix/loc-1.d: Likewise. - * testsuite/gas/mmix/loc-2.d: Likewise. - * testsuite/gas/mmix/loc-3.d: Likewise. - * testsuite/gas/mmix/loc-4.d: Likewise. - * testsuite/gas/mmix/loc-5.d: Likewise. - * testsuite/gas/tic6x/scomm-directive-4.d: Likewise. - - ld - * testsuite/ld-alpha/tlsbin.rd: Adjust expected ordering of sections. - * testsuite/ld-alpha/tlsbinr.rd: Likewise. - * testsuite/ld-alpha/tlspic.rd: Likewise. - * testsuite/ld-cris/libdso-2.d: Likewise. - * testsuite/ld-i386/nogot1.d: Likewise. - * testsuite/ld-i386/pr12718.d: Likewise. - * testsuite/ld-i386/pr12921.d: Likewise. - * testsuite/ld-i386/tlsbin-nacl.rd: Likewise. - * testsuite/ld-i386/tlsbin.rd: Likewise. - * testsuite/ld-i386/tlsbin2-nacl.rd: Likewise. - * testsuite/ld-i386/tlsbin2.rd: Likewise. - * testsuite/ld-i386/tlsbindesc-nacl.rd: Likewise. - * testsuite/ld-i386/tlsbindesc.rd: Likewise. - * testsuite/ld-i386/tlsdesc-nacl.rd: Likewise. - * testsuite/ld-i386/tlsdesc.rd: Likewise. - * testsuite/ld-i386/tlsgdesc-nacl.rd: Likewise. - * testsuite/ld-i386/tlsgdesc.rd: Likewise. - * testsuite/ld-i386/tlsnopic-nacl.rd: Likewise. - * testsuite/ld-i386/tlsnopic.rd: Likewise. - * testsuite/ld-i386/tlspic-nacl.rd: Likewise. - * testsuite/ld-i386/tlspic.rd: Likewise. - * testsuite/ld-i386/tlspic2-nacl.rd: Likewise. - * testsuite/ld-i386/tlspic2.rd: Likewise. - * testsuite/ld-ia64/tlsbin.rd: Likewise. - * testsuite/ld-ia64/tlspic.rd: Likewise. - * testsuite/ld-mips-elf/attr-gnu-4-10.d: Likewise. - * testsuite/ld-mips-elf/attr-gnu-4-50.d: Likewise. - * testsuite/ld-mips-elf/attr-gnu-4-60.d: Likewise. - * testsuite/ld-mips-elf/attr-gnu-4-70.d: Likewise. - * testsuite/ld-mmix/bspec1.d: Likewise. - * testsuite/ld-mmix/bspec2.d: Likewise. - * testsuite/ld-mmix/local1.d: Likewise. - * testsuite/ld-mmix/local3.d: Likewise. - * testsuite/ld-mmix/local5.d: Likewise. - * testsuite/ld-mmix/local7.d: Likewise. - * testsuite/ld-mmix/undef-3.d: Likewise. - * testsuite/ld-powerpc/tlsexe.r: Likewise. - * testsuite/ld-powerpc/tlsexe32.r: Likewise. - * testsuite/ld-powerpc/tlsexetoc.r: Likewise. - * testsuite/ld-powerpc/tlsso.r: Likewise. - * testsuite/ld-powerpc/tlsso32.r: Likewise. - * testsuite/ld-powerpc/tlstocso.r: Likewise. - * testsuite/ld-s390/tlsbin.rd: Likewise. - * testsuite/ld-s390/tlsbin_64.rd: Likewise. - * testsuite/ld-s390/tlspic.rd: Likewise. - * testsuite/ld-s390/tlspic_64.rd: Likewise. - * testsuite/ld-sh/sh64/crange1.rd: Likewise. - * testsuite/ld-sh/sh64/crange2.rd: Likewise. - * testsuite/ld-sh/sh64/crange3-cmpct.rd: Likewise. - * testsuite/ld-sh/sh64/crange3-media.rd: Likewise. - * testsuite/ld-sh/sh64/crange3.rd: Likewise. - * testsuite/ld-sh/sh64/crangerel1.rd: Likewise. - * testsuite/ld-sh/sh64/crangerel2.rd: Likewise. - * testsuite/ld-sh/tlsbin-2.d: Likewise. - * testsuite/ld-sh/tlspic-2.d: Likewise. - * testsuite/ld-sparc/gotop32.rd: Likewise. - * testsuite/ld-sparc/gotop64.rd: Likewise. - * testsuite/ld-sparc/tlssunbin32.rd: Likewise. - * testsuite/ld-sparc/tlssunbin64.rd: Likewise. - * testsuite/ld-sparc/tlssunnopic32.rd: Likewise. - * testsuite/ld-sparc/tlssunnopic64.rd: Likewise. - * testsuite/ld-sparc/tlssunpic32.rd: Likewise. - * testsuite/ld-sparc/tlssunpic64.rd: Likewise. - * testsuite/ld-tic6x/common.d: Likewise. - * testsuite/ld-tic6x/shlib-1.rd: Likewise. - * testsuite/ld-tic6x/shlib-1b.rd: Likewise. - * testsuite/ld-tic6x/shlib-1r.rd: Likewise. - * testsuite/ld-tic6x/shlib-1rb.rd: Likewise. - * testsuite/ld-tic6x/shlib-app-1.rd: Likewise. - * testsuite/ld-tic6x/shlib-app-1b.rd: Likewise. - * testsuite/ld-tic6x/shlib-app-1r.rd: Likewise. - * testsuite/ld-tic6x/shlib-app-1rb.rd: Likewise. - * testsuite/ld-tic6x/shlib-noindex.rd: Likewise. - * testsuite/ld-tic6x/static-app-1.rd: Likewise. - * testsuite/ld-tic6x/static-app-1b.rd: Likewise. - * testsuite/ld-tic6x/static-app-1r.rd: Likewise. - * testsuite/ld-tic6x/static-app-1rb.rd: Likewise. - * testsuite/ld-x86-64/ilp32-4-nacl.d: Likewise. - * testsuite/ld-x86-64/ilp32-4.d: Likewise. - * testsuite/ld-x86-64/nogot1.d: Likewise. - * testsuite/ld-x86-64/pr12718.d: Likewise. - * testsuite/ld-x86-64/pr12921.d: Likewise. - * testsuite/ld-x86-64/split-by-file-nacl.rd: Likewise. - * testsuite/ld-x86-64/split-by-file.rd: Likewise. - * testsuite/ld-x86-64/tlsbin-nacl.rd: Likewise. - * testsuite/ld-x86-64/tlsbin.rd: Likewise. - * testsuite/ld-x86-64/tlsbin2-nacl.rd: Likewise. - * testsuite/ld-x86-64/tlsbin2.rd: Likewise. - * testsuite/ld-x86-64/tlsbindesc-nacl.rd: Likewise. - * testsuite/ld-x86-64/tlsbindesc.rd: Likewise. - * testsuite/ld-x86-64/tlsdesc-nacl.rd: Likewise. - * testsuite/ld-x86-64/tlsdesc.rd: Likewise. - * testsuite/ld-x86-64/tlsgdesc-nacl.rd: Likewise. - * testsuite/ld-x86-64/tlsgdesc.rd: Likewise. - * testsuite/ld-x86-64/tlspic-nacl.rd: Likewise. - * testsuite/ld-x86-64/tlspic.rd: Likewise. - * testsuite/ld-x86-64/tlspic2-nacl.rd: Likewise. - * testsuite/ld-x86-64/tlspic2.rd: Likewise. - * testsuite/ld-xtensa/tlsbin.rd: Likewise. - * testsuite/ld-xtensa/tlspic.rd: Likewise. - -diff --git a/bfd/elf.c b/bfd/elf.c -index 274cd53..c3630d2 100644 ---- a/bfd/elf.c -+++ b/bfd/elf.c -@@ -3093,7 +3093,7 @@ elf_fake_sections (bfd *abfd, asection *asect, void *fsarg) - compressed. */ - asect->flags |= SEC_ELF_COMPRESS; - -- /* If this section will be compressed, delay adding setion -+ /* If this section will be compressed, delay adding section - name to section name section after it is compressed in - _bfd_elf_assign_file_positions_for_non_load. */ - delay_st_name_p = TRUE; -@@ -3595,10 +3595,6 @@ assign_section_numbers (bfd *abfd, struct bfd_link_info *link_info) - d->rela.idx = 0; - } - -- elf_shstrtab_sec (abfd) = section_number++; -- _bfd_elf_strtab_addref (elf_shstrtab (abfd), t->shstrtab_hdr.sh_name); -- elf_elfheader (abfd)->e_shstrndx = elf_shstrtab_sec (abfd); -- - need_symtab = (bfd_get_symcount (abfd) > 0 - || (link_info == NULL - && ((abfd->flags & (EXEC_P | DYNAMIC | HAS_RELOC)) -@@ -3626,6 +3622,10 @@ assign_section_numbers (bfd *abfd, struct bfd_link_info *link_info) - _bfd_elf_strtab_addref (elf_shstrtab (abfd), t->strtab_hdr.sh_name); - } - -+ elf_shstrtab_sec (abfd) = section_number++; -+ _bfd_elf_strtab_addref (elf_shstrtab (abfd), t->shstrtab_hdr.sh_name); -+ elf_elfheader (abfd)->e_shstrndx = elf_shstrtab_sec (abfd); -+ - if (section_number >= SHN_LORESERVE) - { - _bfd_error_handler (_("%B: too many sections: %u"), -@@ -6028,7 +6028,7 @@ _bfd_elf_assign_file_positions_for_non_load (bfd *abfd) - return FALSE; - name = new_name; - } -- /* Add setion name to section name section. */ -+ /* Add section name to section name section. */ - if (shdrp->sh_name != (unsigned int) -1) - abort (); - shdrp->sh_name -@@ -6036,7 +6036,7 @@ _bfd_elf_assign_file_positions_for_non_load (bfd *abfd) - name, FALSE); - d = elf_section_data (sec); - -- /* Add reloc setion name to section name section. */ -+ /* Add reloc section name to section name section. */ - if (d->rel.hdr - && !_bfd_elf_set_reloc_sh_name (abfd, - d->rel.hdr, -diff --git a/gas/testsuite/gas/i386/ilp32/x86-64-unwind.d b/gas/testsuite/gas/i386/ilp32/x86-64-unwind.d -index 5cea05e..5dc74d6 100644 ---- a/gas/testsuite/gas/i386/ilp32/x86-64-unwind.d -+++ b/gas/testsuite/gas/i386/ilp32/x86-64-unwind.d -@@ -11,8 +11,8 @@ Section Headers: - \[ 2\] .data PROGBITS 00000000 000034 000000 00 WA 0 0 1 - \[ 3\] .bss NOBITS 00000000 000034 000000 00 WA 0 0 1 - \[ 4\] .eh_frame X86_64_UNWIND 00000000 000034 000008 00 A 0 0 1 -- \[ 5\] .shstrtab STRTAB 00000000 [0-9a-f]+ 000036 00 . 0 0 1 -- \[ 6\] .symtab SYMTAB 00000000 [0-9a-f]+ 000050 10 7 5 4 -- \[ 7\] .strtab STRTAB 00000000 [0-9a-f]+ 000001 00 . 0 0 1 -+ \[ 5\] .symtab SYMTAB 00000000 [0-9a-f]+ 000050 10 6 5 4 -+ \[ 6\] .strtab STRTAB 00000000 [0-9a-f]+ 000001 00 . 0 0 1 -+ \[ 7\] .shstrtab STRTAB 00000000 [0-9a-f]+ 000036 00 . 0 0 1 - Key to Flags: - #pass -diff --git a/gas/testsuite/gas/i386/x86-64-unwind.d b/gas/testsuite/gas/i386/x86-64-unwind.d -index 7a4c64c..89f1a65 100644 ---- a/gas/testsuite/gas/i386/x86-64-unwind.d -+++ b/gas/testsuite/gas/i386/x86-64-unwind.d -@@ -16,11 +16,11 @@ Section Headers: - 0000000000000000 0000000000000000 WA 0 0 1 - \[ 4\] \.eh_frame X86_64_UNWIND 0000000000000000 00000040 - 0000000000000008 0000000000000000 A 0 0 1 -- \[ 5\] \.shstrtab STRTAB 0000000000000000 [0-9a-f]+ -- 0000000000000036 0000000000000000 . 0 0 1 -- \[ 6\] \.symtab SYMTAB 0000000000000000 [0-9a-f]+ -- 0000000000000078 0000000000000018 7 5 8 -- \[ 7\] \.strtab STRTAB 0000000000000000 [0-9a-f]+ -+ \[ 5\] \.symtab SYMTAB 0000000000000000 [0-9a-f]+ -+ 0000000000000078 0000000000000018 6 5 8 -+ \[ 6\] \.strtab STRTAB 0000000000000000 [0-9a-f]+ - 0000000000000001 0000000000000000 . 0 0 1 -+ \[ 7\] \.shstrtab STRTAB 0000000000000000 [0-9a-f]+ -+ 0000000000000036 0000000000000000 . 0 0 1 - Key to Flags: - #... -diff --git a/gas/testsuite/gas/ia64/alias-ilp32.d b/gas/testsuite/gas/ia64/alias-ilp32.d -index d882b3c..df05d36 100644 ---- a/gas/testsuite/gas/ia64/alias-ilp32.d -+++ b/gas/testsuite/gas/ia64/alias-ilp32.d -@@ -12,9 +12,9 @@ Section Headers: - +\[ 2\] .data +PROGBITS +00000000 000040 000000 00 +WA +0 +0 +1 - +\[ 3\] .bss +NOBITS +00000000 000040 000000 00 +WA +0 +0 +1 - +\[ 4\] 1234 +PROGBITS +00000000 000040 000005 00 +WA +0 +0 +1 -- +\[ 5\] .shstrtab +STRTAB +00000000 [0-9a-f]+ 000031 00 +0 +0 +1 -- +\[ 6\] .symtab +SYMTAB +00000000 [0-9a-f]+ 000060 10 +7 +6 +4 -- +\[ 7\] .strtab +STRTAB +00000000 [0-9a-f]+ 000006 00 +0 +0 +1 -+ +\[ 5\] .symtab +SYMTAB +00000000 [0-9a-f]+ 000060 10 +6 +6 +4 -+ +\[ 6\] .strtab +STRTAB +00000000 [0-9a-f]+ 000006 00 +0 +0 +1 -+ +\[ 7\] .shstrtab +STRTAB +00000000 [0-9a-f]+ 000031 00 +0 +0 +1 - Key to Flags: - #... - -diff --git a/gas/testsuite/gas/ia64/alias.d b/gas/testsuite/gas/ia64/alias.d -index 398bff4..23b9330 100644 ---- a/gas/testsuite/gas/ia64/alias.d -+++ b/gas/testsuite/gas/ia64/alias.d -@@ -16,12 +16,12 @@ Section Headers: - +0000000000000000 +0000000000000000 +WA +0 +0 +1 - +\[ 4\] 1234 +PROGBITS +0000000000000000 +00000040 - +0000000000000005 +0000000000000000 +WA +0 +0 +1 -- +\[ 5\] \.shstrtab +STRTAB +0000000000000000 +[0-9a-f]+ -- +0000000000000031 +0000000000000000 +0 +0 +1 -- +\[ 6\] \.symtab +SYMTAB +0000000000000000 .* -- +0000000000000090 +0000000000000018 +7 +6 +8 -- +\[ 7\] \.strtab +STRTAB +0000000000000000 .* -+ +\[ 5\] \.symtab +SYMTAB +0000000000000000 .* -+ +0000000000000090 +0000000000000018 +6 +6 +8 -+ +\[ 6\] \.strtab +STRTAB +0000000000000000 .* - +0000000000000006 +0000000000000000 +0 +0 +1 -+ +\[ 7\] \.shstrtab +STRTAB +0000000000000000 +[0-9a-f]+ -+ +0000000000000031 +0000000000000000 +0 +0 +1 - Key to Flags: - #... - -diff --git a/gas/testsuite/gas/ia64/group-1.d b/gas/testsuite/gas/ia64/group-1.d -index b4eab14..b90bd88 100644 ---- a/gas/testsuite/gas/ia64/group-1.d -+++ b/gas/testsuite/gas/ia64/group-1.d -@@ -18,12 +18,12 @@ Section Headers: - 0000000000000000 0000000000000000 WA 0 0 1 - \[ 5\] \.text PROGBITS 0000000000000000 00000050 - 0000000000000010 0000000000000000 AXG 0 0 16 -- \[ 6\] \.shstrtab STRTAB 0000000000000000 [0-9a-f]+ -- 0000000000000033 0000000000000000 0 0 1 -- \[ 7\] \.symtab SYMTAB 0000000000000000 .* -- 00000000000000c0 0000000000000018 8 8 8 -- \[ 8\] \.strtab STRTAB 0000000000000000 .* -+ \[ 6\] \.symtab SYMTAB 0000000000000000 .* -+ 00000000000000c0 0000000000000018 7 8 8 -+ \[ 7\] \.strtab STRTAB 0000000000000000 .* - 000000000000000[7c] 0000000000000000 0 0 1 -+ \[ 8\] \.shstrtab STRTAB 0000000000000000 [0-9a-f]+ -+ 0000000000000033 0000000000000000 0 0 1 - Key to Flags: - #... - -diff --git a/gas/testsuite/gas/ia64/group-2.d b/gas/testsuite/gas/ia64/group-2.d -index 7370367..cc8413f 100644 ---- a/gas/testsuite/gas/ia64/group-2.d -+++ b/gas/testsuite/gas/ia64/group-2.d -@@ -25,12 +25,12 @@ Section Headers: - 0000000000000018 0000000000000000 ALG 5 5 8 - \[ 8\] \.rela\.gnu\.linkonc RELA 0000000000000000 .* - 0000000000000048 0000000000000018 I 10 7 8 -- \[ 9\] \.shstrtab STRTAB 0000000000000000 [0-9a-f]+ -- 0000000000000081 0000000000000000 0 0 1 -- \[10\] \.symtab SYMTAB 0000000000000000 .* -- 00000000000000d8 0000000000000018 11 9 8 -- \[11\] \.strtab STRTAB 0000000000000000 .* -+ \[ 9\] \.symtab SYMTAB 0000000000000000 .* -+ 00000000000000d8 0000000000000018 10 9 8 -+ \[10\] \.strtab STRTAB 0000000000000000 .* - 0000000000000005 0000000000000000 0 0 1 -+ \[11\] \.shstrtab STRTAB 0000000000000000 [0-9a-f]+ -+ 0000000000000081 0000000000000000 0 0 1 - Key to Flags: - #... - -diff --git a/gas/testsuite/gas/ia64/secname-ilp32.d b/gas/testsuite/gas/ia64/secname-ilp32.d -index 4146307..0b8a771 100644 ---- a/gas/testsuite/gas/ia64/secname-ilp32.d -+++ b/gas/testsuite/gas/ia64/secname-ilp32.d -@@ -12,8 +12,8 @@ Section Headers: - \[ 2\] .data PROGBITS 00000000 000040 000000 00 WA 0 0 1 - \[ 3\] .bss NOBITS 00000000 000040 000000 00 WA 0 0 1 - \[ 4\] .foo PROGBITS 00000000 000040 000008 00 WA 0 0 8 -- \[ 5\] .shstrtab STRTAB 00000000 [0-9a-f]+ 000031 00 0 0 1 -- \[ 6\] .symtab SYMTAB 00000000 [0-9a-f]+ 000050 10 7 5 4 -- \[ 7\] .strtab STRTAB 00000000 [0-9a-f]+ 000001 00 0 0 1 -+ \[ 5\] .symtab SYMTAB 00000000 [0-9a-f]+ 000050 10 6 5 4 -+ \[ 6\] .strtab STRTAB 00000000 [0-9a-f]+ 000001 00 0 0 1 -+ \[ 7\] .shstrtab STRTAB 00000000 [0-9a-f]+ 000031 00 0 0 1 - Key to Flags: - #... -diff --git a/gas/testsuite/gas/ia64/secname.d b/gas/testsuite/gas/ia64/secname.d -index 79f1e33..9d02e1a 100644 ---- a/gas/testsuite/gas/ia64/secname.d -+++ b/gas/testsuite/gas/ia64/secname.d -@@ -16,11 +16,11 @@ Section Headers: - 0000000000000000 0000000000000000 WA 0 0 1 - \[ 4\] \.foo PROGBITS 0000000000000000 00000040 - 0000000000000008 0000000000000000 WA 0 0 8 -- \[ 5\] \.shstrtab STRTAB 0000000000000000 [0-9a-f]+ -- 0000000000000031 0000000000000000 0 0 1 -- \[ 6\] \.symtab SYMTAB 0000000000000000 .* -- 0000000000000078 0000000000000018 7 5 8 -- \[ 7\] \.strtab STRTAB 0000000000000000 .* -+ \[ 5\] \.symtab SYMTAB 0000000000000000 .* -+ 0000000000000078 0000000000000018 6 5 8 -+ \[ 6\] \.strtab STRTAB 0000000000000000 .* - 0000000000000001 0000000000000000 0 0 1 -+ \[ 7\] \.shstrtab STRTAB 0000000000000000 [0-9a-f]+ -+ 0000000000000031 0000000000000000 0 0 1 - Key to Flags: - #... -diff --git a/gas/testsuite/gas/ia64/unwind-ilp32.d b/gas/testsuite/gas/ia64/unwind-ilp32.d -index cd25b0d..e96f89b 100644 ---- a/gas/testsuite/gas/ia64/unwind-ilp32.d -+++ b/gas/testsuite/gas/ia64/unwind-ilp32.d -@@ -13,8 +13,8 @@ Section Headers: - \[ 3\] .bss NOBITS 00000000 000040 000000 00 WA 0 0 1 - \[ 4\] .IA_64.unwind_inf PROGBITS 00000000 000040 000008 00 A 0 0 8 - \[ 5\] .IA_64.unwind IA_64_UNWIND 00000000 000048 000008 00 AL 1 1 8 -- \[ 6\] .shstrtab STRTAB 00000000 [0-9a-f]+ 00004d 00 0 0 1 -- \[ 7\] .symtab SYMTAB 00000000 [0-9a-f]+ 000060 10 8 6 4 -- \[ 8\] .strtab STRTAB 00000000 [0-9a-f]+ 000001 00 0 0 1 -+ \[ 6\] .symtab SYMTAB 00000000 [0-9a-f]+ 000060 10 7 6 4 -+ \[ 7\] .strtab STRTAB 00000000 [0-9a-f]+ 000001 00 0 0 1 -+ \[ 8\] .shstrtab STRTAB 00000000 [0-9a-f]+ 00004d 00 0 0 1 - Key to Flags: - #... -diff --git a/gas/testsuite/gas/ia64/unwind.d b/gas/testsuite/gas/ia64/unwind.d -index ce71a7a..bdb7af8 100644 ---- a/gas/testsuite/gas/ia64/unwind.d -+++ b/gas/testsuite/gas/ia64/unwind.d -@@ -18,11 +18,11 @@ Section Headers: - 0000000000000008 0000000000000000 A 0 0 8 - \[ 5\] \.IA_64\.unwind IA_64_UNWIND 0000000000000000 00000048 - 0000000000000008 0000000000000000 AL 1 1 8 -- \[ 6\] \.shstrtab STRTAB 0000000000000000 [0-9a-f]+ -- 000000000000004d 0000000000000000 0 0 1 -- \[ 7\] \.symtab SYMTAB 0000000000000000 .* -- 0000000000000090 0000000000000018 8 6 8 -- \[ 8\] \.strtab STRTAB 0000000000000000 .* -+ \[ 6\] \.symtab SYMTAB 0000000000000000 .* -+ 0000000000000090 0000000000000018 7 6 8 -+ \[ 7\] \.strtab STRTAB 0000000000000000 .* - 0000000000000001 0000000000000000 0 0 1 -+ \[ 8\] \.shstrtab STRTAB 0000000000000000 [0-9a-f]+ -+ 000000000000004d 0000000000000000 0 0 1 - Key to Flags: - #... -diff --git a/gas/testsuite/gas/ia64/xdata-ilp32.d b/gas/testsuite/gas/ia64/xdata-ilp32.d -index 8c0bb30..e5dd507 100644 ---- a/gas/testsuite/gas/ia64/xdata-ilp32.d -+++ b/gas/testsuite/gas/ia64/xdata-ilp32.d -@@ -23,7 +23,7 @@ Section Headers: - \[13\] \.xreal\[4\] PROGBITS 00000000 [[:xdigit:]]+ 000020 00 A 0 0 16 - \[14\] \.xstr<1> PROGBITS 00000000 [[:xdigit:]]+ 000003 00 A 0 0 1 - \[15\] \.xstr\{2\} PROGBITS 00000000 [[:xdigit:]]+ 000004 00 A 0 0 1 -- \[16\] .shstrtab STRTAB 00000000 [[:xdigit:]]+ [[:xdigit:]]+ 00 0 0 1 -- \[17\] .symtab SYMTAB 00000000 [[:xdigit:]]+ [[:xdigit:]]+ 10 18 15 4 -- \[18\] .strtab STRTAB 00000000 [[:xdigit:]]+ [[:xdigit:]]+ 00 0 0 1 -+ \[16\] .symtab SYMTAB 00000000 [[:xdigit:]]+ [[:xdigit:]]+ 10 17 15 4 -+ \[17\] .strtab STRTAB 00000000 [[:xdigit:]]+ [[:xdigit:]]+ 00 0 0 1 -+ \[18\] .shstrtab STRTAB 00000000 [[:xdigit:]]+ [[:xdigit:]]+ 00 0 0 1 - #pass -diff --git a/gas/testsuite/gas/ia64/xdata.d b/gas/testsuite/gas/ia64/xdata.d -index dc23b78..eb12819 100644 ---- a/gas/testsuite/gas/ia64/xdata.d -+++ b/gas/testsuite/gas/ia64/xdata.d -@@ -38,10 +38,10 @@ Section Headers: - 0000000000000003 0000000000000000 A 0 0 1 - \[15\] \.xstr\{2\} PROGBITS 0000000000000000 [[:xdigit:]]+ - 0000000000000004 0000000000000000 A 0 0 1 -- \[16\] \.shstrtab STRTAB 0000000000000000 [[:xdigit:]]+ -+ \[16\] \.symtab SYMTAB 0000000000000000 [[:xdigit:]]+ -+ [[:xdigit:]]+ 0000000000000018 17 15 8 -+ \[17\] \.strtab STRTAB 0000000000000000 [[:xdigit:]]+ - [[:xdigit:]]+ 0000000000000000 0 0 1 -- \[17\] \.symtab SYMTAB 0000000000000000 [[:xdigit:]]+ -- [[:xdigit:]]+ 0000000000000018 18 15 8 -- \[18\] \.strtab STRTAB 0000000000000000 [[:xdigit:]]+ -+ \[18\] \.shstrtab STRTAB 0000000000000000 [[:xdigit:]]+ - [[:xdigit:]]+ 0000000000000000 0 0 1 - #pass -diff --git a/gas/testsuite/gas/mmix/bspec-1.d b/gas/testsuite/gas/mmix/bspec-1.d -index a18d242..4bbda8d 100644 ---- a/gas/testsuite/gas/mmix/bspec-1.d -+++ b/gas/testsuite/gas/mmix/bspec-1.d -@@ -4,7 +4,7 @@ There are 9 section headers, starting at offset .*: - +\[ 4\] \.MMIX\.spec_data\.2 +PROGBITS +0+ +0+44 - +0+4 +0+ +0 +0 +4 - +\[ 5\] \.rela\.MMIX\.spec_d +RELA +0+ +.* -- +0+18 +0+18 +I +7 +4 +8 -+ +0+18 +0+18 +I +6 +4 +8 - #... - Relocation section '\.rela\.MMIX\.spec_data\.2' at offset 0x[0-9a-f]+ contains 1 entries: - .* -diff --git a/gas/testsuite/gas/mmix/bspec-2.d b/gas/testsuite/gas/mmix/bspec-2.d -index a9ce03d..ab3afd3 100644 ---- a/gas/testsuite/gas/mmix/bspec-2.d -+++ b/gas/testsuite/gas/mmix/bspec-2.d -@@ -4,11 +4,11 @@ There are 11 section headers, starting at offset .*: - \[ 4\] \.MMIX\.spec_data\.2 PROGBITS 0+ 0+48 - 0+10 0+ 0 0 8 - \[ 5\] \.rela\.MMIX\.spec_d RELA 0+ .* -- +0+30 0+18 +I +9 +4 +8 -+ +0+30 0+18 +I +8 +4 +8 - \[ 6\] \.MMIX\.spec_data\.3 PROGBITS 0+ 0+58 - 0+8 0+ 0 0 8 - \[ 7\] \.rela\.MMIX\.spec_d RELA 0+ .* -- +0+18 +0+18 +I +9 +6 +8 -+ +0+18 +0+18 +I +8 +6 +8 - #... - Relocation section '\.rela\.MMIX\.spec_data\.2' at offset .* contains 2 entries: - .* -diff --git a/gas/testsuite/gas/mmix/byte-1.d b/gas/testsuite/gas/mmix/byte-1.d -index b6c2768..a77eb08 100644 ---- a/gas/testsuite/gas/mmix/byte-1.d -+++ b/gas/testsuite/gas/mmix/byte-1.d -@@ -12,12 +12,12 @@ Section Headers: - +0000000000000000 +0000000000000000 +WA +0 +0 +1 - +\[ 3\] \.bss +NOBITS +0000000000000000 +00000056 - +0000000000000000 +0000000000000000 +WA +0 +0 +1 -- +\[ 4\] \.shstrtab +STRTAB +0000000000000000 +[0-9a-f]+ -- +000000000000002c +0000000000000000 +0 +0 +1 -- +\[ 5\] \.symtab +SYMTAB +0000000000000000 .* -- +00000000000000c0 +0000000000000018 +6 +7 +8 -- +\[ 6\] \.strtab +STRTAB +0000000000000000 .* -+ +\[ 4\] \.symtab +SYMTAB +0000000000000000 .* -+ +00000000000000c0 +0000000000000018 +5 +7 +8 -+ +\[ 5\] \.strtab +STRTAB +0000000000000000 .* - +0000000000000018 +0000000000000000 +0 +0 +1 -+ +\[ 6\] \.shstrtab +STRTAB +0000000000000000 +[0-9a-f]+ -+ +000000000000002c +0000000000000000 +0 +0 +1 - Key to Flags: - #... - -diff --git a/gas/testsuite/gas/mmix/loc-1.d b/gas/testsuite/gas/mmix/loc-1.d -index e45b1d5..e46247d 100644 ---- a/gas/testsuite/gas/mmix/loc-1.d -+++ b/gas/testsuite/gas/mmix/loc-1.d -@@ -13,12 +13,12 @@ Section Headers: - +0000000000000004 +0000000000000000 +WA +0 +0 +4 - +\[ 3\] \.bss +NOBITS +0000000000000000 +00000064 - +0000000000000000 +0000000000000000 +WA +0 +0 +1 -- +\[ 4\] \.shstrtab +STRTAB +0000000000000000 +[0-9a-f]+ -- +000000000000002c +0000000000000000 +0 +0 +1 -- +\[ 5\] \.symtab +SYMTAB +0000000000000000 .* -- +00000000000000c0 +0000000000000018 +6 +6 +8 -- +\[ 6\] \.strtab +STRTAB +0000000000000000 .* -+ +\[ 4\] \.symtab +SYMTAB +0000000000000000 .* -+ +00000000000000c0 +0000000000000018 +5 +6 +8 -+ +\[ 5\] \.strtab +STRTAB +0000000000000000 .* - +000000000000002a +0000000000000000 +0 +0 +1 -+ +\[ 6\] \.shstrtab +STRTAB +0000000000000000 +[0-9a-f]+ -+ +000000000000002c +0000000000000000 +0 +0 +1 - Key to Flags: - #... - -diff --git a/gas/testsuite/gas/mmix/loc-2.d b/gas/testsuite/gas/mmix/loc-2.d -index b92cabb..8d7ec8b 100644 ---- a/gas/testsuite/gas/mmix/loc-2.d -+++ b/gas/testsuite/gas/mmix/loc-2.d -@@ -13,12 +13,12 @@ Section Headers: - +0000000000000000 +0000000000000000 +WA +0 +0 +1 - +\[ 3\] \.bss +NOBITS +0000000000000000 +00000048 - +0000000000000000 +0000000000000000 +WA +0 +0 +1 -- +\[ 4\] \.shstrtab +STRTAB +0000000000000000 +[0-9a-f]+ -- +000000000000002c +0000000000000000 +0 +0 +1 -- +\[ 5\] \.symtab +SYMTAB +0000000000000000 .* -- +0000000000000090 +0000000000000018 +6 +4 +8 -- +\[ 6\] \.strtab +STRTAB +0000000000000000 .* -+ +\[ 4\] \.symtab +SYMTAB +0000000000000000 .* -+ +0000000000000090 +0000000000000018 +5 +4 +8 -+ +\[ 5\] \.strtab +STRTAB +0000000000000000 .* - +000000000000001a +0000000000000000 +0 +0 +1 -+ +\[ 6\] \.shstrtab +STRTAB +0000000000000000 +[0-9a-f]+ -+ +000000000000002c +0000000000000000 +0 +0 +1 - Key to Flags: - #... - -diff --git a/gas/testsuite/gas/mmix/loc-3.d b/gas/testsuite/gas/mmix/loc-3.d -index 2c477db..14a68fa 100644 ---- a/gas/testsuite/gas/mmix/loc-3.d -+++ b/gas/testsuite/gas/mmix/loc-3.d -@@ -12,12 +12,12 @@ Section Headers: - +0000000000000008 +0000000000000000 +WA +0 +0 +4 - +\[ 3\] \.bss +NOBITS +0000000000000000 +00000054 - +0000000000000000 +0000000000000000 +WA +0 +0 +1 -- +\[ 4\] \.shstrtab +STRTAB +0000000000000000 +[0-9a-f]+ -- +000000000000002c +0000000000000000 +0 +0 +1 -- +\[ 5\] \.symtab +SYMTAB +0000000000000000 .* -- +00000000000000c0 +0000000000000018 +6 +5 +8 -- +\[ 6\] \.strtab +STRTAB +0000000000000000 .* -+ +\[ 4\] \.symtab +SYMTAB +0000000000000000 .* -+ +00000000000000c0 +0000000000000018 +5 +5 +8 -+ +\[ 5\] \.strtab +STRTAB +0000000000000000 .* - +000000000000002e +0000000000000000 +0 +0 +1 -+ +\[ 6\] \.shstrtab +STRTAB +0000000000000000 +[0-9a-f]+ -+ +000000000000002c +0000000000000000 +0 +0 +1 - Key to Flags: - #... - -diff --git a/gas/testsuite/gas/mmix/loc-4.d b/gas/testsuite/gas/mmix/loc-4.d -index 1efc084..935cc18 100644 ---- a/gas/testsuite/gas/mmix/loc-4.d -+++ b/gas/testsuite/gas/mmix/loc-4.d -@@ -12,12 +12,12 @@ Section Headers: - +0000000000000004 +0000000000000000 +WA +0 +0 +4 - +\[ 3\] \.bss +NOBITS +0000000000000000 +0000005c - +0000000000000000 +0000000000000000 +WA +0 +0 +1 -- +\[ 4\] \.shstrtab +STRTAB +0000000000000000 +[0-9a-f]+ -- +000000000000002c +0000000000000000 +0 +0 +1 -- +\[ 5\] \.symtab +SYMTAB +0000000000000000 .* -- +00000000000000c0 +0000000000000018 +6 +5 +8 -- +\[ 6\] \.strtab +STRTAB +0000000000000000 .* -+ +\[ 4\] \.symtab +SYMTAB +0000000000000000 .* -+ +00000000000000c0 +0000000000000018 +5 +5 +8 -+ +\[ 5\] \.strtab +STRTAB +0000000000000000 .* - +000000000000003b +0000000000000000 +0 +0 +1 -+ +\[ 6\] \.shstrtab +STRTAB +0000000000000000 +[0-9a-f]+ -+ +000000000000002c +0000000000000000 +0 +0 +1 - Key to Flags: - #... - -diff --git a/gas/testsuite/gas/mmix/loc-5.d b/gas/testsuite/gas/mmix/loc-5.d -index fa80a86..a8e7545 100644 ---- a/gas/testsuite/gas/mmix/loc-5.d -+++ b/gas/testsuite/gas/mmix/loc-5.d -@@ -12,12 +12,12 @@ Section Headers: - +0+24 +0+ +WA +0 +0 +4 - +\[ 3\] \.bss +NOBITS +0+ +0+6c - +0+ +0+ +WA +0 +0 +1 -- +\[ 4\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ -- +0+2c +0+ +0 +0 +1 -- +\[ 5\] \.symtab +SYMTAB +0+ .* -- +0+c0 +0+18 +6 +6 +8 -- +\[ 6\] \.strtab +STRTAB +0+ .* -+ +\[ 4\] \.symtab +SYMTAB +0+ .* -+ +0+c0 +0+18 +5 +6 +8 -+ +\[ 5\] \.strtab +STRTAB +0+ .* - +0+27 +0+ +0 +0 +1 -+ +\[ 6\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ -+ +0+2c +0+ +0 +0 +1 - Key to Flags: - #... - -diff --git a/gas/testsuite/gas/tic6x/scomm-directive-4.d b/gas/testsuite/gas/tic6x/scomm-directive-4.d -index 7822e8f..219673d 100644 ---- a/gas/testsuite/gas/tic6x/scomm-directive-4.d -+++ b/gas/testsuite/gas/tic6x/scomm-directive-4.d -@@ -12,9 +12,9 @@ Section Headers: - \[ 2\] \.data PROGBITS 00000000 000034 000000 00 WA 0 0 1 - \[ 3\] \.bss NOBITS 00000000 000034 000000 00 WA 0 0 1 - \[ 4\] \.c6xabi\.attribute C6000_ATTRIBUTE 00000000 000034 000013 00 0 0 1 -- \[ 5\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 00003f 00 0 0 1 -- \[ 6\] \.symtab SYMTAB 00000000 [0-9a-f]+ 0000d0 10 7 5 4 -- \[ 7\] \.strtab STRTAB 00000000 [0-9a-f]+ 00001d 00 0 0 1 -+ \[ 5\] \.symtab SYMTAB 00000000 [0-9a-f]+ 0000d0 10 6 5 4 -+ \[ 6\] \.strtab STRTAB 00000000 [0-9a-f]+ 00001d 00 0 0 1 -+ \[ 7\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 00003f 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-alpha/tlsbin.rd b/ld/testsuite/ld-alpha/tlsbin.rd -index 2184e5e..21fb11a 100644 ---- a/ld/testsuite/ld-alpha/tlsbin.rd -+++ b/ld/testsuite/ld-alpha/tlsbin.rd -@@ -24,9 +24,9 @@ Section Headers: - +\[[ 0-9]+\] .tbss +NOBITS +[0-9a-f]+ [0-9a-f]+ [0-9a-f]+ 00 WAT +0 +0 +1 - +\[[ 0-9]+\] .dynamic +DYNAMIC +[0-9a-f]+ [0-9a-f]+ [0-9a-f]+ 10 +WA +4 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +[0-9a-f]+ [0-9a-f]+ [0-9a-f]+ 00 +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - #... - - Elf file type is EXEC \(Executable file\) -diff --git a/ld/testsuite/ld-alpha/tlsbinr.rd b/ld/testsuite/ld-alpha/tlsbinr.rd -index 0329ba9..8b7b76a 100644 ---- a/ld/testsuite/ld-alpha/tlsbinr.rd -+++ b/ld/testsuite/ld-alpha/tlsbinr.rd -@@ -24,9 +24,9 @@ Section Headers: - +\[[ 0-9]+\] \.tbss +NOBITS +[0-9a-f]+ [0-9a-f]+ [0-9a-f]+ 0+ WAT +0 +0 +1 - +\[[ 0-9]+\] \.dynamic +DYNAMIC +[0-9a-f]+ [0-9a-f]+ [0-9a-f]+ 10 +WA +4 +0 +8 - +\[[ 0-9]+\] \.got +PROGBITS +[0-9a-f]+ [0-9a-f]+ [0-9a-f]+ 0+ +WA +0 +0 +8 -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - #... - - Elf file type is EXEC \(Executable file\) -diff --git a/ld/testsuite/ld-alpha/tlspic.rd b/ld/testsuite/ld-alpha/tlspic.rd -index 7a97847..f1fb974 100644 ---- a/ld/testsuite/ld-alpha/tlspic.rd -+++ b/ld/testsuite/ld-alpha/tlspic.rd -@@ -23,9 +23,9 @@ Section Headers: - +\[[ 0-9]+\] .tbss +NOBITS +[0-9a-f]+ [0-9a-f]+ [0-9a-f]+ 0+ WAT +0 +0 +1 - +\[[ 0-9]+\] .dynamic +DYNAMIC +[0-9a-f]+ [0-9a-f]+ [0-9a-f]+ 10 +WA +3 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +[0-9a-f]+ [0-9a-f]+ [0-9a-f]+ 0+ +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - #... - - Elf file type is DYN \(Shared object file\) -diff --git a/ld/testsuite/ld-cris/libdso-2.d b/ld/testsuite/ld-cris/libdso-2.d -index 3b4777a..aa4a7c8 100644 ---- a/ld/testsuite/ld-cris/libdso-2.d -+++ b/ld/testsuite/ld-cris/libdso-2.d -@@ -21,9 +21,9 @@ There are 13 section headers.* - +\[ 7\] \.text +PROGBITS .* - +\[ 8\] \.dynamic +DYNAMIC +.* - +\[ 9\] \.got +PROGBITS .* -- +\[10\] \.shstrtab +STRTAB +.* -- +\[11\] \.symtab +SYMTAB +.* -- +\[12\] \.strtab +STRTAB +.* -+ +\[10\] \.symtab +SYMTAB +.* -+ +\[11\] \.strtab +STRTAB +.* -+ +\[12\] \.shstrtab +STRTAB +.* - #... - Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 1 entries: - #... -diff --git a/ld/testsuite/ld-i386/nogot1.d b/ld/testsuite/ld-i386/nogot1.d -index a6c8832..018c24d 100644 ---- a/ld/testsuite/ld-i386/nogot1.d -+++ b/ld/testsuite/ld-i386/nogot1.d -@@ -4,5 +4,6 @@ - - #... - [ ]*\[.*\][ ]+\.dynamic[ ]+DYNAMIC.* -+#... - [ ]*\[.*\][ ]+.*STRTAB.* - #pass -diff --git a/ld/testsuite/ld-i386/pr12718.d b/ld/testsuite/ld-i386/pr12718.d -index 87905c3..ec51540 100644 ---- a/ld/testsuite/ld-i386/pr12718.d -+++ b/ld/testsuite/ld-i386/pr12718.d -@@ -9,8 +9,8 @@ Section Headers: - +\[Nr\] Name +Type +Addr +Off +Size +ES +Flg +Lk +Inf +Al - +\[ 0\] +NULL +0+ +0+ +0+ +0+ +0 +0 +0 - +\[ 1\] +.text +PROGBITS +[0-9a-f]+ +[0-9a-f]+ +000006 00 +AX +0 +0 +1 -- +\[ 2\] +.shstrtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +0+ +0 +0 +1 -- +\[ 3\] +.symtab +SYMTAB +0+ +[0-9a-f]+ +[0-9a-f]+ 10 +4 +[0-9] +4 -- +\[ 4\] +.strtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ 00 +0 +0 +1 -+ +\[ 2\] +.symtab +SYMTAB +0+ +[0-9a-f]+ +[0-9a-f]+ 10 +3 +[0-9] +4 -+ +\[ 3\] +.strtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ 00 +0 +0 +1 -+ +\[ 4\] +.shstrtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +0+ +0 +0 +1 - Key to Flags: - #pass -diff --git a/ld/testsuite/ld-i386/pr12921.d b/ld/testsuite/ld-i386/pr12921.d -index c72b04c..e49079b 100644 ---- a/ld/testsuite/ld-i386/pr12921.d -+++ b/ld/testsuite/ld-i386/pr12921.d -@@ -11,8 +11,8 @@ Section Headers: - +\[ 1\] .text +PROGBITS +[0-9a-f]+ +[0-9a-f]+ +0+1 00 +AX +0 +0 +4096 - +\[ 2\] .data +PROGBITS +[0-9a-f]+ +[0-9a-f]+000 +0+20 +00 +WA +0 +0 +4096 - +\[ 3\] .bss +NOBITS +[0-9a-f]+ +[0-9a-f]+020 +0+10000 +00 +WA +0 +0 +4096 -- +\[ 4\] .shstrtab +STRTAB +0+ +[0-9a-f]+ +0+2c +00 +0 +0 +1 -- +\[ 5\] .symtab +SYMTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +10 +6 +[0-9] +4 -- +\[ 6\] .strtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +00 +0 +0 +1 -+ +\[ 4\] .symtab +SYMTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +10 +5 +[0-9] +4 -+ +\[ 5\] .strtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +00 +0 +0 +1 -+ +\[ 6\] .shstrtab +STRTAB +0+ +[0-9a-f]+ +0+2c +00 +0 +0 +1 - Key to Flags: - #pass -diff --git a/ld/testsuite/ld-i386/tlsbin-nacl.rd b/ld/testsuite/ld-i386/tlsbin-nacl.rd -index 1e1cf7c..89a0673 100644 ---- a/ld/testsuite/ld-i386/tlsbin-nacl.rd -+++ b/ld/testsuite/ld-i386/tlsbin-nacl.rd -@@ -23,9 +23,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +DYNAMIC +0*10031060 .* - +\[[ 0-9]+\] \.got +PROGBITS +0*10031100 .* - +\[[ 0-9]+\] \.got\.plt +PROGBITS +0*10031124 .* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-i386/tlsbin.rd b/ld/testsuite/ld-i386/tlsbin.rd -index 12b3e81..23fffd1 100644 ---- a/ld/testsuite/ld-i386/tlsbin.rd -+++ b/ld/testsuite/ld-i386/tlsbin.rd -@@ -23,9 +23,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +DYNAMIC +0+804a060 .* - +\[[ 0-9]+\] \.got +PROGBITS +0+804a100 .* - +\[[ 0-9]+\] \.got\.plt +PROGBITS +0+804a124 .* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-i386/tlsbin2-nacl.rd b/ld/testsuite/ld-i386/tlsbin2-nacl.rd -index b23bfe0..0011716 100644 ---- a/ld/testsuite/ld-i386/tlsbin2-nacl.rd -+++ b/ld/testsuite/ld-i386/tlsbin2-nacl.rd -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +DYNAMIC +0*10031060 .* - +\[[ 0-9]+\] \.got +PROGBITS +0*100310e0 .* - +\[[ 0-9]+\] \.got\.plt +PROGBITS +0*10031108 .* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-i386/tlsbin2.rd b/ld/testsuite/ld-i386/tlsbin2.rd -index 05d4ddb..e34d167 100644 ---- a/ld/testsuite/ld-i386/tlsbin2.rd -+++ b/ld/testsuite/ld-i386/tlsbin2.rd -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +DYNAMIC +0+804a060 .* - +\[[ 0-9]+\] \.got +PROGBITS +0+804a0e0 .* - +\[[ 0-9]+\] \.got\.plt +PROGBITS +0+804a108 .* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-i386/tlsbindesc-nacl.rd b/ld/testsuite/ld-i386/tlsbindesc-nacl.rd -index 51cffc0..39c60a5 100644 ---- a/ld/testsuite/ld-i386/tlsbindesc-nacl.rd -+++ b/ld/testsuite/ld-i386/tlsbindesc-nacl.rd -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +DYNAMIC +0*10031060 .* - +\[[ 0-9]+\] \.got +PROGBITS +0*100310e0 .* - +\[[ 0-9]+\] \.got\.plt +PROGBITS +0*10031104 .* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-i386/tlsbindesc.rd b/ld/testsuite/ld-i386/tlsbindesc.rd -index 7f7194c..7cc85f1 100644 ---- a/ld/testsuite/ld-i386/tlsbindesc.rd -+++ b/ld/testsuite/ld-i386/tlsbindesc.rd -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +DYNAMIC +0+804a060 .* - +\[[ 0-9]+\] \.got +PROGBITS +0+804a0e0 .* - +\[[ 0-9]+\] \.got\.plt +PROGBITS +0+804a104 .* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-i386/tlsdesc-nacl.rd b/ld/testsuite/ld-i386/tlsdesc-nacl.rd -index b28744f..20c8ea2 100644 ---- a/ld/testsuite/ld-i386/tlsdesc-nacl.rd -+++ b/ld/testsuite/ld-i386/tlsdesc-nacl.rd -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +.* - +\[[ 0-9]+\] \.got +.* - +\[[ 0-9]+\] \.got.plt +.* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-i386/tlsdesc.rd b/ld/testsuite/ld-i386/tlsdesc.rd -index 68695ff..3486847 100644 ---- a/ld/testsuite/ld-i386/tlsdesc.rd -+++ b/ld/testsuite/ld-i386/tlsdesc.rd -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +.* - +\[[ 0-9]+\] \.got +.* - +\[[ 0-9]+\] \.got.plt +.* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-i386/tlsgdesc-nacl.rd b/ld/testsuite/ld-i386/tlsgdesc-nacl.rd -index ba5fa62..407bf2c 100644 ---- a/ld/testsuite/ld-i386/tlsgdesc-nacl.rd -+++ b/ld/testsuite/ld-i386/tlsgdesc-nacl.rd -@@ -19,9 +19,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +.* - +\[[ 0-9]+\] \.got +.* - +\[[ 0-9]+\] \.got.plt +.* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-i386/tlsgdesc.rd b/ld/testsuite/ld-i386/tlsgdesc.rd -index 929ffa2..269cede 100644 ---- a/ld/testsuite/ld-i386/tlsgdesc.rd -+++ b/ld/testsuite/ld-i386/tlsgdesc.rd -@@ -19,9 +19,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +.* - +\[[ 0-9]+\] \.got +.* - +\[[ 0-9]+\] \.got.plt +.* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-i386/tlsnopic-nacl.rd b/ld/testsuite/ld-i386/tlsnopic-nacl.rd -index b14164a..15e7eea 100644 ---- a/ld/testsuite/ld-i386/tlsnopic-nacl.rd -+++ b/ld/testsuite/ld-i386/tlsnopic-nacl.rd -@@ -19,9 +19,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +DYNAMIC +0*10010284 .* - +\[[ 0-9]+\] \.got +PROGBITS +0*10010304 .* - +\[[ 0-9]+\] \.got.plt +PROGBITS +0*1001031c .* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-i386/tlsnopic.rd b/ld/testsuite/ld-i386/tlsnopic.rd -index b754158..b60fb1d 100644 ---- a/ld/testsuite/ld-i386/tlsnopic.rd -+++ b/ld/testsuite/ld-i386/tlsnopic.rd -@@ -19,9 +19,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +DYNAMIC +0+20f4 .* - +\[[ 0-9]+\] \.got +PROGBITS +0+2174 .* - +\[[ 0-9]+\] \.got.plt +PROGBITS +0+218c .* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-i386/tlspic-nacl.rd b/ld/testsuite/ld-i386/tlspic-nacl.rd -index b7d3e35..9645e35 100644 ---- a/ld/testsuite/ld-i386/tlspic-nacl.rd -+++ b/ld/testsuite/ld-i386/tlspic-nacl.rd -@@ -22,9 +22,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +.* - +\[[ 0-9]+\] \.got +.* - +\[[ 0-9]+\] \.got.plt +.* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-i386/tlspic.rd b/ld/testsuite/ld-i386/tlspic.rd -index f693760..6b915e5 100644 ---- a/ld/testsuite/ld-i386/tlspic.rd -+++ b/ld/testsuite/ld-i386/tlspic.rd -@@ -22,9 +22,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +.* - +\[[ 0-9]+\] \.got +.* - +\[[ 0-9]+\] \.got.plt +.* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-i386/tlspic2-nacl.rd b/ld/testsuite/ld-i386/tlspic2-nacl.rd -index 560e840..5fb6ba6 100644 ---- a/ld/testsuite/ld-i386/tlspic2-nacl.rd -+++ b/ld/testsuite/ld-i386/tlspic2-nacl.rd -@@ -20,9 +20,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +.* - +\[[ 0-9]+\] \.got +.* - +\[[ 0-9]+\] \.got.plt +.* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-i386/tlspic2.rd b/ld/testsuite/ld-i386/tlspic2.rd -index a135547..ab00063 100644 ---- a/ld/testsuite/ld-i386/tlspic2.rd -+++ b/ld/testsuite/ld-i386/tlspic2.rd -@@ -20,9 +20,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +.* - +\[[ 0-9]+\] \.got +.* - +\[[ 0-9]+\] \.got.plt +.* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-ia64/tlsbin.rd b/ld/testsuite/ld-ia64/tlsbin.rd -index ab2dacd..08c6a59 100644 ---- a/ld/testsuite/ld-ia64/tlsbin.rd -+++ b/ld/testsuite/ld-ia64/tlsbin.rd -@@ -25,9 +25,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +60+1[0-9a-f]+ 0+1[0-9a-f]+ 0+150 10 +WA +4 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +60+1318 0+1318 0+48 00 WAp +0 +0 +8 - +\[[ 0-9]+\] .IA_64.pltoff +.* -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - #... - - Elf file type is EXEC \(Executable file\) -diff --git a/ld/testsuite/ld-ia64/tlspic.rd b/ld/testsuite/ld-ia64/tlspic.rd -index 9666f86..cfcf8ed 100644 ---- a/ld/testsuite/ld-ia64/tlspic.rd -+++ b/ld/testsuite/ld-ia64/tlspic.rd -@@ -24,9 +24,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+11[0-9a-f]+ 0+1[0-9a-f]+ 0+140 10 +WA +3 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+112d8 0+12d8 0+50 00 WAp +0 +0 +8 - +\[[ 0-9]+\] .IA_64.pltoff +.* -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-mips-elf/attr-gnu-4-10.d b/ld/testsuite/ld-mips-elf/attr-gnu-4-10.d -index e3a1c9c..8827e41 100644 ---- a/ld/testsuite/ld-mips-elf/attr-gnu-4-10.d -+++ b/ld/testsuite/ld-mips-elf/attr-gnu-4-10.d -@@ -22,7 +22,7 @@ ELF Header: - Number of program headers: 0 - Size of section headers: 40 \(bytes\) - Number of section headers: 11 -- Section header string table index: 8 -+ Section header string table index: 10 - - Attribute Section: gnu - File Attributes -diff --git a/ld/testsuite/ld-mips-elf/attr-gnu-4-50.d b/ld/testsuite/ld-mips-elf/attr-gnu-4-50.d -index 5dc46d3..1fcab63 100644 ---- a/ld/testsuite/ld-mips-elf/attr-gnu-4-50.d -+++ b/ld/testsuite/ld-mips-elf/attr-gnu-4-50.d -@@ -22,7 +22,7 @@ ELF Header: - Number of program headers: 0 - Size of section headers: 40 \(bytes\) - Number of section headers: 11 -- Section header string table index: 8 -+ Section header string table index: 10 - Attribute Section: gnu - File Attributes - Tag_GNU_MIPS_ABI_FP: Hard float \(32-bit CPU, Any FPU\) -diff --git a/ld/testsuite/ld-mips-elf/attr-gnu-4-60.d b/ld/testsuite/ld-mips-elf/attr-gnu-4-60.d -index ea80c18..48a9839 100644 ---- a/ld/testsuite/ld-mips-elf/attr-gnu-4-60.d -+++ b/ld/testsuite/ld-mips-elf/attr-gnu-4-60.d -@@ -22,7 +22,7 @@ ELF Header: - Number of program headers: 0 - Size of section headers: 40 \(bytes\) - Number of section headers: 11 -- Section header string table index: 8 -+ Section header string table index: 10 - Attribute Section: gnu - File Attributes - Tag_GNU_MIPS_ABI_FP: Hard float \(32-bit CPU, 64-bit FPU\) -diff --git a/ld/testsuite/ld-mips-elf/attr-gnu-4-70.d b/ld/testsuite/ld-mips-elf/attr-gnu-4-70.d -index edbd61f..ca17421 100644 ---- a/ld/testsuite/ld-mips-elf/attr-gnu-4-70.d -+++ b/ld/testsuite/ld-mips-elf/attr-gnu-4-70.d -@@ -22,7 +22,7 @@ ELF Header: - Number of program headers: 0 - Size of section headers: 40 \(bytes\) - Number of section headers: 11 -- Section header string table index: 8 -+ Section header string table index: 10 - Attribute Section: gnu - File Attributes - Tag_GNU_MIPS_ABI_FP: Hard float compat \(32-bit CPU, 64-bit FPU\) -diff --git a/ld/testsuite/ld-mmix/bspec1.d b/ld/testsuite/ld-mmix/bspec1.d -index 6440bbe..3d07d2d 100644 ---- a/ld/testsuite/ld-mmix/bspec1.d -+++ b/ld/testsuite/ld-mmix/bspec1.d -@@ -14,12 +14,12 @@ Section Headers: - +0+4 +0+ +AX +0 +0 +4 - +\[ 2\] \.MMIX\.spec_data\.2 PROGBITS +0+ +0+7c - +0+4 +0+ +0 +0 +4 -- +\[ 3\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ -- +0+33 +0+ +0 +0 +1 -- +\[ 4\] \.symtab +SYMTAB +0+ .* -- +0+d8 +0+18 +5 +3 +8 -- +\[ 5\] \.strtab +STRTAB +0+ .* -+ +\[ 3\] \.symtab +SYMTAB +0+ .* -+ +0+d8 +0+18 +4 +3 +8 -+ +\[ 4\] \.strtab +STRTAB +0+ .* - +0+26 +0+ +0 +0 +1 -+ +\[ 5\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ -+ +0+33 +0+ +0 +0 +1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-mmix/bspec2.d b/ld/testsuite/ld-mmix/bspec2.d -index e881b08..b18fe47 100644 ---- a/ld/testsuite/ld-mmix/bspec2.d -+++ b/ld/testsuite/ld-mmix/bspec2.d -@@ -19,12 +19,12 @@ Section Headers: - +0+8 +0+ +0 +0 +4 - +\[ 3\] \.MMIX\.spec_data\.3 PROGBITS +0+ +0+84 - +0+4 +0+ +0 +0 +4 -- +\[ 4\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ -- +0+45 +0+ +0 +0 +1 -- +\[ 5\] \.symtab +SYMTAB +0+ .* -- +0+108 +0+18 +6 +4 +8 -- +\[ 6\] \.strtab +STRTAB +0+ .* -+ +\[ 4\] \.symtab +SYMTAB +0+ .* -+ +0+108 +0+18 +5 +4 +8 -+ +\[ 5\] \.strtab +STRTAB +0+ .* - +0+2b +0+ +0 +0 +1 -+ +\[ 6\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ -+ +0+45 +0+ +0 +0 +1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-mmix/local1.d b/ld/testsuite/ld-mmix/local1.d -index 478d17b..41a67c2 100644 ---- a/ld/testsuite/ld-mmix/local1.d -+++ b/ld/testsuite/ld-mmix/local1.d -@@ -21,12 +21,12 @@ Section Headers: - +0+8 +0+ +AX +0 +0 +4 - +\[ 2\] \.MMIX\.reg_content PROGBITS +0+7e8 +0+80 - +0+10 +0+ +W +0 +0 +1 -- +\[ 3\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ -- +0+34 +0+ +0 +0 +1 -- +\[ 4\] \.symtab +SYMTAB +0+ +[0-9a-f]+ -- +[0-9a-f]+ +0+18 +5 +[0-9] +8 -- +\[ 5\] \.strtab +STRTAB +0+ +[0-9a-f]+ -+ +\[ 3\] \.symtab +SYMTAB +0+ +[0-9a-f]+ -+ +[0-9a-f]+ +0+18 +4 +[0-9] +8 -+ +\[ 4\] \.strtab +STRTAB +0+ +[0-9a-f]+ - +[0-9a-f]+ +0+ +0 +0 +1 -+ +\[ 5\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ -+ +0+34 +0+ +0 +0 +1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-mmix/local3.d b/ld/testsuite/ld-mmix/local3.d -index 9b9001a..74840d3 100644 ---- a/ld/testsuite/ld-mmix/local3.d -+++ b/ld/testsuite/ld-mmix/local3.d -@@ -19,12 +19,12 @@ Section Headers: - +0+8 +0+ +AX +0 +0 +4 - +\[ 2\] \.MMIX\.reg_content PROGBITS +0+7e8 +0+80 - +0+10 +0+ +W +0 +0 +1 -- +\[ 3\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ -- +0+34 +0+ +0 +0 +1 -- +\[ 4\] \.symtab +SYMTAB +0+ +[0-9a-f]+ -- +[0-9a-f]+ +0+18 +5 +[0-9] +8 -- +\[ 5\] \.strtab +STRTAB +0+ +[0-9a-f]+ -+ +\[ 3\] \.symtab +SYMTAB +0+ +[0-9a-f]+ -+ +[0-9a-f]+ +0+18 +4 +[0-9] +8 -+ +\[ 4\] \.strtab +STRTAB +0+ +[0-9a-f]+ - +[0-9a-f]+ +0+ +0 +0 +1 -+ +\[ 5\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ -+ +0+34 +0+ +0 +0 +1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-mmix/local5.d b/ld/testsuite/ld-mmix/local5.d -index 93bacd3..ae81364 100644 ---- a/ld/testsuite/ld-mmix/local5.d -+++ b/ld/testsuite/ld-mmix/local5.d -@@ -20,12 +20,12 @@ Section Headers: - +0+c +0+ +AX +0 +0 +4 - +\[ 2\] \.MMIX\.reg_content PROGBITS +0+7e8 +0+84 - +0+10 +0+ +W +0 +0 +1 -- +\[ 3\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ -- +0+34 +0+ +0 +0 +1 -- +\[ 4\] \.symtab +SYMTAB +0+ +[0-9a-f]+ -- +[0-9a-f]+ +0+18 +5 +[0-9] +8 -- +\[ 5\] \.strtab +STRTAB +0+ +[0-9a-f]+ -+ +\[ 3\] \.symtab +SYMTAB +0+ +[0-9a-f]+ -+ +[0-9a-f]+ +0+18 +4 +[0-9] +8 -+ +\[ 4\] \.strtab +STRTAB +0+ +[0-9a-f]+ - +[0-9a-f]+ +0+ +0 +0 +1 -+ +\[ 5\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ -+ +0+34 +0+ +0 +0 +1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-mmix/local7.d b/ld/testsuite/ld-mmix/local7.d -index 1495bf1..6d80cc9 100644 ---- a/ld/testsuite/ld-mmix/local7.d -+++ b/ld/testsuite/ld-mmix/local7.d -@@ -21,12 +21,12 @@ Section Headers: - +0+c +0+ +AX +0 +0 +4 - +\[ 2\] \.MMIX\.reg_content PROGBITS +0+7e8 +0+84 - +0+10 +0+ +W +0 +0 +1 -- +\[ 3\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ -- +0+34 +0+ +0 +0 +1 -- +\[ 4\] \.symtab +SYMTAB +0+ +[0-9a-f]+ -- +[0-9a-f]+ +0+18 +5 +[0-9] +8 -- +\[ 5\] \.strtab +STRTAB +0+ +[0-9a-f]+ -+ +\[ 3\] \.symtab +SYMTAB +0+ +[0-9a-f]+ -+ +[0-9a-f]+ +0+18 +4 +[0-9] +8 -+ +\[ 4\] \.strtab +STRTAB +0+ +[0-9a-f]+ - +[0-9a-f]+ +0+ +0 +0 +1 -+ +\[ 5\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ -+ +0+34 +0+ +0 +0 +1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-mmix/undef-3.d b/ld/testsuite/ld-mmix/undef-3.d -index 94eeeaa..6afb52b 100644 ---- a/ld/testsuite/ld-mmix/undef-3.d -+++ b/ld/testsuite/ld-mmix/undef-3.d -@@ -11,11 +11,11 @@ Section Headers: - +0+ +0+ +0 +0 +0 - +\[ 1\] \.text +PROGBITS +0+ +0+78 - +0+4 +0+ +AX +0 +0 +4 -- +\[ 2\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ -+ +\[ 2\] \.symtab +SYMTAB +0+ .* -+ +0+a8 +0+18 +3 +2 +8 -+ +\[ 3\] \.strtab +STRTAB +0+ .* - +0+21 +0+ +0 +0 +1 -- +\[ 3\] \.symtab +SYMTAB +0+ .* -- +0+a8 +0+18 +4 +2 +8 -- +\[ 4\] \.strtab +STRTAB +0+ .* -+ +\[ 4\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ - +0+21 +0+ +0 +0 +1 - Key to Flags: - #... -diff --git a/ld/testsuite/ld-powerpc/tlsexe.r b/ld/testsuite/ld-powerpc/tlsexe.r -index db72ad7..11da4a8 100644 ---- a/ld/testsuite/ld-powerpc/tlsexe.r -+++ b/ld/testsuite/ld-powerpc/tlsexe.r -@@ -23,9 +23,9 @@ Section Headers: - +\[[ 0-9]+\] \.opd .* - +\[[ 0-9]+\] \.got +PROGBITS .* 0+30 08 +WA +0 +0 +256 - +\[[ 0-9]+\] \.plt +.* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - #... - - Elf file type is EXEC \(Executable file\) -diff --git a/ld/testsuite/ld-powerpc/tlsexe32.r b/ld/testsuite/ld-powerpc/tlsexe32.r -index a3304ec..baa3ee6 100644 ---- a/ld/testsuite/ld-powerpc/tlsexe32.r -+++ b/ld/testsuite/ld-powerpc/tlsexe32.r -@@ -22,9 +22,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +DYNAMIC +[0-9a-f]+ [0-9a-f]+ [0-9a-f]+ 08 +WA +4 +0 +4 - +\[[ 0-9]+\] \.got +PROGBITS +[0-9a-f]+ [0-9a-f]+ 000018 04 +WA +0 +0 +4 - +\[[ 0-9]+\] \.plt +PROGBITS +[0-9a-f]+ [0-9a-f]+ 000004 00 +WA +0 +0 +4 -- +\[[ 0-9]+\] \.shstrtab +STRTAB +.* - +\[[ 0-9]+\] \.symtab +SYMTAB +.* - +\[[ 0-9]+\] \.strtab +STRTAB +.* -+ +\[[ 0-9]+\] \.shstrtab +STRTAB +.* - #... - - Elf file type is EXEC \(Executable file\) -diff --git a/ld/testsuite/ld-powerpc/tlsexetoc.r b/ld/testsuite/ld-powerpc/tlsexetoc.r -index 56716bb..5c4a490 100644 ---- a/ld/testsuite/ld-powerpc/tlsexetoc.r -+++ b/ld/testsuite/ld-powerpc/tlsexetoc.r -@@ -23,9 +23,9 @@ Section Headers: - +\[[ 0-9]+\] \.opd .* - +\[[ 0-9]+\] \.got +PROGBITS .* 0+58 08 +WA +0 +0 +256 - +\[[ 0-9]+\] \.plt +.* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - #... - - Elf file type is EXEC \(Executable file\) -diff --git a/ld/testsuite/ld-powerpc/tlsso.r b/ld/testsuite/ld-powerpc/tlsso.r -index fd3002b..4ba6173 100644 ---- a/ld/testsuite/ld-powerpc/tlsso.r -+++ b/ld/testsuite/ld-powerpc/tlsso.r -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] \.opd .* - +\[[ 0-9]+\] \.got .* - +\[[ 0-9]+\] \.plt .* -- +\[[ 0-9]+\] \.shstrtab .* - +\[[ 0-9]+\] \.symtab .* - +\[[ 0-9]+\] \.strtab .* -+ +\[[ 0-9]+\] \.shstrtab .* - #... - - Elf file type is DYN \(Shared object file\) -diff --git a/ld/testsuite/ld-powerpc/tlsso32.r b/ld/testsuite/ld-powerpc/tlsso32.r -index 4d12c48..bc3b7c0 100644 ---- a/ld/testsuite/ld-powerpc/tlsso32.r -+++ b/ld/testsuite/ld-powerpc/tlsso32.r -@@ -20,9 +20,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +DYNAMIC .* 08 +WA +3 +0 +4 - +\[[ 0-9]+\] \.got +PROGBITS .* 0+30 04 +WA +0 +0 +4 - +\[[ 0-9]+\] \.plt +PROGBITS .* 0+4 00 +WA +0 +0 +4 -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - #... - - Elf file type is DYN \(Shared object file\) -diff --git a/ld/testsuite/ld-powerpc/tlstocso.r b/ld/testsuite/ld-powerpc/tlstocso.r -index 765bf08..bf7cf84 100644 ---- a/ld/testsuite/ld-powerpc/tlstocso.r -+++ b/ld/testsuite/ld-powerpc/tlstocso.r -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] \.opd .* - +\[[ 0-9]+\] \.got .* - +\[[ 0-9]+\] \.plt .* -- +\[[ 0-9]+\] \.shstrtab .* - +\[[ 0-9]+\] \.symtab .* - +\[[ 0-9]+\] \.strtab .* -+ +\[[ 0-9]+\] \.shstrtab .* - #... - - Elf file type is DYN \(Shared object file\) -diff --git a/ld/testsuite/ld-s390/tlsbin.rd b/ld/testsuite/ld-s390/tlsbin.rd -index 32c883a..b45fc29 100644 ---- a/ld/testsuite/ld-s390/tlsbin.rd -+++ b/ld/testsuite/ld-s390/tlsbin.rd -@@ -22,9 +22,9 @@ Section Headers: - +\[[ 0-9]+\] .tbss +NOBITS .* 0+40 00 WAT +0 +0 +1 - +\[[ 0-9]+\] .dynamic +DYNAMIC .* - +\[[ 0-9]+\] .got +PROGBITS .* -- +\[[ 0-9]+\] .shstrtab .* - +\[[ 0-9]+\] .symtab .* - +\[[ 0-9]+\] .strtab .* -+ +\[[ 0-9]+\] .shstrtab .* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-s390/tlsbin_64.rd b/ld/testsuite/ld-s390/tlsbin_64.rd -index 38d5789..f7caa16 100644 ---- a/ld/testsuite/ld-s390/tlsbin_64.rd -+++ b/ld/testsuite/ld-s390/tlsbin_64.rd -@@ -22,9 +22,9 @@ Section Headers: - +\[[ 0-9]+\] .tbss +NOBITS .* 0+40 00 WAT +0 +0 +1 - +\[[ 0-9]+\] .dynamic +DYNAMIC .* - +\[[ 0-9]+\] .got +PROGBITS .* -- +\[[ 0-9]+\] .shstrtab .* - +\[[ 0-9]+\] .symtab .* - +\[[ 0-9]+\] .strtab .* -+ +\[[ 0-9]+\] .shstrtab .* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-s390/tlspic.rd b/ld/testsuite/ld-s390/tlspic.rd -index 07d29c2..5159863 100644 ---- a/ld/testsuite/ld-s390/tlspic.rd -+++ b/ld/testsuite/ld-s390/tlspic.rd -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] .tbss +NOBITS .* 0+20 00 WAT +0 +0 +1 - +\[[ 0-9]+\] .dynamic +DYNAMIC .* - +\[[ 0-9]+\] .got +PROGBITS .* -- +\[[ 0-9]+\] .shstrtab .* - +\[[ 0-9]+\] .symtab .* - +\[[ 0-9]+\] .strtab .* -+ +\[[ 0-9]+\] .shstrtab .* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-s390/tlspic_64.rd b/ld/testsuite/ld-s390/tlspic_64.rd -index 6197f8a..7f8dc1b 100644 ---- a/ld/testsuite/ld-s390/tlspic_64.rd -+++ b/ld/testsuite/ld-s390/tlspic_64.rd -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] .tbss +NOBITS .* 0+20 00 WAT +0 +0 +1 - +\[[ 0-9]+\] .dynamic +DYNAMIC .* - +\[[ 0-9]+\] .got +PROGBITS .* -- +\[[ 0-9]+\] .shstrtab .* - +\[[ 0-9]+\] .symtab .* - +\[[ 0-9]+\] .strtab .* -+ +\[[ 0-9]+\] .shstrtab .* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-sh/sh64/crange1.rd b/ld/testsuite/ld-sh/sh64/crange1.rd -index e22d502..83c1e9b 100644 ---- a/ld/testsuite/ld-sh/sh64/crange1.rd -+++ b/ld/testsuite/ld-sh/sh64/crange1.rd -@@ -7,9 +7,9 @@ Section Headers: - +\[ 2\] \.text +PROGBITS +00001004 000084 000018 00 AXp +0 +0 +4 - +\[ 3\] \.stack +PROGBITS +00080000 000100 000004 00 +WA +0 +0 +1 - +\[ 4\] \.cranges +LOUSER\+1 +00000000 000104 00001e 00 +W +0 +0 +1 -- +\[ 5\] \.shstrtab +STRTAB +.* -- +\[ 6\] \.symtab +SYMTAB +.* -- +\[ 7\] \.strtab +STRTAB +.* -+ +\[ 5\] \.symtab +SYMTAB +.* -+ +\[ 6\] \.strtab +STRTAB +.* -+ +\[ 7\] \.shstrtab +STRTAB +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-sh/sh64/crange2.rd b/ld/testsuite/ld-sh/sh64/crange2.rd -index 5074087..e7416e1 100644 ---- a/ld/testsuite/ld-sh/sh64/crange2.rd -+++ b/ld/testsuite/ld-sh/sh64/crange2.rd -@@ -7,9 +7,9 @@ Section Headers: - +\[ 2\] \.text +PROGBITS +00001004 000084 00005c 00 AXp +0 +0 +4 - +\[ 3\] \.stack +PROGBITS +00080000 000100 000004 00 +WA +0 +0 +1 - +\[ 4\] \.cranges +LOUSER\+1 +00000000 000104 000046 00 +W +0 +0 +1 -- +\[ 5\] \.shstrtab +STRTAB +.* -- +\[ 6\] \.symtab +SYMTAB +.* -- +\[ 7\] \.strtab +STRTAB +.* -+ +\[ 5\] \.symtab +SYMTAB +.* -+ +\[ 6\] \.strtab +STRTAB +.* -+ +\[ 7\] \.shstrtab +STRTAB +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-sh/sh64/crange3-cmpct.rd b/ld/testsuite/ld-sh/sh64/crange3-cmpct.rd -index d4f090e..9f5f595 100644 ---- a/ld/testsuite/ld-sh/sh64/crange3-cmpct.rd -+++ b/ld/testsuite/ld-sh/sh64/crange3-cmpct.rd -@@ -17,7 +17,7 @@ ELF Header: - +Number of program headers: +2 - +Size of section headers: +40 \(bytes\) - +Number of section headers: +8 -- +Section header string table index: 5 -+ +Section header string table index: 7 - - Section Headers: - +\[Nr\] Name +Type +Addr +Off +Size +ES Flg Lk Inf Al -@@ -26,9 +26,9 @@ Section Headers: - +\[ 2\] \.text +PROGBITS +00001004 000084 0000d8 00 AXp +0 +0 +4 - +\[ 3\] \.stack +PROGBITS +00080000 000180 000004 00 +WA +0 +0 +1 - +\[ 4\] \.cranges +LOUSER\+1 +00000000 000184 00003c 00 +W +0 +0 +1 -- +\[ 5\] \.shstrtab +STRTAB +.* -- +\[ 6\] \.symtab +SYMTAB +.* -- +\[ 7\] \.strtab +STRTAB +.* -+ +\[ 5\] \.symtab +SYMTAB +.* -+ +\[ 6\] \.strtab +STRTAB +.* -+ +\[ 7\] \.shstrtab +STRTAB +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-sh/sh64/crange3-media.rd b/ld/testsuite/ld-sh/sh64/crange3-media.rd -index 5a856d4..926925c 100644 ---- a/ld/testsuite/ld-sh/sh64/crange3-media.rd -+++ b/ld/testsuite/ld-sh/sh64/crange3-media.rd -@@ -17,7 +17,7 @@ ELF Header: - +Number of program headers: +2 - +Size of section headers: +40 \(bytes\) - +Number of section headers: +8 -- +Section header string table index: 5 -+ +Section header string table index: 7 - - Section Headers: - +\[Nr\] Name +Type +Addr +Off +Size +ES Flg Lk Inf Al -@@ -26,9 +26,9 @@ Section Headers: - +\[ 2\] \.text +PROGBITS +00001004 000084 0000d8 00 AXp +0 +0 +4 - +\[ 3\] \.stack +PROGBITS +00080000 000180 000004 00 +WA +0 +0 +1 - +\[ 4\] \.cranges +LOUSER\+1 +00000000 000184 00003c 00 +W +0 +0 +1 -- +\[ 5\] \.shstrtab +STRTAB +.* -- +\[ 6\] \.symtab +SYMTAB +.* -- +\[ 7\] \.strtab +STRTAB +.* -+ +\[ 5\] \.symtab +SYMTAB +.* -+ +\[ 6\] \.strtab +STRTAB +.* -+ +\[ 7\] \.shstrtab +STRTAB +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-sh/sh64/crange3.rd b/ld/testsuite/ld-sh/sh64/crange3.rd -index b495861..8870e0b 100644 ---- a/ld/testsuite/ld-sh/sh64/crange3.rd -+++ b/ld/testsuite/ld-sh/sh64/crange3.rd -@@ -7,9 +7,9 @@ Section Headers: - +\[ 2\] \.text +PROGBITS +00001004 000084 0000d8 00 AXp +0 +0 +4 - +\[ 3\] \.stack +PROGBITS +00080000 000180 000004 00 +WA +0 +0 +1 - +\[ 4\] \.cranges +LOUSER\+1 +00000000 000184 00003c 00 +W +0 +0 +1 -- +\[ 5\] \.shstrtab +STRTAB +.* -- +\[ 6\] \.symtab +SYMTAB +.* -- +\[ 7\] \.strtab +STRTAB +.* -+ +\[ 5\] \.symtab +SYMTAB +.* -+ +\[ 6\] \.strtab +STRTAB +.* -+ +\[ 7\] \.shstrtab +STRTAB +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-sh/sh64/crangerel1.rd b/ld/testsuite/ld-sh/sh64/crangerel1.rd -index 90d71c5..3443f2a 100644 ---- a/ld/testsuite/ld-sh/sh64/crangerel1.rd -+++ b/ld/testsuite/ld-sh/sh64/crangerel1.rd -@@ -10,9 +10,9 @@ Section Headers: - +\[ 5\] \.stack +PROGBITS +00000000 00004c 000004 00 +WA +0 +0 +1 - +\[ 6\] \.cranges +PROGBITS +00000000 000050 00001e 00 +W +0 +0 +1 - +\[ 7\] \.rela\.cranges +RELA +00000000 [0-9a-f]+ 000024 0c +I +9 +6 +4 -- +\[ 8\] \.shstrtab +STRTAB +00000000 [0-9a-f]+ 00004d 00 +0 +0 +1 -- +\[ 9\] \.symtab +SYMTAB .* -- +\[10\] \.strtab +STRTAB .* -+ +\[ 8\] \.symtab +SYMTAB .* -+ +\[ 9\] \.strtab +STRTAB .* -+ +\[10\] \.shstrtab +STRTAB +00000000 [0-9a-f]+ 00004d 00 +0 +0 +1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-sh/sh64/crangerel2.rd b/ld/testsuite/ld-sh/sh64/crangerel2.rd -index 2daede7..a1674b5 100644 ---- a/ld/testsuite/ld-sh/sh64/crangerel2.rd -+++ b/ld/testsuite/ld-sh/sh64/crangerel2.rd -@@ -10,9 +10,9 @@ Section Headers: - +\[ 5\] \.stack +PROGBITS +00000000 000090 000004 00 +WA +0 +0 +1 - +\[ 6\] \.cranges +PROGBITS +00000000 000094 000046 00 +W +0 +0 +1 - +\[ 7\] \.rela\.cranges +RELA +00000000 [0-9a-f]+ 000054 0c +I +9 +6 +4 -- +\[ 8\] \.shstrtab +STRTAB +00000000 [0-9a-f]+ 00004d 00 +0 +0 +1 -- +\[ 9\] \.symtab +SYMTAB +00000000 [0-9a-f]+ [0-9a-f]+ 10 +10 +[0-9]+ +4 -- +\[10\] \.strtab +STRTAB +00000000 [0-9a-f]+ [0-9a-f]+ 00 +0 +0 +1 -+ +\[ 8\] \.symtab +SYMTAB +00000000 [0-9a-f]+ [0-9a-f]+ 10 +8 +[0-9]+ +4 -+ +\[ 9\] \.strtab +STRTAB +00000000 [0-9a-f]+ [0-9a-f]+ 00 +0 +0 +1 -+ +\[10\] \.shstrtab +STRTAB +00000000 [0-9a-f]+ 00004d 00 +0 +0 +1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-sh/tlsbin-2.d b/ld/testsuite/ld-sh/tlsbin-2.d -index 167270f..6958e45 100644 ---- a/ld/testsuite/ld-sh/tlsbin-2.d -+++ b/ld/testsuite/ld-sh/tlsbin-2.d -@@ -23,9 +23,9 @@ Section Headers: - #... - +\[[0-9a-f]+\] \.got +PROGBITS .* - #... -- +\[[0-9a-f]+\] \.shstrtab .* - +\[[0-9a-f]+\] \.symtab .* - +\[[0-9a-f]+\] \.strtab .* -+ +\[[0-9a-f]+\] \.shstrtab .* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-sh/tlspic-2.d b/ld/testsuite/ld-sh/tlspic-2.d -index 0b47878..42baf1d 100644 ---- a/ld/testsuite/ld-sh/tlspic-2.d -+++ b/ld/testsuite/ld-sh/tlspic-2.d -@@ -22,9 +22,9 @@ Section Headers: - #... - +\[[0-9a-f]+\] \.got +PROGBITS .* - #... -- +\[[0-9a-f]+\] \.shstrtab .* - +\[[0-9a-f]+\] \.symtab .* - +\[[0-9a-f]+\] \.strtab .* -+ +\[[0-9a-f]+\] \.shstrtab .* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-sparc/gotop32.rd b/ld/testsuite/ld-sparc/gotop32.rd -index 3b5b942..1813719 100644 ---- a/ld/testsuite/ld-sparc/gotop32.rd -+++ b/ld/testsuite/ld-sparc/gotop32.rd -@@ -17,9 +17,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+12000 0+2000 0+70 08 +WA +3 +0 +4 - +\[[ 0-9]+\] .got +PROGBITS +0+12070 0+2070 0+8 04 +WA +0 +0 +4 - +\[[ 0-9]+\] .data +PROGBITS +0+13000 0+3000 0+8 00 +WA +0 +0 4096 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - #... - - Elf file type is DYN \(Shared object file\) -diff --git a/ld/testsuite/ld-sparc/gotop64.rd b/ld/testsuite/ld-sparc/gotop64.rd -index 2d3ffec..578fb2b 100644 ---- a/ld/testsuite/ld-sparc/gotop64.rd -+++ b/ld/testsuite/ld-sparc/gotop64.rd -@@ -17,9 +17,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+102000 0+2000 0+e0 10 +WA +3 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+1020e0 0+20e0 0+10 08 +WA +0 +0 +8 - +\[[ 0-9]+\] .data +PROGBITS +0+103000 0+3000 0+8 00 +WA +0 +0 4096 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - #... - - Elf file type is DYN \(Shared object file\) -diff --git a/ld/testsuite/ld-sparc/tlssunbin32.rd b/ld/testsuite/ld-sparc/tlssunbin32.rd -index 7212732..3de615f 100644 ---- a/ld/testsuite/ld-sparc/tlssunbin32.rd -+++ b/ld/testsuite/ld-sparc/tlssunbin32.rd -@@ -19,9 +19,9 @@ Section Headers: - +\[[ 0-9]+\] .tbss +NOBITS +0+231f4 0+31f4 0+40 00 WAT +0 +0 +4 - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+231f4 0+31f4 0+80 08 +WA +4 +0 +4 - +\[[ 0-9]+\] .got +PROGBITS +0+23274 0+3274 0+14 04 +WA +0 +0 +4 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - #... - - Elf file type is EXEC \(Executable file\) -diff --git a/ld/testsuite/ld-sparc/tlssunbin64.rd b/ld/testsuite/ld-sparc/tlssunbin64.rd -index 5480dab..2297d2e 100644 ---- a/ld/testsuite/ld-sparc/tlssunbin64.rd -+++ b/ld/testsuite/ld-sparc/tlssunbin64.rd -@@ -19,9 +19,9 @@ Section Headers: - +\[[ 0-9]+\] .tbss +NOBITS +0+202204 0+2204 0+40 00 WAT +0 +0 +4 - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+202208 0+2208 0+100 10 +WA +4 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+202308 0+2308 0+28 08 +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - #... - - Elf file type is EXEC \(Executable file\) -diff --git a/ld/testsuite/ld-sparc/tlssunnopic32.rd b/ld/testsuite/ld-sparc/tlssunnopic32.rd -index 21d07c0..bfb7cb8 100644 ---- a/ld/testsuite/ld-sparc/tlssunnopic32.rd -+++ b/ld/testsuite/ld-sparc/tlssunnopic32.rd -@@ -18,9 +18,9 @@ Section Headers: - +\[[ 0-9]+\] .tbss +NOBITS +0+12000 0+2000 0+24 0+ WAT +0 +0 +4 - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+12000 0+2000 0+80 08 +WA +3 +0 +4 - +\[[ 0-9]+\] .got +PROGBITS +0+12080 0+2080 0+1c 04 +WA +0 +0 +4 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - #... - Elf file type is DYN \(Shared object file\) - Entry point 0x1000 -diff --git a/ld/testsuite/ld-sparc/tlssunnopic64.rd b/ld/testsuite/ld-sparc/tlssunnopic64.rd -index 6825aa9..88fe05f 100644 ---- a/ld/testsuite/ld-sparc/tlssunnopic64.rd -+++ b/ld/testsuite/ld-sparc/tlssunnopic64.rd -@@ -18,9 +18,9 @@ Section Headers: - +\[[ 0-9]+\] .tbss +NOBITS +0+102000 0+2000 0+24 0+ WAT +0 +0 +4 - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+102000 0+2000 0+100 10 +WA +3 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+102100 0+2100 0+38 08 +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - #... - Elf file type is DYN \(Shared object file\) - Entry point 0x1000 -diff --git a/ld/testsuite/ld-sparc/tlssunpic32.rd b/ld/testsuite/ld-sparc/tlssunpic32.rd -index 4d96736..519b5df 100644 ---- a/ld/testsuite/ld-sparc/tlssunpic32.rd -+++ b/ld/testsuite/ld-sparc/tlssunpic32.rd -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+12060 0+2060 0+98 08 +WA +3 +0 +4 - +\[[ 0-9]+\] .got +PROGBITS +0+120f8 0+20f8 0+4c 04 +WA +0 +0 +4 - +\[[ 0-9]+\] .plt +.* -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - #... - - Elf file type is DYN \(Shared object file\) -diff --git a/ld/testsuite/ld-sparc/tlssunpic64.rd b/ld/testsuite/ld-sparc/tlssunpic64.rd -index 6f91fee..fa00bbf 100644 ---- a/ld/testsuite/ld-sparc/tlssunpic64.rd -+++ b/ld/testsuite/ld-sparc/tlssunpic64.rd -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+102060 0+2060 0+130 10 +WA +3 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+102190 0+2190 0+98 08 +WA +0 +0 +8 - +\[[ 0-9]+\] .plt +.* -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - #... - - Elf file type is DYN \(Shared object file\) -diff --git a/ld/testsuite/ld-tic6x/common.d b/ld/testsuite/ld-tic6x/common.d -index 30521fc..f2a7b1b 100644 ---- a/ld/testsuite/ld-tic6x/common.d -+++ b/ld/testsuite/ld-tic6x/common.d -@@ -11,9 +11,9 @@ Section Headers: - \[ 0\] NULL 00000000 000000 000000 00 0 0 0 - \[ 1\] \.far NOBITS 00000080 000080 000008 00 WA 0 0 4 - \[ 2\] \.bss NOBITS 00000100 000080 000004 00 WA 0 0 4 -- \[ 3\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000025 00 0 0 1 -- \[ 4\] \.symtab SYMTAB 00000000 [0-9a-f]+ 000050 10 5 3 4 -- \[ 5\] \.strtab STRTAB 00000000 [0-9a-f]+ 000005 00 0 0 1 -+ \[ 3\] \.symtab SYMTAB 00000000 [0-9a-f]+ 000050 10 4 3 4 -+ \[ 4\] \.strtab STRTAB 00000000 [0-9a-f]+ 000005 00 0 0 1 -+ \[ 5\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000025 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-tic6x/shlib-1.rd b/ld/testsuite/ld-tic6x/shlib-1.rd -index a07ddca..77ec3d7 100644 ---- a/ld/testsuite/ld-tic6x/shlib-1.rd -+++ b/ld/testsuite/ld-tic6x/shlib-1.rd -@@ -16,9 +16,9 @@ Section Headers: - \[11\] \.neardata PROGBITS 10000128 002128 000008 00 WA 0 0 4 - \[12\] \.bss NOBITS 10000130 002130 000004 00 WA 0 0 4 - \[13\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 002130 000019 00 0 0 1 -- \[14\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 00007b 00 0 0 1 -- \[15\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 16 [0-9]+ 4 -- \[16\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[14\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 15 [0-9]+ 4 -+ \[15\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[16\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 00007b 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-tic6x/shlib-1b.rd b/ld/testsuite/ld-tic6x/shlib-1b.rd -index a07ddca..77ec3d7 100644 ---- a/ld/testsuite/ld-tic6x/shlib-1b.rd -+++ b/ld/testsuite/ld-tic6x/shlib-1b.rd -@@ -16,9 +16,9 @@ Section Headers: - \[11\] \.neardata PROGBITS 10000128 002128 000008 00 WA 0 0 4 - \[12\] \.bss NOBITS 10000130 002130 000004 00 WA 0 0 4 - \[13\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 002130 000019 00 0 0 1 -- \[14\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 00007b 00 0 0 1 -- \[15\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 16 [0-9]+ 4 -- \[16\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[14\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 15 [0-9]+ 4 -+ \[15\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[16\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 00007b 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-tic6x/shlib-1r.rd b/ld/testsuite/ld-tic6x/shlib-1r.rd -index a07ddca..77ec3d7 100644 ---- a/ld/testsuite/ld-tic6x/shlib-1r.rd -+++ b/ld/testsuite/ld-tic6x/shlib-1r.rd -@@ -16,9 +16,9 @@ Section Headers: - \[11\] \.neardata PROGBITS 10000128 002128 000008 00 WA 0 0 4 - \[12\] \.bss NOBITS 10000130 002130 000004 00 WA 0 0 4 - \[13\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 002130 000019 00 0 0 1 -- \[14\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 00007b 00 0 0 1 -- \[15\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 16 [0-9]+ 4 -- \[16\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[14\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 15 [0-9]+ 4 -+ \[15\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[16\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 00007b 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-tic6x/shlib-1rb.rd b/ld/testsuite/ld-tic6x/shlib-1rb.rd -index a07ddca..77ec3d7 100644 ---- a/ld/testsuite/ld-tic6x/shlib-1rb.rd -+++ b/ld/testsuite/ld-tic6x/shlib-1rb.rd -@@ -16,9 +16,9 @@ Section Headers: - \[11\] \.neardata PROGBITS 10000128 002128 000008 00 WA 0 0 4 - \[12\] \.bss NOBITS 10000130 002130 000004 00 WA 0 0 4 - \[13\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 002130 000019 00 0 0 1 -- \[14\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 00007b 00 0 0 1 -- \[15\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 16 [0-9]+ 4 -- \[16\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[14\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 15 [0-9]+ 4 -+ \[15\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[16\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 00007b 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-tic6x/shlib-app-1.rd b/ld/testsuite/ld-tic6x/shlib-app-1.rd -index f0e67c9..c3ddcd3 100644 ---- a/ld/testsuite/ld-tic6x/shlib-app-1.rd -+++ b/ld/testsuite/ld-tic6x/shlib-app-1.rd -@@ -17,9 +17,9 @@ Section Headers: - \[12\] \.neardata PROGBITS 100000c0 0020c0 00000c 00 WA 0 0 4 - \[13\] \.bss NOBITS 100000cc 0020cc 000004 00 WA 0 0 4 - \[14\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020cc 000019 00 0 0 1 -- \[15\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000080 00 0 0 1 -- \[16\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 17 [0-9]+ 4 -- \[17\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[15\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 16 [0-9]+ 4 -+ \[16\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[17\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000080 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-tic6x/shlib-app-1b.rd b/ld/testsuite/ld-tic6x/shlib-app-1b.rd -index 19a7371..2f9d0f6 100644 ---- a/ld/testsuite/ld-tic6x/shlib-app-1b.rd -+++ b/ld/testsuite/ld-tic6x/shlib-app-1b.rd -@@ -17,9 +17,9 @@ Section Headers: - \[12\] \.neardata PROGBITS 100000c0 0020c0 00000c 00 WA 0 0 4 - \[13\] \.bss NOBITS 100000cc 0020cc 000004 00 WA 0 0 4 - \[14\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020cc 000019 00 0 0 1 -- \[15\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000080 00 0 0 1 -- \[16\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 17 [0-9]+ 4 -- \[17\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[15\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 16 [0-9]+ 4 -+ \[16\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[17\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000080 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-tic6x/shlib-app-1r.rd b/ld/testsuite/ld-tic6x/shlib-app-1r.rd -index f4fcf6b..2cf8c58 100644 ---- a/ld/testsuite/ld-tic6x/shlib-app-1r.rd -+++ b/ld/testsuite/ld-tic6x/shlib-app-1r.rd -@@ -16,9 +16,9 @@ Section Headers: - \[11\] \.neardata PROGBITS 100000c0 0020c0 000004 00 WA 0 0 4 - \[12\] \.bss NOBITS 100000c4 0020c4 000004 00 WA 0 0 4 - \[13\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020c4 000019 00 0 0 1 -- \[14\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 00007b 00 0 0 1 -- \[15\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 16 [0-9]+ 4 -- \[16\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[14\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 15 [0-9]+ 4 -+ \[15\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[16\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 00007b 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-tic6x/shlib-app-1rb.rd b/ld/testsuite/ld-tic6x/shlib-app-1rb.rd -index 3b7b6a9..3cb0256 100644 ---- a/ld/testsuite/ld-tic6x/shlib-app-1rb.rd -+++ b/ld/testsuite/ld-tic6x/shlib-app-1rb.rd -@@ -16,9 +16,9 @@ Section Headers: - \[11\] \.neardata PROGBITS 100000c0 0020c0 000004 00 WA 0 0 4 - \[12\] \.bss NOBITS 100000c4 0020c4 000004 00 WA 0 0 4 - \[13\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020c4 000019 00 0 0 1 -- \[14\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 00007b 00 0 0 1 -- \[15\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 16 [0-9]+ 4 -- \[16\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[14\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 15 [0-9]+ 4 -+ \[15\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[16\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 00007b 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-tic6x/shlib-noindex.rd b/ld/testsuite/ld-tic6x/shlib-noindex.rd -index fa03130..0a29c63 100644 ---- a/ld/testsuite/ld-tic6x/shlib-noindex.rd -+++ b/ld/testsuite/ld-tic6x/shlib-noindex.rd -@@ -17,9 +17,9 @@ Section Headers: - \[12\] \.neardata PROGBITS 10000128 002128 000008 00 WA 0 0 4 - \[13\] \.bss NOBITS 10000130 002130 000004 00 WA 0 0 4 - \[14\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 002130 000019 00 0 0 1 -- \[15\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000080 00 0 0 1 -- \[16\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 17 [0-9]+ 4 -- \[17\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[15\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 16 [0-9]+ 4 -+ \[16\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[17\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000080 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-tic6x/static-app-1.rd b/ld/testsuite/ld-tic6x/static-app-1.rd -index c1bfc2f..27d2d23 100644 ---- a/ld/testsuite/ld-tic6x/static-app-1.rd -+++ b/ld/testsuite/ld-tic6x/static-app-1.rd -@@ -14,9 +14,9 @@ Section Headers: - \[ 9\] \.neardata PROGBITS 100000e0 0020e0 000014 00 WA 0 0 4 - \[10\] \.bss NOBITS 100000f4 0020f4 000004 00 WA 0 0 4 - \[11\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020f4 000019 00 0 0 1 -- \[12\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000071 00 0 0 1 -- \[13\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 14 [0-9]+ 4 -- \[14\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[12\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 13 [0-9]+ 4 -+ \[13\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[14\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000071 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-tic6x/static-app-1b.rd b/ld/testsuite/ld-tic6x/static-app-1b.rd -index c1bfc2f..27d2d23 100644 ---- a/ld/testsuite/ld-tic6x/static-app-1b.rd -+++ b/ld/testsuite/ld-tic6x/static-app-1b.rd -@@ -14,9 +14,9 @@ Section Headers: - \[ 9\] \.neardata PROGBITS 100000e0 0020e0 000014 00 WA 0 0 4 - \[10\] \.bss NOBITS 100000f4 0020f4 000004 00 WA 0 0 4 - \[11\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020f4 000019 00 0 0 1 -- \[12\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000071 00 0 0 1 -- \[13\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 14 [0-9]+ 4 -- \[14\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[12\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 13 [0-9]+ 4 -+ \[13\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[14\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000071 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-tic6x/static-app-1r.rd b/ld/testsuite/ld-tic6x/static-app-1r.rd -index af8341e..9f3ed9b 100644 ---- a/ld/testsuite/ld-tic6x/static-app-1r.rd -+++ b/ld/testsuite/ld-tic6x/static-app-1r.rd -@@ -14,9 +14,9 @@ Section Headers: - \[ 9\] \.neardata PROGBITS 100000e0 0020e0 00000c 00 WA 0 0 4 - \[10\] \.bss NOBITS 100000ec 0020ec 000004 00 WA 0 0 4 - \[11\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020ec 000019 00 0 0 1 -- \[12\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000071 00 0 0 1 -- \[13\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 14 [0-9]+ 4 -- \[14\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[12\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 13 [0-9]+ 4 -+ \[13\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[14\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000071 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-tic6x/static-app-1rb.rd b/ld/testsuite/ld-tic6x/static-app-1rb.rd -index af8341e..9f3ed9b 100644 ---- a/ld/testsuite/ld-tic6x/static-app-1rb.rd -+++ b/ld/testsuite/ld-tic6x/static-app-1rb.rd -@@ -14,9 +14,9 @@ Section Headers: - \[ 9\] \.neardata PROGBITS 100000e0 0020e0 00000c 00 WA 0 0 4 - \[10\] \.bss NOBITS 100000ec 0020ec 000004 00 WA 0 0 4 - \[11\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020ec 000019 00 0 0 1 -- \[12\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000071 00 0 0 1 -- \[13\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 14 [0-9]+ 4 -- \[14\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[12\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 13 [0-9]+ 4 -+ \[13\] \.strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[14\] \.shstrtab STRTAB 00000000 [0-9a-f]+ 000071 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/ilp32-4-nacl.d b/ld/testsuite/ld-x86-64/ilp32-4-nacl.d -index 296c406..f560ae3 100644 ---- a/ld/testsuite/ld-x86-64/ilp32-4-nacl.d -+++ b/ld/testsuite/ld-x86-64/ilp32-4-nacl.d -@@ -14,9 +14,9 @@ Section Headers: - +\[ 3\] \.dynsym +DYNSYM +100000dc +0+dc +0+50 +10 +A +4 +1 +4 - +\[ 4\] \.dynstr +STRTAB +1000012c +0+12c +0+19 +00 +A +0 +0 +1 - +\[ 5\] \.dynamic +DYNAMIC +10010148 +0+148 +0+58 +08 +WA +4 +0 +4 -- +\[ 6\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ +0+40 +00 +0 +0 +1 -- +\[ 7\] \.symtab +SYMTAB +0+0 +[0-9a-f]+ +[0-9a-f]+ +10 +8 +[0-9] +4 -- +\[ 8\] \.strtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +00 +0 +0 +1 -+ +\[ 6\] \.symtab +SYMTAB +0+0 +[0-9a-f]+ +[0-9a-f]+ +10 +7 +[0-9] +4 -+ +\[ 7\] \.strtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +00 +0 +0 +1 -+ +\[ 8\] \.shstrtab +STRTAB +0+ +[0-9a-f]+ +0+40 +00 +0 +0 +1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/ilp32-4.d b/ld/testsuite/ld-x86-64/ilp32-4.d -index 7f1391f..658ad49 100644 ---- a/ld/testsuite/ld-x86-64/ilp32-4.d -+++ b/ld/testsuite/ld-x86-64/ilp32-4.d -@@ -13,9 +13,9 @@ Section Headers: - \[ 3\] .dynstr STRTAB 0000010c 00010c 000019 00 A 0 0 1 - \[ 4\] .text PROGBITS 00000125 000125 000001 00 AX 0 0 1 - \[ 5\] .dynamic DYNAMIC 00200128 000128 000058 08 WA 3 0 4 -- \[ 6\] .shstrtab STRTAB 00000000 [0-9a-f]+ 000040 00 0 0 1 -- \[ 7\] .symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 8 [0-9] 4 -- \[ 8\] .strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[ 6\] .symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 7 [0-9] 4 -+ \[ 7\] .strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[ 8\] .shstrtab STRTAB 00000000 [0-9a-f]+ 000040 00 0 0 1 - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/nogot1.d b/ld/testsuite/ld-x86-64/nogot1.d -index f6c4cf1..823a28a 100644 ---- a/ld/testsuite/ld-x86-64/nogot1.d -+++ b/ld/testsuite/ld-x86-64/nogot1.d -@@ -4,5 +4,6 @@ - - #... - [ ]*\[.*\][ ]+\.dynamic[ ]+DYNAMIC.* -+#... - [ ]*\[.*\][ ]+.*STRTAB.* - #pass -diff --git a/ld/testsuite/ld-x86-64/pr12718.d b/ld/testsuite/ld-x86-64/pr12718.d -index 4b81d71..07d1732 100644 ---- a/ld/testsuite/ld-x86-64/pr12718.d -+++ b/ld/testsuite/ld-x86-64/pr12718.d -@@ -9,8 +9,8 @@ Section Headers: - +\[Nr\] Name +Type +Address +Off +Size +ES +Flg +Lk +Inf +Al - +\[ 0\] +NULL +0+ +0+ +0+ +0+ +0 +0 +0 - +\[ 1\] +.text +PROGBITS +[0-9a-f]+ +[0-9a-f]+ +000006 00 +AX +0 +0 +1 -- +\[ 2\] +.shstrtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +0+ +0 +0 +1 -- +\[ 3\] +.symtab +SYMTAB +0+ +[0-9a-f]+ +[0-9a-f]+ 18 +4 +[0-9] +8 -- +\[ 4\] +.strtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ 00 +0 +0 +1 -+ +\[ 2\] +.symtab +SYMTAB +0+ +[0-9a-f]+ +[0-9a-f]+ 18 +3 +[0-9] +8 -+ +\[ 3\] +.strtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ 00 +0 +0 +1 -+ +\[ 4\] +.shstrtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +0+ +0 +0 +1 - Key to Flags: - #pass -diff --git a/ld/testsuite/ld-x86-64/pr12921.d b/ld/testsuite/ld-x86-64/pr12921.d -index 8d09616..6fe6abe 100644 ---- a/ld/testsuite/ld-x86-64/pr12921.d -+++ b/ld/testsuite/ld-x86-64/pr12921.d -@@ -11,8 +11,8 @@ Section Headers: - +\[ 1\] .text +PROGBITS +[0-9a-f]+ +[0-9a-f]+ +0+1 00 +AX +0 +0 +4096 - +\[ 2\] .data +PROGBITS +[0-9a-f]+ +[0-9a-f]+000 +0+28 +00 +WA +0 +0 +4096 - +\[ 3\] .bss +NOBITS +[0-9a-f]+ +[0-9a-f]+028 +0+10000 +00 +WA +0 +0 +4096 -- +\[ 4\] .shstrtab +STRTAB +0+ +[0-9a-f]+ +0+2c +00 +0 +0 +1 -- +\[ 5\] .symtab +SYMTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +18 +6 +[0-9] +8 -- +\[ 6\] .strtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +00 +0 +0 +1 -+ +\[ 4\] .symtab +SYMTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +18 +5 +[0-9] +8 -+ +\[ 5\] .strtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +00 +0 +0 +1 -+ +\[ 6\] .shstrtab +STRTAB +0+ +[0-9a-f]+ +0+2c +00 +0 +0 +1 - Key to Flags: - #pass -diff --git a/ld/testsuite/ld-x86-64/split-by-file-nacl.rd b/ld/testsuite/ld-x86-64/split-by-file-nacl.rd -index d11988a..4e3e74a 100644 ---- a/ld/testsuite/ld-x86-64/split-by-file-nacl.rd -+++ b/ld/testsuite/ld-x86-64/split-by-file-nacl.rd -@@ -8,8 +8,8 @@ Section Headers: - \[ 3\] .data PROGBITS 0000000000000000 000043 000000 00 WA 0 0 1 - \[ 4\] .bss NOBITS 0000000000000000 000043 000000 00 WA 0 0 1 - \[ 5\] .foo.0 PROGBITS 0000000000000003 000043 000003 00 AXl 0 0 1 -- \[ 6\] .shstrtab STRTAB 0000000000000000 [0-9a-f]+ 000038 00 0 0 1 -- \[ 7\] .symtab SYMTAB 0000000000000000 [0-9a-f]+ [0-9a-f]+ 18 8 [0-9] 8 -- \[ 8\] .strtab STRTAB 0000000000000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[ 6\] .symtab SYMTAB 0000000000000000 [0-9a-f]+ [0-9a-f]+ 18 7 [0-9] 8 -+ \[ 7\] .strtab STRTAB 0000000000000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[ 8\] .shstrtab STRTAB 0000000000000000 [0-9a-f]+ 000038 00 0 0 1 - Key to Flags: - #pass -diff --git a/ld/testsuite/ld-x86-64/split-by-file.rd b/ld/testsuite/ld-x86-64/split-by-file.rd -index d11988a..4e3e74a 100644 ---- a/ld/testsuite/ld-x86-64/split-by-file.rd -+++ b/ld/testsuite/ld-x86-64/split-by-file.rd -@@ -8,8 +8,8 @@ Section Headers: - \[ 3\] .data PROGBITS 0000000000000000 000043 000000 00 WA 0 0 1 - \[ 4\] .bss NOBITS 0000000000000000 000043 000000 00 WA 0 0 1 - \[ 5\] .foo.0 PROGBITS 0000000000000003 000043 000003 00 AXl 0 0 1 -- \[ 6\] .shstrtab STRTAB 0000000000000000 [0-9a-f]+ 000038 00 0 0 1 -- \[ 7\] .symtab SYMTAB 0000000000000000 [0-9a-f]+ [0-9a-f]+ 18 8 [0-9] 8 -- \[ 8\] .strtab STRTAB 0000000000000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[ 6\] .symtab SYMTAB 0000000000000000 [0-9a-f]+ [0-9a-f]+ 18 7 [0-9] 8 -+ \[ 7\] .strtab STRTAB 0000000000000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 -+ \[ 8\] .shstrtab STRTAB 0000000000000000 [0-9a-f]+ 000038 00 0 0 1 - Key to Flags: - #pass -diff --git a/ld/testsuite/ld-x86-64/tlsbin-nacl.rd b/ld/testsuite/ld-x86-64/tlsbin-nacl.rd -index 5de5e1a..4284644 100644 ---- a/ld/testsuite/ld-x86-64/tlsbin-nacl.rd -+++ b/ld/testsuite/ld-x86-64/tlsbin-nacl.rd -@@ -23,9 +23,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+10030410 [0-9a-f]+ 0+140 10 +WA +6 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+10030550 [0-9a-f]+ 0+20 08 +WA +0 +0 +8 - +\[[ 0-9]+\] .got.plt +PROGBITS +0+10030570 [0-9a-f]+ 0+20 08 +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/tlsbin.rd b/ld/testsuite/ld-x86-64/tlsbin.rd -index 6f73b98..a34775d 100644 ---- a/ld/testsuite/ld-x86-64/tlsbin.rd -+++ b/ld/testsuite/ld-x86-64/tlsbin.rd -@@ -23,9 +23,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+601298 0+1298 0+140 10 +WA +4 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+6013d8 0+13d8 0+20 08 +WA +0 +0 +8 - +\[[ 0-9]+\] .got.plt +PROGBITS +0+6013f8 0+13f8 0+20 08 +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/tlsbin2-nacl.rd b/ld/testsuite/ld-x86-64/tlsbin2-nacl.rd -index 110927b..1f5b782 100644 ---- a/ld/testsuite/ld-x86-64/tlsbin2-nacl.rd -+++ b/ld/testsuite/ld-x86-64/tlsbin2-nacl.rd -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+10030410 [0-9a-f]+ 0+100 10 +WA +5 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+10030510 [0-9a-f]+ 0+28 08 +WA +0 +0 +8 - +\[[ 0-9]+\] .got.plt +PROGBITS +0+10030538 [0-9a-f]+ 0+18 08 +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/tlsbin2.rd b/ld/testsuite/ld-x86-64/tlsbin2.rd -index b283648..5fb1599 100644 ---- a/ld/testsuite/ld-x86-64/tlsbin2.rd -+++ b/ld/testsuite/ld-x86-64/tlsbin2.rd -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+601298 0+1298 0+100 10 +WA +4 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+601398 0+1398 0+28 08 +WA +0 +0 +8 - +\[[ 0-9]+\] .got.plt +PROGBITS +0+6013c0 0+13c0 0+18 08 +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/tlsbindesc-nacl.rd b/ld/testsuite/ld-x86-64/tlsbindesc-nacl.rd -index 39a5abe..2c046f4 100644 ---- a/ld/testsuite/ld-x86-64/tlsbindesc-nacl.rd -+++ b/ld/testsuite/ld-x86-64/tlsbindesc-nacl.rd -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+100303d0 0+3d0 0+100 10 +WA +5 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+100304d0 0+4d0 0+20 08 +WA +0 +0 +8 - +\[[ 0-9]+\] .got.plt +PROGBITS +0+100304f0 0+4f0 0+18 08 +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/tlsbindesc.rd b/ld/testsuite/ld-x86-64/tlsbindesc.rd -index 8c9a342..c94014a 100644 ---- a/ld/testsuite/ld-x86-64/tlsbindesc.rd -+++ b/ld/testsuite/ld-x86-64/tlsbindesc.rd -@@ -21,9 +21,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+601260 0+1260 0+100 10 +WA +4 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+601360 0+1360 0+20 08 +WA +0 +0 +8 - +\[[ 0-9]+\] .got.plt +PROGBITS +0+601380 0+1380 0+18 08 +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/tlsdesc-nacl.rd b/ld/testsuite/ld-x86-64/tlsdesc-nacl.rd -index db196a5..7c9d77a 100644 ---- a/ld/testsuite/ld-x86-64/tlsdesc-nacl.rd -+++ b/ld/testsuite/ld-x86-64/tlsdesc-nacl.rd -@@ -22,9 +22,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+100104b0 [0-9a-f]+ 0+150 10 +WA +5 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+10010600 [0-9a-f]+ 0+48 08 +WA +0 +0 +8 - +\[[ 0-9]+\] .got.plt +PROGBITS +0+10010648 [0-9a-f]+ 0+68 08 +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/tlsdesc.rd b/ld/testsuite/ld-x86-64/tlsdesc.rd -index 6a636a0..18060c0 100644 ---- a/ld/testsuite/ld-x86-64/tlsdesc.rd -+++ b/ld/testsuite/ld-x86-64/tlsdesc.rd -@@ -22,9 +22,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+2011b8 0+11b8 0+150 10 +WA +3 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+201308 0+1308 0+48 08 +WA +0 +0 +8 - +\[[ 0-9]+\] .got.plt +PROGBITS +0+201350 0+1350 0+68 08 +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/tlsgdesc-nacl.rd b/ld/testsuite/ld-x86-64/tlsgdesc-nacl.rd -index 8614af5..934ba03 100644 ---- a/ld/testsuite/ld-x86-64/tlsgdesc-nacl.rd -+++ b/ld/testsuite/ld-x86-64/tlsgdesc-nacl.rd -@@ -19,9 +19,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +.* - +\[[ 0-9]+\] \.got +.* - +\[[ 0-9]+\] \.got.plt +.* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/tlsgdesc.rd b/ld/testsuite/ld-x86-64/tlsgdesc.rd -index 5d845c7..729d12e6 100644 ---- a/ld/testsuite/ld-x86-64/tlsgdesc.rd -+++ b/ld/testsuite/ld-x86-64/tlsgdesc.rd -@@ -19,9 +19,9 @@ Section Headers: - +\[[ 0-9]+\] \.dynamic +.* - +\[[ 0-9]+\] \.got +.* - +\[[ 0-9]+\] \.got.plt +.* -- +\[[ 0-9]+\] \.shstrtab +.* - +\[[ 0-9]+\] \.symtab +.* - +\[[ 0-9]+\] \.strtab +.* -+ +\[[ 0-9]+\] \.shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/tlspic-nacl.rd b/ld/testsuite/ld-x86-64/tlspic-nacl.rd -index f98e39b..740e399 100644 ---- a/ld/testsuite/ld-x86-64/tlspic-nacl.rd -+++ b/ld/testsuite/ld-x86-64/tlspic-nacl.rd -@@ -22,9 +22,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+10010510 [0-9a-f]+ 0+130 10 +WA +5 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+10010640 [0-9a-f]+ 0+90 08 +WA +0 +0 +8 - +\[[ 0-9]+\] .got.plt +PROGBITS +0+100106d0 [0-9a-f]+ 0+20 08 +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/tlspic.rd b/ld/testsuite/ld-x86-64/tlspic.rd -index 589666b..3f5d544 100644 ---- a/ld/testsuite/ld-x86-64/tlspic.rd -+++ b/ld/testsuite/ld-x86-64/tlspic.rd -@@ -22,9 +22,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+201380 0+1380 0+130 10 +WA +3 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+2014b0 0+14b0 0+90 08 +WA +0 +0 +8 - +\[[ 0-9]+\] .got.plt +PROGBITS +0+201540 0+1540 0+20 08 +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/tlspic2-nacl.rd b/ld/testsuite/ld-x86-64/tlspic2-nacl.rd -index 1919b3f..cbc0a75 100644 ---- a/ld/testsuite/ld-x86-64/tlspic2-nacl.rd -+++ b/ld/testsuite/ld-x86-64/tlspic2-nacl.rd -@@ -22,9 +22,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+10010528 [0-9a-f]+ 0+130 10 +WA +5 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+10010658 [0-9a-f]+ 0+98 08 +WA +0 +0 +8 - +\[[ 0-9]+\] .got.plt +PROGBITS +0+100106f0 [0-9a-f]+ 0+20 08 +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-x86-64/tlspic2.rd b/ld/testsuite/ld-x86-64/tlspic2.rd -index 3c7b8c1..684ae21 100644 ---- a/ld/testsuite/ld-x86-64/tlspic2.rd -+++ b/ld/testsuite/ld-x86-64/tlspic2.rd -@@ -22,9 +22,9 @@ Section Headers: - +\[[ 0-9]+\] .dynamic +DYNAMIC +0+201380 0+1380 0+100 10 +WA +3 +0 +8 - +\[[ 0-9]+\] .got +PROGBITS +0+201480 0+1480 0+98 08 +WA +0 +0 +8 - +\[[ 0-9]+\] .got.plt +PROGBITS +0+201518 0+1518 0+18 08 +WA +0 +0 +8 -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-xtensa/tlsbin.rd b/ld/testsuite/ld-xtensa/tlsbin.rd -index 2361139..dcd2b04 100644 ---- a/ld/testsuite/ld-xtensa/tlsbin.rd -+++ b/ld/testsuite/ld-xtensa/tlsbin.rd -@@ -22,9 +22,9 @@ Section Headers: - +\[[ 0-9]+\] .xtensa.info +NOTE +0+ .* - +\[[ 0-9]+\] .xt.lit +PROGBITS +0+ .* - +\[[ 0-9]+\] .xt.prop +PROGBITS +0+ .* -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - Key to Flags: - #... - -diff --git a/ld/testsuite/ld-xtensa/tlspic.rd b/ld/testsuite/ld-xtensa/tlspic.rd -index 379334c..b6f7067 100644 ---- a/ld/testsuite/ld-xtensa/tlspic.rd -+++ b/ld/testsuite/ld-xtensa/tlspic.rd -@@ -23,9 +23,9 @@ Section Headers: - +\[[ 0-9]+\] .xtensa.info +NOTE +0+ .* - +\[[ 0-9]+\] .xt.lit +PROGBITS +0+ .* - +\[[ 0-9]+\] .xt.prop +PROGBITS +0+ .* -- +\[[ 0-9]+\] .shstrtab +.* - +\[[ 0-9]+\] .symtab +.* - +\[[ 0-9]+\] .strtab +.* -+ +\[[ 0-9]+\] .shstrtab +.* - Key to Flags: - #... - diff --git a/binutils-2.27.tar.bz2 b/binutils-2.27.tar.bz2 deleted file mode 100644 index e2a3014..0000000 --- a/binutils-2.27.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:369737ce51587f92466041a97ab7d2358c6d9e1b6490b3940eb09fb0a9a6ac88 -size 26099568 diff --git a/binutils-2.28-branch.diff b/binutils-2.28-branch.diff new file mode 100644 index 0000000..f48f290 --- /dev/null +++ b/binutils-2.28-branch.diff @@ -0,0 +1,1167 @@ +diff --git a/bfd/ChangeLog b/bfd/ChangeLog +index 85c6a81..17e7e3b 100644 +--- a/bfd/ChangeLog ++++ b/bfd/ChangeLog +@@ -1,3 +1,25 @@ ++2017-03-07 Alan Modra ++ ++ PR 21224 ++ PR 20519 ++ * elf64-ppc.c (ppc64_elf_relocate_section): Add missing ++ dyn_relocs check. ++ ++2017-03-07 Alan Modra ++ ++ Apply from master ++ 2017-03-02 Alan Modra ++ * elf32-ppc.c (ppc_elf_vle_split16): Correct insn mask typo. ++ ++2017-03-02 Tristan Gingold ++ ++ * version.m4: Bump version to 2.28.0 ++ * configure: Regenerate. ++ ++2017-03-02 Tristan Gingold ++ ++ * development.sh: Set development to true. ++ + 2017-03-02 Tristan Gingold + + * version.m4: Bump version to 2.28 +diff --git a/bfd/configure b/bfd/configure +index 9769387..f30bfab 100755 +--- a/bfd/configure ++++ b/bfd/configure +@@ -1,6 +1,6 @@ + #! /bin/sh + # Guess values for system-dependent variables and create Makefiles. +-# Generated by GNU Autoconf 2.64 for bfd 2.28. ++# Generated by GNU Autoconf 2.64 for bfd 2.28.0. + # + # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, + # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software +@@ -556,8 +556,8 @@ MAKEFLAGS= + # Identity of this package. + PACKAGE_NAME='bfd' + PACKAGE_TARNAME='bfd' +-PACKAGE_VERSION='2.28' +-PACKAGE_STRING='bfd 2.28' ++PACKAGE_VERSION='2.28.0' ++PACKAGE_STRING='bfd 2.28.0' + PACKAGE_BUGREPORT='' + PACKAGE_URL='' + +@@ -1354,7 +1354,7 @@ if test "$ac_init_help" = "long"; then + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat <<_ACEOF +-\`configure' configures bfd 2.28 to adapt to many kinds of systems. ++\`configure' configures bfd 2.28.0 to adapt to many kinds of systems. + + Usage: $0 [OPTION]... [VAR=VALUE]... + +@@ -1425,7 +1425,7 @@ fi + + if test -n "$ac_init_help"; then + case $ac_init_help in +- short | recursive ) echo "Configuration of bfd 2.28:";; ++ short | recursive ) echo "Configuration of bfd 2.28.0:";; + esac + cat <<\_ACEOF + +@@ -1546,7 +1546,7 @@ fi + test -n "$ac_init_help" && exit $ac_status + if $ac_init_version; then + cat <<\_ACEOF +-bfd configure 2.28 ++bfd configure 2.28.0 + generated by GNU Autoconf 2.64 + + Copyright (C) 2009 Free Software Foundation, Inc. +@@ -2188,7 +2188,7 @@ cat >config.log <<_ACEOF + This file contains any messages produced by compilers while + running configure, to aid debugging if configure makes a mistake. + +-It was created by bfd $as_me 2.28, which was ++It was created by bfd $as_me 2.28.0, which was + generated by GNU Autoconf 2.64. Invocation command line was + + $ $0 $@ +@@ -3997,7 +3997,7 @@ fi + + # Define the identity of the package. + PACKAGE='bfd' +- VERSION='2.28' ++ VERSION='2.28.0' + + + cat >>confdefs.h <<_ACEOF +@@ -16613,7 +16613,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + # report actual input values of CONFIG_FILES etc. instead of their + # values after options handling. + ac_log=" +-This file was extended by bfd $as_me 2.28, which was ++This file was extended by bfd $as_me 2.28.0, which was + generated by GNU Autoconf 2.64. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES +@@ -16677,7 +16677,7 @@ Report bugs to the package provider." + _ACEOF + cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + ac_cs_version="\\ +-bfd config.status 2.28 ++bfd config.status 2.28.0 + configured by $0, generated by GNU Autoconf 2.64, + with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" + +diff --git a/bfd/development.sh b/bfd/development.sh +index b001a88..cd31410 100644 +--- a/bfd/development.sh ++++ b/bfd/development.sh +@@ -16,4 +16,4 @@ + # along with this program. If not, see . + + # Controls whether to enable development-mode features by default. +-development=false ++development=true +diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c +index 0f3eb68..10caa8a 100644 +--- a/bfd/elf32-ppc.c ++++ b/bfd/elf32-ppc.c +@@ -4921,7 +4921,7 @@ ppc_elf_vle_split16 (bfd *input_bfd, + unsigned int insn, opcode, top5; + + insn = bfd_get_32 (input_bfd, loc); +- opcode = insn & 0xf300f800; ++ opcode = insn & 0xfc00f800; + if (opcode == E_OR2I_INSN + || opcode == E_AND2I_DOT_INSN + || opcode == E_OR2IS_INSN +diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c +index e7d4792..3381647 100644 +--- a/bfd/elf64-ppc.c ++++ b/bfd/elf64-ppc.c +@@ -14798,8 +14798,10 @@ ppc64_elf_relocate_section (bfd *output_bfd, + break; + + if (bfd_link_pic (info) +- ? ((h != NULL && pc_dynrelocs (h)) +- || must_be_dyn_reloc (info, r_type)) ++ ? ((h == NULL ++ || h->dyn_relocs != NULL) ++ && ((h != NULL && pc_dynrelocs (h)) ++ || must_be_dyn_reloc (info, r_type))) + : (h != NULL + ? h->dyn_relocs != NULL + : ELF_ST_TYPE (sym->st_info) == STT_GNU_IFUNC)) +diff --git a/bfd/version.h b/bfd/version.h +index eda06e4..4d79b22 100644 +--- a/bfd/version.h ++++ b/bfd/version.h +@@ -1,4 +1,4 @@ +-#define BFD_VERSION_DATE 20170302 ++#define BFD_VERSION_DATE 20170308 + #define BFD_VERSION @bfd_version@ + #define BFD_VERSION_STRING @bfd_version_package@ @bfd_version_string@ + #define REPORT_BUGS_TO @report_bugs_to@ +diff --git a/bfd/version.m4 b/bfd/version.m4 +index 0cfca2d..8bde21e 100644 +--- a/bfd/version.m4 ++++ b/bfd/version.m4 +@@ -1 +1 @@ +-m4_define([BFD_VERSION], [2.28]) ++m4_define([BFD_VERSION], [2.28.0]) +diff --git a/binutils/ChangeLog b/binutils/ChangeLog +index aa17468..f21867f 100644 +--- a/binutils/ChangeLog ++++ b/binutils/ChangeLog +@@ -2,6 +2,10 @@ + + * configure: Regenerate. + ++2017-03-02 Tristan Gingold ++ ++ * configure: Regenerate. ++ + 2017-01-18 Bernhard Rosenkranzer + + PR 21059 +diff --git a/binutils/configure b/binutils/configure +index baddf34..82119ef 100755 +--- a/binutils/configure ++++ b/binutils/configure +@@ -1,6 +1,6 @@ + #! /bin/sh + # Guess values for system-dependent variables and create Makefiles. +-# Generated by GNU Autoconf 2.64 for binutils 2.28. ++# Generated by GNU Autoconf 2.64 for binutils 2.28.0. + # + # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, + # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software +@@ -556,8 +556,8 @@ MAKEFLAGS= + # Identity of this package. + PACKAGE_NAME='binutils' + PACKAGE_TARNAME='binutils' +-PACKAGE_VERSION='2.28' +-PACKAGE_STRING='binutils 2.28' ++PACKAGE_VERSION='2.28.0' ++PACKAGE_STRING='binutils 2.28.0' + PACKAGE_BUGREPORT='' + PACKAGE_URL='' + +@@ -1338,7 +1338,7 @@ if test "$ac_init_help" = "long"; then + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat <<_ACEOF +-\`configure' configures binutils 2.28 to adapt to many kinds of systems. ++\`configure' configures binutils 2.28.0 to adapt to many kinds of systems. + + Usage: $0 [OPTION]... [VAR=VALUE]... + +@@ -1409,7 +1409,7 @@ fi + + if test -n "$ac_init_help"; then + case $ac_init_help in +- short | recursive ) echo "Configuration of binutils 2.28:";; ++ short | recursive ) echo "Configuration of binutils 2.28.0:";; + esac + cat <<\_ACEOF + +@@ -1530,7 +1530,7 @@ fi + test -n "$ac_init_help" && exit $ac_status + if $ac_init_version; then + cat <<\_ACEOF +-binutils configure 2.28 ++binutils configure 2.28.0 + generated by GNU Autoconf 2.64 + + Copyright (C) 2009 Free Software Foundation, Inc. +@@ -2172,7 +2172,7 @@ cat >config.log <<_ACEOF + This file contains any messages produced by compilers while + running configure, to aid debugging if configure makes a mistake. + +-It was created by binutils $as_me 2.28, which was ++It was created by binutils $as_me 2.28.0, which was + generated by GNU Autoconf 2.64. Invocation command line was + + $ $0 $@ +@@ -3981,7 +3981,7 @@ fi + + # Define the identity of the package. + PACKAGE='binutils' +- VERSION='2.28' ++ VERSION='2.28.0' + + + cat >>confdefs.h <<_ACEOF +@@ -15223,7 +15223,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + # report actual input values of CONFIG_FILES etc. instead of their + # values after options handling. + ac_log=" +-This file was extended by binutils $as_me 2.28, which was ++This file was extended by binutils $as_me 2.28.0, which was + generated by GNU Autoconf 2.64. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES +@@ -15287,7 +15287,7 @@ Report bugs to the package provider." + _ACEOF + cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + ac_cs_version="\\ +-binutils config.status 2.28 ++binutils config.status 2.28.0 + configured by $0, generated by GNU Autoconf 2.64, + with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" + +diff --git a/gas/ChangeLog b/gas/ChangeLog +index 8a586ad..fa9ecbe 100644 +--- a/gas/ChangeLog ++++ b/gas/ChangeLog +@@ -2,6 +2,10 @@ + + * configure: Regenerate. + ++2017-03-02 Tristan Gingold ++ ++ * configure: Regenerate. ++ + 2017-02-28 Alan Modra + + * config/tc-nios2.h (TC_FORCE_RELOCATION_SUB_LOCAL): Define. +diff --git a/gas/configure b/gas/configure +index ce7091e..e574cb8 100755 +--- a/gas/configure ++++ b/gas/configure +@@ -1,6 +1,6 @@ + #! /bin/sh + # Guess values for system-dependent variables and create Makefiles. +-# Generated by GNU Autoconf 2.64 for gas 2.28. ++# Generated by GNU Autoconf 2.64 for gas 2.28.0. + # + # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, + # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software +@@ -556,8 +556,8 @@ MAKEFLAGS= + # Identity of this package. + PACKAGE_NAME='gas' + PACKAGE_TARNAME='gas' +-PACKAGE_VERSION='2.28' +-PACKAGE_STRING='gas 2.28' ++PACKAGE_VERSION='2.28.0' ++PACKAGE_STRING='gas 2.28.0' + PACKAGE_BUGREPORT='' + PACKAGE_URL='' + +@@ -1330,7 +1330,7 @@ if test "$ac_init_help" = "long"; then + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat <<_ACEOF +-\`configure' configures gas 2.28 to adapt to many kinds of systems. ++\`configure' configures gas 2.28.0 to adapt to many kinds of systems. + + Usage: $0 [OPTION]... [VAR=VALUE]... + +@@ -1401,7 +1401,7 @@ fi + + if test -n "$ac_init_help"; then + case $ac_init_help in +- short | recursive ) echo "Configuration of gas 2.28:";; ++ short | recursive ) echo "Configuration of gas 2.28.0:";; + esac + cat <<\_ACEOF + +@@ -1523,7 +1523,7 @@ fi + test -n "$ac_init_help" && exit $ac_status + if $ac_init_version; then + cat <<\_ACEOF +-gas configure 2.28 ++gas configure 2.28.0 + generated by GNU Autoconf 2.64 + + Copyright (C) 2009 Free Software Foundation, Inc. +@@ -1933,7 +1933,7 @@ cat >config.log <<_ACEOF + This file contains any messages produced by compilers while + running configure, to aid debugging if configure makes a mistake. + +-It was created by gas $as_me 2.28, which was ++It was created by gas $as_me 2.28.0, which was + generated by GNU Autoconf 2.64. Invocation command line was + + $ $0 $@ +@@ -3742,7 +3742,7 @@ fi + + # Define the identity of the package. + PACKAGE='gas' +- VERSION='2.28' ++ VERSION='2.28.0' + + + cat >>confdefs.h <<_ACEOF +@@ -15212,7 +15212,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + # report actual input values of CONFIG_FILES etc. instead of their + # values after options handling. + ac_log=" +-This file was extended by gas $as_me 2.28, which was ++This file was extended by gas $as_me 2.28.0, which was + generated by GNU Autoconf 2.64. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES +@@ -15276,7 +15276,7 @@ Report bugs to the package provider." + _ACEOF + cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + ac_cs_version="\\ +-gas config.status 2.28 ++gas config.status 2.28.0 + configured by $0, generated by GNU Autoconf 2.64, + with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" + +diff --git a/gprof/ChangeLog b/gprof/ChangeLog +index cc57e0d8..0c25d51 100644 +--- a/gprof/ChangeLog ++++ b/gprof/ChangeLog +@@ -2,6 +2,10 @@ + + * configure: Regenerate. + ++2017-03-02 Tristan Gingold ++ ++ * configure: Regenerate. ++ + 2017-01-02 Alan Modra + + Update year range in copyright notice of all files. +diff --git a/gprof/configure b/gprof/configure +index 43e0dac..9e6b8f3 100755 +--- a/gprof/configure ++++ b/gprof/configure +@@ -1,6 +1,6 @@ + #! /bin/sh + # Guess values for system-dependent variables and create Makefiles. +-# Generated by GNU Autoconf 2.64 for gprof 2.28. ++# Generated by GNU Autoconf 2.64 for gprof 2.28.0. + # + # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, + # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software +@@ -556,8 +556,8 @@ MAKEFLAGS= + # Identity of this package. + PACKAGE_NAME='gprof' + PACKAGE_TARNAME='gprof' +-PACKAGE_VERSION='2.28' +-PACKAGE_STRING='gprof 2.28' ++PACKAGE_VERSION='2.28.0' ++PACKAGE_STRING='gprof 2.28.0' + PACKAGE_BUGREPORT='' + PACKAGE_URL='' + +@@ -1302,7 +1302,7 @@ if test "$ac_init_help" = "long"; then + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat <<_ACEOF +-\`configure' configures gprof 2.28 to adapt to many kinds of systems. ++\`configure' configures gprof 2.28.0 to adapt to many kinds of systems. + + Usage: $0 [OPTION]... [VAR=VALUE]... + +@@ -1373,7 +1373,7 @@ fi + + if test -n "$ac_init_help"; then + case $ac_init_help in +- short | recursive ) echo "Configuration of gprof 2.28:";; ++ short | recursive ) echo "Configuration of gprof 2.28.0:";; + esac + cat <<\_ACEOF + +@@ -1479,7 +1479,7 @@ fi + test -n "$ac_init_help" && exit $ac_status + if $ac_init_version; then + cat <<\_ACEOF +-gprof configure 2.28 ++gprof configure 2.28.0 + generated by GNU Autoconf 2.64 + + Copyright (C) 2009 Free Software Foundation, Inc. +@@ -1844,7 +1844,7 @@ cat >config.log <<_ACEOF + This file contains any messages produced by compilers while + running configure, to aid debugging if configure makes a mistake. + +-It was created by gprof $as_me 2.28, which was ++It was created by gprof $as_me 2.28.0, which was + generated by GNU Autoconf 2.64. Invocation command line was + + $ $0 $@ +@@ -3653,7 +3653,7 @@ fi + + # Define the identity of the package. + PACKAGE='gprof' +- VERSION='2.28' ++ VERSION='2.28.0' + + + cat >>confdefs.h <<_ACEOF +@@ -12787,7 +12787,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + # report actual input values of CONFIG_FILES etc. instead of their + # values after options handling. + ac_log=" +-This file was extended by gprof $as_me 2.28, which was ++This file was extended by gprof $as_me 2.28.0, which was + generated by GNU Autoconf 2.64. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES +@@ -12851,7 +12851,7 @@ Report bugs to the package provider." + _ACEOF + cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + ac_cs_version="\\ +-gprof config.status 2.28 ++gprof config.status 2.28.0 + configured by $0, generated by GNU Autoconf 2.64, + with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" + +diff --git a/ld/ChangeLog b/ld/ChangeLog +index ba7d1d4..f4fda0c 100644 +--- a/ld/ChangeLog ++++ b/ld/ChangeLog +@@ -1,3 +1,12 @@ ++2017-03-07 Alan Modra ++ ++ * ldlang.c (open_input_bfds): Check that lang_assignment_statement ++ is not an assert before referencing defsym. ++ ++2017-03-02 Tristan Gingold ++ ++ * configure: Regenerate. ++ + 2017-03-02 Tristan Gingold + + * configure: Regenerate. +diff --git a/ld/configure b/ld/configure +index 36af969..a16c6db 100755 +--- a/ld/configure ++++ b/ld/configure +@@ -1,6 +1,6 @@ + #! /bin/sh + # Guess values for system-dependent variables and create Makefiles. +-# Generated by GNU Autoconf 2.64 for ld 2.28. ++# Generated by GNU Autoconf 2.64 for ld 2.28.0. + # + # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, + # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software +@@ -556,8 +556,8 @@ MAKEFLAGS= + # Identity of this package. + PACKAGE_NAME='ld' + PACKAGE_TARNAME='ld' +-PACKAGE_VERSION='2.28' +-PACKAGE_STRING='ld 2.28' ++PACKAGE_VERSION='2.28.0' ++PACKAGE_STRING='ld 2.28.0' + PACKAGE_BUGREPORT='' + PACKAGE_URL='' + +@@ -1354,7 +1354,7 @@ if test "$ac_init_help" = "long"; then + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat <<_ACEOF +-\`configure' configures ld 2.28 to adapt to many kinds of systems. ++\`configure' configures ld 2.28.0 to adapt to many kinds of systems. + + Usage: $0 [OPTION]... [VAR=VALUE]... + +@@ -1425,7 +1425,7 @@ fi + + if test -n "$ac_init_help"; then + case $ac_init_help in +- short | recursive ) echo "Configuration of ld 2.28:";; ++ short | recursive ) echo "Configuration of ld 2.28.0:";; + esac + cat <<\_ACEOF + +@@ -1550,7 +1550,7 @@ fi + test -n "$ac_init_help" && exit $ac_status + if $ac_init_version; then + cat <<\_ACEOF +-ld configure 2.28 ++ld configure 2.28.0 + generated by GNU Autoconf 2.64 + + Copyright (C) 2009 Free Software Foundation, Inc. +@@ -2259,7 +2259,7 @@ cat >config.log <<_ACEOF + This file contains any messages produced by compilers while + running configure, to aid debugging if configure makes a mistake. + +-It was created by ld $as_me 2.28, which was ++It was created by ld $as_me 2.28.0, which was + generated by GNU Autoconf 2.64. Invocation command line was + + $ $0 $@ +@@ -4069,7 +4069,7 @@ fi + + # Define the identity of the package. + PACKAGE='ld' +- VERSION='2.28' ++ VERSION='2.28.0' + + + cat >>confdefs.h <<_ACEOF +@@ -17813,7 +17813,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + # report actual input values of CONFIG_FILES etc. instead of their + # values after options handling. + ac_log=" +-This file was extended by ld $as_me 2.28, which was ++This file was extended by ld $as_me 2.28.0, which was + generated by GNU Autoconf 2.64. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES +@@ -17877,7 +17877,7 @@ Report bugs to the package provider." + _ACEOF + cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + ac_cs_version="\\ +-ld config.status 2.28 ++ld config.status 2.28.0 + configured by $0, generated by GNU Autoconf 2.64, + with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" + +diff --git a/ld/ldlang.c b/ld/ldlang.c +index dafc348..54f160c 100644 +--- a/ld/ldlang.c ++++ b/ld/ldlang.c +@@ -3377,7 +3377,8 @@ open_input_bfds (lang_statement_union_type *s, enum open_bfd_mode mode) + #endif + break; + case lang_assignment_statement_enum: +- if (s->assignment_statement.exp->assign.defsym) ++ if (s->assignment_statement.exp->type.node_class != etree_assert ++ && s->assignment_statement.exp->assign.defsym) + /* This is from a --defsym on the command line. */ + exp_fold_tree_no_dot (s->assignment_statement.exp); + break; +diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog +index 7f01e54..3a19442 100644 +--- a/opcodes/ChangeLog ++++ b/opcodes/ChangeLog +@@ -1,3 +1,19 @@ ++2017-03-07 Alan Modra ++ ++ Apply from master ++ 2017-03-06 Alan Modra ++ PR 21124 ++ * ppc-opc.c (extract_esync, extract_ls, extract_ral, extract_ram) ++ (extract_raq, extract_ras, extract_rbx): New functions. ++ (powerpc_operands): Use opposite corresponding insert function. ++ (Q_MASK): Define. ++ (powerpc_opcodes): Apply Q_MASK to all quad insns with even ++ register restriction. ++ ++2017-03-02 Tristan Gingold ++ ++ * configure: Regenerate. ++ + 2017-03-02 Tristan Gingold + + * configure: Regenerate. +diff --git a/opcodes/configure b/opcodes/configure +index be87eb2..0b352a4 100755 +--- a/opcodes/configure ++++ b/opcodes/configure +@@ -1,6 +1,6 @@ + #! /bin/sh + # Guess values for system-dependent variables and create Makefiles. +-# Generated by GNU Autoconf 2.64 for opcodes 2.28. ++# Generated by GNU Autoconf 2.64 for opcodes 2.28.0. + # + # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, + # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software +@@ -556,8 +556,8 @@ MAKEFLAGS= + # Identity of this package. + PACKAGE_NAME='opcodes' + PACKAGE_TARNAME='opcodes' +-PACKAGE_VERSION='2.28' +-PACKAGE_STRING='opcodes 2.28' ++PACKAGE_VERSION='2.28.0' ++PACKAGE_STRING='opcodes 2.28.0' + PACKAGE_BUGREPORT='' + PACKAGE_URL='' + +@@ -1322,7 +1322,7 @@ if test "$ac_init_help" = "long"; then + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat <<_ACEOF +-\`configure' configures opcodes 2.28 to adapt to many kinds of systems. ++\`configure' configures opcodes 2.28.0 to adapt to many kinds of systems. + + Usage: $0 [OPTION]... [VAR=VALUE]... + +@@ -1393,7 +1393,7 @@ fi + + if test -n "$ac_init_help"; then + case $ac_init_help in +- short | recursive ) echo "Configuration of opcodes 2.28:";; ++ short | recursive ) echo "Configuration of opcodes 2.28.0:";; + esac + cat <<\_ACEOF + +@@ -1500,7 +1500,7 @@ fi + test -n "$ac_init_help" && exit $ac_status + if $ac_init_version; then + cat <<\_ACEOF +-opcodes configure 2.28 ++opcodes configure 2.28.0 + generated by GNU Autoconf 2.64 + + Copyright (C) 2009 Free Software Foundation, Inc. +@@ -1910,7 +1910,7 @@ cat >config.log <<_ACEOF + This file contains any messages produced by compilers while + running configure, to aid debugging if configure makes a mistake. + +-It was created by opcodes $as_me 2.28, which was ++It was created by opcodes $as_me 2.28.0, which was + generated by GNU Autoconf 2.64. Invocation command line was + + $ $0 $@ +@@ -3719,7 +3719,7 @@ fi + + # Define the identity of the package. + PACKAGE='opcodes' +- VERSION='2.28' ++ VERSION='2.28.0' + + + cat >>confdefs.h <<_ACEOF +@@ -13305,7 +13305,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + # report actual input values of CONFIG_FILES etc. instead of their + # values after options handling. + ac_log=" +-This file was extended by opcodes $as_me 2.28, which was ++This file was extended by opcodes $as_me 2.28.0, which was + generated by GNU Autoconf 2.64. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES +@@ -13369,7 +13369,7 @@ Report bugs to the package provider." + _ACEOF + cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + ac_cs_version="\\ +-opcodes config.status 2.28 ++opcodes config.status 2.28.0 + configured by $0, generated by GNU Autoconf 2.64, + with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" + +diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c +index 9ac779c..30fd789 100644 +--- a/opcodes/ppc-opc.c ++++ b/opcodes/ppc-opc.c +@@ -54,6 +54,7 @@ static long extract_bo (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_boe (unsigned long, long, ppc_cpu_t, const char **); + static long extract_boe (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_esync (unsigned long, long, ppc_cpu_t, const char **); ++static long extract_esync (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_dcmxs (unsigned long, long, ppc_cpu_t, const char **); + static long extract_dcmxs (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_dxd (unsigned long, long, ppc_cpu_t, const char **); +@@ -65,6 +66,7 @@ static long extract_fxm (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_li20 (unsigned long, long, ppc_cpu_t, const char **); + static long extract_li20 (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_ls (unsigned long, long, ppc_cpu_t, const char **); ++static long extract_ls (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_mbe (unsigned long, long, ppc_cpu_t, const char **); + static long extract_mbe (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_mb6 (unsigned long, long, ppc_cpu_t, const char **); +@@ -76,12 +78,17 @@ static long extract_nsi (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_oimm (unsigned long, long, ppc_cpu_t, const char **); + static long extract_oimm (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_ral (unsigned long, long, ppc_cpu_t, const char **); ++static long extract_ral (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_ram (unsigned long, long, ppc_cpu_t, const char **); ++static long extract_ram (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_raq (unsigned long, long, ppc_cpu_t, const char **); ++static long extract_raq (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_ras (unsigned long, long, ppc_cpu_t, const char **); ++static long extract_ras (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_rbs (unsigned long, long, ppc_cpu_t, const char **); + static long extract_rbs (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_rbx (unsigned long, long, ppc_cpu_t, const char **); ++static long extract_rbx (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_rx (unsigned long, long, ppc_cpu_t, const char **); + static long extract_rx (unsigned long, ppc_cpu_t, int *); + static unsigned long insert_ry (unsigned long, long, ppc_cpu_t, const char **); +@@ -462,7 +469,7 @@ const struct powerpc_operand powerpc_operands[] = + /* The LS or WC field in an X (sync or wait) form instruction. */ + #define LS LIA + 1 + #define WC LS +- { 0x3, 21, insert_ls, NULL, PPC_OPERAND_OPTIONAL }, ++ { 0x3, 21, insert_ls, extract_ls, PPC_OPERAND_OPTIONAL }, + + /* The ME field in an M form instruction. */ + #define ME LS + 1 +@@ -519,24 +526,24 @@ const struct powerpc_operand powerpc_operands[] = + value restrictions. */ + #define RAQ RA0 + 1 + #define RAX RAQ +- { 0x1f, 16, insert_raq, NULL, PPC_OPERAND_GPR_0 }, ++ { 0x1f, 16, insert_raq, extract_raq, PPC_OPERAND_GPR_0 }, + + /* The RA field in a D or X form instruction which is an updating + load, which means that the RA field may not be zero and may not + equal the RT field. */ + #define RAL RAQ + 1 +- { 0x1f, 16, insert_ral, NULL, PPC_OPERAND_GPR_0 }, ++ { 0x1f, 16, insert_ral, extract_ral, PPC_OPERAND_GPR_0 }, + + /* The RA field in an lmw instruction, which has special value + restrictions. */ + #define RAM RAL + 1 +- { 0x1f, 16, insert_ram, NULL, PPC_OPERAND_GPR_0 }, ++ { 0x1f, 16, insert_ram, extract_ram, PPC_OPERAND_GPR_0 }, + + /* The RA field in a D or X form instruction which is an updating + store or an updating floating point load, which means that the RA + field may not be zero. */ + #define RAS RAM + 1 +- { 0x1f, 16, insert_ras, NULL, PPC_OPERAND_GPR_0 }, ++ { 0x1f, 16, insert_ras, extract_ras, PPC_OPERAND_GPR_0 }, + + /* The RA field of the tlbwe, dccci and iccci instructions, + which are optional. */ +@@ -557,7 +564,7 @@ const struct powerpc_operand powerpc_operands[] = + /* The RB field in an lswx instruction, which has special value + restrictions. */ + #define RBX RBS + 1 +- { 0x1f, 11, insert_rbx, NULL, PPC_OPERAND_GPR }, ++ { 0x1f, 11, insert_rbx, extract_rbx, PPC_OPERAND_GPR }, + + /* The RB field of the dccci and iccci instructions, which are optional. */ + #define RBOPT RBX + 1 +@@ -580,6 +587,7 @@ const struct powerpc_operand powerpc_operands[] = + which have special value restrictions. */ + #define RSQ RS + 1 + #define RTQ RSQ ++#define Q_MASK (1 << 21) + { 0x1e, 21, NULL, NULL, PPC_OPERAND_GPR }, + + /* The RS field of the tlbwe instruction, which is optional. */ +@@ -694,7 +702,7 @@ const struct powerpc_operand powerpc_operands[] = + + /* The ESYNC field in an X (sync) form instruction. */ + #define ESYNC STRM + 1 +- { 0xf, 16, insert_esync, NULL, PPC_OPERAND_OPTIONAL }, ++ { 0xf, 16, insert_esync, extract_esync, PPC_OPERAND_OPTIONAL }, + + /* The SV field in a POWER SC form instruction. */ + #define SV ESYNC + 1 +@@ -1533,6 +1541,22 @@ insert_ls (unsigned long insn, + return insn | ((value & 0x3) << 21); + } + ++static long ++extract_ls (unsigned long insn, ++ ppc_cpu_t dialect, ++ int *invalid) ++{ ++ unsigned long lvalue = (insn >> 21) & 3; ++ ++ if (((insn >> 1) & 0x3ff) == 598) ++ { ++ unsigned long max_lvalue = (dialect & PPC_OPCODE_POWER4) ? 2 : 1; ++ if (lvalue > max_lvalue) ++ *invalid = 1; ++ } ++ return lvalue; ++} ++ + /* The 4-bit E field in a sync instruction that accepts 2 operands. + If ESYNC is non-zero, then the L field must be either 0 or 1 and + the complement of ESYNC-bit2. */ +@@ -1560,6 +1584,27 @@ insert_esync (unsigned long insn, + return insn | ((value & 0xf) << 16); + } + ++static long ++extract_esync (unsigned long insn, ++ ppc_cpu_t dialect, ++ int *invalid) ++{ ++ unsigned long ls = (insn >> 21) & 0x3; ++ unsigned long lvalue = (insn >> 16) & 0xf; ++ ++ if (lvalue == 0) ++ { ++ if (((dialect & PPC_OPCODE_E6500) != 0 && ls > 1) ++ || ((dialect & PPC_OPCODE_POWER9) != 0 && ls > 2)) ++ *invalid = 1; ++ } ++ else if ((ls & ~0x1) ++ || (((lvalue >> 1) & 0x1) ^ ls) == 0) ++ *invalid = 1; ++ ++ return lvalue; ++} ++ + /* The MB and ME fields in an M form instruction expressed as a single + operand which is itself a bitmask. The extraction function always + marks it as invalid, since we never want to recognize an +@@ -1743,6 +1788,19 @@ insert_ral (unsigned long insn, + return insn | ((value & 0x1f) << 16); + } + ++static long ++extract_ral (unsigned long insn, ++ ppc_cpu_t dialect ATTRIBUTE_UNUSED, ++ int *invalid) ++{ ++ long rtvalue = (insn >> 21) & 0x1f; ++ long ravalue = (insn >> 16) & 0x1f; ++ ++ if (rtvalue == ravalue || ravalue == 0) ++ *invalid = 1; ++ return ravalue; ++} ++ + /* The RA field in an lmw instruction, which has special value + restrictions. */ + +@@ -1757,6 +1815,19 @@ insert_ram (unsigned long insn, + return insn | ((value & 0x1f) << 16); + } + ++static long ++extract_ram (unsigned long insn, ++ ppc_cpu_t dialect ATTRIBUTE_UNUSED, ++ int *invalid) ++{ ++ unsigned long rtvalue = (insn >> 21) & 0x1f; ++ unsigned long ravalue = (insn >> 16) & 0x1f; ++ ++ if (ravalue >= rtvalue) ++ *invalid = 1; ++ return ravalue; ++} ++ + /* The RA field in the DQ form lq or an lswx instruction, which have special + value restrictions. */ + +@@ -1773,6 +1844,19 @@ insert_raq (unsigned long insn, + return insn | ((value & 0x1f) << 16); + } + ++static long ++extract_raq (unsigned long insn, ++ ppc_cpu_t dialect ATTRIBUTE_UNUSED, ++ int *invalid) ++{ ++ unsigned long rtvalue = (insn >> 21) & 0x1f; ++ unsigned long ravalue = (insn >> 16) & 0x1f; ++ ++ if (ravalue == rtvalue) ++ *invalid = 1; ++ return ravalue; ++} ++ + /* The RA field in a D or X form instruction which is an updating + store or an updating floating point load, which means that the RA + field may not be zero. */ +@@ -1788,6 +1872,18 @@ insert_ras (unsigned long insn, + return insn | ((value & 0x1f) << 16); + } + ++static long ++extract_ras (unsigned long insn, ++ ppc_cpu_t dialect ATTRIBUTE_UNUSED, ++ int *invalid) ++{ ++ unsigned long ravalue = (insn >> 16) & 0x1f; ++ ++ if (ravalue == 0) ++ *invalid = 1; ++ return ravalue; ++} ++ + /* The RB field in an X form instruction when it must be the same as + the RS field in the instruction. This is used for extended + mnemonics like mr. This operand is marked FAKE. The insertion +@@ -1829,6 +1925,19 @@ insert_rbx (unsigned long insn, + return insn | ((value & 0x1f) << 11); + } + ++static long ++extract_rbx (unsigned long insn, ++ ppc_cpu_t dialect ATTRIBUTE_UNUSED, ++ int *invalid) ++{ ++ unsigned long rtvalue = (insn >> 21) & 0x1f; ++ unsigned long rbvalue = (insn >> 11) & 0x1f; ++ ++ if (rbvalue == rtvalue) ++ *invalid = 1; ++ return rbvalue; ++} ++ + /* The SCI8 field is made up of SCL and {U,N}I8 fields. */ + static unsigned long + insert_sci8 (unsigned long insn, +@@ -4974,7 +5083,7 @@ const struct powerpc_opcode powerpc_opcodes[] = { + + {"stdux", X(31,181), X_MASK, PPC64, 0, {RS, RAS, RB}}, + +-{"stqcx.", XRC(31,182,1), X_MASK, POWER8, 0, {RSQ, RA0, RB}}, ++{"stqcx.", XRC(31,182,1), X_MASK|Q_MASK, POWER8, 0, {RSQ, RA0, RB}}, + {"wchkall", X(31,182), X_MASK, PPCA2, 0, {OBF}}, + + {"stwux", X(31,183), X_MASK, PPCCOM, 0, {RS, RAS, RB}}, +@@ -5105,7 +5214,7 @@ const struct powerpc_opcode powerpc_opcodes[] = { + + {"mfapidi", X(31,275), X_MASK, BOOKE, E500|TITAN, {RT, RA}}, + +-{"lqarx", X(31,276), XEH_MASK, POWER8, 0, {RTQ, RAX, RBX, EH}}, ++{"lqarx", X(31,276), XEH_MASK|Q_MASK, POWER8, 0, {RTQ, RAX, RBX, EH}}, + + {"lscbx", XRC(31,277,0), X_MASK, M601, 0, {RT, RA, RB}}, + {"lscbx.", XRC(31,277,1), X_MASK, M601, 0, {RT, RA, RB}}, +@@ -6052,7 +6161,7 @@ const struct powerpc_opcode powerpc_opcodes[] = { + + {"lhbrx", X(31,790), X_MASK, COM, 0, {RT, RA0, RB}}, + +-{"lfdpx", X(31,791), X_MASK, POWER6, POWER7, {FRTp, RA0, RB}}, ++{"lfdpx", X(31,791), X_MASK|Q_MASK, POWER6, POWER7, {FRTp, RA0, RB}}, + {"lfqx", X(31,791), X_MASK, POWER2, 0, {FRT, RA, RB}}, + + {"sraw", XRC(31,792,0), X_MASK, PPCCOM, 0, {RA, RS, RB}}, +@@ -6167,7 +6276,7 @@ const struct powerpc_opcode powerpc_opcodes[] = { + + {"sthbrx", X(31,918), X_MASK, COM, 0, {RS, RA0, RB}}, + +-{"stfdpx", X(31,919), X_MASK, POWER6, POWER7, {FRSp, RA0, RB}}, ++{"stfdpx", X(31,919), X_MASK|Q_MASK, POWER6, POWER7, {FRSp, RA0, RB}}, + {"stfqx", X(31,919), X_MASK, POWER2, 0, {FRS, RA0, RB}}, + + {"sraq", XRC(31,920,0), X_MASK, M601, 0, {RA, RS, RB}}, +@@ -6345,13 +6454,13 @@ const struct powerpc_opcode powerpc_opcodes[] = { + + {"stfdu", OP(55), OP_MASK, COM, PPCEFS|PPCVLE, {FRS, D, RAS}}, + +-{"lq", OP(56), OP_MASK, POWER4, PPC476|PPCVLE, {RTQ, DQ, RAQ}}, ++{"lq", OP(56), OP_MASK|Q_MASK, POWER4, PPC476|PPCVLE, {RTQ, DQ, RAQ}}, + {"psq_l", OP(56), OP_MASK, PPCPS, PPCVLE, {FRT,PSD,RA,PSW,PSQ}}, + {"lfq", OP(56), OP_MASK, POWER2, PPCVLE, {FRT, D, RA0}}, + + {"lxsd", DSO(57,2), DS_MASK, PPCVSX3, PPCVLE, {VD, DS, RA0}}, + {"lxssp", DSO(57,3), DS_MASK, PPCVSX3, PPCVLE, {VD, DS, RA0}}, +-{"lfdp", OP(57), OP_MASK, POWER6, POWER7|PPCVLE, {FRTp, DS, RA0}}, ++{"lfdp", OP(57), OP_MASK|Q_MASK, POWER6, POWER7|PPCVLE, {FRTp, DS, RA0}}, + {"psq_lu", OP(57), OP_MASK, PPCPS, PPCVLE, {FRT,PSD,RA,PSW,PSQ}}, + {"lfqu", OP(57), OP_MASK, POWER2, PPCVLE, {FRT, D, RA0}}, + +@@ -6676,21 +6785,21 @@ const struct powerpc_opcode powerpc_opcodes[] = { + {"stxv", DQX(61,5), DQX_MASK, PPCVSX3, PPCVLE, {XSQ6, DQ, RA0}}, + {"stxsd", DSO(61,2), DS_MASK, PPCVSX3, PPCVLE, {VS, DS, RA0}}, + {"stxssp", DSO(61,3), DS_MASK, PPCVSX3, PPCVLE, {VS, DS, RA0}}, +-{"stfdp", OP(61), OP_MASK, POWER6, POWER7|PPCVLE, {FRSp, DS, RA0}}, ++{"stfdp", OP(61), OP_MASK|Q_MASK, POWER6, POWER7|PPCVLE, {FRSp, DS, RA0}}, + {"psq_stu", OP(61), OP_MASK, PPCPS, PPCVLE, {FRS,PSD,RA,PSW,PSQ}}, + {"stfqu", OP(61), OP_MASK, POWER2, PPCVLE, {FRS, D, RA}}, + + {"std", DSO(62,0), DS_MASK, PPC64, PPCVLE, {RS, DS, RA0}}, + {"stdu", DSO(62,1), DS_MASK, PPC64, PPCVLE, {RS, DS, RAS}}, +-{"stq", DSO(62,2), DS_MASK, POWER4, PPC476|PPCVLE, {RSQ, DS, RA0}}, ++{"stq", DSO(62,2), DS_MASK|Q_MASK, POWER4, PPC476|PPCVLE, {RSQ, DS, RA0}}, + + {"fcmpu", X(63,0), XBF_MASK, COM, PPCEFS|PPCVLE, {BF, FRA, FRB}}, + +-{"daddq", XRC(63,2,0), X_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, +-{"daddq.", XRC(63,2,1), X_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, ++{"daddq", XRC(63,2,0), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, ++{"daddq.", XRC(63,2,1), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, + +-{"dquaq", ZRC(63,3,0), Z2_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp, RMC}}, +-{"dquaq.", ZRC(63,3,1), Z2_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp, RMC}}, ++{"dquaq", ZRC(63,3,0), Z2_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp, RMC}}, ++{"dquaq.", ZRC(63,3,1), Z2_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp, RMC}}, + + {"xsaddqp", XRC(63,4,0), X_MASK, PPCVSX3, PPCVLE, {VD, VA, VB}}, + {"xsaddqpo", XRC(63,4,1), X_MASK, PPCVSX3, PPCVLE, {VD, VA, VB}}, +@@ -6772,11 +6881,11 @@ const struct powerpc_opcode powerpc_opcodes[] = { + + {"fcmpo", X(63,32), XBF_MASK, COM, PPCEFS|PPCVLE, {BF, FRA, FRB}}, + +-{"dmulq", XRC(63,34,0), X_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, +-{"dmulq.", XRC(63,34,1), X_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, ++{"dmulq", XRC(63,34,0), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, ++{"dmulq.", XRC(63,34,1), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, + +-{"drrndq", ZRC(63,35,0), Z2_MASK, POWER6, PPCVLE, {FRTp, FRA, FRBp, RMC}}, +-{"drrndq.", ZRC(63,35,1), Z2_MASK, POWER6, PPCVLE, {FRTp, FRA, FRBp, RMC}}, ++{"drrndq", ZRC(63,35,0), Z2_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRA, FRBp, RMC}}, ++{"drrndq.", ZRC(63,35,1), Z2_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRA, FRBp, RMC}}, + + {"xsmulqp", XRC(63,36,0), X_MASK, PPCVSX3, PPCVLE, {VD, VA, VB}}, + {"xsmulqpo", XRC(63,36,1), X_MASK, PPCVSX3, PPCVLE, {VD, VA, VB}}, +@@ -6791,11 +6900,11 @@ const struct powerpc_opcode powerpc_opcodes[] = { + + {"mcrfs", X(63,64), XRB_MASK|(3<<21)|(3<<16), COM, PPCVLE, {BF, BFA}}, + +-{"dscliq", ZRC(63,66,0), Z_MASK, POWER6, PPCVLE, {FRTp, FRAp, SH16}}, +-{"dscliq.", ZRC(63,66,1), Z_MASK, POWER6, PPCVLE, {FRTp, FRAp, SH16}}, ++{"dscliq", ZRC(63,66,0), Z_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRAp, SH16}}, ++{"dscliq.", ZRC(63,66,1), Z_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRAp, SH16}}, + +-{"dquaiq", ZRC(63,67,0), Z2_MASK, POWER6, PPCVLE, {TE, FRTp, FRBp, RMC}}, +-{"dquaiq.", ZRC(63,67,1), Z2_MASK, POWER6, PPCVLE, {TE, FRTp, FRBp, RMC}}, ++{"dquaiq", ZRC(63,67,0), Z2_MASK|Q_MASK, POWER6, PPCVLE, {TE, FRTp, FRBp, RMC}}, ++{"dquaiq.", ZRC(63,67,1), Z2_MASK|Q_MASK, POWER6, PPCVLE, {TE, FRTp, FRBp, RMC}}, + + {"mtfsb0", XRC(63,70,0), XRARB_MASK, COM, PPCVLE, {BT}}, + {"mtfsb0.", XRC(63,70,1), XRARB_MASK, COM, PPCVLE, {BT}}, +@@ -6803,11 +6912,11 @@ const struct powerpc_opcode powerpc_opcodes[] = { + {"fmr", XRC(63,72,0), XRA_MASK, COM, PPCEFS|PPCVLE, {FRT, FRB}}, + {"fmr.", XRC(63,72,1), XRA_MASK, COM, PPCEFS|PPCVLE, {FRT, FRB}}, + +-{"dscriq", ZRC(63,98,0), Z_MASK, POWER6, PPCVLE, {FRTp, FRAp, SH16}}, +-{"dscriq.", ZRC(63,98,1), Z_MASK, POWER6, PPCVLE, {FRTp, FRAp, SH16}}, ++{"dscriq", ZRC(63,98,0), Z_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRAp, SH16}}, ++{"dscriq.", ZRC(63,98,1), Z_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRAp, SH16}}, + +-{"drintxq", ZRC(63,99,0), Z2_MASK, POWER6, PPCVLE, {R, FRTp, FRBp, RMC}}, +-{"drintxq.", ZRC(63,99,1), Z2_MASK, POWER6, PPCVLE, {R, FRTp, FRBp, RMC}}, ++{"drintxq", ZRC(63,99,0), Z2_MASK|Q_MASK, POWER6, PPCVLE, {R, FRTp, FRBp, RMC}}, ++{"drintxq.", ZRC(63,99,1), Z2_MASK|Q_MASK, POWER6, PPCVLE, {R, FRTp, FRBp, RMC}}, + + {"xscpsgnqp", X(63,100), X_MASK, PPCVSX3, PPCVLE, {VD, VA, VB}}, + +@@ -6839,11 +6948,11 @@ const struct powerpc_opcode powerpc_opcodes[] = { + {"dtstdcq", Z(63,194), Z_MASK, POWER6, PPCVLE, {BF, FRAp, DCM}}, + {"dtstdgq", Z(63,226), Z_MASK, POWER6, PPCVLE, {BF, FRAp, DGM}}, + +-{"drintnq", ZRC(63,227,0), Z2_MASK, POWER6, PPCVLE, {R, FRTp, FRBp, RMC}}, +-{"drintnq.", ZRC(63,227,1), Z2_MASK, POWER6, PPCVLE, {R, FRTp, FRBp, RMC}}, ++{"drintnq", ZRC(63,227,0), Z2_MASK|Q_MASK, POWER6, PPCVLE, {R, FRTp, FRBp, RMC}}, ++{"drintnq.", ZRC(63,227,1), Z2_MASK|Q_MASK, POWER6, PPCVLE, {R, FRTp, FRBp, RMC}}, + +-{"dctqpq", XRC(63,258,0), X_MASK, POWER6, PPCVLE, {FRTp, FRB}}, +-{"dctqpq.", XRC(63,258,1), X_MASK, POWER6, PPCVLE, {FRTp, FRB}}, ++{"dctqpq", XRC(63,258,0), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRB}}, ++{"dctqpq.", XRC(63,258,1), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRB}}, + + {"fabs", XRC(63,264,0), XRA_MASK, COM, PPCEFS|PPCVLE, {FRT, FRB}}, + {"fabs.", XRC(63,264,1), XRA_MASK, COM, PPCEFS|PPCVLE, {FRT, FRB}}, +@@ -6851,8 +6960,8 @@ const struct powerpc_opcode powerpc_opcodes[] = { + {"dctfixq", XRC(63,290,0), X_MASK, POWER6, PPCVLE, {FRT, FRBp}}, + {"dctfixq.", XRC(63,290,1), X_MASK, POWER6, PPCVLE, {FRT, FRBp}}, + +-{"ddedpdq", XRC(63,322,0), X_MASK, POWER6, PPCVLE, {SP, FRTp, FRBp}}, +-{"ddedpdq.", XRC(63,322,1), X_MASK, POWER6, PPCVLE, {SP, FRTp, FRBp}}, ++{"ddedpdq", XRC(63,322,0), X_MASK|Q_MASK, POWER6, PPCVLE, {SP, FRTp, FRBp}}, ++{"ddedpdq.", XRC(63,322,1), X_MASK|Q_MASK, POWER6, PPCVLE, {SP, FRTp, FRBp}}, + + {"dxexq", XRC(63,354,0), X_MASK, POWER6, PPCVLE, {FRT, FRBp}}, + {"dxexq.", XRC(63,354,1), X_MASK, POWER6, PPCVLE, {FRT, FRBp}}, +@@ -6881,14 +6990,14 @@ const struct powerpc_opcode powerpc_opcodes[] = { + {"frim", XRC(63,488,0), XRA_MASK, POWER5, PPCVLE, {FRT, FRB}}, + {"frim.", XRC(63,488,1), XRA_MASK, POWER5, PPCVLE, {FRT, FRB}}, + +-{"dsubq", XRC(63,514,0), X_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, +-{"dsubq.", XRC(63,514,1), X_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, ++{"dsubq", XRC(63,514,0), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, ++{"dsubq.", XRC(63,514,1), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, + + {"xssubqp", XRC(63,516,0), X_MASK, PPCVSX3, PPCVLE, {VD, VA, VB}}, + {"xssubqpo", XRC(63,516,1), X_MASK, PPCVSX3, PPCVLE, {VD, VA, VB}}, + +-{"ddivq", XRC(63,546,0), X_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, +-{"ddivq.", XRC(63,546,1), X_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, ++{"ddivq", XRC(63,546,0), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, ++{"ddivq.", XRC(63,546,1), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRAp, FRBp}}, + + {"xsdivqp", XRC(63,548,0), X_MASK, PPCVSX3, PPCVLE, {VD, VA, VB}}, + {"xsdivqpo", XRC(63,548,1), X_MASK, PPCVSX3, PPCVLE, {VD, VA, VB}}, +@@ -6917,11 +7026,11 @@ const struct powerpc_opcode powerpc_opcodes[] = { + {"mtfsf.", XFL(63,711,1), XFL_MASK, POWER6|PPCA2|PPC476, PPCVLE, {FLM, FRB, XFL_L, W}}, + {"mtfsf.", XFL(63,711,1), XFL_MASK, COM, POWER6|PPCA2|PPC476|PPCEFS|PPCVLE, {FLM, FRB}}, + +-{"drdpq", XRC(63,770,0), X_MASK, POWER6, PPCVLE, {FRTp, FRBp}}, +-{"drdpq.", XRC(63,770,1), X_MASK, POWER6, PPCVLE, {FRTp, FRBp}}, ++{"drdpq", XRC(63,770,0), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRBp}}, ++{"drdpq.", XRC(63,770,1), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRBp}}, + +-{"dcffixq", XRC(63,802,0), X_MASK, POWER6, PPCVLE, {FRTp, FRB}}, +-{"dcffixq.", XRC(63,802,1), X_MASK, POWER6, PPCVLE, {FRTp, FRB}}, ++{"dcffixq", XRC(63,802,0), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRB}}, ++{"dcffixq.", XRC(63,802,1), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRB}}, + + {"xsabsqp", XVA(63,804,0), XVA_MASK, PPCVSX3, PPCVLE, {VD, VB}}, + {"xsxexpqp", XVA(63,804,2), XVA_MASK, PPCVSX3, PPCVLE, {VD, VB}}, +@@ -6941,8 +7050,8 @@ const struct powerpc_opcode powerpc_opcodes[] = { + {"fctidz.", XRC(63,815,1), XRA_MASK, PPC64, PPCVLE, {FRT, FRB}}, + {"fctidz.", XRC(63,815,1), XRA_MASK, PPC476, PPCVLE, {FRT, FRB}}, + +-{"denbcdq", XRC(63,834,0), X_MASK, POWER6, PPCVLE, {S, FRTp, FRBp}}, +-{"denbcdq.", XRC(63,834,1), X_MASK, POWER6, PPCVLE, {S, FRTp, FRBp}}, ++{"denbcdq", XRC(63,834,0), X_MASK|Q_MASK, POWER6, PPCVLE, {S, FRTp, FRBp}}, ++{"denbcdq.", XRC(63,834,1), X_MASK|Q_MASK, POWER6, PPCVLE, {S, FRTp, FRBp}}, + + {"xscvqpuwz", XVA(63,836,1), XVA_MASK, PPCVSX3, PPCVLE, {VD, VB}}, + {"xscvudqp", XVA(63,836,2), XVA_MASK, PPCVSX3, PPCVLE, {VD, VB}}, +@@ -6961,8 +7070,8 @@ const struct powerpc_opcode powerpc_opcodes[] = { + {"fcfid.", XRC(63,846,1), XRA_MASK, PPC64, PPCVLE, {FRT, FRB}}, + {"fcfid.", XRC(63,846,1), XRA_MASK, PPC476, PPCVLE, {FRT, FRB}}, + +-{"diexq", XRC(63,866,0), X_MASK, POWER6, PPCVLE, {FRTp, FRA, FRBp}}, +-{"diexq.", XRC(63,866,1), X_MASK, POWER6, PPCVLE, {FRTp, FRA, FRBp}}, ++{"diexq", XRC(63,866,0), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRA, FRBp}}, ++{"diexq.", XRC(63,866,1), X_MASK|Q_MASK, POWER6, PPCVLE, {FRTp, FRA, FRBp}}, + + {"xsiexpqp", X(63,868), X_MASK, PPCVSX3, PPCVLE, {VD, VA, VB}}, + diff --git a/binutils-2.28.tar.bz2 b/binutils-2.28.tar.bz2 new file mode 100644 index 0000000..7f6be09 --- /dev/null +++ b/binutils-2.28.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6297433ee120b11b4b0a1c8f3512d7d73501753142ab9e2daa13c5a3edd32a72 +size 26556365 diff --git a/binutils.changes b/binutils.changes index f326a51..f43c9bc 100644 --- a/binutils.changes +++ b/binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/binutils.spec b/binutils.spec index 13c61c2..7d77b50 100644 --- a/binutils.spec +++ b/binutils.spec @@ -35,7 +35,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -82,7 +82,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -96,11 +96,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -177,10 +173,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-aarch64-binutils.changes b/cross-aarch64-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-aarch64-binutils.changes +++ b/cross-aarch64-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-aarch64-binutils.spec b/cross-aarch64-binutils.spec index f703ec2..c8bc307 100644 --- a/cross-aarch64-binutils.spec +++ b/cross-aarch64-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-arm-binutils.changes b/cross-arm-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-arm-binutils.changes +++ b/cross-arm-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-arm-binutils.spec b/cross-arm-binutils.spec index c30ff03..e1726cd 100644 --- a/cross-arm-binutils.spec +++ b/cross-arm-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-avr-binutils.changes b/cross-avr-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-avr-binutils.changes +++ b/cross-avr-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-avr-binutils.spec b/cross-avr-binutils.spec index 9271c84..f1ae9c3 100644 --- a/cross-avr-binutils.spec +++ b/cross-avr-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-epiphany-binutils.changes b/cross-epiphany-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-epiphany-binutils.changes +++ b/cross-epiphany-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-epiphany-binutils.spec b/cross-epiphany-binutils.spec index 7470cc1..a34093e 100644 --- a/cross-epiphany-binutils.spec +++ b/cross-epiphany-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-hppa-binutils.changes b/cross-hppa-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-hppa-binutils.changes +++ b/cross-hppa-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-hppa-binutils.spec b/cross-hppa-binutils.spec index 2428a01..44a6ff7 100644 --- a/cross-hppa-binutils.spec +++ b/cross-hppa-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-hppa64-binutils.changes b/cross-hppa64-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-hppa64-binutils.changes +++ b/cross-hppa64-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-hppa64-binutils.spec b/cross-hppa64-binutils.spec index 25e701c..59eb5d8 100644 --- a/cross-hppa64-binutils.spec +++ b/cross-hppa64-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-i386-binutils.changes b/cross-i386-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-i386-binutils.changes +++ b/cross-i386-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-i386-binutils.spec b/cross-i386-binutils.spec index 5749080..bf87c6f 100644 --- a/cross-i386-binutils.spec +++ b/cross-i386-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-ia64-binutils.changes b/cross-ia64-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-ia64-binutils.changes +++ b/cross-ia64-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-ia64-binutils.spec b/cross-ia64-binutils.spec index 868b2ba..68915f6 100644 --- a/cross-ia64-binutils.spec +++ b/cross-ia64-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-m68k-binutils.changes b/cross-m68k-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-m68k-binutils.changes +++ b/cross-m68k-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-m68k-binutils.spec b/cross-m68k-binutils.spec index 37a2b6a..0ca5062 100644 --- a/cross-m68k-binutils.spec +++ b/cross-m68k-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-mips-binutils.changes b/cross-mips-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-mips-binutils.changes +++ b/cross-mips-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-mips-binutils.spec b/cross-mips-binutils.spec index 56ca63e..069524a 100644 --- a/cross-mips-binutils.spec +++ b/cross-mips-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-ppc-binutils.changes b/cross-ppc-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-ppc-binutils.changes +++ b/cross-ppc-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-ppc-binutils.spec b/cross-ppc-binutils.spec index 6a73ab0..2677a4b 100644 --- a/cross-ppc-binutils.spec +++ b/cross-ppc-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-ppc64-binutils.changes b/cross-ppc64-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-ppc64-binutils.changes +++ b/cross-ppc64-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-ppc64-binutils.spec b/cross-ppc64-binutils.spec index 0b10866..e169f24 100644 --- a/cross-ppc64-binutils.spec +++ b/cross-ppc64-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-ppc64le-binutils.changes b/cross-ppc64le-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-ppc64le-binutils.changes +++ b/cross-ppc64le-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-ppc64le-binutils.spec b/cross-ppc64le-binutils.spec index 927b00c..d992ddd 100644 --- a/cross-ppc64le-binutils.spec +++ b/cross-ppc64le-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-rx-binutils.changes b/cross-rx-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-rx-binutils.changes +++ b/cross-rx-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-rx-binutils.spec b/cross-rx-binutils.spec index fe12a9d..f3f6915 100644 --- a/cross-rx-binutils.spec +++ b/cross-rx-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-s390-binutils.changes b/cross-s390-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-s390-binutils.changes +++ b/cross-s390-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-s390-binutils.spec b/cross-s390-binutils.spec index 378ae09..99e42ee 100644 --- a/cross-s390-binutils.spec +++ b/cross-s390-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-s390x-binutils.changes b/cross-s390x-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-s390x-binutils.changes +++ b/cross-s390x-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-s390x-binutils.spec b/cross-s390x-binutils.spec index 784a377..3c11c2e 100644 --- a/cross-s390x-binutils.spec +++ b/cross-s390x-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-sparc-binutils.changes b/cross-sparc-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-sparc-binutils.changes +++ b/cross-sparc-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-sparc-binutils.spec b/cross-sparc-binutils.spec index 1e1d315..e8b9f9e 100644 --- a/cross-sparc-binutils.spec +++ b/cross-sparc-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-sparc64-binutils.changes b/cross-sparc64-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-sparc64-binutils.changes +++ b/cross-sparc64-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-sparc64-binutils.spec b/cross-sparc64-binutils.spec index ee917b6..1aead62 100644 --- a/cross-sparc64-binutils.spec +++ b/cross-sparc64-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-spu-binutils.changes b/cross-spu-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-spu-binutils.changes +++ b/cross-spu-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-spu-binutils.spec b/cross-spu-binutils.spec index fa860e0..c298ab2 100644 --- a/cross-spu-binutils.spec +++ b/cross-spu-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/cross-x86_64-binutils.changes b/cross-x86_64-binutils.changes index f326a51..f43c9bc 100644 --- a/cross-x86_64-binutils.changes +++ b/cross-x86_64-binutils.changes @@ -1,3 +1,72 @@ +------------------------------------------------------------------- +Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com + +- Update to binutils 2.28. + * Add support for locating separate debug info files using the build-id + method, where the separate file has a name based upon the build-id of + the original file. + * This version of binutils fixes a problem with PowerPC VLE 16A and 16D + relocations which were functionally swapped, for example, + R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D + performed like R_PPC_VLE_HA16A. This could have been fixed by + renumbering relocations, which would keep object files created by an + older version of gas compatible with a newer ld. However, that would + require an ABI update, affecting other assemblers and linkers that + create and process the relocations correctly. It is recommended that + all VLE object files be recompiled, but ld can modify the relocations + if --vle-reloc-fixup is passed to ld. If the new ld command line + option is not used, ld will ld warn on finding relocations inconsistent + with the instructions being relocated. + * The nm program has a new command line option (--with-version-strings) + which will display a symbol's version information, if any, after the + symbol's name. + * The ARC port of objdump now accepts a -M option to specify the extra + instruction class(es) that should be disassembled. + * The --remove-section option for objcopy and strip now accepts section + patterns starting with an exclamation point to indicate a non-matching + section. A non-matching section is removed from the set of sections + matched by an earlier --remove-section pattern. + * The --only-section option for objcopy now accepts section patterns + starting with an exclamation point to indicate a non-matching section. + A non-matching section is removed from the set of sections matched by + an earlier --only-section pattern. + * New --remove-relocations=SECTIONPATTERN option for objcopy and strip. + This option can be used to remove sections containing relocations. + The SECTIONPATTERN is the section to which the relocations apply, not + the relocation section itself. + GAS + * Add support for the RISC-V architecture. + * Add support for the ARM Cortex-M23 and Cortex-M33 processors. + GNU ld + * The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections + in the list. + * Add support for the RISC-V architecture. + * The command line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + * Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library + specified by --out-implib= and the address they must have. + As such, --in-implib is only supported in combination with --cmse-implib. + * Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + GOLD + * Add -z bndplt option (x86-64 only) to support Intel MPX. + * Add --orphan-handling option. + * Add --stub-group-multi option (PowerPC only). + * Add --target1-rel, --target1-abs, --target2 options (Arm only). + * Add -z stack-size option. + * Add --be8 option (Arm only). + * Add HIDDEN support in linker scripts. + * Add SORT_BY_INIT_PRIORITY support in linker scripts. +- Add binutils-2.28-branch.diff. +- Remove binutils-2.27-branch.diff +- Remove binutils-2.27-fix-section-order.diff, + refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch + and aarch64-alignment-frags.patch now upstream. + ------------------------------------------------------------------- Mon Mar 6 17:06:55 UTC 2017 - schwab@linux-m68k.org diff --git a/cross-x86_64-binutils.spec b/cross-x86_64-binutils.spec index 3eb0c86..e45d4fb 100644 --- a/cross-x86_64-binutils.spec +++ b/cross-x86_64-binutils.spec @@ -38,7 +38,7 @@ BuildRequires: zlib-devel-static %else BuildRequires: zlib-devel %endif -Version: 2.27 +Version: 2.28 Release: 0 # # RUN_TESTS @@ -85,7 +85,7 @@ Source: binutils-%{binutils_version}.tar.bz2 Source1: pre_checkin.sh Source2: README.First-for.SuSE.packagers Source3: baselibs.conf -Patch: binutils-2.27-branch.diff +Patch: binutils-2.28-branch.diff Patch3: binutils-skip-rpaths.patch Patch4: s390-biarch.diff Patch5: x86-64-biarch.patch @@ -99,11 +99,7 @@ Patch12: s390-pic-dso.diff Patch14: binutils-build-as-needed.diff Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch -# Backport dd90581873482f67922 -Patch23: binutils-2.27-fix-section-order.diff -Patch24: refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch Patch34: aarch64-common-pagesize.patch -Patch35: aarch64-alignment-frags.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff Patch90: cross-avr-nesc-as.patch @@ -180,10 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch14 %patch18 %patch22 -%patch23 -p1 -%patch24 -p1 %patch34 -p1 -%patch35 -p1 %patch36 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h diff --git a/refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch b/refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch deleted file mode 100644 index 188ef56..0000000 --- a/refine_.cfi_sections_check_to_only_consider_compact_eh_frame.patch +++ /dev/null @@ -1,94 +0,0 @@ -From 3d3424e9a8d6ad56160b98bf6e223c0346164468 Mon Sep 17 00:00:00 2001 -From: Matthew Fortune -Date: Thu, 29 Sep 2016 11:13:46 +0100 -Subject: [PATCH] Refine .cfi_sections check to only consider compact eh_frame - -The .cfi_sections directive can be safely used multiple times -with different sections named at any time unless the compact form -of exception handling is requested after CFI information has -been emitted. Only the compact form of CFI information changes -the way in which CFI is generated and therefore cannot be -retrospectively requested after generating CFI information. - -gas/ - - PR gas/20648 - * dw2gencfi.c (dot_cfi_sections): Refine the check for - inconsistent .cfi_sections to only consider compact vs non - compact forms. - * testsuite/gas/cfi/cfi-common-9.d: New file. - * testsuite/gas/cfi/cfi-common-9.s: New file. - * testsuite/gas/cfi/cfi.exp: Run new test. ---- - gas/ChangeLog | 10 ++++++++++ - gas/dw2gencfi.c | 5 ++++- - gas/testsuite/gas/cfi/cfi-common-9.d | 23 +++++++++++++++++++++++ - gas/testsuite/gas/cfi/cfi-common-9.s | 4 ++++ - gas/testsuite/gas/cfi/cfi.exp | 1 + - 5 files changed, 42 insertions(+), 1 deletions(-) - create mode 100644 gas/testsuite/gas/cfi/cfi-common-9.d - create mode 100644 gas/testsuite/gas/cfi/cfi-common-9.s - -Index: binutils-2.27/gas/dw2gencfi.c -=================================================================== ---- binutils-2.27.orig/gas/dw2gencfi.c -+++ binutils-2.27/gas/dw2gencfi.c -@@ -1244,7 +1244,10 @@ dot_cfi_sections (int ignored ATTRIBUTE_ - } - - demand_empty_rest_of_line (); -- if (cfi_sections_set && cfi_sections != sections) -+ if (cfi_sections_set -+ && (sections & (CFI_EMIT_eh_frame | CFI_EMIT_eh_frame_compact)) -+ && (cfi_sections & (CFI_EMIT_eh_frame | CFI_EMIT_eh_frame_compact)) -+ != (sections & (CFI_EMIT_eh_frame | CFI_EMIT_eh_frame_compact))) - as_bad (_("inconsistent uses of .cfi_sections")); - cfi_sections = sections; - } -Index: binutils-2.27/gas/testsuite/gas/cfi/cfi-common-9.d -=================================================================== ---- /dev/null -+++ binutils-2.27/gas/testsuite/gas/cfi/cfi-common-9.d -@@ -0,0 +1,23 @@ -+#objdump: -Wf -+#name: CFI common 9 -+#... -+Contents of the .eh_frame section: -+ -+00000000 0+0010 0+0000 CIE -+ Version: 1 -+ Augmentation: "zR" -+ Code alignment factor: .* -+ Data alignment factor: .* -+ Return address column: .* -+ Augmentation data: [01]b -+ -+ DW_CFA_nop -+ DW_CFA_nop -+ DW_CFA_nop -+ -+00000014 0+00(10|18|1c|20) 0+0018 FDE cie=0+0000 pc=.* -+ -+ DW_CFA_nop -+ DW_CFA_nop -+ DW_CFA_nop -+#... -Index: binutils-2.27/gas/testsuite/gas/cfi/cfi-common-9.s -=================================================================== ---- /dev/null -+++ binutils-2.27/gas/testsuite/gas/cfi/cfi-common-9.s -@@ -0,0 +1,4 @@ -+ .cfi_sections .eh_frame -+ .cfi_startproc simple -+ .cfi_sections .debug_frame -+ .cfi_endproc -Index: binutils-2.27/gas/testsuite/gas/cfi/cfi.exp -=================================================================== ---- binutils-2.27.orig/gas/testsuite/gas/cfi/cfi.exp -+++ binutils-2.27/gas/testsuite/gas/cfi/cfi.exp -@@ -135,4 +135,5 @@ if { ![istarget "hppa64*-*"] } then { - run_dump_test "cfi-common-6" - } - run_dump_test "cfi-common-7" -+ run_dump_test "cfi-common-9" - } From f65434a0e9a6e7adb4a9b331a0535e4f788303a25c1f0cb718432a95352e9533 Mon Sep 17 00:00:00 2001 From: Michael Matz Date: Fri, 17 Mar 2017 15:42:08 +0000 Subject: [PATCH 2/3] - Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, bnc#1029909 and more. Upstream bugs fixed: PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, PR 21159 OBS-URL: https://build.opensuse.org/package/show/devel:gcc/binutils?expand=0&rev=233 --- binutils.changes | 9 + binutils.spec | 2 + fix-security-bugs.diff | 762 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 773 insertions(+) create mode 100644 fix-security-bugs.diff diff --git a/binutils.changes b/binutils.changes index f43c9bc..a4f65a5 100644 --- a/binutils.changes +++ b/binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/binutils.spec b/binutils.spec index 7d77b50..3b20208 100644 --- a/binutils.spec +++ b/binutils.spec @@ -99,6 +99,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -175,6 +176,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/fix-security-bugs.diff b/fix-security-bugs.diff new file mode 100644 index 0000000..73013b7 --- /dev/null +++ b/fix-security-bugs.diff @@ -0,0 +1,762 @@ +This contains a merge of the following commits. +It fixes bnc#1029907, bnc#1029908, bnc#1029909 and more. + +commit 03f7786e2f440b9892b1c34a58fb26222ce1b493 +Author: Nick Clifton +Date: Mon Feb 13 13:08:32 2017 +0000 + + Fix readelf writing to illegal addresses whilst processing corrupt input files containing symbol-difference relocations. + + PR binutils/21137 + * readelf.c (target_specific_reloc_handling): Add end parameter. + Check for buffer overflow before writing relocated values. + (apply_relocations): Pass end to target_specific_reloc_handling. + +commit f84ce13b6708801ca1d6289b7c4003e2f5a6d7f9 +Author: Nick Clifton +Date: Mon Feb 13 14:03:22 2017 +0000 + + Fix read-after-free error in readelf when processing multiple, relocated sections in an MSP430 binary. + + PR binutils/21139 + * readelf.c (target_specific_reloc_handling): Add num_syms + parameter. Check for symbol table overflow before accessing + symbol value. If reloc pointer is NULL, discard all saved state. + (apply_relocations): Pass num_syms to target_specific_reloc_handling. + Call target_specific_reloc_handling with a NULL reloc pointer + after processing all of the relocs. + +commit 0ee3043f58aae078a1ecc54b7be2810cae39a718 +Author: Nick Clifton +Date: Mon Feb 13 14:17:07 2017 +0000 + + Fix access violation when reporting sections that could not be dumped. + + PR binutils/21147 + * readelf.c (process_section_contents): Fix off by one error + reporting un-dumped sections. + +commit 4aeb00ad3cc6a29b32f0a4e42c2f64d55e25b76d +Author: Nick Clifton +Date: Mon Feb 13 14:35:24 2017 +0000 + + Fix check for buffer overflow when processing version information. + + PR binutils/21148 + * readelf.c (process_version_sections): Include size of auxillary + version information when checking for buffer overflow. + +commit ebdf1ebfa551fd4624c3cd05401aa3c01ea2ebbe +Author: Nick Clifton +Date: Mon Feb 13 14:52:48 2017 +0000 + + Fix invalid memory access attempting to read the compression header of a too-small compressed section. + + PR binutils/21149 + * readelf.c (get_compression_header): Add size parameter. Check + size against sizeof compression header before attempting to + extract the header. + (process_section_headers): Pass size to get_compression_header. + (dump_section_as_strings): Likewise. + (dump_section_as_bytes): Likewise. + (load_specific_debug_section): Likewise. + +commit f055032e4e922f1e1a5e11026c7c2669fa2a7d19 +Author: Nick Clifton +Date: Mon Feb 13 15:04:37 2017 +0000 + + Fix invalid read of section contents whilst processing a corrupt binary. + + PR binutils/21135 + * readelf.c (dump_section_as_bytes): Handle the case where + uncompress_section_contents returns false. + +commit 1835f746a7c7fff70a2cc03a051b14fdc6b3f73f +Author: Nick Clifton +Date: Mon Feb 13 15:19:48 2017 +0000 + + Extend previous patch to cover uncompress_section_contents returning FALSE to other callers. + + PR binutils/21135 + (dump_section_as_bytes, load_specific_debug_section): Likewise. + +commit c12214021dedefcc2320827bcc1751f2d94ca2c6 +Author: Nick Clifton +Date: Mon Feb 13 17:23:10 2017 +0000 + + Fix illegal memory access bug in nm when run on a corrupt binary. + + PR binutils/21150 + * nm.c (file_symbol): Add test of string length before testing + string characters. + +commit d11135f55294d75099ad03f81bacbe8ae93a6b28 +Author: Nick Clifton +Date: Mon Feb 13 17:51:27 2017 +0000 + + Fix invalid memory access in the BFD library's DWARF parser. + + PR binutils/21151 + * dwarf2.c (_bfd_dwarf2_find_nearest_line): Check for an invalid + unit length field. + +commit b32e566ba6ee02687c6def22ade0899076adf7dd +Author: Nick Clifton +Date: Tue Feb 14 13:24:09 2017 +0000 + + Fix illegal memory access problems with readelf processing corrupt RL78 binaries. + + PR binutils/21155 + * readelf.c (IN_RANGE): New macro. Tests for an address + offset + being within a given range. + (target_specific_reloc_handling): Use macro to test for underflow + as well as overflow of reloc offset. + +commit a2dea0b20bc66a4c287c3c50002b8c3b3e9d953a +Author: Nick Clifton +Date: Tue Feb 14 14:07:29 2017 +0000 + + Fix handling of corrupt STABS enum type strings. + + PR binutils/21157 + * stabs.c (parse_stab_enum_type): Check for corrupt NAME:VALUE + pairs. + (parse_number): Exit early if passed an empty string. + +commit 92134dc19b4bf6407a88a306b771c9c6c88658d6 +Author: Nick Clifton +Date: Tue Feb 14 14:17:09 2017 +0000 + + Fix an illegal memory access parsing corrupt STABD debug information. + + PR binutils/21158 + * rddbg.c (read_symbol_stabs_debugging_info): Check for a null or + empty symbol name. + +commit bc303e5d6c2dd33086478f80fd1d3096d4e1bc01 +Author: Nick Clifton +Date: Tue Feb 14 15:10:34 2017 +0000 + + Fix invalid memory access displayiing contents of sections. + + PR binutils/21159 + * readelf.c (dump_section_as_strings): Reset the start address if + no decompression is perfromed. + (dump_section_as_bytes): Likewise. + +commit b814a36d3440de95f2ac6eaa4fc7935c322ea456 +Author: Nick Clifton +Date: Fri Feb 17 15:59:45 2017 +0000 + + Fix illegal memory accesses in readelf when parsing a corrupt binary. + + PR binutils/21156 + * readelf.c (find_section_in_set): Test for invalid section + indicies. + +commit 43a444f9c5bfd44b4304eafd78338e21d54bea14 +Author: Nick Clifton +Date: Mon Feb 20 14:40:39 2017 +0000 + + Fix another memory access error in readelf when parsing a corrupt binary. + + PR binutils/21156 + * dwarf.c (cu_tu_indexes_read): Move into... + (load_cu_tu_indexes): ... here. Change the variable into + tri-state. Change the function into boolean, returning + false if the indicies could not be loaded. + (find_cu_tu_set): Return NULL if the indicies could not be + loaded. + +commit 6438d1be9e9b6802a465c70c76b9cec7e23270f3 +Author: Nick Clifton +Date: Fri Feb 17 11:39:20 2017 +0000 + + Fix potential illegal memory access in ZLIB because of an erroneous declaration of the size of the input buffer. + + * compress.c (bfd_get_full_section_contents): Remember to reduce + compressed size by the sizeof the compression header when + decompressing the contents. + +Index: binutils-2.28/binutils/readelf.c +=================================================================== +--- binutils-2.28.orig/binutils/readelf.c 2017-03-02 09:23:53.000000000 +0100 ++++ binutils-2.28/binutils/readelf.c 2017-03-17 16:24:11.000000000 +0100 +@@ -675,8 +675,14 @@ find_section_in_set (const char * name, + if (set != NULL) + { + while ((i = *set++) > 0) +- if (streq (SECTION_NAME (section_headers + i), name)) +- return section_headers + i; ++ { ++ /* See PR 21156 for a reproducer. */ ++ if (i >= elf_header.e_shnum) ++ continue; /* FIXME: Should we issue an error message ? */ ++ ++ if (streq (SECTION_NAME (section_headers + i), name)) ++ return section_headers + i; ++ } + } + + return find_section (name); +@@ -5708,12 +5714,18 @@ get_elf_section_flags (bfd_vma sh_flags) + } + + static unsigned int +-get_compression_header (Elf_Internal_Chdr *chdr, unsigned char *buf) ++get_compression_header (Elf_Internal_Chdr *chdr, unsigned char *buf, bfd_size_type size) + { + if (is_32bit_elf) + { + Elf32_External_Chdr *echdr = (Elf32_External_Chdr *) buf; + ++ if (size < sizeof (* echdr)) ++ { ++ error (_("Compressed section is too small even for a compression header\n")); ++ return 0; ++ } ++ + chdr->ch_type = BYTE_GET (echdr->ch_type); + chdr->ch_size = BYTE_GET (echdr->ch_size); + chdr->ch_addralign = BYTE_GET (echdr->ch_addralign); +@@ -5723,6 +5735,12 @@ get_compression_header (Elf_Internal_Chd + { + Elf64_External_Chdr *echdr = (Elf64_External_Chdr *) buf; + ++ if (size < sizeof (* echdr)) ++ { ++ error (_("Compressed section is too small even for a compression header\n")); ++ return 0; ++ } ++ + chdr->ch_type = BYTE_GET (echdr->ch_type); + chdr->ch_size = BYTE_GET (echdr->ch_size); + chdr->ch_addralign = BYTE_GET (echdr->ch_addralign); +@@ -6304,7 +6322,7 @@ process_section_headers (FILE * file) + { + Elf_Internal_Chdr chdr; + +- (void) get_compression_header (&chdr, buf); ++ (void) get_compression_header (&chdr, buf, sizeof (buf)); + + if (chdr.ch_type == ELFCOMPRESS_ZLIB) + printf (" ZLIB, "); +@@ -10012,7 +10030,7 @@ process_version_sections (FILE * file) + ent.vd_ndx, ent.vd_cnt); + + /* Check for overflow. */ +- if (ent.vd_aux > (size_t) (endbuf - vstart)) ++ if (ent.vd_aux + sizeof (* eaux) > (size_t) (endbuf - vstart)) + break; + + vstart += ent.vd_aux; +@@ -11577,16 +11595,32 @@ process_syminfo (FILE * file ATTRIBUTE_U + return 1; + } + ++#define IN_RANGE(START,END,ADDR,OFF) \ ++ (((ADDR) >= (START)) && ((ADDR) + (OFF) < (END))) ++ + /* Check to see if the given reloc needs to be handled in a target specific + manner. If so then process the reloc and return TRUE otherwise return +- FALSE. */ ++ FALSE. ++ ++ If called with reloc == NULL, then this is a signal that reloc processing ++ for the current section has finished, and any saved state should be ++ discarded. */ + + static bfd_boolean + target_specific_reloc_handling (Elf_Internal_Rela * reloc, + unsigned char * start, +- Elf_Internal_Sym * symtab) ++ unsigned char * end, ++ Elf_Internal_Sym * symtab, ++ unsigned long num_syms) + { +- unsigned int reloc_type = get_reloc_type (reloc->r_info); ++ unsigned int reloc_type = 0; ++ unsigned long sym_index = 0; ++ ++ if (reloc) ++ { ++ reloc_type = get_reloc_type (reloc->r_info); ++ sym_index = get_reloc_symindex (reloc->r_info); ++ } + + switch (elf_header.e_machine) + { +@@ -11595,6 +11629,12 @@ target_specific_reloc_handling (Elf_Inte + { + static Elf_Internal_Sym * saved_sym = NULL; + ++ if (reloc == NULL) ++ { ++ saved_sym = NULL; ++ return TRUE; ++ } ++ + switch (reloc_type) + { + case 10: /* R_MSP430_SYM_DIFF */ +@@ -11602,7 +11642,12 @@ target_specific_reloc_handling (Elf_Inte + break; + /* Fall through. */ + case 21: /* R_MSP430X_SYM_DIFF */ +- saved_sym = symtab + get_reloc_symindex (reloc->r_info); ++ /* PR 21139. */ ++ if (sym_index >= num_syms) ++ error (_("MSP430 SYM_DIFF reloc contains invalid symbol index %lu\n"), ++ sym_index); ++ else ++ saved_sym = symtab + sym_index; + return TRUE; + + case 1: /* R_MSP430_32 or R_MSP430_ABS32 */ +@@ -11624,13 +11669,24 @@ target_specific_reloc_handling (Elf_Inte + handle_sym_diff: + if (saved_sym != NULL) + { ++ int reloc_size = reloc_type == 1 ? 4 : 2; + bfd_vma value; + +- value = reloc->r_addend +- + (symtab[get_reloc_symindex (reloc->r_info)].st_value +- - saved_sym->st_value); ++ if (sym_index >= num_syms) ++ error (_("MSP430 reloc contains invalid symbol index %lu\n"), ++ sym_index); ++ else ++ { ++ value = reloc->r_addend + (symtab[sym_index].st_value ++ - saved_sym->st_value); + +- byte_put (start + reloc->r_offset, value, reloc_type == 1 ? 4 : 2); ++ if (IN_RANGE (start, end, start + reloc->r_offset, reloc_size)) ++ byte_put (start + reloc->r_offset, value, reloc_size); ++ else ++ /* PR 21137 */ ++ error (_("MSP430 sym diff reloc contains invalid offset: 0x%lx\n"), ++ (long) reloc->r_offset); ++ } + + saved_sym = NULL; + return TRUE; +@@ -11650,24 +11706,45 @@ target_specific_reloc_handling (Elf_Inte + { + static Elf_Internal_Sym * saved_sym = NULL; + ++ if (reloc == NULL) ++ { ++ saved_sym = NULL; ++ return TRUE; ++ } ++ + switch (reloc_type) + { + case 34: /* R_MN10300_ALIGN */ + return TRUE; + case 33: /* R_MN10300_SYM_DIFF */ +- saved_sym = symtab + get_reloc_symindex (reloc->r_info); ++ if (sym_index >= num_syms) ++ error (_("MN10300_SYM_DIFF reloc contains invalid symbol index %lu\n"), ++ sym_index); ++ else ++ saved_sym = symtab + sym_index; + return TRUE; ++ + case 1: /* R_MN10300_32 */ + case 2: /* R_MN10300_16 */ + if (saved_sym != NULL) + { ++ int reloc_size = reloc_type == 1 ? 4 : 2; + bfd_vma value; + +- value = reloc->r_addend +- + (symtab[get_reloc_symindex (reloc->r_info)].st_value +- - saved_sym->st_value); ++ if (sym_index >= num_syms) ++ error (_("MN10300 reloc contains invalid symbol index %lu\n"), ++ sym_index); ++ else ++ { ++ value = reloc->r_addend + (symtab[sym_index].st_value ++ - saved_sym->st_value); + +- byte_put (start + reloc->r_offset, value, reloc_type == 1 ? 4 : 2); ++ if (IN_RANGE (start, end, start + reloc->r_offset, reloc_size)) ++ byte_put (start + reloc->r_offset, value, reloc_size); ++ else ++ error (_("MN10300 sym diff reloc contains invalid offset: 0x%lx\n"), ++ (long) reloc->r_offset); ++ } + + saved_sym = NULL; + return TRUE; +@@ -11687,12 +11764,24 @@ target_specific_reloc_handling (Elf_Inte + static bfd_vma saved_sym2 = 0; + static bfd_vma value; + ++ if (reloc == NULL) ++ { ++ saved_sym1 = saved_sym2 = 0; ++ return TRUE; ++ } ++ + switch (reloc_type) + { + case 0x80: /* R_RL78_SYM. */ + saved_sym1 = saved_sym2; +- saved_sym2 = symtab[get_reloc_symindex (reloc->r_info)].st_value; +- saved_sym2 += reloc->r_addend; ++ if (sym_index >= num_syms) ++ error (_("RL78_SYM reloc contains invalid symbol index %lu\n"), ++ sym_index); ++ else ++ { ++ saved_sym2 = symtab[sym_index].st_value; ++ saved_sym2 += reloc->r_addend; ++ } + return TRUE; + + case 0x83: /* R_RL78_OPsub. */ +@@ -11702,12 +11791,20 @@ target_specific_reloc_handling (Elf_Inte + break; + + case 0x41: /* R_RL78_ABS32. */ +- byte_put (start + reloc->r_offset, value, 4); ++ if (IN_RANGE (start, end, start + reloc->r_offset, 4)) ++ byte_put (start + reloc->r_offset, value, 4); ++ else ++ error (_("RL78 sym diff reloc contains invalid offset: 0x%lx\n"), ++ (long) reloc->r_offset); + value = 0; + return TRUE; + + case 0x43: /* R_RL78_ABS16. */ +- byte_put (start + reloc->r_offset, value, 2); ++ if (IN_RANGE (start, end, start + reloc->r_offset, 2)) ++ byte_put (start + reloc->r_offset, value, 2); ++ else ++ error (_("RL78 sym diff reloc contains invalid offset: 0x%lx\n"), ++ (long) reloc->r_offset); + value = 0; + return TRUE; + +@@ -12324,7 +12421,7 @@ apply_relocations (void * + + reloc_type = get_reloc_type (rp->r_info); + +- if (target_specific_reloc_handling (rp, start, symtab)) ++ if (target_specific_reloc_handling (rp, start, end, symtab, num_syms)) + continue; + else if (is_none_reloc (reloc_type)) + continue; +@@ -12420,6 +12517,9 @@ apply_relocations (void * + } + + free (symtab); ++ /* Let the target specific reloc processing code know that ++ we have finished with these relocs. */ ++ target_specific_reloc_handling (NULL, NULL, NULL, NULL, 0); + + if (relocs_return) + { +@@ -12548,7 +12648,8 @@ dump_section_as_strings (Elf_Internal_Sh + { + Elf_Internal_Chdr chdr; + unsigned int compression_header_size +- = get_compression_header (& chdr, (unsigned char *) start); ++ = get_compression_header (& chdr, (unsigned char *) start, ++ num_bytes); + + if (chdr.ch_type != ELFCOMPRESS_ZLIB) + { +@@ -12583,10 +12684,20 @@ dump_section_as_strings (Elf_Internal_Sh + new_size -= 12; + } + +- if (uncompressed_size +- && uncompress_section_contents (& start, +- uncompressed_size, & new_size)) +- num_bytes = new_size; ++ if (uncompressed_size) ++ { ++ if (uncompress_section_contents (& start, ++ uncompressed_size, & new_size)) ++ num_bytes = new_size; ++ else ++ { ++ error (_("Unable to decompress section %s\n"), ++ printable_section_name (section)); ++ return; ++ } ++ } ++ else ++ start = real_start; + } + + /* If the section being dumped has relocations against it the user might +@@ -12682,7 +12793,7 @@ dump_section_as_bytes (Elf_Internal_Shdr + { + Elf_Internal_Chdr chdr; + unsigned int compression_header_size +- = get_compression_header (& chdr, start); ++ = get_compression_header (& chdr, start, section_size); + + if (chdr.ch_type != ELFCOMPRESS_ZLIB) + { +@@ -12717,10 +12828,23 @@ dump_section_as_bytes (Elf_Internal_Shdr + new_size -= 12; + } + +- if (uncompressed_size +- && uncompress_section_contents (& start, uncompressed_size, +- & new_size)) +- section_size = new_size; ++ if (uncompressed_size) ++ { ++ if (uncompress_section_contents (& start, uncompressed_size, ++ & new_size)) ++ { ++ section_size = new_size; ++ } ++ else ++ { ++ error (_("Unable to decompress section %s\n"), ++ printable_section_name (section)); ++ /* FIXME: Print the section anyway ? */ ++ return; ++ } ++ } ++ else ++ start = real_start; + } + + if (relocate) +@@ -12835,7 +12959,7 @@ load_specific_debug_section (enum dwarf_ + return 0; + } + +- compression_header_size = get_compression_header (&chdr, start); ++ compression_header_size = get_compression_header (&chdr, start, size); + + if (chdr.ch_type != ELFCOMPRESS_ZLIB) + { +@@ -12870,15 +12994,24 @@ load_specific_debug_section (enum dwarf_ + size -= 12; + } + +- if (uncompressed_size +- && uncompress_section_contents (&start, uncompressed_size, +- &size)) +- { +- /* Free the compressed buffer, update the section buffer +- and the section size if uncompress is successful. */ +- free (section->start); +- section->start = start; ++ if (uncompressed_size) ++ { ++ if (uncompress_section_contents (&start, uncompressed_size, ++ &size)) ++ { ++ /* Free the compressed buffer, update the section buffer ++ and the section size if uncompress is successful. */ ++ free (section->start); ++ section->start = start; ++ } ++ else ++ { ++ error (_("Unable to decompress section %s\n"), ++ printable_section_name (sec)); ++ return 0; ++ } + } ++ + section->size = size; + } + +@@ -13077,9 +13210,12 @@ process_section_contents (FILE * file) + + /* Check to see if the user requested a + dump of a section that does not exist. */ +- while (i++ < num_dump_sects) +- if (dump_sects[i]) +- warn (_("Section %d was not dumped because it does not exist!\n"), i); ++ while (i < num_dump_sects) ++ { ++ if (dump_sects[i]) ++ warn (_("Section %d was not dumped because it does not exist!\n"), i); ++ i++; ++ } + } + + static void +Index: binutils-2.28/binutils/nm.c +=================================================================== +--- binutils-2.28.orig/binutils/nm.c 2017-03-02 09:23:53.000000000 +0100 ++++ binutils-2.28/binutils/nm.c 2017-03-17 16:24:11.000000000 +0100 +@@ -685,7 +685,8 @@ size_forward1 (const void *P_x, const vo + + #define file_symbol(s, sn, snl) \ + (((s)->flags & BSF_FILE) != 0 \ +- || ((sn)[(snl) - 2] == '.' \ ++ || ((snl) > 2 \ ++ && (sn)[(snl) - 2] == '.' \ + && ((sn)[(snl) - 1] == 'o' \ + || (sn)[(snl) - 1] == 'a'))) + +Index: binutils-2.28/bfd/dwarf2.c +=================================================================== +--- binutils-2.28.orig/bfd/dwarf2.c 2017-03-02 09:23:53.000000000 +0100 ++++ binutils-2.28/bfd/dwarf2.c 2017-03-17 16:24:11.000000000 +0100 +@@ -4288,6 +4288,10 @@ _bfd_dwarf2_find_nearest_line (bfd *abfd + { + bfd_byte * new_ptr; + ++ /* PR 21151 */ ++ if (stash->info_ptr + length > stash->info_ptr_end) ++ return FALSE; ++ + each = parse_comp_unit (stash, length, info_ptr_unit, + offset_size); + if (!each) +Index: binutils-2.28/binutils/stabs.c +=================================================================== +--- binutils-2.28.orig/binutils/stabs.c 2017-03-02 09:23:53.000000000 +0100 ++++ binutils-2.28/binutils/stabs.c 2017-03-17 16:24:11.000000000 +0100 +@@ -232,6 +232,10 @@ parse_number (const char **pp, bfd_boole + + orig = *pp; + ++ /* Stop early if we are passed an empty string. */ ++ if (*orig == 0) ++ return (bfd_vma) 0; ++ + errno = 0; + ul = strtoul (*pp, (char **) pp, 0); + if (ul + 1 != 0 || errno == 0) +@@ -1975,9 +1979,17 @@ parse_stab_enum_type (void *dhandle, con + bfd_signed_vma val; + + p = *pp; +- while (*p != ':') ++ while (*p != ':' && *p != 0) + ++p; + ++ if (*p == 0) ++ { ++ bad_stab (orig); ++ free (names); ++ free (values); ++ return DEBUG_TYPE_NULL; ++ } ++ + name = savestring (*pp, p - *pp); + + *pp = p + 1; +Index: binutils-2.28/binutils/rddbg.c +=================================================================== +--- binutils-2.28.orig/binutils/rddbg.c 2017-03-02 09:23:53.000000000 +0100 ++++ binutils-2.28/binutils/rddbg.c 2017-03-17 16:24:11.000000000 +0100 +@@ -299,7 +299,10 @@ read_symbol_stabs_debugging_info (bfd *a + *pfound = TRUE; + + s = i.name; ++ if (s == NULL || strlen (s) < 1) ++ return FALSE; + f = NULL; ++ + while (s[strlen (s) - 1] == '\\' + && ps + 1 < symend) + { +Index: binutils-2.28/binutils/dwarf.c +=================================================================== +--- binutils-2.28.orig/binutils/dwarf.c 2017-03-02 09:23:53.000000000 +0100 ++++ binutils-2.28/binutils/dwarf.c 2017-03-17 16:24:11.000000000 +0100 +@@ -76,7 +76,6 @@ int dwarf_check = 0; + as a zero-terminated list of section indexes comprising one set of debug + sections from a .dwo file. */ + +-static int cu_tu_indexes_read = 0; + static unsigned int *shndx_pool = NULL; + static unsigned int shndx_pool_size = 0; + static unsigned int shndx_pool_used = 0; +@@ -99,7 +98,7 @@ static int tu_count = 0; + static struct cu_tu_set *cu_sets = NULL; + static struct cu_tu_set *tu_sets = NULL; + +-static void load_cu_tu_indexes (void *file); ++static bfd_boolean load_cu_tu_indexes (void *); + + /* Values for do_debug_lines. */ + #define FLAG_DEBUG_LINES_RAW 1 +@@ -2715,7 +2714,7 @@ load_debug_info (void * file) + return num_debug_info_entries; + + /* If this is a DWARF package file, load the CU and TU indexes. */ +- load_cu_tu_indexes (file); ++ (void) load_cu_tu_indexes (file); + + if (load_debug_section (info, file) + && process_debug_info (&debug_displays [info].section, file, abbrev, 1, 0)) +@@ -7378,21 +7377,27 @@ process_cu_tu_index (struct dwarf_sectio + section sets that we can use to associate a .debug_info.dwo section + with its associated .debug_abbrev.dwo section in a .dwp file. */ + +-static void ++static bfd_boolean + load_cu_tu_indexes (void *file) + { ++ static int cu_tu_indexes_read = -1; /* Tri-state variable. */ ++ + /* If we have already loaded (or tried to load) the CU and TU indexes + then do not bother to repeat the task. */ +- if (cu_tu_indexes_read) +- return; +- +- if (load_debug_section (dwp_cu_index, file)) +- process_cu_tu_index (&debug_displays [dwp_cu_index].section, 0); ++ if (cu_tu_indexes_read == -1) ++ { ++ cu_tu_indexes_read = TRUE; ++ ++ if (load_debug_section (dwp_cu_index, file)) ++ if (! process_cu_tu_index (&debug_displays [dwp_cu_index].section, 0)) ++ cu_tu_indexes_read = FALSE; + +- if (load_debug_section (dwp_tu_index, file)) +- process_cu_tu_index (&debug_displays [dwp_tu_index].section, 0); ++ if (load_debug_section (dwp_tu_index, file)) ++ if (! process_cu_tu_index (&debug_displays [dwp_tu_index].section, 0)) ++ cu_tu_indexes_read = FALSE; ++ } + +- cu_tu_indexes_read = 1; ++ return (bfd_boolean) cu_tu_indexes_read; + } + + /* Find the set of sections that includes section SHNDX. */ +@@ -7402,7 +7407,8 @@ find_cu_tu_set (void *file, unsigned int + { + unsigned int i; + +- load_cu_tu_indexes (file); ++ if (! load_cu_tu_indexes (file)) ++ return NULL; + + /* Find SHNDX in the shndx pool. */ + for (i = 0; i < shndx_pool_used; i++) +Index: binutils-2.28/bfd/compress.c +=================================================================== +--- binutils-2.28.orig/bfd/compress.c 2017-03-02 09:23:53.000000000 +0100 ++++ binutils-2.28/bfd/compress.c 2017-03-17 16:24:11.000000000 +0100 +@@ -300,7 +300,7 @@ bfd_get_full_section_contents (bfd *abfd + SHF_COMPRESSED section. */ + compression_header_size = 12; + if (!decompress_contents (compressed_buffer + compression_header_size, +- sec->compressed_size, p, sz)) ++ sec->compressed_size - compression_header_size, p, sz)) + { + bfd_set_error (bfd_error_bad_value); + if (p != *ptr) From fe376ecbb2deef240db394340637f34f06eae9c731419d06e6b7a221cec71a0a Mon Sep 17 00:00:00 2001 From: Michael Matz Date: Fri, 17 Mar 2017 15:44:53 +0000 Subject: [PATCH 3/3] Whoops, forgot the other .spec files. OBS-URL: https://build.opensuse.org/package/show/devel:gcc/binutils?expand=0&rev=234 --- cross-aarch64-binutils.changes | 9 +++++++++ cross-aarch64-binutils.spec | 2 ++ cross-arm-binutils.changes | 9 +++++++++ cross-arm-binutils.spec | 2 ++ cross-avr-binutils.changes | 9 +++++++++ cross-avr-binutils.spec | 2 ++ cross-epiphany-binutils.changes | 9 +++++++++ cross-epiphany-binutils.spec | 2 ++ cross-hppa-binutils.changes | 9 +++++++++ cross-hppa-binutils.spec | 2 ++ cross-hppa64-binutils.changes | 9 +++++++++ cross-hppa64-binutils.spec | 2 ++ cross-i386-binutils.changes | 9 +++++++++ cross-i386-binutils.spec | 2 ++ cross-ia64-binutils.changes | 9 +++++++++ cross-ia64-binutils.spec | 2 ++ cross-m68k-binutils.changes | 9 +++++++++ cross-m68k-binutils.spec | 2 ++ cross-mips-binutils.changes | 9 +++++++++ cross-mips-binutils.spec | 2 ++ cross-ppc-binutils.changes | 9 +++++++++ cross-ppc-binutils.spec | 2 ++ cross-ppc64-binutils.changes | 9 +++++++++ cross-ppc64-binutils.spec | 2 ++ cross-ppc64le-binutils.changes | 9 +++++++++ cross-ppc64le-binutils.spec | 2 ++ cross-rx-binutils.changes | 9 +++++++++ cross-rx-binutils.spec | 2 ++ cross-s390-binutils.changes | 9 +++++++++ cross-s390-binutils.spec | 2 ++ cross-s390x-binutils.changes | 9 +++++++++ cross-s390x-binutils.spec | 2 ++ cross-sparc-binutils.changes | 9 +++++++++ cross-sparc-binutils.spec | 2 ++ cross-sparc64-binutils.changes | 9 +++++++++ cross-sparc64-binutils.spec | 2 ++ cross-spu-binutils.changes | 9 +++++++++ cross-spu-binutils.spec | 2 ++ cross-x86_64-binutils.changes | 9 +++++++++ cross-x86_64-binutils.spec | 2 ++ 40 files changed, 220 insertions(+) diff --git a/cross-aarch64-binutils.changes b/cross-aarch64-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-aarch64-binutils.changes +++ b/cross-aarch64-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-aarch64-binutils.spec b/cross-aarch64-binutils.spec index c8bc307..8972102 100644 --- a/cross-aarch64-binutils.spec +++ b/cross-aarch64-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-arm-binutils.changes b/cross-arm-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-arm-binutils.changes +++ b/cross-arm-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-arm-binutils.spec b/cross-arm-binutils.spec index e1726cd..7e069e4 100644 --- a/cross-arm-binutils.spec +++ b/cross-arm-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-avr-binutils.changes b/cross-avr-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-avr-binutils.changes +++ b/cross-avr-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-avr-binutils.spec b/cross-avr-binutils.spec index f1ae9c3..e5f541e 100644 --- a/cross-avr-binutils.spec +++ b/cross-avr-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-epiphany-binutils.changes b/cross-epiphany-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-epiphany-binutils.changes +++ b/cross-epiphany-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-epiphany-binutils.spec b/cross-epiphany-binutils.spec index a34093e..d61b341 100644 --- a/cross-epiphany-binutils.spec +++ b/cross-epiphany-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-hppa-binutils.changes b/cross-hppa-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-hppa-binutils.changes +++ b/cross-hppa-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-hppa-binutils.spec b/cross-hppa-binutils.spec index 44a6ff7..c61fb5b 100644 --- a/cross-hppa-binutils.spec +++ b/cross-hppa-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-hppa64-binutils.changes b/cross-hppa64-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-hppa64-binutils.changes +++ b/cross-hppa64-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-hppa64-binutils.spec b/cross-hppa64-binutils.spec index 59eb5d8..9f5465e 100644 --- a/cross-hppa64-binutils.spec +++ b/cross-hppa64-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-i386-binutils.changes b/cross-i386-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-i386-binutils.changes +++ b/cross-i386-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-i386-binutils.spec b/cross-i386-binutils.spec index bf87c6f..fb210bd 100644 --- a/cross-i386-binutils.spec +++ b/cross-i386-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-ia64-binutils.changes b/cross-ia64-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-ia64-binutils.changes +++ b/cross-ia64-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-ia64-binutils.spec b/cross-ia64-binutils.spec index 68915f6..c9837e3 100644 --- a/cross-ia64-binutils.spec +++ b/cross-ia64-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-m68k-binutils.changes b/cross-m68k-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-m68k-binutils.changes +++ b/cross-m68k-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-m68k-binutils.spec b/cross-m68k-binutils.spec index 0ca5062..49b11bd 100644 --- a/cross-m68k-binutils.spec +++ b/cross-m68k-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-mips-binutils.changes b/cross-mips-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-mips-binutils.changes +++ b/cross-mips-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-mips-binutils.spec b/cross-mips-binutils.spec index 069524a..b438c86 100644 --- a/cross-mips-binutils.spec +++ b/cross-mips-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-ppc-binutils.changes b/cross-ppc-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-ppc-binutils.changes +++ b/cross-ppc-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-ppc-binutils.spec b/cross-ppc-binutils.spec index 2677a4b..dd93b91 100644 --- a/cross-ppc-binutils.spec +++ b/cross-ppc-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-ppc64-binutils.changes b/cross-ppc64-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-ppc64-binutils.changes +++ b/cross-ppc64-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-ppc64-binutils.spec b/cross-ppc64-binutils.spec index e169f24..f8d90ce 100644 --- a/cross-ppc64-binutils.spec +++ b/cross-ppc64-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-ppc64le-binutils.changes b/cross-ppc64le-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-ppc64le-binutils.changes +++ b/cross-ppc64le-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-ppc64le-binutils.spec b/cross-ppc64le-binutils.spec index d992ddd..40e9411 100644 --- a/cross-ppc64le-binutils.spec +++ b/cross-ppc64le-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-rx-binutils.changes b/cross-rx-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-rx-binutils.changes +++ b/cross-rx-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-rx-binutils.spec b/cross-rx-binutils.spec index f3f6915..831e1d6 100644 --- a/cross-rx-binutils.spec +++ b/cross-rx-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-s390-binutils.changes b/cross-s390-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-s390-binutils.changes +++ b/cross-s390-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-s390-binutils.spec b/cross-s390-binutils.spec index 99e42ee..4d5cd21 100644 --- a/cross-s390-binutils.spec +++ b/cross-s390-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-s390x-binutils.changes b/cross-s390x-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-s390x-binutils.changes +++ b/cross-s390x-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-s390x-binutils.spec b/cross-s390x-binutils.spec index 3c11c2e..29e0bbd 100644 --- a/cross-s390x-binutils.spec +++ b/cross-s390x-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-sparc-binutils.changes b/cross-sparc-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-sparc-binutils.changes +++ b/cross-sparc-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-sparc-binutils.spec b/cross-sparc-binutils.spec index e8b9f9e..832bccb 100644 --- a/cross-sparc-binutils.spec +++ b/cross-sparc-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-sparc64-binutils.changes b/cross-sparc64-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-sparc64-binutils.changes +++ b/cross-sparc64-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-sparc64-binutils.spec b/cross-sparc64-binutils.spec index 1aead62..9fd8819 100644 --- a/cross-sparc64-binutils.spec +++ b/cross-sparc64-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-spu-binutils.changes b/cross-spu-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-spu-binutils.changes +++ b/cross-spu-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-spu-binutils.spec b/cross-spu-binutils.spec index c298ab2..58eb57d 100644 --- a/cross-spu-binutils.spec +++ b/cross-spu-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 diff --git a/cross-x86_64-binutils.changes b/cross-x86_64-binutils.changes index f43c9bc..a4f65a5 100644 --- a/cross-x86_64-binutils.changes +++ b/cross-x86_64-binutils.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Mar 17 15:28:26 UTC 2017 - matz@suse.com + +- Add fix-security-bugs.diff to fix bnc#1029907, bnc#1029908, + bnc#1029909 and more. Upstream bugs fixed: + PR 21135, PR 21137, PR 21139, PR 21147, PR 21148, PR 21149, + PR 21150, PR 21151, PR 21155, PR 21156, PR 21157, PR 21158, + PR 21159 + ------------------------------------------------------------------- Wed Mar 8 11:25:04 UTC 2017 - rguenther@suse.com diff --git a/cross-x86_64-binutils.spec b/cross-x86_64-binutils.spec index e45d4fb..d33c6af 100644 --- a/cross-x86_64-binutils.spec +++ b/cross-x86_64-binutils.spec @@ -102,6 +102,7 @@ Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch # Backport 758d96d834ba725461a Patch36: binutils-bso21193.diff +Patch37: fix-security-bugs.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -178,6 +179,7 @@ echo "make check will return with %{make_check_handling} in case of testsuite fa %patch22 %patch34 -p1 %patch36 -p1 +%patch37 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90