Subject: CVS commit: syssrc
To: None <source-changes@netbsd.org>
From: Allen Briggs <briggs@netbsd.org>
List: source-changes
Date: 05/30/1999 13:17:50
Module Name:	syssrc
Committed By:	briggs
Date:		Sun May 30 20:17:49 UTC 1999

Modified Files:
	syssrc/sys/arch/m68k/fpe: fpu_add.c fpu_arith.h fpu_calcea.c fpu_div.c
	    fpu_emulate.c fpu_emulate.h fpu_explode.c fpu_fmovecr.c
	    fpu_fscale.c fpu_fstore.c fpu_implode.c fpu_int.c fpu_log.c
	    fpu_mul.c fpu_rem.c fpu_sqrt.c fpu_subr.c

Log Message:
PR 7220 from Ken Nakata:
        I've fixed most (not all) m68k FPE bugs that give bogus
calculation results, esp. fsqrt instruction.  Also, the internal FP
representation has been reduced from 115-bit mantissa to 67-bit
mantissa which reduced the required mantissa operation roughly by one
fourth.  I've done an extensive (though not exhaustive - it's
impossible!) test on the internal routines by feeding them randomly
generated FP numbers, and found that the new code is more precise than
MC68040 FPU (it seems to have a rounding bug).

[ Only change was to keep fpu_calcea.c's name instead of renaming to
  fpu_ea.c in Ken's patch.  --akb ]


To generate a diff of this commit:
cvs rdiff -r1.2 -r1.3 syssrc/sys/arch/m68k/fpe/fpu_add.c \
    syssrc/sys/arch/m68k/fpe/fpu_explode.c \
    syssrc/sys/arch/m68k/fpe/fpu_subr.c
cvs rdiff -r1.1 -r1.2 syssrc/sys/arch/m68k/fpe/fpu_arith.h \
    syssrc/sys/arch/m68k/fpe/fpu_div.c syssrc/sys/arch/m68k/fpe/fpu_int.c \
    syssrc/sys/arch/m68k/fpe/fpu_mul.c syssrc/sys/arch/m68k/fpe/fpu_sqrt.c
cvs rdiff -r1.7 -r1.8 syssrc/sys/arch/m68k/fpe/fpu_calcea.c
cvs rdiff -r1.20 -r1.21 syssrc/sys/arch/m68k/fpe/fpu_emulate.c
cvs rdiff -r1.4 -r1.5 syssrc/sys/arch/m68k/fpe/fpu_emulate.h
cvs rdiff -r1.6 -r1.7 syssrc/sys/arch/m68k/fpe/fpu_fmovecr.c \
    syssrc/sys/arch/m68k/fpe/fpu_fstore.c
cvs rdiff -r1.9 -r1.10 syssrc/sys/arch/m68k/fpe/fpu_fscale.c
cvs rdiff -r1.3 -r1.4 syssrc/sys/arch/m68k/fpe/fpu_implode.c \
    syssrc/sys/arch/m68k/fpe/fpu_rem.c
cvs rdiff -r1.5 -r1.6 syssrc/sys/arch/m68k/fpe/fpu_log.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.