Hi

I am thinking of making the O3 CPU work with Ruby. I would need to move the following lines in O3's LSQ implementation to make a single O3 CPU work with Ruby. Would this change affect the LSQ's current behavior, other than that it would start working fine with Ruby?

diff -r dee1f3ab92e4 src/cpu/o3/lsq_unit_impl.hh
--- a/src/cpu/o3/lsq_unit_impl.hh       Mon Sep 19 06:17:21 2011 -0700
+++ b/src/cpu/o3/lsq_unit_impl.hh       Tue Sep 20 07:26:30 2011 -0500
@@ -1191,10 +1191,10 @@
         DPRINTF(LSQUnit, "Receiving retry: store blocked\n");
         assert(retryPkt != NULL);

+        LSQSenderState *state =
+            dynamic_cast<LSQSenderState *>(retryPkt->senderState);
+
         if (dcachePort->sendTiming(retryPkt)) {
-            LSQSenderState *state =
-                dynamic_cast<LSQSenderState *>(retryPkt->senderState);
-
             // Don't finish the store unless this is the last packet.
             if (!TheISA::HasUnalignedMemAcc || !state->pktToSend ||
                     state->pendingPacket == retryPkt) {


Thanks
Nilay
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to