diff --git a/src_Core/RISCY_OOO/procs/lib/Decode.bsv b/src_Core/RISCY_OOO/procs/lib/Decode.bsv index 603e54b..9b75433 100644 --- a/src_Core/RISCY_OOO/procs/lib/Decode.bsv +++ b/src_Core/RISCY_OOO/procs/lib/Decode.bsv @@ -1124,13 +1124,6 @@ function DecodeResult decode(Instruction inst, Bool cap_mode); dInst.capFunc = CapInspect (SetEqualExact); end f7_cap_CCopyType: begin - dInst.capChecks.check_enable = True; - dInst.capChecks.check_authority_src = Src2; - dInst.capChecks.check_low_src = Src1Type; - dInst.capChecks.check_high_src = Src1Type; - dInst.capChecks.check_inclusive = False; - dInst.capChecks.ccopytype_bypass = True; - dInst.iType = Cap; regs.dst = Valid(tagged Gpr rd); regs.src1 = Valid(tagged Gpr rs2); diff --git a/src_Core/RISCY_OOO/procs/lib/Exec.bsv b/src_Core/RISCY_OOO/procs/lib/Exec.bsv index 99c01b9..2009adf 100644 --- a/src_Core/RISCY_OOO/procs/lib/Exec.bsv +++ b/src_Core/RISCY_OOO/procs/lib/Exec.bsv @@ -440,10 +440,6 @@ function ExecResult basicExec(DecodedInst dInst, CapPipe rVal1, CapPipe rVal2, C capException = Invalid; boundsCheck = Invalid; end - if (dInst.capChecks.ccopytype_bypass && isValidCap(rVal2) && getKind(rVal2) == UNSEALED && (getKind(rVal1) matches tagged SEALED_WITH_TYPE .t ? !validAsType(rVal2, zeroExtend(t)) : True)) begin - capException = Invalid; - boundsCheck = Invalid; - end cf.nextPc = setKind(cf.nextPc, UNSEALED); cf.mispredict = cf.nextPc != ppc;