The CPSR register should only be used for collecting the itstate when the
Review Request #344 - Created Dec. 6, 2010 and discarded
| Information | |
|---|---|
| Ali Saidi | |
| gem5 | |
| Reviewers | |
| Default | |
| ali, gblack, nate, stever | |
The CPSR register should only be used for collecting the itstate when the pipeline is flushed (e.g. init/reset/control flushes).
Posted (Dec. 8, 2010, 3:39 p.m.)
The first line of the commit message needs to be the summary line. I really disagree with this change. It's a performance optimization that's really only useful in one ISA, and it's likely going to impact the performance of all ISAs, possibly to the point of being a wash or actually slowing things down with ARM. Have you measured what the performance impact is in ARM and, say, X86_SE?
-
src/arch/arm/predecoder.hh (Diff revision 1) -
small d
-
src/cpu/simple/base.cc (Diff revision 1) -
The braces are wrong. Have you tried this with x86? X86_FS? This looks like it will reset the predecoder constantly because the pcState is advanced but thread->pcState is not. I don't see how this is the right thing to do if it's not assumed that predecoder state (ITSTATE) needs to be updated when branching.
