diff options
author | Nick Clifton <nickc@redhat.com> | 2011-04-26 15:28:03 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2011-04-26 15:28:03 +0000 |
commit | aedcf5a209cb78876a64d709fe236591d7835ce7 (patch) | |
tree | 057358a814c14be8b2f75298828a9c47b014f242 /ld/scripttempl | |
parent | 11d7a61d25e4736154b3c4bcdf28efba85647263 (diff) | |
download | binutils-redhat-aedcf5a209cb78876a64d709fe236591d7835ce7.tar.gz |
* dw2gencfi.c (dwcfi_seg_list): New struct.
(dwcfi_hash): New static hash variable.
(get_debugseg_name): New.
(alloc_debugseg_item): New.
(make_debug_seg): New.
(dwcfi_hash_insert): New.
(dwcfi_hash_find): New.
(dwcfi_hash_find_or_make): New.
(cfi_insn_data): New member cur_seg.
(cie_entry): Likewise.
(fde_entry): New cseg and handled members.
(alloc_fde_entry): Initialize cseg member.
(alloc_cfi_insn_data): Initialize cur_seg member.
(dot_cfi_sections): Compare for beginning of
section names via strncmp.
(get_cfi_seg): New.
(cfi_finish): Treat link-once sections.
(is_now_linkonce_segment): New local helper.
(output_cie): Ignore cie entries not member of current
segment.
(output_fde): Likewise.
(select_cie_for_fde): Likewise.
(cfi_change_reg_numbers): Add new argument for current segment
and ignore insn elements, if not part of current segment.
* ehopt.c (get_cie_info): Use strncmp for
section name matching.
(heck_eh_frame): Likewise.
* coffcode.h (sec_to_styp_flags): Allow linkonce for
debugging sections.
* scripttempl/pe.sc: Handle .eh_frame($|.)* sections.
* scripttempl/pep.sc: Likewise.
* ld-pe/pe.exp: Add cfi/cfi32 tests.
* ld-pe/cfi.d: New.
* ld-pe/cfi32.d: New.
* ld-pe/cfia.s: New.
* ld-pe/cfib.s: New.
Diffstat (limited to 'ld/scripttempl')
-rw-r--r-- | ld/scripttempl/pe.sc | 4 | ||||
-rw-r--r-- | ld/scripttempl/pep.sc | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/ld/scripttempl/pe.sc b/ld/scripttempl/pe.sc index 7d52cc542c..a82d08c7b5 100644 --- a/ld/scripttempl/pe.sc +++ b/ld/scripttempl/pe.sc @@ -115,7 +115,7 @@ SECTIONS .eh_frame ${RELOCATING+BLOCK(__section_alignment__)} : { - *(.eh_frame) + *(.eh_frame*) } .pdata ${RELOCATING+BLOCK(__section_alignment__)} : @@ -250,7 +250,7 @@ SECTIONS .debug_frame ${RELOCATING+BLOCK(__section_alignment__)} ${RELOCATING+(NOLOAD)} : { - *(.debug_frame) + *(.debug_frame*) } .debug_str ${RELOCATING+BLOCK(__section_alignment__)} ${RELOCATING+(NOLOAD)} : diff --git a/ld/scripttempl/pep.sc b/ld/scripttempl/pep.sc index 8fa5f052d6..b8315c53f9 100644 --- a/ld/scripttempl/pep.sc +++ b/ld/scripttempl/pep.sc @@ -116,7 +116,7 @@ SECTIONS .eh_frame ${RELOCATING+BLOCK(__section_alignment__)} : { - *(.eh_frame) + *(.eh_frame*) } .pdata ${RELOCATING+BLOCK(__section_alignment__)} : @@ -256,7 +256,7 @@ SECTIONS .debug_frame ${RELOCATING+BLOCK(__section_alignment__)} ${RELOCATING+(NOLOAD)} : { - *(.debug_frame) + *(.debug_frame*) } .debug_str ${RELOCATING+BLOCK(__section_alignment__)} ${RELOCATING+(NOLOAD)} : |