changeset e5f14b00c0ae in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=e5f14b00c0ae
description:
        O3: At the end of an instruction, force fetchAddr to something sensible.

        It's possible (though until now very unlikely) for fetchAddr to get out 
of
        sync with the actual PC of the current instruction. This change 
forcefull
        resets fetchAddr at the end of every instruction.

diffstat:

 src/cpu/o3/fetch_impl.hh |  2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diffs (12 lines):

diff -r 22a15643e2ca -r e5f14b00c0ae src/cpu/o3/fetch_impl.hh
--- a/src/cpu/o3/fetch_impl.hh  Tue Aug 09 11:33:12 2011 -0700
+++ b/src/cpu/o3/fetch_impl.hh  Sat Aug 13 13:36:37 2011 -0700
@@ -1342,6 +1342,8 @@
             thisPC = nextPC;
 
             if (newMacro) {
+                fetchAddr = thisPC.instAddr() & BaseCPU::PCMask;
+                blkOffset = (fetchAddr - cacheDataPC[tid]) / instSize;
                 pcOffset = 0;
                 curMacroop = NULL;
             }
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to