O3: Fix an issue with a load & branch instruction and mem dep squashing
authorGeoffrey Blake <geoffrey.blake@arm.com>
Fri, 13 May 2011 22:27:00 +0000 (17:27 -0500)
committerGeoffrey Blake <geoffrey.blake@arm.com>
Fri, 13 May 2011 22:27:00 +0000 (17:27 -0500)
commitb79650ceaaabb87f9bfe145663e2bfa3281ed7df
tree0ae613ca1d1b232300b057531ceb333074fb2845
parentf7b3900c133cd8661588a03383a8c1511f8a89ff
O3: Fix an issue with a load & branch instruction and mem dep squashing

Instructions that load an address and are control instructions can
execute down the wrong path if they were predicted correctly and then
instructions following them are squashed. If an instruction is a
memory and control op use the predicted address for the next PC instead
of just advancing the PC. Without this change NPC is used for the next
instruction, but predPC is used to verify that the branch was successful
so the wrong path is silently executed.
src/cpu/o3/iew_impl.hh