diff options
-rw-r--r-- | gdb/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/testsuite/gdb.asm/asm-source.exp | 5 | ||||
-rw-r--r-- | gdb/testsuite/gdb.asm/powerpc64le.inc | 47 |
3 files changed, 57 insertions, 0 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index b7bc990..678be17 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2014-03-25 Ulrich Weigand <uweigand@de.ibm.com> + + * gdb.asm/asm-source.exp: Handle powerpc64le-* targets. + * gdb.asm/powerpc64le.inc: New file. + 2014-03-25 Pedro Alves <palves@redhat.com> Doug Evans <dje@google.com> diff --git a/gdb/testsuite/gdb.asm/asm-source.exp b/gdb/testsuite/gdb.asm/asm-source.exp index 51aca8e..fa4585c 100644 --- a/gdb/testsuite/gdb.asm/asm-source.exp +++ b/gdb/testsuite/gdb.asm/asm-source.exp @@ -97,6 +97,11 @@ switch -glob -- [istarget] { "mips*-*" { set asm-arch mips } + "powerpc64le-*" { + set asm-arch powerpc64le + set asm-flags "-a64 -I${srcdir}/${subdir} $obj_include" + append link-flags " -m elf64lppc" + } "powerpc*-*" { if { [is_lp64_target] } { set asm-arch powerpc64 diff --git a/gdb/testsuite/gdb.asm/powerpc64le.inc b/gdb/testsuite/gdb.asm/powerpc64le.inc new file mode 100644 index 0000000..d559f66 --- /dev/null +++ b/gdb/testsuite/gdb.asm/powerpc64le.inc @@ -0,0 +1,47 @@ + comment "subroutine prologue" + .macro gdbasm_enter + stdu 1, -32(1) + mflr 0 + std 0, 48(1) + .endm + + comment "subroutine epilogue" + .macro gdbasm_leave + ld 0, 48(1) + mtlr 0 + ld 1, 0(1) + blr + .endm + + .macro gdbasm_call subr + bl \subr + nop + .endm + + .macro gdbasm_several_nops + nop + nop + nop + nop + .endm + + comment "exit (0)" + .macro gdbasm_exit0 + comment "sys_exit" + li 0, 1 + sc + .endm + + comment "crt0 startup" + .macro gdbasm_startup + .abiversion 2 + .p2align 2 + .endm + + comment "Declare a data variable" + .purgem gdbasm_datavar + .macro gdbasm_datavar name value + .section ".data" +\name: + .long \value + .endm |