libc

my libc
git clone git://git.evenfri.duckdns.org/libc.git
Log | Files | Refs | README

commit fc2e8fdcfbdcfff92e72aef056e0491b23ad61bc
parent 33bff38345656007e74f1cb08b9cf9cdca3f22eb
Author: evenfri <evenfri256@gmail.com>
Date:   Mon, 10 Aug 2026 03:04:40 +0800

fix syscall

Diffstat:
Msyscall.c | 13+++++--------
1 file changed, 5 insertions(+), 8 deletions(-)

diff --git a/syscall.c b/syscall.c @@ -22,16 +22,13 @@ static inline long call(long n, long a1, long a2, long a3, long a4, long a5, lon long syscall(long num, ...) { va_list valist; - long a, b, c, d, e, f; + long args[6] = {0, 0, 0, 0, 0, 0}; va_start(valist, num); - a = va_arg(valist, long); - b = va_arg(valist, long); - c = va_arg(valist, long); - d = va_arg(valist, long); - e = va_arg(valist, long); - f = va_arg(valist, long); + for (int i = 0; i < 6; i++) { + args[i] = va_arg(valist, long); + } va_end(valist); - return call(num, a, b, c, d, e, f); + return call(num, args[0], args[1], args[2], args[3], args[4], args[5]); }