MicroVAX2, rtVAX1000: Avoid non-existent severe machine check exception. As per Bob Supnik. Fix #199

This commit is contained in:
Mark Pizzolato 2015-03-30 10:37:41 -07:00
parent 5e556cc70a
commit 478ff3d453

View file

@ -904,12 +904,11 @@ if (p1 & 0x80) /* mref? set v/p */
p1 = p1 + mchk_ref; p1 = p1 + mchk_ref;
p2 = mchk_va + 4; /* save vap */ p2 = mchk_va + 4; /* save vap */
st = 0; st = 0;
cc = intexc (SCB_MCHK, cc, 0, IE_EXC); /* take normal exception */
if (p1 & 0x80) { /* mref? */ if (p1 & 0x80) { /* mref? */
cc = intexc (SCB_MCHK, cc, 0, IE_EXC); /* take normal exception */
if (!(ka_mser & MSER_CQPE) && !(ka_mser & MSER_CLPE)) if (!(ka_mser & MSER_CQPE) && !(ka_mser & MSER_CLPE))
ka_mser |= MSER_NXM; ka_mser |= MSER_NXM;
} }
else cc = intexc (SCB_MCHK, cc, 0, IE_SVE); /* take severe exception */
acc = ACC_MASK (KERN); /* in kernel mode */ acc = ACC_MASK (KERN); /* in kernel mode */
in_ie = 1; in_ie = 1;
SP = SP - 16; /* push 4 words */ SP = SP - 16; /* push 4 words */