Review Board 2.0.15


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.
  1. I think I have a better/cleaner fix for this now. Which I'll get Ali to push for consideration in place of this one.