diff options
author | H.J. Lu <hjl@lucon.org> | 2005-04-18 03:13:49 +0000 |
---|---|---|
committer | H.J. Lu <hjl@lucon.org> | 2005-04-18 03:13:49 +0000 |
commit | 680d84e5845d4d55836e7c5aecb18a22a6a0ffe4 (patch) | |
tree | 94f12d44f136253b87b2e8dff9308ef637a68d67 | |
parent | db81a828214e712855a73ebbcd9ddb7ee49ac649 (diff) | |
download | gdb-680d84e5845d4d55836e7c5aecb18a22a6a0ffe4.tar.gz |
2005-04-17 H.J. Lu <hongjiu.lu@intel.com>
PR 855
* elf.c (_bfd_elf_copy_private_section_data): Don't copy linker
created group data.
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/elf.c | 11 |
2 files changed, 14 insertions, 3 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index a44e8f24c1d..9b20c92fa17 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,6 +1,12 @@ 2005-04-17 H.J. Lu <hongjiu.lu@intel.com> PR 855 + * elf.c (_bfd_elf_copy_private_section_data): Don't copy linker + created group data. + +2005-04-17 H.J. Lu <hongjiu.lu@intel.com> + + PR 855 * elf.c (setup_group): Properly handle zero group count. 2005-04-17 Mark Kettenis <kettenis@gnu.org> diff --git a/bfd/elf.c b/bfd/elf.c index 5f681129e55..1434678ce7c 100644 --- a/bfd/elf.c +++ b/bfd/elf.c @@ -5519,9 +5519,14 @@ _bfd_elf_copy_private_section_data (bfd *ibfd, /* Set things up for objcopy. The output SHT_GROUP section will have its elf_next_in_group pointing back to the input group - members. */ - elf_next_in_group (osec) = elf_next_in_group (isec); - elf_group_name (osec) = elf_group_name (isec); + members. Ignore linker created group section. See + elfNN_ia64_object_p in elfxx-ia64.c. */ + if (elf_sec_group (isec) == NULL + || (elf_sec_group (isec)->flags & SEC_LINKER_CREATED) == 0) + { + elf_next_in_group (osec) = elf_next_in_group (isec); + elf_group_name (osec) = elf_group_name (isec); + } osec->use_rela_p = isec->use_rela_p; |