ARM: Allow conditional quiesce instructions.
Review Request #569 - Created March 11, 2011 and submitted
| Information | |
|---|---|
| Ali Saidi | |
| gem5 | |
| Reviewers | |
| Default | |
| ali, gblack, nate, stever | |
ARM: Allow conditional quiesce instructions. This patch prevents not executed conditional instructions marked as IsQuiesce from stalling the pipeline indefinitely. If the instruction is not executed the quiesceSkip psuedoinst is called which schedules a wakes up call to the fetch stage.
Posted (March 11, 2011, 10:58 a.m.)
Why are you fixing up the fact that the CPU shouldn't have quiesced instead of preventing it from doing it in the first place? If the instruction is being executed speculatively, you should mark it as non-speculative. If O3 is basing its behavior off of the instruction's flags instead of its behavior (ie. if it actually called quiesce), I'd argue it shouldn't be doing that.
-
src/arch/arm/isa/insts/misc.isa (Diff revision 1) -
This should be on the same line as the }
-
src/sim/pseudo_inst.hh (Diff revision 1) -
This isn't really a pseudo instruction at all, it's a generic call to fix up a pseudo instruction that should never have been called.
-
src/sim/pseudo_inst.cc (Diff revision 1) -
The year is wrong, unless this is an older patch.
