Comments below... On Sun, Mar 21, 2010 at 10:47 PM, Brad Beckmann <brad.beckm...@amd.com> wrote: > changeset 185ad61a4117 in /z/repo/m5 > details: http://repo.m5sim.org/m5?cmd=changeset;node=185ad61a4117 > description: > ruby: Ruby support for LLSC > > diffstat: > > 4 files changed, 102 insertions(+), 20 deletions(-) > src/mem/ruby/system/CacheMemory.cc | 17 +++++++++- > src/mem/ruby/system/RubyPort.cc | 58 +++++++++++++++++++++++++++++------- > src/mem/ruby/system/SConscript | 2 + > src/mem/ruby/system/Sequencer.cc | 45 ++++++++++++++++++++++----- > > diffs (215 lines): > [...] > - type = RubyRequestType_RMW_Write; > } else { > - panic("Unsupported ruby packet type\n"); > + if (pkt->isRead()) { > + if (pkt->req->isInstFetch()) { > + type = RubyRequestType_IFETCH; > + } else { > + type = RubyRequestType_LD; > + } > + } else if (pkt->isWrite()) { > + type = RubyRequestType_ST; > + } else if (pkt->isReadWrite()) { > + // > + // Fix me. Just because the packet is a read/write request does > not > + // necessary mean it is a read-modify-write atomic operation. > + // > + type = RubyRequestType_RMW_Write; > + } else { > + panic("Unsupported ruby packet type\n"); > + } > }
Did you miss my comment about isReadWrite() on this patch? Or did you decide not to do anything since it's no worse than before? Seems like it's at least worth adding a comment for posterity, but better yet to fix it now if it needs fixing. > + > + g_system_ptr->getProfiler()->profileTransition("Seq", > + m_version, > + Address(request.paddr), > + "", > + "SC Fail", > + "", > + > RubyRequestType_to_string(request.type)); > + I'm still not thrilled with the line-count explosion your "parameter per line" formatting gives, especially when we're dedicating entire lines to parameters like '""'. As far as parsing the call, there are enough args to this function that it's opaque to me what it's supposed to be doing regardless of how many lines it takes. Steve _______________________________________________ m5-dev mailing list m5-dev@m5sim.org http://m5sim.org/mailman/listinfo/m5-dev