mirror of
https://github.com/fluencelabs/musl
synced 2025-06-18 17:31:38 +00:00
debloat: use __syscall instead of syscall where possible
don't waste time (and significant code size due to function call overhead!) setting errno when the result of a syscall does not matter or when it can't fail.
This commit is contained in:
@ -20,8 +20,8 @@ FILE *__fdopen(int fd, const char *mode)
|
|||||||
|
|
||||||
/* Set append mode on fd if opened for append */
|
/* Set append mode on fd if opened for append */
|
||||||
if (*mode == 'a') {
|
if (*mode == 'a') {
|
||||||
int flags = syscall(SYS_fcntl, fd, F_GETFL, 0);
|
int flags = __syscall(SYS_fcntl, fd, F_GETFL);
|
||||||
syscall(SYS_fcntl, fd, F_SETFL, flags | O_APPEND);
|
__syscall(SYS_fcntl, fd, F_SETFL, flags | O_APPEND);
|
||||||
}
|
}
|
||||||
|
|
||||||
f->fd = fd;
|
f->fd = fd;
|
||||||
|
@ -15,6 +15,6 @@ void __lockfile(FILE *f)
|
|||||||
}
|
}
|
||||||
while (a_cas(&f->lock, 0, tid))
|
while (a_cas(&f->lock, 0, tid))
|
||||||
if (spins) spins--, a_spin();
|
if (spins) spins--, a_spin();
|
||||||
else syscall(SYS_sched_yield);
|
else __syscall(SYS_sched_yield);
|
||||||
f->lockcount = 1;
|
f->lockcount = 1;
|
||||||
}
|
}
|
||||||
|
@ -27,7 +27,7 @@ FILE *fopen(const char *filename, const char *mode)
|
|||||||
f = __fdopen(fd, mode);
|
f = __fdopen(fd, mode);
|
||||||
if (f) return f;
|
if (f) return f;
|
||||||
|
|
||||||
syscall(SYS_close, fd);
|
__syscall(SYS_close, fd);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@ FILE *tmpfile(void)
|
|||||||
fd = syscall(SYS_open, s, O_RDWR|O_CREAT|O_EXCL|O_LARGEFILE, 0600);
|
fd = syscall(SYS_open, s, O_RDWR|O_CREAT|O_EXCL|O_LARGEFILE, 0600);
|
||||||
if (fd >= 0) {
|
if (fd >= 0) {
|
||||||
f = __fdopen(fd, "w+");
|
f = __fdopen(fd, "w+");
|
||||||
syscall(SYS_unlink, s);
|
__syscall(SYS_unlink, s);
|
||||||
return f;
|
return f;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,7 +14,7 @@ int pthread_mutex_trylock(pthread_mutex_t *m)
|
|||||||
|
|
||||||
if (m->_m_type >= 4) {
|
if (m->_m_type >= 4) {
|
||||||
if (!self->robust_list.off)
|
if (!self->robust_list.off)
|
||||||
syscall(SYS_set_robust_list,
|
__syscall(SYS_set_robust_list,
|
||||||
&self->robust_list, 3*sizeof(long));
|
&self->robust_list, 3*sizeof(long));
|
||||||
self->robust_list.off = (char*)&m->_m_lock-(char *)&m->_m_next;
|
self->robust_list.off = (char*)&m->_m_lock-(char *)&m->_m_next;
|
||||||
self->robust_list.pending = &m->_m_next;
|
self->robust_list.pending = &m->_m_next;
|
||||||
|
@ -22,7 +22,7 @@ static int init_main_thread()
|
|||||||
main_thread.errno_ptr = __errno_location();
|
main_thread.errno_ptr = __errno_location();
|
||||||
libc.errno_location = errno_location;
|
libc.errno_location = errno_location;
|
||||||
main_thread.tid = main_thread.pid =
|
main_thread.tid = main_thread.pid =
|
||||||
syscall(SYS_set_tid_address, &main_thread.tid);
|
__syscall(SYS_set_tid_address, &main_thread.tid);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,5 +3,5 @@
|
|||||||
|
|
||||||
void sync(void)
|
void sync(void)
|
||||||
{
|
{
|
||||||
syscall(SYS_sync);
|
__syscall(SYS_sync);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user