Commit Graph

817 Commits

Author SHA1 Message Date
matt
5cc5894442 Don't build old 1.3 compat jmp stuff for ELF.
For ELF, don't rewind stack on longjmp/_longjmp.  (for pth).
2002-03-27 18:38:50 +00:00
jmc
a7839b0fdc Fix typo in previous commit 2002-03-27 03:43:39 +00:00
jmc
a1fe3592c6 Correct mistaken signature for _Qp_dtoq. It gets a double passed in, not
a pointer to double which causes obvious errors on evaluation
2002-03-27 03:41:54 +00:00
matt
12810ed37d Use size_t in prototype (so this will be LP64 clean for PPC64 someday).
Calculate len separately for icache & dcache in case each has different
cacheline widths.  Make the code for both loops the same except for the
dcbst/icbi.  Deal with sizes >=2GB properly (like that'll happen but ...)
2002-03-26 21:20:24 +00:00
ross
70d3133ec0 Fix minor syntax warnings. 2002-03-23 20:13:35 +00:00
ross
e1a248fa36 use canonical indirect jmp & call syntax to squelch new as(1) warning 2002-03-20 22:06:18 +00:00
bjh21
376c14488f Only abort() if the user specifies a rounding mode other than FP_RN. 2002-03-19 13:42:23 +00:00
bjh21
a03fedb6a5 ANSIfy. 2002-03-19 13:36:30 +00:00
dbj
f0658bdada make compile with _STANDALONE 2002-03-18 05:10:58 +00:00
eeh
a33f33ab31 Remove leftover debug code. Oops. 2002-03-13 00:57:53 +00:00
eeh
bc40300979 Use new CPU_CACHEINFO sysctl to get more detailed information about
cache layout.
2002-03-12 22:08:21 +00:00
bjh21
dad2756159 Use the values from <machine/ieeefp.h> to define the exception flags, and
rounding modes, rather than different ones (oops).
2002-03-10 23:31:35 +00:00
jmc
f40c307405 Move names for softfloat lib that _Qp functions call into _softfloat_
namespace
2002-03-04 21:26:39 +00:00
matt
75dee250ea Missed an sp in the great %sp cleanup. 2002-02-24 02:43:46 +00:00
matt
0ce5ca145f Change to use a register prefix. 2002-02-24 01:06:18 +00:00
kleink
3ca01a7f77 Do without stfiwx; per PEM32 Rev. 1 it's an optional part of the UISA,
and not implemented on the 601.
2002-02-22 18:21:22 +00:00
eeh
2fdccc01af Add bzero.S and strlen.S to the stuff that gets installed in libkern. 2002-02-20 22:45:04 +00:00
thorpej
268d4c679c Adjust for changes to __infinity decl. 2002-02-19 21:50:01 +00:00
bjh21
58e93e10b1 Replace infinity.c with one in the style of the new ieee754_infinity.c, but
with extra #ifdefs for FPA-format doubles.  This gets it compiling again.
2002-02-19 20:08:19 +00:00
simonb
2d8577fb83 Clean up some rampant code duplication wrt ieee number handling:
- Add alignment-safe double and float unions.
 - Use the above for the __infinity and __nan constants on all
   architectures that use the standard ieee754 representation of
   those constants.
 - Add a single copy of various ieee754 math functions (frexp, isinf,
   isnan, ldexp and modf) that had numerous duplicates among the
   arch-specific directories.
 - Use the above functions on all architectures where the generic C
   versions where used.  Architectures that had local assembly
   routines are untouched (for those functions only).
2002-02-19 13:08:12 +00:00
bjh21
294cb551a3 Switch libc syscall veneers over to using our shiny new official SWI range. 2002-02-10 14:10:59 +00:00
jmc
4b4c3144ba Enable the _Qp* routines to be built always and allow full softfloat to be
pulled in if MKSOFTFLOAT gets enabled.
2002-02-05 07:54:01 +00:00
jmc
d9c86555ad Add softfloat and quad softfloat setup for sparc64 (thanks to Andrey Petrov
for most of this. I just integrated the build).

This adds proper functions for the _Qp* parts of the sparc64 ABI (which
handle quad softfloat). The routines work but need additional testing.
However if the compiler calls these currently bad things (core dumps)
will happen as gcc 2.95.3 generates bad calls for these.

Until that problem is fixed in the toolchain -msoft-quad-float cannot be
enabled as the default option for all builds (but the routines need to be
in libc as libgcc contains some references to these and anything including
it via --whole-archive will need the symbols to at least resolve).
2002-02-05 07:53:05 +00:00
ross
de50fe2e64 Drink ALL the Kool-Aid.
(Move -mieee from lib/ to bsd.*.mk; new var MKIEEEFP defaults to yes.)
2002-01-27 23:33:51 +00:00
thorpej
4586df0992 On Alpha, build libc and libm with -mieee ... A metric crapload
of 3rd party software expects this.

XXX TODO: consider libm-fast for alpha that is not -mieee.  Possibly
determine -mieee or not at run-time based on a bit in the executable
headers.
2002-01-27 21:59:18 +00:00
aymeric
5927ef00d8 Redefine ENTRY properly for both ELF and a.out
Now we can compile profiled m68k programs that use libc.
2002-01-22 22:44:43 +00:00
ross
513a2a744b Align __nanf[] object with (sigh) gnuisms 2002-01-21 23:54:45 +00:00
ross
2bd74b6c24 Don't intentionally enable integer overflow traps (ITOH Yasufumi)
Closes port-alpha/10065
2002-01-21 23:40:41 +00:00
thorpej
ac8c1c29e9 * Add WSYSCALL() to SYS.h, which creates a system call with an
internal name and a weak alias for the name.
* Add a WEAKASM syscall list, and process it.
* Make sysarch() have an internal name (_sysarch()).
2002-01-14 00:55:55 +00:00
thorpej
5d3e829423 Add internal names for fp{get,set}{mask,round,sticky}(), and
externally-visible weak aliases for the internal names.
2002-01-13 21:45:39 +00:00
thorpej
6f2f5bdcc6 Fix -Wshadow warnings. 2001-12-30 19:23:59 +00:00
tv
26375a1710 Remove -Wa,-Av9a hack from <sys.mk> and relegate it to the places that need
it (kernel and libc).

The current version of the gas assembler in the tree (2.11.2) already
defaults to generating object files for "-Av9 -64", supporting V9
instructions in ELF64 object format.  "-Av9a" is only needed for specific
parts of the NetBSD base sources, and not for all third-party code.
2001-12-19 21:17:59 +00:00
msaitoh
cf9f94a483 sync with other archs.
Important fixes:

 > 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.

 > Don't ever return -0.0.
2001-12-10 10:23:03 +00:00
wiz
b4371d47f5 Replace some misuses of "then" with "than". 2001-12-04 17:56:30 +00:00
mjl
a9c86c6ce0 Add assembler version of strlen. 2001-11-30 02:26:35 +00:00
mjl
625c08cf7e Outifdef some stuff not needed in the _KERNEL case. 2001-11-30 02:25:50 +00:00
mjl
7f0157c400 Make this work in kernel space too. 2001-11-29 00:20:37 +00:00
mjl
feb8901632 Add PPC assembler routines for ffs(3), bzero(3) and memset(3). 2001-11-25 01:09:58 +00:00
wiz
1fd7eeefcd "than" instead of "then". 2001-11-21 19:14:19 +00:00
chris
aadbf924e6 Update asm files to use sp instead of r13. Also tweak a couple of bits in the longjmp code to save an instruction. 2001-11-13 20:04:52 +00:00
chris
d4ffdc1db0 Update arm libc files for 8 byte aligned stack. 2001-11-13 20:03:38 +00:00
bjh21
49ddb29842 Fix .type directive to use the right name for L_ffs_table (pointed out by
Ian Fry).

Also, add RCSID and fix some comments.
2001-11-13 13:07:52 +00:00
chris
6829afaed3 Update the libc version of ffs to make use of an optimsed asm version. 2001-11-11 22:05:18 +00:00
bjh21
4da598993d Rename a parameter to fix build problem with new toolchain. 2001-11-08 22:45:45 +00:00
tron
b1d32d0e07 Rename a parameter to fix build problem with new toolchain. 2001-11-08 11:24:07 +00:00
enami
6023422f9d Fix -Wshadow warnings. 2001-11-08 06:51:05 +00:00
drochner
f0f40184c9 -Wshadow fix 2001-11-07 17:56:32 +00:00
drochner
dacd4ae4c5 cpoy from the 040 version: -Wshadow warning fix 2001-11-07 17:55:42 +00:00
mjl
d1960d6679 fix for -Wshadow 2001-11-07 17:46:21 +00:00
chs
5f13639b8f fix for -Wshadow 2001-11-07 15:45:12 +00:00