Commit Graph

540 Commits

Author SHA1 Message Date
itohy 1d0a433095 ELF PIC support. 1999-10-18 03:24:28 +00:00
itohy 29215efa45 ELF PIC support.
Small optimization.
1999-10-18 03:22:14 +00:00
shin 54de12eae6 remove extra lw (SOFTFLOAT) 1999-10-11 05:25:35 +00:00
shin f761ddb744 adjust #endif position (SOFTFLOAT) 1999-10-11 05:21:06 +00:00
takemura cdabc2eb91 Hpcmips needs completely FPU instruction free user land.
XXX, this modification is kinda ad-hoc.
1999-09-29 13:19:13 +00:00
kleink 30ae96c534 Oops, missed these in the mcount -> __mcount renaming. 1999-09-28 08:27:08 +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
mycroft 959acd6d47 Looks like I forgot to add this copy of isnan.c. 1999-09-17 21:32:53 +00:00
takemura 2f85eb6142 Import NetBSD/hpcmips source files from hpcmips repository.
file list:
        sys/arch/hpcmips/
        distrib/hpcmips/
        etc/etc.hpcmips/
        lib/libc/arch/mips/fplib/
        lib/libc/arch/mips/fplib/Makefile.inc
        lib/libc/arch/mips/fplib/environment.h
        lib/libc/arch/mips/fplib/fplib_glue.c
        lib/libc/arch/mips/fplib/fplib_libc.c
        lib/libc/arch/mips/fplib/hpcmips-gcc.h
        lib/libc/arch/mips/fplib/softfloat-macros.h
        lib/libc/arch/mips/fplib/softfloat-specialize.h
        lib/libc/arch/mips/fplib/softfloat.c
        lib/libc/arch/mips/fplib/softfloat.h
        lib/libc/arch/mips/gen/ieee.h
        lib/libc/arch/mips/gen/sf_fabs.c
        lib/libc/arch/mips/gen/sf_flt_rounds.c
        lib/libc/arch/mips/gen/sf_fpgetmask.c
        lib/libc/arch/mips/gen/sf_fpgetround.c
        lib/libc/arch/mips/gen/sf_fpgetsticky.c
        lib/libc/arch/mips/gen/sf_fpsetmask.c
        lib/libc/arch/mips/gen/sf_fpsetround.c
        lib/libc/arch/mips/gen/sf_fpsetsticky.c
        lib/libc/arch/mips/gen/sf_isinf.c
        lib/libc/arch/mips/gen/sf_ldexp.c
        lib/libc/arch/mips/gen/sf_modf.c
1999-09-16 12:13:17 +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
drochner ec2a7d4249 SYS.h was nuked from libkern 1999-09-10 15:41:51 +00:00
chs f70d067294 use RODATA() instead of ENTRY() for __ffstab so that it works when profiling. 1999-09-06 19:00:24 +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
mycroft 5579a03f91 Nuke unused variable. 1999-08-30 16:48:07 +00:00
augustss 75d2dfe657 Remove more unused mulexp variables. 1999-08-30 15:11:32 +00:00
augustss 6a4d7f0bc4 Make it compile again by removing an unused variable. 1999-08-30 12:14:09 +00:00
mycroft 9cba4741ee Use C versions of isinf() and isnan(). The assembler code is basically
identical, but was endian-dependent.
1999-08-29 23:01:40 +00:00
mycroft 6b221be206 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:50:25 +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 c3140da584 Oops; committed wrong version here. 1999-08-29 19:42:54 +00:00
mycroft f784c98496 Reimplement the FSCALE version as C-with-assembler. (Make the compiler deal
with ABI crap.)
1999-08-29 19:41:53 +00:00
mycroft 0ae41d0984 Use the C version of ldexp(). The assembler version was broken in several
ways (ldexp(0.0, 5000) returned +Inf, didn't do normalization/denormalization,
etc.).
1999-08-29 19:08:44 +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 ed01c49a3f Use the C version. The assembler version was just transliterated (and buggy)
anyway.
1999-08-29 18:32:36 +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 291053e1e2 Use ieee.h. 1999-08-29 18:23:26 +00:00
mycroft c8190acc41 Separate isnan() into a separate module, and make isinf()/isnan() use ieee.h. 1999-08-29 18:11:28 +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
kleink 74511f97b1 Use _ALIGN_TEXT from <machine/asm.h>. 1999-08-23 08:45:09 +00:00
danw 687108b42f add the ieeefp functions 1999-07-07 01:55:07 +00:00
danw e8559a61eb mark an asm statement volatile so it doesn't get optimized out 1999-07-07 01:53:38 +00:00
pk 0ffda58ae9 A new implementation of _setjmp/_longjmp that uses the T_FLUSHWIN trap.
This means the stack frame and program counter can restored directly
from the jmp_buf, eliminating the need to backtrack through frames
which does not work in all cases.
1999-06-27 11:10:18 +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
matthias 71dd06e171 Go for correctness instead of speed as suggested by Ian Dall. This fixes
pr#port-pc532/7710.
1999-06-06 20:20:46 +00:00
matthias bb36354c10 Fix spurious page faults by double word aligning the source and not the
destination. Thank's to Ian Dall for this fix.
1999-06-06 19:49:11 +00:00
kleink 15fb0e4315 Shameless hack to reference end if using a.out and _end if using ELF. 1999-06-03 20:14:58 +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
tsubai cb9a32fdf9 * Add getcachelinesize() prototype.
* Make this compile with -D_STANDALONE.
1999-05-05 12:35:54 +00:00
kleink 5b2a4f0824 Call cerror through the PLT. 1999-05-02 23:19:49 +00:00
kleink 18d5ba6151 We can shave off a register-register move when using the SVR4 ABI: __errno()
will return its pointer result in a0.
1999-05-02 20:52:02 +00:00
kleink 4e0adc06d5 When using the SVR4 ABI, return pointer results in a0, too. 1999-05-02 20:34:04 +00:00
kleink 1bd013aa27 Oops, typo. 1999-05-02 20:18:17 +00:00
kleink d658cafb30 When using the SVR4 ABI, just return floating point values in fp0. 1999-05-02 20:17:20 +00:00