1234567891011121314151617 |
- .global __syscall
- .hidden __syscall
- .type __syscall,@function
- __syscall:
- mr 0, 3 # Save the system call number
- mr 3, 4 # Shift the arguments: arg1
- mr 4, 5 # arg2
- mr 5, 6 # arg3
- mr 6, 7 # arg4
- mr 7, 8 # arg5
- mr 8, 9 # arg6
- sc
- bnslr+ # return if not summary overflow
- neg 3, 3 # otherwise error: return negated value.
- blr
- .end __syscall
- .size __syscall, .-__syscall
|