about summary refs log tree commit diff
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2011-04-17 16:32:15 -0400
committerRich Felker <dalias@aerifal.cx>2011-04-17 16:32:15 -0400
commiteb0e8fa0b1960cff4bd65ebefc798f70273b0bc9 (patch)
tree69398f2a72230d4faeb05b0712c4af80376cd30c
parent09dae2b7b66f741b30aa7ce95ab395239da20762 (diff)
downloadmusl-eb0e8fa0b1960cff4bd65ebefc798f70273b0bc9.tar.gz
musl-eb0e8fa0b1960cff4bd65ebefc798f70273b0bc9.tar.xz
musl-eb0e8fa0b1960cff4bd65ebefc798f70273b0bc9.zip
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.
-rw-r--r--src/stdio/__fdopen.c4
-rw-r--r--src/stdio/__lockfile.c2
-rw-r--r--src/stdio/fopen.c2
-rw-r--r--src/stdio/tmpfile.c2
-rw-r--r--src/thread/pthread_mutex_trylock.c2
-rw-r--r--src/thread/pthread_self.c2
-rw-r--r--src/unistd/sync.c2
7 files changed, 8 insertions, 8 deletions
diff --git a/src/stdio/__fdopen.c b/src/stdio/__fdopen.c
index a0102674..b13318e5 100644
--- a/src/stdio/__fdopen.c
+++ b/src/stdio/__fdopen.c
@@ -20,8 +20,8 @@ FILE *__fdopen(int fd, const char *mode)
 
 	/* Set append mode on fd if opened for append */
 	if (*mode == 'a') {
-		int flags = syscall(SYS_fcntl, fd, F_GETFL, 0);
-		syscall(SYS_fcntl, fd, F_SETFL, flags | O_APPEND);
+		int flags = __syscall(SYS_fcntl, fd, F_GETFL);
+		__syscall(SYS_fcntl, fd, F_SETFL, flags | O_APPEND);
 	}
 
 	f->fd = fd;
diff --git a/src/stdio/__lockfile.c b/src/stdio/__lockfile.c
index c0948255..4e0239e7 100644
--- a/src/stdio/__lockfile.c
+++ b/src/stdio/__lockfile.c
@@ -15,6 +15,6 @@ void __lockfile(FILE *f)
 	}
 	while (a_cas(&f->lock, 0, tid))
 		if (spins) spins--, a_spin();
-		else syscall(SYS_sched_yield);
+		else __syscall(SYS_sched_yield);
 	f->lockcount = 1;
 }
diff --git a/src/stdio/fopen.c b/src/stdio/fopen.c
index c2a350d1..469de6f0 100644
--- a/src/stdio/fopen.c
+++ b/src/stdio/fopen.c
@@ -27,7 +27,7 @@ FILE *fopen(const char *filename, const char *mode)
 	f = __fdopen(fd, mode);
 	if (f) return f;
 
-	syscall(SYS_close, fd);
+	__syscall(SYS_close, fd);
 	return 0;
 }
 
diff --git a/src/stdio/tmpfile.c b/src/stdio/tmpfile.c
index 18c232f7..926d6601 100644
--- a/src/stdio/tmpfile.c
+++ b/src/stdio/tmpfile.c
@@ -17,7 +17,7 @@ FILE *tmpfile(void)
 		fd = syscall(SYS_open, s, O_RDWR|O_CREAT|O_EXCL|O_LARGEFILE, 0600);
 		if (fd >= 0) {
 			f = __fdopen(fd, "w+");
-			syscall(SYS_unlink, s);
+			__syscall(SYS_unlink, s);
 			return f;
 		}
 	}
diff --git a/src/thread/pthread_mutex_trylock.c b/src/thread/pthread_mutex_trylock.c
index ea1fa805..1fb6d0f2 100644
--- a/src/thread/pthread_mutex_trylock.c
+++ b/src/thread/pthread_mutex_trylock.c
@@ -14,7 +14,7 @@ int pthread_mutex_trylock(pthread_mutex_t *m)
 
 	if (m->_m_type >= 4) {
 		if (!self->robust_list.off)
-			syscall(SYS_set_robust_list,
+			__syscall(SYS_set_robust_list,
 				&self->robust_list, 3*sizeof(long));
 		self->robust_list.off = (char*)&m->_m_lock-(char *)&m->_m_next;
 		self->robust_list.pending = &m->_m_next;
diff --git a/src/thread/pthread_self.c b/src/thread/pthread_self.c
index e26476ce..e8bb9181 100644
--- a/src/thread/pthread_self.c
+++ b/src/thread/pthread_self.c
@@ -22,7 +22,7 @@ static int init_main_thread()
 	main_thread.errno_ptr = __errno_location();
 	libc.errno_location = errno_location;
 	main_thread.tid = main_thread.pid = 
-		syscall(SYS_set_tid_address, &main_thread.tid);
+		__syscall(SYS_set_tid_address, &main_thread.tid);
 	return 0;
 }
 
diff --git a/src/unistd/sync.c b/src/unistd/sync.c
index 20fafb4a..f18765aa 100644
--- a/src/unistd/sync.c
+++ b/src/unistd/sync.c
@@ -3,5 +3,5 @@
 
 void sync(void)
 {
-	syscall(SYS_sync);
+	__syscall(SYS_sync);
 }