[LMH] e1 tag diag
nyef@lisphacker.com
nyef@lisphacker.com
Fri, 21 Oct 2005 15:14:27 +0100
Brad Parker writes:
> Hi -
>
> Both meroko and nevermore pass the E1 tag diag (#7) but both report a
> bad condition code for condition 17. I thought it was an ALU bug
> in meroko but I noticed nevermore does that same thing.
>
> I looked at the microcode and I am wondering if it's a bug int he microcode
> which no one noticed.
>
> Below is a little history trace when the problem occurs. The code at
> 10131 and 10132 make sense. It sets the tag memory address in the
> read at 10132.
>
> The code at 10134 & 10135 does not make sense. It does the imod-low setting
> with (L=5 C=10) but then it does an alu instruction. This doesn't seem
> right at all. The (L=5 C=10) field is for a jump.
The condition field (BYTE-FIELD 5 10) is live on all instructions other than
DISPATCH instructions. But you're right that it doesn't make sense. There's
no direct reference to this code, but my disassembly shows:
L-10129 ((M-5) LDB (BYTE-FIELD 5 28) M-29 M-2)
L-10130 ((M-5) DPB (BYTE-FIELD 5 25) M-5 M-2)
L-10131 ((M-0 IMOD-LOW) DPB (BYTE-FIELD 5 10) M-29 M-2)
L-10132 (JUMP-XCT-NEXT L-9593 IF-IN-CLASS M-5)
L-10133 ((M-31) SETA A-64)
L-10134 ((M-0 IMOD-LOW) DPB (BYTE-FIELD 5 10) M-29 M-2)
L-10135 ((M-31) SETA A-64)
L-10136 (JUMP-XCT-NEXT L-9593)
L-10137 ((M-31) SETZ)
It would almost make sense if there were an ABJ on L-10135, but there isn't.
And the next bit of code is L-10138, which doesn't have a direct reference
in the code, but looks like it does a write to tag classifier memory. I do
see both addresses in A-memory (at #x27e and #x274), though.
I think that passing this test was a no-brainer for both of us, as we'd have
put all the machinery in back at the beginning (L-348 to L-364 in the STBM
PROM contains a loop that tests the tag classifier memory and this has to
pass long before anything appears in the SIB framebuffer).
> I suspect that the diag passed on the real hardware and no one ever noticed
> this bug.
That may well be the case. If we get Lisp to run, we'll probably just muffle
the diagnostics on that condition.
> [this is more for Daniel & Alastair and anyone else who's hacking on meroko
> and nevermore]
>
> -brad
--Alastair Bridgewater