Update from Ken Nakata.
This commit is contained in:
parent
8b79bcb9e7
commit
f028be21e6
|
@ -1,7 +1,7 @@
|
|||
* $NetBSD: README,v 1.3 1995/11/05 00:35:09 briggs Exp $
|
||||
* $NetBSD: README,v 1.4 1995/11/05 04:23:00 briggs Exp $
|
||||
* NetBSD/m68k FPE (floating point emulation) README file
|
||||
* Created Oct/??/95 by kenn@romulus.rutgers.edu (Ken Nakata)
|
||||
* Last updated Nov/02/95 by kenn
|
||||
* Created Oct/??/95 by kenn@remus.rutgers.edu (Ken Nakata)
|
||||
* Last updated Nov/04/95 by kenn
|
||||
|
||||
1. INSTALLATION AND COMPILATION
|
||||
|
||||
|
@ -16,8 +16,7 @@ debugging purpose, add "options DEBUG_WITH_FPU" as well.
|
|||
NOTE: If you add "options DEBUG_WITH_FPU", FPE will accept cpID=6 as
|
||||
emulated FPU. You will need a modified gas that generates cpID=6 for
|
||||
floating point instructions, instead of normal cpID=1. Mount unionfs
|
||||
or copy the gas source directory as you did with the kernel source tree,
|
||||
and apply the following patch:
|
||||
or copy the gas source directory and apply the following patch:
|
||||
|
||||
*** /usr/src/gnu/usr.bin/gas/config/tc-m68k.c Mon Nov 21 16:30:41 1994
|
||||
--- gas/config/tc-m68k.c Fri Sep 29 07:59:06 1995
|
||||
|
@ -58,15 +57,15 @@ than welcome to write such functions if you wish to.
|
|||
3. IMPLEMENTED INSTRUCTIONS
|
||||
|
||||
This is the list of implemented and unimplemented FPU instructions.
|
||||
Most 040's directly supported type 0 instructions are already
|
||||
implemented except FSGLDIV, FSGLMUL, FMOVE(M) FPcr, and FMOVECR.
|
||||
All 040's directly supported type 0 instructions are already
|
||||
implemented except FSGLDIV and FSGLMUL.
|
||||
|
||||
Type field = bit 8-6 of opcode word
|
||||
|
||||
* Implemented Instructions
|
||||
|
||||
Type=0: FMOVE (mem->FPr), FINT, FINTRZ, FSQRT, FABS, FNEG, FGETEXP,
|
||||
FGETMAN, FDIV, FADD, FMUL, FSGLDIV, FSCALE, FSGLMUL, FSUB,
|
||||
FGETMAN, FDIV, FADD, FMUL, FSGLDIV(*), FSCALE, FSGLMUL(*), FSUB,
|
||||
FCMP, FTST, FMOVE (FPr->mem), FMOVEM (FPr), FMOVEM (FPcr),
|
||||
FMOVECR, FLOGNP1, FLOGN, FLOG10, FLOG2, FMOD, FREM
|
||||
|
||||
|
@ -154,8 +153,15 @@ the following rules:
|
|||
5) Condition code need not be calculated. It's taken care of in
|
||||
fpu_emul_arith().
|
||||
|
||||
Actually, after above was written, stubs for the missing functions
|
||||
are added to the source, so you do not have to change fpu_emul_arith()
|
||||
at all. Function names and prototypes are in fpu_arith_proto.h, and
|
||||
all (except fpu_sincos()) follows the rules above.
|
||||
Actually, after above was written, stubs for the missing functions were
|
||||
added to the source, so you do not have to change fpu_emul_arith() at
|
||||
all. Function names and prototypes are in fpu_arith_proto.h, and all
|
||||
except fpu_sincos() follow the rules above. fpu_sincos() is declared
|
||||
as
|
||||
|
||||
struct fpn *fpu_sincos(struct fpemu *fe, int cosreg);
|
||||
|
||||
where cosreg is the FP register number to which cosine of the argument
|
||||
is calculated and assigned. Sine of the argument is stored into the
|
||||
destination register in the same manner as the other arithmetic
|
||||
functions.
|
||||
|
|
Loading…
Reference in New Issue