diff options
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 6 | ||||
-rw-r--r-- | ld/scripttempl/elf.sc | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index b423b74..f64974b 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,9 @@ +2004-06-15 Jakub Jelinek <jakub@redhat.com> + + * scripttempl/elf.sc: Readd KEEP and .gcc_except_table.* to + .gcc_except_table output sections lost accidentally with + -z relro patch. + 2004-06-15 Alan Modra <amodra@bigpond.net.au> * ldwrite.c (build_link_order): Use bfd_get_section_size diff --git a/ld/scripttempl/elf.sc b/ld/scripttempl/elf.sc index 4d0279c..93d849e 100644 --- a/ld/scripttempl/elf.sc +++ b/ld/scripttempl/elf.sc @@ -312,7 +312,7 @@ cat <<EOF ${OTHER_READONLY_SECTIONS} .eh_frame_hdr : { *(.eh_frame_hdr) } .eh_frame ${RELOCATING-0} : ONLY_IF_RO { KEEP (*(.eh_frame)) } - .gcc_except_table ${RELOCATING-0} : ONLY_IF_RO { *(.gcc_except_table) } + .gcc_except_table ${RELOCATING-0} : ONLY_IF_RO { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ @@ -322,7 +322,7 @@ cat <<EOF /* Exception handling */ .eh_frame ${RELOCATING-0} : ONLY_IF_RW { KEEP (*(.eh_frame)) } - .gcc_except_table ${RELOCATING-0} : ONLY_IF_RW { *(.gcc_except_table) } + .gcc_except_table ${RELOCATING-0} : ONLY_IF_RW { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } /* Thread Local Storage sections */ .tdata ${RELOCATING-0} : { *(.tdata${RELOCATING+ .tdata.* .gnu.linkonce.td.*}) } |