mirror of
https://github.com/open-simh/simh.git
synced 2026-05-04 15:16:06 +00:00
All VAX: Fix REI check when compatibilty mode. From Bob Supnik
The rule check on the PSL was incomplete. DV, FU, IV must all be zero, and they weren't checked at all. VAX Diagnostic EVKAE now runs to completion.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
/* vax_cpu1.c: VAX complex instructions
|
||||
|
||||
Copyright (c) 1998-2012, Robert M Supnik
|
||||
Copyright (c) 1998-2016, Robert M Supnik
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the "Software"),
|
||||
@@ -23,6 +23,10 @@
|
||||
used in advertising or otherwise to promote the sale, use or other dealings
|
||||
in this Software without prior written authorization from Robert M Supnik.
|
||||
|
||||
14-Jul-16 RMS Corrected REI rule 9
|
||||
21-Jun-16 RMS Removed reserved check on SIRR (Mark Pizzolato)
|
||||
18-Feb-16 RMS Changed variables in MxPR to unsigned
|
||||
29-Mar-15 RMS Added model-specific IPR max
|
||||
15-Mar-12 RMS Fixed potential integer overflow in LDPCTX (Mark Pizzolato)
|
||||
25-Nov-11 RMS Added VEC_QBUS test in interrupt handler
|
||||
23-Mar-11 RMS Revised idle design (Mark Pizzolato)
|
||||
@@ -1193,7 +1197,7 @@ Rule SRM formulation Comment
|
||||
6 tmp<25:24> LEQ tmp<23:22> tmp<cur_mode> LEQ tmp<prv_mode>
|
||||
7 tmp<20:16> LEQ PSL<20:16> tmp<ipl> LEQ PSL<ipl>
|
||||
8 tmp<31,29:28,21,15:8> = 0 tmp<mbz> = 0
|
||||
9 tmp<31> = 1 => tmp<cur_mode> = 3, tmp<prv_mode> = 3>, tmp<fpd,is,ipl> = 0
|
||||
9 tmp<31> = 1 => tmp<cur_mode> = 3, tmp<prv_mode> = 3>, tmp<fpd,is,ipl,dv,fu,iv> = 0
|
||||
*/
|
||||
|
||||
int32 op_rei (int32 acc)
|
||||
@@ -1545,7 +1549,7 @@ return cc;
|
||||
|
||||
int32 op_mfpr (int32 *opnd)
|
||||
{
|
||||
int32 prn = opnd[0];
|
||||
uint32 prn = (uint32)opnd[0];
|
||||
int32 val;
|
||||
|
||||
if (PSL & PSL_CUR) /* must be kernel */
|
||||
|
||||
Reference in New Issue
Block a user