FPU software emulator for '40

This commit is contained in:
mw 1994-01-26 21:24:05 +00:00
parent ffc9ed3e31
commit 9b4fe6ffc7
10 changed files with 11580 additions and 0 deletions

1232
sys/arch/amiga/fpsp/README Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,5 @@
The source for the Motorola FPSP (Floating Point Software Package) was ported
to gas by Eric Norum at the University of Saskatchewan. It is available
by anonymous ftp from:
ftp.usask.ca /pub/software/fpsp/fpsp_gas.tar.gz

View File

@ -0,0 +1,40 @@
I got the FPSP source from the Motorola BBS and have converted it
to GNU GAS format.
The three subdirectories are:
src_asm FPSP source from the Motorola BBS.
src_as FPSP source from the Motorola BBS.
src_gas FPSP source in GNU GAS format. I did this by
running some `flex' lexical analyzers on the
src_asm files.
A big thanks goes out to Michael Hitch (osymh@gemini.oscs.montana.edu) for
solving the problem I had with some operations locking up. The problem
was that there were some branch instructions in gen_except.s that
were `word' when they should have been `long'.
I had to make a little tweak to gas version 2.1.1 to get it to assemble.
Around line 2190 of tc-m68k.c you have to change a `#if 0' to `#if 1':
=============================================================================
/* We gotta put out some float */
#if 1
if (seg (opP->con1) != SEG_BIG)
{
int_to_gen (nextword);
gen_to_words (words, baseo, (long int) outro);
for (wordp = words; baseo--; wordp++)
addword (*wordp);
break;
} /* Its BIG */
#else
if (seg (opP->con1) != big_section)
{
abort ();
}
#endif
=============================================================================
Eric Norum eric@skatter.usask.ca
Saskatchewan Accelerator Laboratory
University of Saskatchewan
Saskatoon, Canada. NeXTMail accepted.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,19 @@
| dummy FPSP entries
.text
.globl fpsp_unimp
.globl fpsp_bsun,fpsp_unfl,fpsp_operr
.globl fpsp_ovfl,fpsp_snan,fpsp_unsupp
fpsp_unimp:
fpsp_bsun:
fpsp_unfl:
fpsp_operr:
fpsp_ovfl:
fpsp_snan:
fpsp_unsupp:
pea LnoFPSP
jbsr _panic
LnoFPSP:
.asciz "68040 FPSP not installed"

1232
sys/arch/m68k/fpsp/README Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,5 @@
The source for the Motorola FPSP (Floating Point Software Package) was ported
to gas by Eric Norum at the University of Saskatchewan. It is available
by anonymous ftp from:
ftp.usask.ca /pub/software/fpsp/fpsp_gas.tar.gz

View File

@ -0,0 +1,40 @@
I got the FPSP source from the Motorola BBS and have converted it
to GNU GAS format.
The three subdirectories are:
src_asm FPSP source from the Motorola BBS.
src_as FPSP source from the Motorola BBS.
src_gas FPSP source in GNU GAS format. I did this by
running some `flex' lexical analyzers on the
src_asm files.
A big thanks goes out to Michael Hitch (osymh@gemini.oscs.montana.edu) for
solving the problem I had with some operations locking up. The problem
was that there were some branch instructions in gen_except.s that
were `word' when they should have been `long'.
I had to make a little tweak to gas version 2.1.1 to get it to assemble.
Around line 2190 of tc-m68k.c you have to change a `#if 0' to `#if 1':
=============================================================================
/* We gotta put out some float */
#if 1
if (seg (opP->con1) != SEG_BIG)
{
int_to_gen (nextword);
gen_to_words (words, baseo, (long int) outro);
for (wordp = words; baseo--; wordp++)
addword (*wordp);
break;
} /* Its BIG */
#else
if (seg (opP->con1) != big_section)
{
abort ();
}
#endif
=============================================================================
Eric Norum eric@skatter.usask.ca
Saskatchewan Accelerator Laboratory
University of Saskatchewan
Saskatoon, Canada. NeXTMail accepted.

4494
sys/arch/m68k/fpsp/fpsp.U Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,19 @@
| dummy FPSP entries
.text
.globl fpsp_unimp
.globl fpsp_bsun,fpsp_unfl,fpsp_operr
.globl fpsp_ovfl,fpsp_snan,fpsp_unsupp
fpsp_unimp:
fpsp_bsun:
fpsp_unfl:
fpsp_operr:
fpsp_ovfl:
fpsp_snan:
fpsp_unsupp:
pea LnoFPSP
jbsr _panic
LnoFPSP:
.asciz "68040 FPSP not installed"