diff options
author | Rich Felker <dalias@aerifal.cx> | 2019-04-10 20:11:19 -0400 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2019-04-10 20:11:19 -0400 |
commit | 788d5e24ca19c6291cebd8d1ad5b5ed6abf42665 (patch) | |
tree | 1ae614424b48069950baec8ae09699d750fe3414 /src/internal/or1k/syscall.s | |
parent | 1bcdaeee6e659f1d856717c9aa562a068f2f3bd4 (diff) | |
download | musl-788d5e24ca19c6291cebd8d1ad5b5ed6abf42665.tar.gz musl-788d5e24ca19c6291cebd8d1ad5b5ed6abf42665.tar.xz musl-788d5e24ca19c6291cebd8d1ad5b5ed6abf42665.zip |
remove external __syscall function and last remaining users
the weak version of __syscall_cp_c was using a tail call to __syscall to avoid duplicating the 6-argument syscall code inline in small static-linked programs, but now that __syscall no longer exists, the inline expansion is no longer duplication. the syscall.h machinery suppported up to 7 syscall arguments, only via an external __syscall function, but we presently have no syscall call points that actually make use of that many, and the kernel only defines 7-argument calling conventions for arm, powerpc (32-bit), and sh. if it turns out we need them in the future, they can easily be added.
Diffstat (limited to 'src/internal/or1k/syscall.s')
-rw-r--r-- | src/internal/or1k/syscall.s | 14 |
1 files changed, 0 insertions, 14 deletions
diff --git a/src/internal/or1k/syscall.s b/src/internal/or1k/syscall.s deleted file mode 100644 index 177964e9..00000000 --- a/src/internal/or1k/syscall.s +++ /dev/null @@ -1,14 +0,0 @@ -.global __syscall -.hidden __syscall -.type __syscall,@function -__syscall: - l.ori r11, r3, 0 - l.lwz r3, 0(r1) - l.lwz r4, 4(r1) - l.lwz r5, 8(r1) - l.lwz r6, 12(r1) - l.lwz r7, 16(r1) - l.lwz r8, 20(r1) - l.sys 1 - l.jr r9 - l.nop |