URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Subversion Repositories or1k
[/] [or1k/] [branches/] [newlib/] [newlib/] [libgloss/] [m32r/] [trap0.S] - Rev 1765
Compare with Previous | Blame | View Log
; Trap 0 handler (syscall interface).
;
; The trap handler returns the result in r0 and the error code (errno value)
; in r2. r1 is reserved in case an 8 byte quantity ever needs to be
; returned in registers.
.text
.global __trap0
__trap0:
trap #0 ; trap 0 returns result in r0, error code in r2
cmpui r2,#1 ; is error code zero?
bc .Lret ; yes, skip setting errno
ld r4,@(sp) ; no, set errno
st r2,@r4
.Lret:
jmp lr ; return to caller