49 lines
671 B
PHP
49 lines
671 B
PHP
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
|
|
.p2align 2
|
|
.endm
|
|
|
|
comment "Declare a data variable"
|
|
.purgem gdbasm_datavar
|
|
.macro gdbasm_datavar name value
|
|
.data
|
|
\name:
|
|
.long \value
|
|
.endm
|