syscall_arch.h 918 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #define __SYSCALL_LL_E(x) \
  2. ((union { long long ll; long l[2]; }){ .ll = x }).l[0], \
  3. ((union { long long ll; long l[2]; }){ .ll = x }).l[1]
  4. #define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x))
  5. #define __SYSCALL_SSLEN 16
  6. static inline long __syscall0(long n)
  7. {
  8. return (__syscall)(n);
  9. }
  10. static inline long __syscall1(long n, long a)
  11. {
  12. return (__syscall)(n, a);
  13. }
  14. static inline long __syscall2(long n, long a, long b)
  15. {
  16. return (__syscall)(n, a, b);
  17. }
  18. static inline long __syscall3(long n, long a, long b, long c)
  19. {
  20. return (__syscall)(n, a, b, c);
  21. }
  22. static inline long __syscall4(long n, long a, long b, long c, long d)
  23. {
  24. return (__syscall)(n, a, b, c, d);
  25. }
  26. static inline long __syscall5(long n, long a, long b, long c, long d, long e)
  27. {
  28. return (__syscall)(n, a, b, c, d, e);
  29. }
  30. static inline long __syscall6(long n, long a, long b, long c, long d, long e, long f)
  31. {
  32. return (__syscall)(n, a, b, c, d, e, f);
  33. }