Commit Graph

98 Commits

Author SHA1 Message Date
drochner
fa073991b3 build frexp/ldexp/modf in the "compat" part (code is identical)
(These are the easy cases where no assembler implementations exist.)
2006-06-28 14:46:32 +00:00
uwe
46daac62de G/c KMSRCS and KMINCLUDES now that we have common/lib/libc 2006-06-17 18:04:23 +00:00
mrg
8726b401d3 if SOFTFLOAT_FOR_GCC is not defined, don't declare float_detect_tininess. 2006-05-16 20:55:51 +00:00
mrg
640873a430 make sure there is a prototype in scope. 2006-05-16 05:29:16 +00:00
snj
a640fe8c43 It's "its." 2006-04-24 19:00:29 +00:00
drochner
f81322cf18 build erand48_ieee754.c on everything but vax 2006-03-22 22:03:58 +00:00
kleink
bc89c06cbf Add strtof(3) and strtold(3); welcome libc 12.137. 2006-03-15 17:35:17 +00:00
wiz
5d1e8b2745 Fix some typos. 2006-02-25 02:28:55 +00:00
wiz
1ad8067cb3 Fix typos, reported by Alexey Dobriyan ("Gathered from Linux"),
forwarded by jmc@openbsd.
2006-02-25 00:58:34 +00:00
christos
b1732b7a63 make these consistent. 2006-02-19 05:06:02 +00:00
kleink
804e6c96a2 Add machine-dependent definitions for gdtoa. 2006-01-25 15:33:28 +00:00
perry
4e11af46bc Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete. 2005-12-24 21:11:15 +00:00
christos
e5548b402a Use reach-over sources from common/lib/libc 2005-12-20 19:31:47 +00:00
christos
94b922ec6e move to the new compat layout. 2005-10-16 17:26:43 +00:00
christos
18b395d0bf more renaming. 2005-10-16 17:26:24 +00:00
christos
907cc80c7c compat shuffle. 2005-10-16 17:25:50 +00:00
lukem
88c3eadbfa Add missing __RCSID() 2005-06-12 05:21:25 +00:00
scw
a14b1c10ef Nuke trailing whitespace. 2005-06-02 08:18:20 +00:00
rearnsha
dd7174bb3e On ARMv5 reduce the value to the LSB before using CLZ. Otherwise we'll
calculate the position of the MSB not the LSB.
2005-05-06 09:50:25 +00:00
kleink
b2cb7fcd8a Push back the descriptions of NaN formats, and descriptions of the
distinction between signalling NaNs and quiet NaNs back into the
machine-dependent headers; treat the implementation of __nanf in the
same spirit.

IEEE 754 leaves the distinction between signalling NaNs and quiet NANs
to the implementation, and unlike our headers used to suggest they're
not identical in the interpretation of the fraction's MSb; in due
course, make those of hppa, mips, sh3, and sh5 reflect reality.
2005-04-15 22:39:10 +00:00
rearnsha
54f20047f5 Add missing new line. 2004-08-21 13:08:29 +00:00
rearnsha
ed6e0e9e42 Use RET and RETc for returning. 2004-08-21 11:30:17 +00:00
rearnsha
145b31af81 Use RETc for returning. When v4T or later use BX for calling the target. 2004-08-21 11:29:51 +00:00
rearnsha
017d1fb251 Use RET and RETc for returning. 2004-08-21 11:25:17 +00:00
rearnsha
84104f4511 Use RET to return.
If ARMv5 or later then use CLZ rather than long-winded tale-lookup.
2004-08-21 11:24:28 +00:00
rearnsha
d4072e3a7c Always use bx for returning (this code is always ARMv5TE. 2004-08-21 11:22:33 +00:00
rearnsha
d6621260dc Use RET and RETc macros for returning. 2004-08-21 11:20:10 +00:00
rearnsha
85647ccc31 Use RET macro for returning from PSEUDO & PSEUDO_NOERROR 2004-08-21 11:18:40 +00:00
drochner
0341f6a45e the WARN_REFERENCES text "include <signal.h> for correct reference" is pointless
as <signal.h> won't help you, so remove it
2004-03-26 22:15:03 +00:00
drochner
85fa9b7250 fix references to the syscall formerly known as SYS___sigreturn14 2004-03-26 20:35:37 +00:00
drochner
cd85223ee2 save errno while trying to install a !SA_SIGINFO trampoline -- this
is expected to fail with !COMPAT_16 kernels, and we shouldn't
overwrite errno in this case
2004-03-23 16:19:40 +00:00
kleink
8e54f10bf7 * Turn isinf(3) and isnan(3) into C99-style macros.
* Make it possible for ports to override these (i.e., VAX).
* Remove isnanl(), which was internal to libc only.
2004-03-04 23:42:38 +00:00
kleink
d82e732345 Add C99 fpclassify(), isfinite(), isnormal(), and signbit() macros. 2004-01-15 19:43:44 +00:00
martin
903622333a Use an unsigned comparison against minbrk.
From Steve Woodford, inspired by a similar change to other archs from
OpenBSD.
2003-12-26 11:23:44 +00:00
kleink
72f016b386 Retire FPA support from this file at last; suggested by Richard Earnshaw
and not objected to by port-arm.
2003-10-28 21:44:04 +00:00
kleink
55337d2d6f On FPA, switch back `long double' to double-precision. According to
Richard Earnshaw, extended-precision was never supported by the compiler.
2003-10-26 16:00:17 +00:00
kleink
9f3dbee22c Add __infinityf and __infinityl, float respectively long double analogs
of __infinity.
2003-10-25 22:31:20 +00:00
kleink
8e2428c2c6 Remove an unnecessary line continuation backslash from previous. 2003-10-25 21:54:30 +00:00
kleink
72315d3199 Update for FPA 80-bit extended-precision format. 2003-10-25 18:37:43 +00:00
kleink
25de9f5e2a Swap VFP and FPA sections to match the style of most other code;
no functional change.
2003-10-25 17:57:15 +00:00
kleink
bb5e0820bc Redo the VFP/endianness conditional logic of this file, making it easier
to read.  No functional change except for the side-effect of fixing the
ARMEB FPA case, which wasn't supported anyway.
2003-10-25 16:17:44 +00:00
kleink
712c8de209 * Since there is no single portable IEEE 754 format for a long double,
keep a common implementation of isinfl() and isnanl() to be used by
  platforms where `long double' == `double'; move others into
  machine-dependent code.
* In due course, consider __VFP_FP__ on arm.
2003-10-24 00:58:01 +00:00
scw
2ffebceb85 Duh, fix the align-to-32-bits code. 2003-10-23 20:46:40 +00:00
scw
789335a49c Xscale-optimised mem* routines. Contributed by Wasabi Systems.
(Note: memcmp/memset improvements also benefit non-Xscale).

memcmp()  - Compare 32-bits at a time if possible. Special-case 6-byte
            comparisons, for the benefit of the network stack.

memset()  - More loop unrolling, plus use of 'strd' instruction,
bzero()     results in > 100% speedup on Xscale.

memcpy()  - Big-endian support, unrolled loops, 'strd/pld', plus special-
            cases for very common length/alignment combinations.
            Benchmarks show ~50% improvment on Xscale.

memmove() - Big-endian support. Use fast memcpy(), above, if the regions
bcopy()     don't overlap. Otherwise unchanged

XXX: The Xscale optimisations are not enabled by default, unless /etc/mk.conf
XXX: has the right compiler options. The intention is to pull them in via
XXX: something like libxscale.so, selected at runtime by ld.so.conf.
XXX: (Big-endian support is not affected by this).
2003-10-14 07:51:45 +00:00
ichiro
c9be9cafc5 dont use __ARMEB__
It changed so that it might distinguish by BYTE_ORDER
2003-10-09 09:44:25 +00:00
ichiro
b6a7f7b339 support big endian 2003-10-09 09:37:56 +00:00
matt
f3198687d6 Add SA_SIGINFO support for ARM. 2003-10-05 19:48:39 +00:00
agc
eb7c1594f1 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22280, verified by myself.
2003-08-07 16:42:00 +00:00
lukem
a93ea220fc Rework how dependency generation is performed:
* DPSRCS contains extra dependencies, but is _NOT_ added to CLEANFILES.
  This is a change of behaviour.  If a Makefile wants the clean semantics
  it must specifically append to CLEANFILES.
  Resolves PR toolchain/5204.

* To recap: .d (depend) files are generated for all files in SRCS and DPSRCS
  that have a suffix of: .c .m .s .S .C .cc .cpp .cxx

* If YHEADER is set, automatically add the .y->.h to DPSRCS & CLEANFILES

* Ensure that ${OBJS} ${POBJS} ${LOBJS} ${SOBJS} *.d  depend upon ${DPSRCS}

* Deprecate the (short lived) DEPENDSRCS


Update the various Makefiles to these new semantics; generally either
adding to CLEANFILES (because DPSRCS doesn't do that anymore), or replacing
specific .o dependencies with DPSRCS entries.

Tested with "make -j 8 distribution" and "make distribution".
2003-08-01 17:03:41 +00:00
thorpej
8969ba6ff5 Build _isinfl() and _isnanl(). 2003-05-17 15:05:52 +00:00