Subject: Re: MMU faults while trying to install 1.5
To: port-amiga <port-amiga@netbsd.org>
From: Ignatios Souvatzis <is@beverly.kleinbus.org>
List: port-amiga
Date: 01/09/2001 22:54:37
On Tue, Jan 09, 2001 at 09:41:53PM +0100, Frank Wille wrote:
> I had this bug though, one year ago, while porting Quake for
> AmigaOS/68k with the vbcc compiler. It happened on both, 060 Rev.1
> and 060 Rev.5 CPUs (CSPPC in both cases), although Motorola stated
> that only Rev.1 CPUs could be affected. Changing bit 5 in the PCR
> fixed it.

Ok... so...

yes, it is what I remembered...
no, is not NetBSDs problem. NetBSD has this bit switched on (that is,
one of the bypass paths switched off) already. Look at identifycpu() in 

no, it is NOT all forwarding paths in the CPU (as the 68060fix author claims)
that is switched off, but only one of the three that occur at the same time in
the problematic code sequence, which is enough to fix the problem. At least
that is what Motorola says.

Btw: I can tell you why the compiler does something like this... sometimes.
...all registers are used already, and it would need to save and restore a
different register. one instruction slower than only save/restore the value
we want to reuse (if the variable is in the cache already).
anyway to use a register.