aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.asm/powerpc.inc
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/testsuite/gdb.asm/powerpc.inc')
-rw-r--r--gdb/testsuite/gdb.asm/powerpc.inc46
1 files changed, 46 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.asm/powerpc.inc b/gdb/testsuite/gdb.asm/powerpc.inc
new file mode 100644
index 0000000..5aefde2
--- /dev/null
+++ b/gdb/testsuite/gdb.asm/powerpc.inc
@@ -0,0 +1,46 @@
+ comment "subroutine prologue"
+ .macro gdbasm_enter
+ stwu 1, -16(1)
+ stw 31, 8(1)
+ mr 31, 1
+ mflr 0
+ stw 0, 20(1)
+ .endm
+
+ comment "subroutine epilogue"
+ .macro gdbasm_leave
+ lwz 0, 20(1)
+ mtlr 0
+ lwz 31, 8(1)
+ lwz 1, 0(1)
+ blr
+ .endm
+
+ .macro gdbasm_call subr
+ bl \subr
+ .endm
+
+ .macro gdbasm_several_nops
+ nop
+ nop
+ nop
+ nop
+ .endm
+
+ comment "exit (0)"
+ .macro gdbasm_exit0
+ comment "Don't know how to exit, but this will certainly halt..."
+ li 0, 0
+ lwz 0, 0(0)
+ .endm
+
+ comment "crt0 startup"
+ .macro gdbasm_startup
+ .endm
+
+ comment "Declare a data variable"
+ .macro gdbasm_datavar name value
+ .data
+\name:
+ .long \value
+ .endm