#
43fa6fe3 |
| 21-Jul-1997 |
jtc <jtc@NetBSD.org> |
If port provides __weak_alias(), provide an Standard C and POSIX pure identifier namespace by renaming non standard functions and variables such that they have a leading underscore. The library will
If port provides __weak_alias(), provide an Standard C and POSIX pure identifier namespace by renaming non standard functions and variables such that they have a leading underscore. The library will use those names internally. Weak aliases are used to provide the original names to the API.
This is only the first part of this change. It is most of the functions which are implemented in C for all NetBSD ports. Subsequent changes are to add the same support to the remaining C files, to assembly files, and to the automagically generated assembly source used for system calls. When all of the above is done, ports with weak alias support should add a definition for __weak_alias to <sys/cdefs.h>.
show more ...
|
#
a0d2fe25 |
| 04-Jul-1996 |
jtc <jtc@NetBSD.org> |
Thanks to the calling conventions used by some cpus, the argument lists passed to the execl(), execle(), and execlp() functions are in the form of the argument vector to be passed to execve(). On th
Thanks to the calling conventions used by some cpus, the argument lists passed to the execl(), execle(), and execlp() functions are in the form of the argument vector to be passed to execve(). On these architectures, it is unnecessary to count the number of arguments, allocate space on the stack, copy the arguments, etc. The vector already on the stack can be used instead.
When some arguments are passed in registers (like most RISC CPU's), it should be possible to allocate stack space adjacent such that the registers can be copied to that memory. After that, the same approach described above can be used.
This change takes advantage of this on the i386, m68k, and ns32k. It is probably true on the vax, but I am unable to check. RISC CPU's probably need assembly language implementations to ensure everything is placed exactly as needed when registers are copied to the stack...
show more ...
|