Subject: Re: FP emulation patch available

From: "Kevin D. Kissell" <[email-masked]>
Date: Sun, 12 Mar 2000 14:03:35 +0100

>My DS 5000/133 (R3000A) with FPU disabled and FPU emulation shows:
> Illegal instruction 00000034 at 801ce924, ...
>
>System.map shows:
> 801ce920 b dsemul_insns
> 801ce928 b dsemul_cpc
>
>Looks like your trick in mips_dsemul() doesn't work too well for ISA-I CPUs. Do
>you have an idea for an alternative?

I have come up with a slightly-less-pretty hack that uses the
Load Address Error trap instead of the Trap instruction to force
kernel entry in the delay slot emulator. It seems just as functional
as the previous version (i.e. operational but "paranoia" finds an
exponentiation problem), and is currently being tortured with crashme
to see if it holds up under corrupted instruction streams and corrupted
process states.  I attach a pseudo-patch (cvs diff -c output) for the changes
relative to the version obtained by applying the previous patches on the
paralogos.com server, and would appreicate verification that it does
indeed work on an R3K.  If it does, I'll check it into the MIPS repository
and it will be included in the next web distribution (and maybe our
CD-ROMS).

My apologies to those of you whose mailers can't handle
attachments.

            Regards,

            Kevin K.

---

From: Harald Koerfgen <[email-masked]>
Date: Sun, 12 Mar 2000 22:23:34 +0100 (MET)

Hi Kevin,

> and it will be included in the next web distribution (and maybe our

After some minor patches it works fine on an R3000A (tested on a DECstation
5000/133 with 2.3.47) but my Mobilon (R3912) still bombs out horribly.
Unfortunately there is no fully functional serial driver for the R3912 yet so
all I am able to tell is that this box crashes so badly that even the CPU
internal LCD controller is going wild.

Either there are more differences between an R3000 and an R3900 core as I am
aware of (quite likely), or this may have something to do with the fact that the
R3912 definately has no FPU.

Kevin, please forgive me this question, but has the Linux integration of the FPU
emulation code been tested on MIPS CPUs without FPU?

-- 
Regards,
Harald