implement inline 5- and 6-argument syscalls for mipsn32 and mips64
[musl.git] / src / internal / powerpc64 / syscall.s
blobfe21f9e15da7d5cfd7743f55043b5e93d7dc50b1
1 .global __syscall
2 .hidden __syscall
3 .type __syscall,@function
4 __syscall:
5 mr 0, 3 # Save the system call number
6 mr 3, 4 # Shift the arguments: arg1
7 mr 4, 5 # arg2
8 mr 5, 6 # arg3
9 mr 6, 7 # arg4
10 mr 7, 8 # arg5
11 mr 8, 9 # arg6
13 bnslr+ # return if not summary overflow
14 neg 3, 3 # otherwise error: return negated value.
15 blr
16 .end __syscall
17 .size __syscall, .-__syscall