From 5f19a1e4fb11207c6992c0bd24b9ecdb9c6b40f6 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Wed, 24 May 2006 02:39:16 +0000 Subject: [PATCH] 2006-05-23 H.J. Lu PR ld/2655 PR ld/2657 * ld-elf/eh1.d: New file. * ld-elf/eh1.s: Likewise. * ld-elf/eh1a.s: Likewise. * ld-elf/eh2.d: Likewise. * ld-elf/eh2a.s: Likewise. * ld-elf/eh3.d: Likewise. * ld-elf/eh3.s: Likewise. * ld-elf/eh3a.s: Likewise. --- ld/testsuite/ChangeLog | 13 +++++++++++++ ld/testsuite/ld-elf/eh1.d | 33 +++++++++++++++++++++++++++++++ ld/testsuite/ld-elf/eh1.s | 47 +++++++++++++++++++++++++++++++++++++++++++++ ld/testsuite/ld-elf/eh1a.s | 3 +++ ld/testsuite/ld-elf/eh2.d | 33 +++++++++++++++++++++++++++++++ ld/testsuite/ld-elf/eh2a.s | 3 +++ ld/testsuite/ld-elf/eh3.d | 33 +++++++++++++++++++++++++++++++ ld/testsuite/ld-elf/eh3.s | 48 ++++++++++++++++++++++++++++++++++++++++++++++ ld/testsuite/ld-elf/eh3a.s | 3 +++ 9 files changed, 216 insertions(+) create mode 100644 ld/testsuite/ld-elf/eh1.d create mode 100644 ld/testsuite/ld-elf/eh1.s create mode 100644 ld/testsuite/ld-elf/eh1a.s create mode 100644 ld/testsuite/ld-elf/eh2.d create mode 100644 ld/testsuite/ld-elf/eh2a.s create mode 100644 ld/testsuite/ld-elf/eh3.d create mode 100644 ld/testsuite/ld-elf/eh3.s create mode 100644 ld/testsuite/ld-elf/eh3a.s diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index 682e54225..33e4b94e4 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,16 @@ +2006-05-23 H.J. Lu + + PR ld/2655 + PR ld/2657 + * ld-elf/eh1.d: New file. + * ld-elf/eh1.s: Likewise. + * ld-elf/eh1a.s: Likewise. + * ld-elf/eh2.d: Likewise. + * ld-elf/eh2a.s: Likewise. + * ld-elf/eh3.d: Likewise. + * ld-elf/eh3.s: Likewise. + * ld-elf/eh3a.s: Likewise. + 2006-05-22 Daniel Jacobowitz * ld-mips-elf/textrel-1.d: Relax some patterns. diff --git a/ld/testsuite/ld-elf/eh1.d b/ld/testsuite/ld-elf/eh1.d new file mode 100644 index 000000000..897955b2b --- /dev/null +++ b/ld/testsuite/ld-elf/eh1.d @@ -0,0 +1,33 @@ +#source: eh1.s +#source: eh1a.s +#ld: +#readelf: -wf +#target: x86_64-*-* + +The section .eh_frame contains: + +00000000 00000014 00000000 CIE + Version: 1 + Augmentation: "" + Code alignment factor: 1 + Data alignment factor: -8 + Return address column: 16 + + DW_CFA_def_cfa: r7 ofs 8 + DW_CFA_offset: r16 at cfa-8 + DW_CFA_nop + DW_CFA_nop + DW_CFA_nop + DW_CFA_nop + DW_CFA_nop + DW_CFA_nop + +00000018 0000001c 0000001c FDE cie=00000000 pc=004000b0..004000b0 + DW_CFA_advance_loc: 0 to 004000b0 + DW_CFA_def_cfa_offset: 16 + DW_CFA_offset: r6 at cfa-16 + DW_CFA_advance_loc: 0 to 004000b0 + DW_CFA_def_cfa_reg: r6 + +00000038 ZERO terminator + diff --git a/ld/testsuite/ld-elf/eh1.s b/ld/testsuite/ld-elf/eh1.s new file mode 100644 index 000000000..a60520968 --- /dev/null +++ b/ld/testsuite/ld-elf/eh1.s @@ -0,0 +1,47 @@ + .text +.globl _start + .type _start, %function +_start: +.LFB2: +.LCFI0: +.LCFI1: +.LFE2: + .size _start, .-_start + .section .eh_frame,"a",%progbits +.Lframe1: + .long .LECIE1-.LSCIE1 +.LSCIE1: + .long 0x0 + .byte 0x1 + .string "" + .uleb128 0x1 + .sleb128 -8 + .byte 0x10 + .byte 0xc + .uleb128 0x7 + .uleb128 0x8 + .byte 0x90 + .uleb128 0x1 + .align 8 +.LECIE1: +.LSFDE1: + .long .LEFDE1-.LASFDE1 +.LASFDE1: + .long .LASFDE1-.Lframe1 + .quad .LFB2 + .quad .LFE2-.LFB2 + .byte 0x4 + .long .LCFI0-.LFB2 + .byte 0xe + .uleb128 0x10 + .byte 0x86 + .uleb128 0x2 + .byte 0x4 + .long .LCFI1-.LCFI0 + .byte 0xd + .uleb128 0x6 + .byte 0x0 + .byte 0x0 + .byte 0x0 + .byte 0x0 +.LEFDE1: diff --git a/ld/testsuite/ld-elf/eh1a.s b/ld/testsuite/ld-elf/eh1a.s new file mode 100644 index 000000000..c644014dc --- /dev/null +++ b/ld/testsuite/ld-elf/eh1a.s @@ -0,0 +1,3 @@ + .section .eh_frame,"a",%progbits + .align 8 + .zero 4 diff --git a/ld/testsuite/ld-elf/eh2.d b/ld/testsuite/ld-elf/eh2.d new file mode 100644 index 000000000..6f4f2c58e --- /dev/null +++ b/ld/testsuite/ld-elf/eh2.d @@ -0,0 +1,33 @@ +#source: eh1.s +#source: eh2a.s +#ld: +#readelf: -wf +#target: x86_64-*-* + +The section .eh_frame contains: + +00000000 00000014 00000000 CIE + Version: 1 + Augmentation: "" + Code alignment factor: 1 + Data alignment factor: -8 + Return address column: 16 + + DW_CFA_def_cfa: r7 ofs 8 + DW_CFA_offset: r16 at cfa-8 + DW_CFA_nop + DW_CFA_nop + DW_CFA_nop + DW_CFA_nop + DW_CFA_nop + DW_CFA_nop + +00000018 0000001c 0000001c FDE cie=00000000 pc=004000b0..004000b0 + DW_CFA_advance_loc: 0 to 004000b0 + DW_CFA_def_cfa_offset: 16 + DW_CFA_offset: r6 at cfa-16 + DW_CFA_advance_loc: 0 to 004000b0 + DW_CFA_def_cfa_reg: r6 + +00000038 ZERO terminator + diff --git a/ld/testsuite/ld-elf/eh2a.s b/ld/testsuite/ld-elf/eh2a.s new file mode 100644 index 000000000..2c024f8f0 --- /dev/null +++ b/ld/testsuite/ld-elf/eh2a.s @@ -0,0 +1,3 @@ + .section .eh_frame,"a",%progbits + .align 4 + .zero 4 diff --git a/ld/testsuite/ld-elf/eh3.d b/ld/testsuite/ld-elf/eh3.d new file mode 100644 index 000000000..492c87784 --- /dev/null +++ b/ld/testsuite/ld-elf/eh3.d @@ -0,0 +1,33 @@ +#source: eh3.s +#source: eh3a.s +#ld: +#readelf: -wf +#target: x86_64-*-* + +The section .eh_frame contains: + +00000000 00000014 00000000 CIE + Version: 1 + Augmentation: "" + Code alignment factor: 1 + Data alignment factor: -8 + Return address column: 16 + + DW_CFA_def_cfa: r7 ofs 8 + DW_CFA_offset: r16 at cfa-8 + DW_CFA_nop + DW_CFA_nop + DW_CFA_nop + DW_CFA_nop + DW_CFA_nop + DW_CFA_nop + +00000018 0000001c 0000001c FDE cie=00000000 pc=004000b0..004000b0 + DW_CFA_advance_loc: 0 to 004000b0 + DW_CFA_def_cfa_offset: 16 + DW_CFA_offset: r6 at cfa-16 + DW_CFA_advance_loc: 0 to 004000b0 + DW_CFA_def_cfa_reg: r6 + +00000038 ZERO terminator +#pass diff --git a/ld/testsuite/ld-elf/eh3.s b/ld/testsuite/ld-elf/eh3.s new file mode 100644 index 000000000..24bd90d24 --- /dev/null +++ b/ld/testsuite/ld-elf/eh3.s @@ -0,0 +1,48 @@ + .text +.globl _start + .type _start, %function +_start: +.LFB2: +.LCFI0: +.LCFI1: +.LFE2: + .size _start, .-_start + .section .eh_frame,"a",%progbits + .align 16 +.Lframe1: + .long .LECIE1-.LSCIE1 +.LSCIE1: + .long 0x0 + .byte 0x1 + .string "" + .uleb128 0x1 + .sleb128 -8 + .byte 0x10 + .byte 0xc + .uleb128 0x7 + .uleb128 0x8 + .byte 0x90 + .uleb128 0x1 + .align 8 +.LECIE1: +.LSFDE1: + .long .LEFDE1-.LASFDE1 +.LASFDE1: + .long .LASFDE1-.Lframe1 + .quad .LFB2 + .quad .LFE2-.LFB2 + .byte 0x4 + .long .LCFI0-.LFB2 + .byte 0xe + .uleb128 0x10 + .byte 0x86 + .uleb128 0x2 + .byte 0x4 + .long .LCFI1-.LCFI0 + .byte 0xd + .uleb128 0x6 + .byte 0x0 + .byte 0x0 + .byte 0x0 + .byte 0x0 +.LEFDE1: diff --git a/ld/testsuite/ld-elf/eh3a.s b/ld/testsuite/ld-elf/eh3a.s new file mode 100644 index 000000000..c245871ed --- /dev/null +++ b/ld/testsuite/ld-elf/eh3a.s @@ -0,0 +1,3 @@ + .section .eh_frame,"a",%progbits + .align 8 + .zero 8 -- 2.11.4.GIT