Re: FPU emulation incorrect for 68LC040?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jul 21, 2010 at 22:22, Mattias Engdegård <mattiase@xxxxxxxxxxxx> wrote:
Does anyone know whether a 68LC040 alters the address register in
postincrement/predecrement modes when it calculates the effective address
for an FP instruction? The FPU emulation in the kernel seems to assume that
it doesn't, but that doesn't really make sense.

If the 'LC040 does increment a0 in fadd.d (a0)+,fp0, say, then the Linux FPU
emulation is quite broken, at least in 2.6.34. If not, then I have
misunderstood how the hardware works.

As the 'LC040 doesn't implement FPU instructions, I'd expect it to
just generate an
exception when the "fadd.d (a0)+,fp0" is encountered. I.e. not do anything else,
like postincrementing a0.

I'm writing a 68040/68LC040 simulator and unfortunately do not have a real
'LC040 to do experiments on. If someone with actual hardware could help me,
I'd be most grateful.

Sorry, only a full '040 here.

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Video for Linux]     [Yosemite News]     [Linux S/390]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux