Review Board 2.0.15


X86: Don't read in dest regs if all bits are replaced.

Review Request #464 - Created Feb. 2, 2011 and submitted - Latest diff uploaded

Information
Gabe Black
gem5
Reviewers
Default
ali, gblack, nate, stever
X86: Don't read in dest regs if all bits are replaced.

In x86, 32 and 64 bit writes to registers in when registers appear to be 32 or
64 bits wide overwrite all bits of the destination register. This change
removes false dependencies in these cases where the previous value of a
register doesn't need to be read to write a new value. New versions of most
microops are created that have a "Big" suffix which simply overwrite their
destination, and the right version to use is selected during microop
allocation based on the selected data size.

This does not change the performance of the O3 CPU model significantly, I
assume because there are other false dependencies from the condition code bits
in the flags register.