freebsd-dev/lib/libc/arm
Peter Wemm eabc04d472 Adjust the syscall stub macros to be consistent in their meaning. In
particular:
SYSCALL() makes a syscall, with errno handling, and continues execution
directly after the macro in the non-error case.
RSYSCALL() is just like SYSCALL(), but returns after success.
Both SYSCALL(name) and RSYSCALL(name) export  "__sys_name" as a strong
symbol, with "_name" and "name" as weak aliases.
PSEUDO() is just like RSYSCALL(), but skipping the "name" weak alias.  It
still does "__sys_name" and "_name".

Change i386 to add errno handling to PSEUDO.  The same for amd64 and
sparc64, with appear to have copied the behavior.
ia64 was correct (as was alpha).  Just remove some apparently unused
variants of the macros. (untested!)
I believe powerpc is correct.
Fix arm to not export "name" from the PSEUDO case.  Remove apparently
extra unused variants.  (untested!)

The errno problem manifested on i386/amd64/sparc64 by having "PSEUDO"
classified syscalls return without setting errno.  eg: "addr = mmap()"
could return with "addr" = 22 instead of setting errno to 22 and
returning -1.

Approved by: re (kensmith)
2007-07-04 23:18:38 +00:00
..
gen Replace the ldexp() implementation in libc with a renamed copy of the 2005-01-22 06:03:40 +00:00
softfloat Do not declare float_detect_tininess as external if it will be re-delared 2007-05-19 04:34:42 +00:00
stdlib Eliminate gdtoa.mk and move its contents to ${MACHINE_ARCH}/Makefile.inc. 2005-01-15 05:23:58 +00:00
string Fix a long line in copyright notice. 2005-10-03 14:43:27 +00:00
sys Fix sbrk.S to use _end symbol the same way brk.s was fixed some time 2007-06-27 02:45:37 +00:00
_fpmath.h Use the correct values for softfloat, in both the little endian and the big 2005-03-20 00:53:52 +00:00
arith.h Provide definitions suitable for arm big-endian. 2006-11-06 20:49:23 +00:00
gd_qnan.h The distinction between quiet and signaling NaN formats is 2007-01-03 05:00:03 +00:00
Makefile.inc Add each directory's symbol map file to SYM_MAPS. 2006-03-13 01:15:01 +00:00
Symbol.map Some libc symbol map cleanups. 2007-05-31 13:01:34 +00:00
SYS.h Adjust the syscall stub macros to be consistent in their meaning. In 2007-07-04 23:18:38 +00:00