Commit Graph

39 Commits

Author SHA1 Message Date
fvdl
059c5712b9 Fix mistake in previous. 2002-03-30 10:03:44 +00:00
fvdl
edcf4b63ed Fix stack usage for temporary storage. From Stephen Ma in PR xsrc/15404. 2002-03-26 15:17:37 +00:00
christos
47c5991d7a PR/15748: Ray Brownrigg: exp(log(0)) is broken.
Use FreeBSD's version. Handles inf/nan and rounding modes.
2002-02-27 16:32:46 +00:00
lukem
efcc9a4c9d * Add user-controlled mk.conf variables
- SHLIBDIR	Location to install shared libraries if ${USE_SHLIBDIR}
			is "yes".  Defaults to "/usr/lib".

	- USE_SHLIBDIR	If "yes", install shared libraries in ${SHLIBDIR}
			instead of ${LIBDIR}.  Defaults to "no".
			Sets ${_LIBSODIR} to the appropriate value.
			This may be set by individual Makefiles as well.

	- SHLINKDIR	Location of shared linker.  Defaults to "/usr/libexec".
			If != "/usr/libexec", change the dynamic-linker
			encoded in shared programs

* Set USE_SHLIBDIR for libraries used by /bin and /sbin:
	libc libcrypt libcrypto libedit libipsec libkvm libm libmi387
	libtermcap libutil libz

* If ${_LIBSODIR} != ${LIBDIR}, add symlinks from ${LIBDIR}/${LIB}.so*
  to ${_LIBSODIR}/${LIB}.so* for compatibility.

* Always install /sbin/init statically (for now)


The net effect of these changes depends on how the variables are set:

  1.)	If nothing is set or changed, there is no change from the
	current behaviour:
		- Static /bin, /sbin, and bits of /usr/*
		- Dynamic rest
		- Shared linker is /usr/libexec/ld*so

  2.)	If the following make variables are set:
		LDSTATIC=
		SHLINKDIR=/lib
		SHLIBDIR=/lib
	Then the behaviour becomes:
		- Dynamic tools
		- .so libraries used by /bin and /sbin are installed to /lib,
		  with symlinks from /usr/lib/lib*so to -> /lib/lib*so
		  where appropriate
		- Shared linker is /lib/ld*so

  3.)	As per 2.), but add the following variable:
		USE_SHLIBDIR=yes
	This forces all .so's to be instaleld in /lib (with compat
	symlinks), not just those tagged by their Makefiles to be.
	Again, compat symlinks are installed
2001-12-28 01:32:37 +00:00
tv
001067bbd1 Readability cleanups; MKfoo=no -> NOfoo. 2001-12-12 00:51:00 +00:00
fvdl
d191029b13 2 more bitnumber mistakes fixed while removing sahf. 2001-06-25 16:47:05 +00:00
fvdl
c5b64cb062 Oops, when I replaced sahf with a btw, I made it test the wrong bit
(2 vs. 10).
2001-06-25 16:44:34 +00:00
fvdl
120d96874f %rbp -> %rsp in 2 cases. 2001-06-19 17:49:36 +00:00
fvdl
8ecba6c681 Modify the i387 code so that it can be shared between the i386 port
and the x86_64 port. XXX some files should be distinct.
2001-06-19 00:26:29 +00:00
kleink
26c512aade Make these idempotent as far as the FPU register stack is concerned. 2000-09-26 07:28:23 +00:00
christos
e133a9e685 Makefile and shared library for libm387. 1999-12-13 09:36:29 +00:00
simonb
42724dd4d2 More trailing white space. 1999-07-02 15:37:33 +00:00
kristerw
14e0e5307d The scalb* functions left data on the floting point register stack.
Remove it before leaving the function.

The solution is taken from OpenBSD.
1999-01-02 05:15:40 +00:00
jtc
ca7561ba59 Fix typo 1996-07-06 00:15:45 +00:00
jtc
a5e2dfa95f use one less fp stack slot 1996-07-03 17:31:28 +00:00
jtc
0ab3a0b137 It's necessary to use 64 bit precision to avoid errors in the least
significant bit(s) (for some operands).
1996-07-03 17:27:34 +00:00
jtc
88420f2e4d this simple adaptation exp() does not work 1996-07-03 17:20:16 +00:00
jtc
5f9accdf53 Assembly versions of expf(), logf(),log10f(), scalbf(), expm1() and expm1f(). 1996-07-03 16:50:20 +00:00
jtc
5743dc5d7a Fix from Bruce Evans. Commited to FreeBSD earlier this month, but was
never forwarded to me :-(.

> Clean up the FP stack before returning.  The i387 exp() leaked an FP
> register on its first call.  Subsequent calls reused the register so
> the leak didn't accumulate.
1996-06-25 02:07:09 +00:00
jtc
84fc678011 Use setne instead of setnel, new versions of gas balk at the bad mnemonic.
Wrong mask was used in s_finitef.S.
1996-06-04 18:00:34 +00:00
pk
26646c7969 Setup stack-frame correctly (same as s_ilogb.S). 1995-10-22 20:32:43 +00:00
jtc
e2143cf975 Fix from Jochen Pohl, i387 version of ilogb didn't set up the stack
frame correctly (PR #1590).
1995-10-12 15:53:09 +00:00
jtc
5abf82e236 Id -> NetBSD 1995-05-08 23:55:16 +00:00
jtc
0898887210 Id -> NetBSD 1995-05-08 23:44:37 +00:00
jtc
750e07c91c i387 float version of atan2() 1995-05-08 23:35:10 +00:00
jtc
684161edae Added i387 remainderf and sqrtf 1995-05-03 14:47:35 +00:00
jtc
5c7208348c Winning Strategies has placed this code into the Public Domain 1995-04-28 22:43:31 +00:00
jtc
9f19de9cde Remove lie (in a comment) about conversion between 80 bit ot 64 bit reals,
since we set up the fpu to do all calculations in 64 bit mode at this time.
1994-08-26 00:20:34 +00:00
jtc
4b2017adfe Assembly language versions of some of the "float" functions. 1994-08-19 03:56:44 +00:00
jtc
1af6796a8d The fyl2xp1 instruction has a limited range:
-(1 - (sqrt(2) / 2)) <= x <= sqrt(2) - 1
so we can't use it.

Also, I'm not sure fyl2xp1's extra precision will
matter once the result is converted from extended
real (80 bits) back to double real (64 bits).
1994-08-19 03:55:57 +00:00
jtc
c120d36cd8 Major Bogon: change %ebp to %esp, as I don't set up a stack frame. 1994-08-18 20:42:35 +00:00
jtc
6d76330bec Added RCS ID's. ID's use new RCSID macro from <machine/asm.h>. 1994-03-12 01:30:22 +00:00
jtc
2ed7077300 Added i387 version of significand(). 1994-03-10 18:13:32 +00:00
jtc
aff2eb8384 More i387 libm support. 1994-03-04 17:39:50 +00:00
jtc
0dff3c6f48 Optimize the common case (theta < 2^63). 1994-02-18 17:38:59 +00:00
jtc
b365a34dd9 i387 specific ilogb() 1994-02-18 02:50:11 +00:00
jtc
c709120244 i387-specific math functions. 1994-02-16 19:21:10 +00:00
jtc
101f9521b3 More i387 math support, too bad we can't enable it 1994-02-12 01:31:52 +00:00
jtc
c632d011dd FPU specific math code. 1994-02-11 18:20:17 +00:00