arm: Don't speculatively access most miscregisters.
Speculative exeuction can cause panics in detailed execution mode that shouldn't happen.
This commit is contained in:
parent
d6f1c6ce89
commit
8b7724d04c
2 changed files with 2 additions and 2 deletions
|
@ -219,7 +219,7 @@ let {{
|
||||||
msrBankedRegIop = InstObjParams("msr", "MsrBankedReg", "MsrRegOp",
|
msrBankedRegIop = InstObjParams("msr", "MsrBankedReg", "MsrRegOp",
|
||||||
{ "code": msrBankedRegCode,
|
{ "code": msrBankedRegCode,
|
||||||
"predicate_test": predicateTest },
|
"predicate_test": predicateTest },
|
||||||
["IsSerializeAfter"])
|
["IsSerializeAfter", "IsNonSpeculative"])
|
||||||
header_output += MsrBankedRegDeclare.subst(msrBankedRegIop)
|
header_output += MsrBankedRegDeclare.subst(msrBankedRegIop)
|
||||||
decoder_output += MsrBankedRegConstructor.subst(msrBankedRegIop)
|
decoder_output += MsrBankedRegConstructor.subst(msrBankedRegIop)
|
||||||
exec_output += PredOpExecute.subst(msrBankedRegIop)
|
exec_output += PredOpExecute.subst(msrBankedRegIop)
|
||||||
|
|
|
@ -758,7 +758,7 @@ bitset<NUM_MISCREG_INFOS> miscRegInfo[NUM_MISCREGS] = {
|
||||||
// MISCREG_CNTP_CVAL
|
// MISCREG_CNTP_CVAL
|
||||||
bitset<NUM_MISCREG_INFOS>(string("0000000000000001001")),
|
bitset<NUM_MISCREG_INFOS>(string("0000000000000001001")),
|
||||||
// MISCREG_CNTP_CVAL_NS
|
// MISCREG_CNTP_CVAL_NS
|
||||||
bitset<NUM_MISCREG_INFOS>(string("1100110011111110000")),
|
bitset<NUM_MISCREG_INFOS>(string("1100110011111110001")),
|
||||||
// MISCREG_CNTP_CVAL_S
|
// MISCREG_CNTP_CVAL_S
|
||||||
bitset<NUM_MISCREG_INFOS>(string("0011001100111110000")),
|
bitset<NUM_MISCREG_INFOS>(string("0011001100111110000")),
|
||||||
// MISCREG_CNTV_CVAL
|
// MISCREG_CNTV_CVAL
|
||||||
|
|
Loading…
Reference in a new issue