diff options
author | Nick Clifton <nickc@redhat.com> | 2004-10-25 12:26:04 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2004-10-25 12:26:04 +0000 |
commit | a394c00fe601094be18607099c3e92f0c9ea783d (patch) | |
tree | 02d9ecd4a25731c230386c41de0bcd34be863d01 /gas/testsuite | |
parent | d79b3d5057332a6e4181cab6e53d7371612c66a7 (diff) | |
download | gdb-a394c00fe601094be18607099c3e92f0c9ea783d.zip gdb-a394c00fe601094be18607099c3e92f0c9ea783d.tar.gz gdb-a394c00fe601094be18607099c3e92f0c9ea783d.tar.bz2 |
Add ARM CFI support
Diffstat (limited to 'gas/testsuite')
-rw-r--r-- | gas/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gas/testsuite/gas/cfi/cfi-arm-1.d | 27 | ||||
-rw-r--r-- | gas/testsuite/gas/cfi/cfi-arm-1.s | 23 | ||||
-rw-r--r-- | gas/testsuite/gas/cfi/cfi.exp | 3 |
4 files changed, 58 insertions, 0 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index c1b9668..1639d14 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2004-10-23 Daniel Jacobowitz <dan@debian.org> + + * gas/cfi/cfi-arm-1.d, gas/cfi/cfi-arm-1.s: New files. + * gas/cfi/cfi.exp: Run cfi-arm-1 test. + 2004-10-21 Tomer Levi <Tomer.Levi@nsc.com> * gas/crx/cop_insn.s: Reverse operands order in store co-processor diff --git a/gas/testsuite/gas/cfi/cfi-arm-1.d b/gas/testsuite/gas/cfi/cfi-arm-1.d new file mode 100644 index 0000000..8474e20 --- /dev/null +++ b/gas/testsuite/gas/cfi/cfi-arm-1.d @@ -0,0 +1,27 @@ +#readelf: -wf +#name: CFI on ARM + +The section .eh_frame contains: + +00000000 00000010 00000000 CIE + Version: 1 + Augmentation: "zR" + Code alignment factor: 2 + Data alignment factor: -4 + Return address column: 14 + Augmentation data: 1b + + DW_CFA_def_cfa: r13 ofs 0 + +00000014 00000020 00000018 FDE cie=00000000 pc=00000000..00000018 + DW_CFA_advance_loc: 4 to 00000004 + DW_CFA_def_cfa: r12 ofs 0 + DW_CFA_advance_loc: 4 to 00000008 + DW_CFA_def_cfa: r13 ofs 16 + DW_CFA_advance_loc: 4 to 0000000c + DW_CFA_def_cfa_offset: 32 + DW_CFA_offset: r11 at cfa-32 + DW_CFA_offset: r14 at cfa-24 + DW_CFA_advance_loc: 4 to 00000010 + DW_CFA_def_cfa: r11 ofs 16 + diff --git a/gas/testsuite/gas/cfi/cfi-arm-1.s b/gas/testsuite/gas/cfi/cfi-arm-1.s new file mode 100644 index 0000000..8c9d917 --- /dev/null +++ b/gas/testsuite/gas/cfi/cfi-arm-1.s @@ -0,0 +1,23 @@ +#; $ as -o test.o gas-cfi-test.s && gcc -nostdlib -o test test.o + + .file "a.c" + .text + .align 2 + .global foo + .type foo, %function +foo: + .cfi_startproc + mov ip, sp + .cfi_def_cfa ip, 0 + stmfd sp!, {r0, r1, r2, r3} + .cfi_def_cfa sp, 16 + stmfd sp!, {fp, ip, lr, pc} + .cfi_adjust_cfa_offset 16 + .cfi_rel_offset r11, 0 + .cfi_rel_offset lr, 8 + sub fp, ip, #20 + .cfi_def_cfa fp, 16 + nop + ldmea fp, {fp, sp, pc} + .cfi_endproc + .size foo, .-foo diff --git a/gas/testsuite/gas/cfi/cfi.exp b/gas/testsuite/gas/cfi/cfi.exp index a1dc006..21483b1 100644 --- a/gas/testsuite/gas/cfi/cfi.exp +++ b/gas/testsuite/gas/cfi/cfi.exp @@ -56,6 +56,9 @@ if [istarget "x86_64-*"] then { run_dump_test "cfi-sh-1" } +} elseif { [istarget "arm*-*"] || [istarget "xscale*-*"] } then { + run_dump_test "cfi-arm-1" + } else { return } |