42 lines
524 B
PHP
42 lines
524 B
PHP
|
comment "subroutine prologue"
|
||
|
.macro gdbasm_enter
|
||
|
add -8,sp
|
||
|
st.w r31,4[sp]
|
||
|
st.w r29,0[sp]
|
||
|
mov sp,r29
|
||
|
.endm
|
||
|
|
||
|
comment "subroutine epilogue"
|
||
|
.macro gdbasm_leave
|
||
|
mov r29,sp
|
||
|
ld.w 0[sp],r29
|
||
|
ld.w 4[sp],r31
|
||
|
add 8,sp
|
||
|
jmp [r31]
|
||
|
.endm
|
||
|
|
||
|
.macro gdbasm_call subr
|
||
|
jarl \subr,r31
|
||
|
.endm
|
||
|
|
||
|
.macro gdbasm_several_nops
|
||
|
nop
|
||
|
nop
|
||
|
nop
|
||
|
nop
|
||
|
.endm
|
||
|
|
||
|
comment "exit (0)"
|
||
|
.macro gdbasm_exit0
|
||
|
halt
|
||
|
.endm
|
||
|
|
||
|
comment "crt0 startup"
|
||
|
.macro gdbasm_startup
|
||
|
movea 255,r0,r20
|
||
|
mov r0, r21
|
||
|
ori 65535, r0, r21
|
||
|
movhi 32, r0, sp
|
||
|
.endm
|
||
|
|