2004-05-25 12:07:05 +08:00
|
|
|
comment "subroutine prologue"
|
|
|
|
.macro gdbasm_enter
|
|
|
|
stw %rp, -20(%sp)
|
|
|
|
copy %r3, %r1
|
|
|
|
copy %sp, %r3
|
|
|
|
stwm %r1, 64(%sp)
|
|
|
|
.endm
|
|
|
|
|
|
|
|
comment "subroutine epilogue"
|
|
|
|
.macro gdbasm_leave
|
|
|
|
ldw -20(%r3), %rp
|
|
|
|
bv %r0(%rp)
|
|
|
|
ldwm -64(%sp), %r3
|
|
|
|
.endm
|
|
|
|
|
|
|
|
.macro gdbasm_call subr
|
|
|
|
bl \subr , %rp
|
|
|
|
nop
|
|
|
|
.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..."
|
|
|
|
ldw 0(%r0), %r1
|
|
|
|
.endm
|
|
|
|
|
|
|
|
comment "crt0 startup"
|
|
|
|
.macro gdbasm_startup
|
|
|
|
.align 4
|
|
|
|
.endm
|
|
|
|
|
|
|
|
comment "Declare a data variable"
|
* gdb.asm/alpha.inc, gdb.asm/frv.inc, gdb.asm/i386.inc,
gdb.asm/ia64.inc, gdb.asm/m68hc11.inc, gdb.asm/m68k.inc,
gdb.asm/mips.inc, gdb.asm/pa.inc, gdb.asm/powerpc.inc,
gdb.asm/s390.inc, gdb.asm/s390x.inc, gdb.asm/sh.inc,
gdb.asm/x86_64.inc: Use .purgem before redefining macros.
2005-03-08 05:16:50 +08:00
|
|
|
.purgem gdbasm_datavar
|
2004-05-25 12:07:05 +08:00
|
|
|
.macro gdbasm_datavar name value
|
|
|
|
.data
|
|
|
|
\name:
|
|
|
|
.long \value
|
|
|
|
.endm
|