diff options
author | Jakub Jelinek <jakub@redhat.com> | 2006-11-21 11:25:17 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2006-11-21 11:25:17 +0000 |
commit | bce613b9bfac3b56f4f9742776db11aeec875300 (patch) | |
tree | 490c241e7cc00ebc00c8c9e29fcc1babb3900ab0 /ld/testsuite/ld-elf/eh5a.s | |
parent | caac47b8c3968932a8090e94f979f9bb7eb70f9d (diff) | |
download | gdb-bce613b9bfac3b56f4f9742776db11aeec875300.zip gdb-bce613b9bfac3b56f4f9742776db11aeec875300.tar.gz gdb-bce613b9bfac3b56f4f9742776db11aeec875300.tar.bz2 |
* elf-eh-frame.c (struct cie): New type.
(cie_compare): Removed.
(cie_eq, cie_hash, cie_compute_hash): New functions.
(_bfd_elf_discard_section_eh_frame): Rewrite not to rely on FDEs
pointing only to last CIE and allow merging of any duplicate CIEs,
not just duplicate consecutive CIEs.
(_bfd_elf_discard_section_eh_frame_hdr): Delete cies hash table.
* elf-bfd.h (struct cie_header, struct cie): Removed.
(struct eh_frame_sec_info): Remove alloced field.
(struct eh_frame_hdr_info): Remove last_cie, last_cie_sec
and last_cie_inf fields. Add cies field.
* ld-elf/eh5.d: New test.
* ld-elf/eh5.s: New file.
* ld-elf/eh5a.s: New file.
* ld-elf/eh5b.s: New file.
Diffstat (limited to 'ld/testsuite/ld-elf/eh5a.s')
-rw-r--r-- | ld/testsuite/ld-elf/eh5a.s | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/ld/testsuite/ld-elf/eh5a.s b/ld/testsuite/ld-elf/eh5a.s new file mode 100644 index 0000000..a74b2cc --- /dev/null +++ b/ld/testsuite/ld-elf/eh5a.s @@ -0,0 +1,27 @@ + .text + .cfi_startproc simple + .cfi_def_cfa 0, 16 + .long 0 + .cfi_endproc + + .cfi_startproc simple + .cfi_personality 3, my_personality_v1 + .long 0 + .cfi_def_cfa 0, 16 + .cfi_endproc + + .cfi_startproc simple + .cfi_def_cfa 0, 16 + .long 0 + .cfi_endproc + + .cfi_startproc simple + .cfi_personality 3, my_personality_v1 + .cfi_lsda 12, 0xdeadbeef + .long 0 + .cfi_def_cfa 0, 16 + .cfi_endproc + + .globl my_personality_v1 +my_personality_v1: + .long 0 |