diff --git a/src/arch/alpha/isa/decoder.isa b/src/arch/alpha/isa/decoder.isa index 584d64a3da..f5483d9c0c 100644 --- a/src/arch/alpha/isa/decoder.isa +++ b/src/arch/alpha/isa/decoder.isa @@ -762,7 +762,7 @@ decode OPCODE default Unknown::unknown() { 1: hw_mtpr({{ int miscRegIndex = (ipr_index < NumInternalProcRegs) ? IprToMiscRegIndex[ipr_index] : -1; - if(miscRegIndex < 0 || !IprIsWritable(miscRegIndex) + if(miscRegIndex < 0 || !IprIsWritable(miscRegIndex) || miscRegIndex >= NumInternalProcRegs) fault = new UnimplementedOpcodeFault; else