summaryrefslogtreecommitdiff
path: root/src/mem/ruby/slicc_interface/AbstractController.cc
diff options
context:
space:
mode:
authorNilay Vaish <nilay@cs.wisc.edu>2013-12-20 20:34:04 -0600
committerNilay Vaish <nilay@cs.wisc.edu>2013-12-20 20:34:04 -0600
commitfc53f9ffcc880a5429fb41a881bc095bf200e4a4 (patch)
tree398d012bd772b37673e3046aad5ca3d48e872ec4 /src/mem/ruby/slicc_interface/AbstractController.cc
parent30b259a31eb8e2b4dc5aaef2705ee3896a457062 (diff)
downloadgem5-fc53f9ffcc880a5429fb41a881bc095bf200e4a4.tar.xz
ruby: slicc: replace max_in_port_rank with number of inports
This patch replaces max_in_port_rank with the number of inports. The use of max_in_port_rank was causing spurious re-builds and incorrect initialization of variables in ruby related regression tests. This was due to the variable value being used across threads while compiling when it was not meant to be. Since the number of inports is state machine specific value, this problem should get solved.
Diffstat (limited to 'src/mem/ruby/slicc_interface/AbstractController.cc')
-rw-r--r--src/mem/ruby/slicc_interface/AbstractController.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/mem/ruby/slicc_interface/AbstractController.cc b/src/mem/ruby/slicc_interface/AbstractController.cc
index 2e4109c01..26cf91e9f 100644
--- a/src/mem/ruby/slicc_interface/AbstractController.cc
+++ b/src/mem/ruby/slicc_interface/AbstractController.cc
@@ -104,10 +104,10 @@ AbstractController::stallBuffer(MessageBuffer* buf, Address addr)
{
if (m_waiting_buffers.count(addr) == 0) {
MsgVecType* msgVec = new MsgVecType;
- msgVec->resize(m_max_in_port_rank, NULL);
+ msgVec->resize(m_in_ports, NULL);
m_waiting_buffers[addr] = msgVec;
}
- (*(m_waiting_buffers[addr]))[m_cur_in_port_rank] = buf;
+ (*(m_waiting_buffers[addr]))[m_cur_in_port] = buf;
}
void
@@ -118,7 +118,7 @@ AbstractController::wakeUpBuffers(Address addr)
// Wake up all possible lower rank (i.e. lower priority) buffers that could
// be waiting on this message.
//
- for (int in_port_rank = m_cur_in_port_rank - 1;
+ for (int in_port_rank = m_cur_in_port - 1;
in_port_rank >= 0;
in_port_rank--) {
if ((*(m_waiting_buffers[addr]))[in_port_rank] != NULL) {
@@ -138,7 +138,7 @@ AbstractController::wakeUpAllBuffers(Address addr)
// Wake up all possible lower rank (i.e. lower priority) buffers that could
// be waiting on this message.
//
- for (int in_port_rank = m_max_in_port_rank - 1;
+ for (int in_port_rank = m_in_ports - 1;
in_port_rank >= 0;
in_port_rank--) {
if ((*(m_waiting_buffers[addr]))[in_port_rank] != NULL) {