summaryrefslogtreecommitdiff
path: root/src/mem/ruby/system
diff options
context:
space:
mode:
Diffstat (limited to 'src/mem/ruby/system')
-rw-r--r--src/mem/ruby/system/CacheMemory.cc2
-rw-r--r--src/mem/ruby/system/PerfectCacheMemory.hh4
-rw-r--r--src/mem/ruby/system/Sequencer.cc29
3 files changed, 16 insertions, 19 deletions
diff --git a/src/mem/ruby/system/CacheMemory.cc b/src/mem/ruby/system/CacheMemory.cc
index 87baebd0c..e9d0d8851 100644
--- a/src/mem/ruby/system/CacheMemory.cc
+++ b/src/mem/ruby/system/CacheMemory.cc
@@ -282,7 +282,7 @@ CacheMemory::allocate(const Address& address, AbstractCacheEntry* entry)
return;
}
}
- ERROR_MSG("Allocate didn't find an available entry");
+ panic("Allocate didn't find an available entry");
}
void
diff --git a/src/mem/ruby/system/PerfectCacheMemory.hh b/src/mem/ruby/system/PerfectCacheMemory.hh
index 823dd7071..4b81cc790 100644
--- a/src/mem/ruby/system/PerfectCacheMemory.hh
+++ b/src/mem/ruby/system/PerfectCacheMemory.hh
@@ -123,7 +123,7 @@ inline bool
PerfectCacheMemory<ENTRY>::tryCacheAccess(const CacheMsg& msg,
bool& block_stc, ENTRY*& entry)
{
- ERROR_MSG("not implemented");
+ panic("not implemented");
}
// tests to see if an address is present in the cache
@@ -166,7 +166,7 @@ template<class ENTRY>
inline Address
PerfectCacheMemory<ENTRY>::cacheProbe(const Address& newAddress) const
{
- ERROR_MSG("cacheProbe called in perfect cache");
+ panic("cacheProbe called in perfect cache");
}
// looks an address up in the cache
diff --git a/src/mem/ruby/system/Sequencer.cc b/src/mem/ruby/system/Sequencer.cc
index dd30835da..1a0f8a66a 100644
--- a/src/mem/ruby/system/Sequencer.cc
+++ b/src/mem/ruby/system/Sequencer.cc
@@ -27,6 +27,7 @@
*/
#include "base/str.hh"
+#include "base/misc.hh"
#include "cpu/testers/rubytest/RubyTester.hh"
#include "mem/protocol/CacheMsg.hh"
#include "mem/protocol/Protocol.hh"
@@ -99,14 +100,12 @@ Sequencer::wakeup()
if (current_time - request->issue_time < m_deadlock_threshold)
continue;
- WARN_MSG("Possible Deadlock detected");
- WARN_EXPR(m_version);
- WARN_EXPR(request->ruby_request.paddr);
- WARN_EXPR(m_readRequestTable.size());
- WARN_EXPR(current_time);
- WARN_EXPR(request->issue_time);
- WARN_EXPR(current_time - request->issue_time);
- ERROR_MSG("Aborting");
+ panic("Possible Deadlock detected. Aborting!\n"
+ "version: %d request.paddr: %d m_readRequestTable: %d "
+ "current time: %u issue_time: %d difference: %d\n", m_version,
+ request->ruby_request.paddr, m_readRequestTable.size(),
+ current_time, request->issue_time,
+ current_time - request->issue_time);
}
RequestTable::iterator write = m_writeRequestTable.begin();
@@ -116,14 +115,12 @@ Sequencer::wakeup()
if (current_time - request->issue_time < m_deadlock_threshold)
continue;
- WARN_MSG("Possible Deadlock detected");
- WARN_EXPR(m_version);
- WARN_EXPR(request->ruby_request.paddr);
- WARN_EXPR(current_time);
- WARN_EXPR(request->issue_time);
- WARN_EXPR(current_time - request->issue_time);
- WARN_EXPR(m_writeRequestTable.size());
- ERROR_MSG("Aborting");
+ panic("Possible Deadlock detected. Aborting!\n"
+ "version: %d request.paddr: %d m_writeRequestTable: %d "
+ "current time: %u issue_time: %d difference: %d\n", m_version,
+ request->ruby_request.paddr, m_writeRequestTable.size(),
+ current_time, request->issue_time,
+ current_time - request->issue_time);
}
total_outstanding += m_writeRequestTable.size();