arch-riscv: Fix WFI for O3 CPU
This commit: https://gem5-review.googlesource.com/c/public/gem5/+/61511 introduced a bug where the O3 CPU hangs. This is because WFI must be tagged as `IsNonSpeculative`, `IsQuiesce`, and `IsSerializeAfter` to function correctly with O3 CPUs. Change-Id: I8b6cb049710d05f37f89a9ce22acc604112bc445 Issue-on: https://gem5.atlassian.net/browse/GEM5-1323 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/70657 Maintainer: Jason Lowe-Power <power.jg@gmail.com> Reviewed-by: Roger Chang <rogerycchang@google.com> Reviewed-by: Jui-min Lee <fcrh@google.com> Reviewed-by: Jason Lowe-Power <power.jg@gmail.com> Tested-by: kokoro <noreply+kokoro@google.com>
This commit is contained in:
committed by
Bobby Bruce
parent
aff1ddb196
commit
bc63da39dc
@@ -2278,7 +2278,8 @@ decode QUADRANT default Unknown::unknown() {
|
||||
&& xc->readMiscReg(MISCREG_NMIP) == 0) {
|
||||
tc->quiesce();
|
||||
}
|
||||
}}, No_OpClass);
|
||||
}}, IsNonSpeculative, IsQuiesce,
|
||||
IsSerializeAfter, No_OpClass);
|
||||
}
|
||||
0x9: sfence_vma({{
|
||||
STATUS status = xc->readMiscReg(MISCREG_STATUS);
|
||||
|
||||
Reference in New Issue
Block a user