musl/src/process
Rich Felker 10d0268ccf switch to using trap number 31 for syscalls on sh
nominally the low bits of the trap number on sh are the number of
syscall arguments, but they have never been used by the kernel, and
some code making syscalls does not even know the number of arguments
and needs to pass an arbitrary high number anyway.

sh3/sh4 traditionally used the trap range 16-31 for syscalls, but part
of this range overlapped with hardware exceptions/interrupts on sh2
hardware, so an incompatible range 32-47 was chosen for sh2.

using trap number 31 everywhere, since it's in the existing sh3/sh4
range and does not conflict with sh2 hardware, is a proposed
unification of the kernel syscall convention that will allow binaries
to be shared between sh2 and sh3/sh4. if this is not accepted into the
kernel, we can refit the sh2 target with runtime selection mechanisms
for the trap number, but doing so would be invasive and would entail
non-trivial overhead.
2015-06-16 15:25:02 +00:00
..
i386 support vfork on i386 2011-10-14 23:56:31 -04:00
sh switch to using trap number 31 for syscalls on sh 2015-06-16 15:25:02 +00:00
x32 x32 port (diff against vanilla x86_64) 2014-02-23 11:09:16 +01:00
x86_64 x86_64 vfork implementation 2012-02-06 18:23:11 -05:00
execl.c add missing va_end in execl* for correcness and static code analyzers 2013-10-07 13:24:00 +00:00
execle.c add missing va_end in execl* for correcness and static code analyzers 2013-10-07 13:24:00 +00:00
execlp.c add missing va_end in execl* for correcness and static code analyzers 2013-10-07 13:24:00 +00:00
execv.c initial check-in, version 0.5.0 2011-02-12 00:22:29 -05:00
execve.c global cleanup to use the new syscall interface 2011-03-20 00:16:43 -04:00
execvp.c make execvp continue PATH search on EACCES rather than issuing an errror 2015-02-03 00:31:35 -05:00
fdop.h overhaul posix_spawn to use CLONE_VM instead of vfork 2013-02-03 16:42:40 -05:00
fexecve.c include cleanups: remove unused headers and add feature test macros 2013-12-12 05:09:18 +00:00
fork.c remove remnants of support for running in no-thread-pointer mode 2015-04-13 19:24:51 -04:00
posix_spawn_file_actions_addclose.c fix backwards posix_spawn file action order 2011-05-29 12:58:02 -04:00
posix_spawn_file_actions_adddup2.c overhaul posix_spawn to use CLONE_VM instead of vfork 2013-02-03 16:42:40 -05:00
posix_spawn_file_actions_addopen.c use restrict everywhere it's required by c99 and/or posix 2008 2012-09-06 22:44:55 -04:00
posix_spawn_file_actions_destroy.c add file actions support to posix_spawn 2011-05-28 23:30:47 -04:00
posix_spawn_file_actions_init.c initial implementation of posix_spawn 2011-05-28 18:36:30 -04:00
posix_spawn.c use direct syscall rather than write function in posix_spawn child 2014-12-05 21:19:39 -05:00
posix_spawnattr_destroy.c add missing posix_spawnattr_init/destroy functions 2011-09-13 14:45:59 -04:00
posix_spawnattr_getflags.c use restrict everywhere it's required by c99 and/or posix 2008 2012-09-06 22:44:55 -04:00
posix_spawnattr_getpgroup.c use restrict everywhere it's required by c99 and/or posix 2008 2012-09-06 22:44:55 -04:00
posix_spawnattr_getsigdefault.c use restrict everywhere it's required by c99 and/or posix 2008 2012-09-06 22:44:55 -04:00
posix_spawnattr_getsigmask.c use restrict everywhere it's required by c99 and/or posix 2008 2012-09-06 22:44:55 -04:00
posix_spawnattr_init.c add missing posix_spawnattr_init/destroy functions 2011-09-13 14:45:59 -04:00
posix_spawnattr_sched.c fix up minor misplacement of restrict keyword in spawnattr sched stubs 2013-02-01 15:57:28 -05:00
posix_spawnattr_setflags.c initial implementation of posix_spawn 2011-05-28 18:36:30 -04:00
posix_spawnattr_setpgroup.c initial implementation of posix_spawn 2011-05-28 18:36:30 -04:00
posix_spawnattr_setsigdefault.c use restrict everywhere it's required by c99 and/or posix 2008 2012-09-06 22:44:55 -04:00
posix_spawnattr_setsigmask.c use restrict everywhere it's required by c99 and/or posix 2008 2012-09-06 22:44:55 -04:00
posix_spawnp.c fix parent-memory-clobber in posix_spawn (environ) 2012-10-18 16:41:27 -04:00
system.c include cleanups: remove unused headers and add feature test macros 2013-12-12 05:09:18 +00:00
vfork.c additional fixes for linux kernel apis with old syscalls removed 2014-05-30 01:51:23 -04:00
wait.c initial check-in, version 0.5.0 2011-02-12 00:22:29 -05:00
waitid.c overhaul pthread cancellation 2011-04-17 11:43:03 -04:00
waitpid.c overhaul pthread cancellation 2011-04-17 11:43:03 -04:00