Home | History | Annotate | Download | only in fpe
History log of /src/sys/arch/m68k/fpe/fpu_trig.c
RevisionDateAuthorComments
 1.18  16-Jan-2017  isaki FSINCOS: Fix register address which writes cosine value back.
 1.17  06-Aug-2016  isaki branches: 1.17.2;
Modify fpu_sin()'s logic to avoid GCC's warning that has been
pointed out in the previous commit.
For fpu_cos() there is no such problem, but sync with fpu_sin().
 1.16  23-Mar-2016  mrg branches: 1.16.2;
avoid a GCC warning with this:

+#if defined(__GNUC__) && (__GNUC__ >= 5) && defined(__OPTIMIZE__)
+ x.fp_sign = 0;
+#endif

(ridiculous, but seems better than disabling the warning entirely.)
 1.15  20-Apr-2013  isaki branches: 1.15.12;
Support sin(-0.0).
 1.14  20-Apr-2013  isaki Clean up some useless codes.
 1.13  20-Apr-2013  isaki Support tan(-0.0).
 1.12  19-Apr-2013  isaki Implement inverse trigonometric functions (i.e., FACOS, FASIN, FATAN
instructions).
o arccos is calculated using arcsin.
o arcsin is calculated using arctan.
o arctan is calculated by the CORDIC.
 1.11  19-Apr-2013  isaki Introduce the CORDIC algorithm.
o sine and cosine (e.g., FSIN, FCOS and FSINCOS instructions) is now
calculated in the CORDIC instead of Taylor expansion.
o tangent (FTAN) is not touched from a viewpoint of the code size.
o The CORDIC is applicable for hyperbolic functions (e.g., FSINH,
FCOSH, FTANH instructions), but I didn't use it because its working
range is poor.
o The CORDIC is also usable for inverse trigonometric functions,
I will commit it at next phase.
o The code size becomes a bit big. I cannot evaluate speed on m68k
for some reasons, but in test on i386 the CORDIC is approximately
100 times faster in sin/cos.
 1.10  18-Apr-2013  isaki Improve how to use cmp/sub.
 1.9  11-Apr-2013  isaki Introduce FPU_CONST_* constants to avoid a magic number.
 1.8  26-Mar-2013  isaki u_int -> uint32_t
 1.7  23-Mar-2013  isaki Remove about updating fpsr. It was introduced by me but obviously
duplicated with fpu_emul_arith().
 1.6  15-Oct-2011  tsutsui branches: 1.6.2; 1.6.12;
Add hyperboric and trigonometric functions to m68k FPE, written by isaki@.
With these emulations (~4KB text) xeyes on XM6i works better.
Discussed with isaki@ at OSC 2011 Hiroshima.
 1.5  18-Jul-2011  isaki fix indent. no functional changes.
 1.4  14-Mar-2009  dsl Change about 4500 of the K&R function definitions to ANSI ones.
There are still about 1600 left, but they have ',' or /* ... */
in the actual variable definitions - which my awk script doesn't handle.
There are also many that need () -> (void).
(The script does handle misordered arguments.)
 1.3  11-Dec-2005  christos branches: 1.3.78; 1.3.86; 1.3.92;
merge ktrace-lwp.
 1.2  15-Jul-2003  lukem __KERNEL_RCSID()
 1.1  03-Nov-1995  briggs branches: 1.1.64;
Still incomplete, but much more complete FPE from Ken Nakata
<kenn@remus.rutgers.edu>. This emulator does not yet emulate
the following functions:
FSINH, FETOXM1, FTANH, FATAN, FASIN, FATANH, FSIN, FTAN,
FETOX, FTWOTOX, FTENTOX, FCOSH, FACOS, FCOS, FSINCOS
It is sufficient, however, to allow programs like df, w, and newfs,
to run to completion with correct results.
Portions of this code were based on the sparc fpe and on initial
work by gwr.
 1.1.64.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.1.64.2  18-Sep-2004  skrll Sync with HEAD.
 1.1.64.1  03-Aug-2004  skrll Sync with HEAD
 1.3.92.1  13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.3.86.1  28-Apr-2009  skrll Sync with HEAD.
 1.3.78.1  04-May-2009  yamt sync with head.
 1.6.12.2  03-Dec-2017  jdolecek update from HEAD
 1.6.12.1  23-Jun-2013  tls resync from head
 1.6.2.1  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.15.12.3  05-Feb-2017  skrll Sync with HEAD
 1.15.12.2  05-Oct-2016  skrll Sync with HEAD
 1.15.12.1  22-Apr-2016  skrll Sync with HEAD
 1.16.2.1  20-Mar-2017  pgoyette Sync with HEAD
 1.17.2.1  21-Apr-2017  bouyer Sync with HEAD

RSS XML Feed