changeset 4a14ff47b8e3 in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=4a14ff47b8e3
description:
        O3 IEW: Make incrWb and decrWb clearer

        Move the increment/decrement of wbOutstanding outside of the comparison
        in incrWb and decrWb in the IEW. This also fixes a compiler bug with gcc
        4.4.7, which incorrectly optimizes "-- ==" as "-=".

diffstat:

 src/cpu/o3/iew.hh |  6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diffs (24 lines):

diff -r 736909f5c13b -r 4a14ff47b8e3 src/cpu/o3/iew.hh
--- a/src/cpu/o3/iew.hh Thu Jan 17 13:10:12 2013 -0600
+++ b/src/cpu/o3/iew.hh Sat Jan 19 15:14:54 2013 -0600
@@ -213,7 +213,8 @@
 
     void incrWb(InstSeqNum &sn)
     {
-        if (++wbOutstanding == wbMax)
+        ++wbOutstanding;
+        if (wbOutstanding == wbMax)
             ableToIssue = false;
         DPRINTF(IEW, "wbOutstanding: %i [sn:%lli]\n", wbOutstanding, sn);
         assert(wbOutstanding <= wbMax);
@@ -224,8 +225,9 @@
 
     void decrWb(InstSeqNum &sn)
     {
-        if (wbOutstanding-- == wbMax)
+        if (wbOutstanding == wbMax)
             ableToIssue = true;
+        wbOutstanding--;
         DPRINTF(IEW, "wbOutstanding: %i [sn:%lli]\n", wbOutstanding, sn);
         assert(wbOutstanding >= 0);
 #ifdef DEBUG
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to