URL
https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 24 |
Rev 157 |
comment "subroutine prologue"
|
comment "subroutine prologue"
|
.macro gdbasm_enter
|
.macro gdbasm_enter
|
addi sp,#-16,sp
|
addi sp,#-16,sp
|
sti fp, @(sp,0)
|
sti fp, @(sp,0)
|
mov sp, fp
|
mov sp, fp
|
movsg lr, gr5
|
movsg lr, gr5
|
sti gr5, @(fp,8)
|
sti gr5, @(fp,8)
|
.endm
|
.endm
|
|
|
comment "subroutine epilogue"
|
comment "subroutine epilogue"
|
.macro gdbasm_leave
|
.macro gdbasm_leave
|
ldi @(fp,8), gr5
|
ldi @(fp,8), gr5
|
ld @(fp,gr0), fp
|
ld @(fp,gr0), fp
|
addi sp,#16,sp
|
addi sp,#16,sp
|
jmpl @(gr5,gr0)
|
jmpl @(gr5,gr0)
|
.endm
|
.endm
|
|
|
.macro gdbasm_call subr
|
.macro gdbasm_call subr
|
call \subr
|
call \subr
|
.endm
|
.endm
|
|
|
.macro gdbasm_several_nops
|
.macro gdbasm_several_nops
|
nop
|
nop
|
nop
|
nop
|
nop
|
nop
|
nop
|
nop
|
.endm
|
.endm
|
|
|
comment "exit (0)"
|
comment "exit (0)"
|
.macro gdbasm_exit0
|
.macro gdbasm_exit0
|
comment "Don't know how to exit, but this will certainly halt..."
|
comment "Don't know how to exit, but this will certainly halt..."
|
ldi @(gr0,0), gr5
|
ldi @(gr0,0), gr5
|
.endm
|
.endm
|
|
|
comment "crt0 startup"
|
comment "crt0 startup"
|
.macro gdbasm_startup
|
.macro gdbasm_startup
|
call .Lcall
|
call .Lcall
|
.Lcall: movsg lr, gr4
|
.Lcall: movsg lr, gr4
|
sethi #gprelhi(.Lcall), gr5
|
sethi #gprelhi(.Lcall), gr5
|
setlo #gprello(.Lcall), gr5
|
setlo #gprello(.Lcall), gr5
|
sub gr4, gr5, gr16
|
sub gr4, gr5, gr16
|
|
|
sethi #gprelhi(_stack), sp
|
sethi #gprelhi(_stack), sp
|
setlo #gprello(_stack), sp
|
setlo #gprello(_stack), sp
|
setlos #0, fp
|
setlos #0, fp
|
add sp, gr16, sp
|
add sp, gr16, sp
|
.endm
|
.endm
|
|
|
comment "Declare a data variable"
|
comment "Declare a data variable"
|
.purgem gdbasm_datavar
|
.purgem gdbasm_datavar
|
.macro gdbasm_datavar name value
|
.macro gdbasm_datavar name value
|
.data
|
.data
|
\name:
|
\name:
|
.long \value
|
.long \value
|
.endm
|
.endm
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.