Commit Graph

93 Commits

Author SHA1 Message Date
kleink
fb2f23e243 Oops, need to save r2 and r3 as well. 2000-01-27 15:11:17 +00:00
kleink
1a3fa11c95 Support *__errno() indirection. 2000-01-24 21:57:39 +00:00
mycroft
c26054b799 Delint. 2000-01-22 22:40:58 +00:00
kleink
11e6c54cfc C99: Define a NAN macro in <math.h> which evaulates to a constant expression of
a single-precision quiet NaN; only to be defined on platforms that do support
this value.
1999-12-23 10:15:05 +00:00
is
e203553a11 Finish support for auto-generated libkern divsi3.S. 1999-09-21 09:43:38 +00:00
is
897dbf6c67 Use an identical source file for the libc and the libkern version of
divsi3.S, conditionally compiling the divide by zero case. This way,
after a change to the one, we can just copy it over to update the other
without creating ... problems. By Chris G.  Demetriou.
1999-09-20 09:22:47 +00:00
is
bc086d24af In the division core: if the highest bit of the dividend is set,
we have to be careful when shifting the divisor. Test this.

This fixes PR 7760 by Richard Earnshaw.
1999-09-16 09:15:05 +00:00
mycroft
b3b07a4c6e Another microoptimization. Take advantage of the addition already having set
the flags for the <=0 comparison.
1999-08-30 18:28:24 +00:00
mycroft
0560606383 Reuse the trick of loading 0.0 (rather than 1.0) and then modifying the
exponent.  It's a bit faster on some machines.
1999-08-30 18:01:40 +00:00
augustss
6a4d7f0bc4 Make it compile again by removing an unused variable. 1999-08-30 12:14:09 +00:00
mycroft
5f34ffabca ldexp(denormal, exp>1023) would generate the wrong result in all non-overflow
cases.  Totally rework this code to fix this bug *and* make it faster.
1999-08-29 22:45:32 +00:00
mycroft
02a48bde49 Don't ever return -0.0. 1999-08-29 19:04:02 +00:00
mycroft
0d708431b7 Minor style change. 1999-08-29 18:40:50 +00:00
mycroft
ea4b733810 Trivial KNF. 1999-08-29 18:39:35 +00:00
mycroft
6850b97bb3 Sync with SPARC version. 1999-08-29 18:35:51 +00:00
mycroft
099dd01a1d Make the C version of frexp() consitent across platforms, and handle the
Inf/NaN case.
1999-08-29 18:30:14 +00:00
mycroft
17030e8106 Separate isnan() into a separate module, and make isinf()/isnan() use ieee.h. 1999-08-29 18:08:27 +00:00
thorpej
30dca7f7db Add __msgctl13(), __semctl13(), and __shmctl13() (symbols are __RENAME()'d
in their respective header files).  Add PSEUDO stubs for the old versions
of these system calls.

Note that __semctl13() doesn't require the extra stub that the old
semctl()/__semctl() did, as the SUSv2 version takes variable arguments,
and thus does not require the extra indirection.
1999-08-25 05:09:27 +00:00
tron
d7678457d6 Fix definition of infinity. Patch supplied by Richard Earnshaw in
PR lib/7829.
1999-06-21 22:31:32 +00:00
kleink
5b4ea02521 _C_FUNC() -> _C_LABEL() 1999-05-06 14:01:20 +00:00
kleink
c66e4d7122 * Prefix softfloat symbols which require external linkage with _arm32_ to
move them out of user namespace; declare those not requiring external linkage
static.
* In due course, disable those functions that require neither external nor
internal linkage.
Addresses PR port-arm32/7517.
1999-05-06 13:56:28 +00:00
mycroft
2b504929fa Just some minor cleanup. 1999-03-10 08:15:43 +00:00
mycroft
8bf9a67c76 One instruction shorter, and returns the same 32-bit result. 1999-01-22 09:13:17 +00:00
bouyer
dc306354b0 Move the bswap functions from libutil to libc (this bups the
minor of libc and the major of libutil). For little-endian architectures
merge the bnswap() assembly versions with nto* and hton* using symbols
aliasing. Use symbol renaming for the bswap function in this case to avoid
namespace pollution.
Declare bswap* in machine/bswap.h, not machine/endian.h. For little-endian
machines, common code for inline macros go in machine/byte_swap.h
Sync libkern with libc.
Adjust #include in kernel sources for machine/bswap.h.
1999-01-15 13:31:15 +00:00
kleink
6348b7d5b5 * On architectures using ELF, and conditionally on those in transition, rename
_ASM_LABEL(cerror) and _ASM_LABEL(curbrk) to _C_LABEL(__cerror) and
_C_LABEL(__curbrk) (or their respective architecture-specific equivalents) to
avoid possible name clashes with identifiers used in user applications.
* Do the same for minbrk on all architectures to avoid a GCC-specific (and
on ELF architectures effectively useless) symbol reference renaming in MI code.
1999-01-14 22:48:18 +00:00
mycroft
317ff12487 Slight cleanup. 1998-12-04 09:52:43 +00:00
thorpej
efd37a7da8 Warn about references to the compatibility vfork() (i.e. the vfork() with
the 4.4BSD non-shared-address-space semantics), and direct the user to
include <unistd.h> to generate the correct reference.

This warning isn't about an ABI compatibility issue, but the new vfork() is
considerably faster.
1998-12-02 19:29:56 +00:00
thorpej
e644246e6a Warn about references to the compatibility() sigaction(), sigpending(),
sigprocmask(), sigreturn(), and sigsuspend(), and direct the user to
include <signal.h> to generate the correct reference.
1998-12-02 01:01:03 +00:00
christos
7c990e0c7b delint 1998-11-14 19:31:01 +00:00
kleink
d541ca6d80 Need internal names for isinf() and isnan(). 1998-10-13 14:43:36 +00:00
thorpej
ca1e742680 NetBSD/arm32 signal changes. 1998-09-29 20:23:25 +00:00
mark
ec628f2561 Update for machine/setjmp.h change (JMPBUF* -> _JB*) 1998-08-04 02:03:08 +00:00
mycroft
982e920022 const poisoning. 1998-07-26 14:13:00 +00:00
christos
49278ef701 s/inline/__inline/ so that lint works. 1998-06-28 20:19:30 +00:00
cgd
5b0ac13bc6 ne64 is not used. #if 0 out its definition, so that its 'static inline'
ness and the fact that it is unused won't combine to cause a warning.
1998-04-24 18:46:53 +00:00
cgd
ec1f804952 add back RCS Id which I accidentally deleted. 1998-01-22 20:05:20 +00:00
cgd
193c1d2147 (1) make sure targets are built in a parallel-make-safe way
(2) make sure softfloat.po is compiled with the right profiling
    flag (-pg), and softfloat.so is compiled with the right
    PIC flags (${CPICFLAGS}).
1998-01-22 07:17:16 +00:00
cgd
ecb2fd7aad define INLINE to be "static inline" rather than "extern inline", so that
if this code is compiled without optimization the not-inlined functions
will be included (statically) in the object files, and now show up
as undefined references.
1998-01-22 07:14:17 +00:00
perry
fbdb247796 RCSID Police. 1998-01-05 23:54:03 +00:00
thorpej
bedc7b48df Add syscall stubs for __vfork14(). These are basically copies of Ovfork.S
with the syscall numbers changed.

Since 4.4BSD vfork(2) did not share address space, Ovfork.S could be changed
to be identical to fork.S (modulo syscall numbers).  __vfork14.S, however,
needs to remain separate since with a shared address space, the stub needs to
pre-decrement the stack and do an indirect jump to the return address, so that
the shared stackframe is still there when the parent returns.  (Obviously,
this does not apply to systems which to not build stackframes on leaf calls.)
1998-01-04 20:58:08 +00:00
mark
0053558a70 Fix a glaring bug in the assembly stubs for memcpy() and memmove() that
meant the src address was being returned rather than the dst address.
Spotted by Chris Demetriou.
1997-11-22 03:27:12 +00:00
cgd
4d7e773266 A foolish consistency... gen, net, and string all get MD sources
specified by including a Makefile.inc from the appropriate MD directory.
stdlib doesn't do that, but there's no reason that it shouldn't (and
it'd be nice to eliminate the 'if's from the MI stdlib Makefile.inc).
1997-11-05 22:59:37 +00:00
lukem
97ba901942 use CPPFLAGS instead of CFLAGS, ${COMPILE.c} instead of ${CC} ... -c 1997-10-22 23:21:46 +00:00
mark
a2b5e07612 Include memmove.S in the list of sources. 1997-10-18 02:28:25 +00:00
mark
fd06e9f4e6 Use the ASENTRY() macro for the declaration of cerror. 1997-10-17 19:57:17 +00:00
mark
fb4d5f58af Fix extra 'S' character typo that resulted in the condition codes being
incorrectly internally on certain divides.
Handle the case where the internal result appears negative. This condition
can occur when dividing MIN_INT by certain values.
Raise an exception on divide by zero.
1997-10-17 18:43:47 +00:00
mark
a5efbaaf3f Fix -Wall compiler warnings. 1997-10-13 21:28:53 +00:00
mark
e30acb582b Build softfloat support as standard. 1997-10-13 21:26:58 +00:00
mark
4b5476b492 Fix compiler warnings. 1997-10-13 21:24:15 +00:00
mark
309d2271d4 Implement soft-float support using the softfloat library from John Hauser. 1997-10-12 21:18:01 +00:00