Added FPU emulation to SPARC port
authorAndrew Waterman <waterman@r53.millennium.berkeley.edu>
Tue, 27 Oct 2009 05:27:14 +0000 (22:27 -0700)
committerAndrew Waterman <waterman@r53.millennium.berkeley.edu>
Tue, 27 Oct 2009 05:27:14 +0000 (22:27 -0700)
commitaf451a0c982fa306ebb807d2cb5b4cca37e5ad05
treecb18fa5edbfdd1fe275d16c07539ddeb49a5266e
parent3cb23255b7ae6388eff69fd0e2511ea8d92778ec
Added FPU emulation to SPARC port

Our HW FPU does not execute all instructions (namely div, sqrt),
and it doesn't handle IEEE-754 exceptions or denorms.  So we
emulate instructions in a few cases.  The SPARC FP decoder is
borrowed from my functional simulator, and the generic soft FP
code is from SoftFloat, courtesy John Hauser.
16 files changed:
kern/arch/sparc/Makefrag
kern/arch/sparc/arch.h
kern/arch/sparc/env.c
kern/arch/sparc/fpu.c [new file with mode: 0644]
kern/arch/sparc/frontend.c
kern/arch/sparc/softfloat-macros.h [new file with mode: 0644]
kern/arch/sparc/softfloat-specialize.h [new file with mode: 0644]
kern/arch/sparc/softfloat.c [new file with mode: 0644]
kern/arch/sparc/softfloat.h [new file with mode: 0644]
kern/arch/sparc/sparcfpu.c [new file with mode: 0644]
kern/arch/sparc/sparcfpu.h [new file with mode: 0644]
kern/arch/sparc/trap.c
kern/arch/sparc/trap.h
kern/arch/sparc/trap_table.S
kern/include/env.h
kern/src/manager.c