> Pentium Pro 200, the emulator achieves about 1.5-2.5 MIPS (Pentium II
> 400 achieves about 10 MIPS). Once Linux/390 was up with access to the
> Internet, I compiled MUX 2.1 on it -- something which took about 12
> hours.

Ouch 8)

> and then either the compiler or one of the emulation layers is
> performing the operation +(a,b) --> a+a instead of a+b.
>
> It's not a hugely critical request as I don't expect anyone to host MUX
> 2.1 on an hercules-emulated Linux/390. Still, bugs are bugs.

gdb is your friend.

Stick a breakpoint just before the misbehaving code and you can look at the
values before during and after and see what is going on.

If it appears it might be a compiler bug another useful trick is to stick
something like

        static void irrelevant(void)
        {
                static volatile int x;
                x++;
        }

and call irrelevant() between each stage of the misbehaving code - this
forces the compiler to discard temporaries and other stuff. If it changes the
behaviour you have a good candiate for suspicion.

Alan (who is chasing what looks like an FPU bug in phoon still)

Reply via email to