diff options
author | Alan Modra <amodra@gmail.com> | 2015-10-01 07:38:07 +0930 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2015-10-01 07:41:28 +0930 |
commit | 017e6bceee1a96d4b57175687560b4d625fdb150 (patch) | |
tree | 32f78790e80baf3f1ad994b11eba7fabca7aea9a | |
parent | 1fd60fc077da09a3ae8f20a8b3f5f88b413c7237 (diff) | |
download | gdb-017e6bceee1a96d4b57175687560b4d625fdb150.zip gdb-017e6bceee1a96d4b57175687560b4d625fdb150.tar.gz gdb-017e6bceee1a96d4b57175687560b4d625fdb150.tar.bz2 |
Revert "Also check e_machine when merging sections"
Commit 9865bd0d added a bogus check in _bfd_elf_merge_sections.
bfd/
PR ld/19013
* elflink.c (_bfd_elf_merge_sections): Revert last change.
ld/testsuite/
* ld-x86-64/pr19013-x32.d: Update.
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/elflink.c | 12 | ||||
-rw-r--r-- | ld/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/pr19013-x32.d | 2 |
4 files changed, 12 insertions, 11 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 3610948..76c8a5c 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2015-10-01 Alan Modra <amodra@gmail.com> + + PR ld/19013 + * elflink.c (_bfd_elf_merge_sections): Revert last change. + 2015-09-30 H.J. Lu <hongjiu.lu@intel.com> PR ld/19031 diff --git a/bfd/elflink.c b/bfd/elflink.c index 70c231b..90af6cf 100644 --- a/bfd/elflink.c +++ b/bfd/elflink.c @@ -6818,23 +6818,15 @@ _bfd_elf_merge_sections (bfd *obfd, struct bfd_link_info *info) { bfd *ibfd; asection *sec; - const struct elf_backend_data *bed; if (!is_elf_hash_table (info->hash)) return FALSE; - bed = get_elf_backend_data (obfd); for (ibfd = info->input_bfds; ibfd != NULL; ibfd = ibfd->link.next) if ((ibfd->flags & DYNAMIC) == 0 && bfd_get_flavour (ibfd) == bfd_target_elf_flavour - && (elf_elfheader (ibfd)->e_ident[EI_CLASS] == bed->s->elfclass) - && (bed->elf_machine_code == elf_elfheader (ibfd)->e_machine - || (bed->elf_machine_alt1 != 0 - && (bed->elf_machine_alt1 - == elf_elfheader (ibfd)->e_machine)) - || (bed->elf_machine_alt2 != 0 - && (bed->elf_machine_alt2 - == elf_elfheader (ibfd)->e_machine)))) + && (elf_elfheader (ibfd)->e_ident[EI_CLASS] + == get_elf_backend_data (obfd)->s->elfclass)) for (sec = ibfd->sections; sec != NULL; sec = sec->next) if ((sec->flags & SEC_MERGE) != 0 && !bfd_is_abs_section (sec->output_section)) diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index e73d09f..b8724af 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2015-10-01 Alan Modra <amodra@gmail.com> + + * ld-x86-64/pr19013-x32.d: Update. + 2015-09-30 H.J. Lu <hongjiu.lu@intel.com> * ld-x86-64/pr19013.d (ld): Add -m elf_x86_64. diff --git a/ld/testsuite/ld-x86-64/pr19013-x32.d b/ld/testsuite/ld-x86-64/pr19013-x32.d index fb70966..97fb841 100644 --- a/ld/testsuite/ld-x86-64/pr19013-x32.d +++ b/ld/testsuite/ld-x86-64/pr19013-x32.d @@ -5,5 +5,5 @@ #notarget: x86_64-*-nacl* #... - [0-9a-f]+ 00000203 00414243 4400 +.....ABCD. + + [0-9a-f]+ 02030041 42434400 +...ABCD. + #pass |