diff options
author | Nick Clifton <nickc@redhat.com> | 2010-09-07 15:01:56 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2010-09-07 15:01:56 +0000 |
commit | 96f16fd1febc370781b139c54a9bd08e98d3cf02 (patch) | |
tree | 3a033f39dc181a29b1e6e66405c012558bea977f /ld/ldwrite.c | |
parent | bff398636ead2600fca75759440d4656a96d9808 (diff) | |
download | binutils-redhat-96f16fd1febc370781b139c54a9bd08e98d3cf02.tar.gz |
* ldwrite.c (clone_section): Call bfd_copy_private_section_data on
newly cloned section.
* ld-x86-64/split-by-file.rd: New test.
* ld-x86-64/split-by-file1.s: New test source code.
* ld-x86-64/split-by-file2.s: New test source code.
* ld-x86-64/x86-64.exp: Run the new test.
* readelf.c (process_section_headers): Mention meaning of 'l'
section flag for x86-64 targets.
Diffstat (limited to 'ld/ldwrite.c')
-rw-r--r-- | ld/ldwrite.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/ld/ldwrite.c b/ld/ldwrite.c index 2ff95472d6..7eb8b2b01d 100644 --- a/ld/ldwrite.c +++ b/ld/ldwrite.c @@ -358,7 +358,7 @@ clone_section (bfd *abfd, asection *s, const char *name, int *count) } tname[5] = 0; } - + if ((sname = bfd_get_unique_section_name (abfd, tname, count)) == NULL || (n = bfd_make_section_anyway (abfd, sname)) == NULL || (h = bfd_link_hash_lookup (link_info.hash, @@ -369,7 +369,7 @@ clone_section (bfd *abfd, asection *s, const char *name, int *count) return NULL; } free (tname); - + /* Set up section symbol. */ h->type = bfd_link_hash_defined; h->u.def.value = 0; @@ -385,6 +385,9 @@ clone_section (bfd *abfd, asection *s, const char *name, int *count) n->orelocation = 0; n->reloc_count = 0; n->alignment_power = s->alignment_power; + + bfd_copy_private_section_data (abfd, s, abfd, n); + return n; } |