From: Jason Lowe-Power Date: Thu, 27 Jul 2017 16:50:06 +0000 (-0500) Subject: ruby: Make sure addresses print in hex X-Git-Tag: v19.0.0.0~2207 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9f37f28582bd7303a054af52d86aeff466b54637;p=gem5.git ruby: Make sure addresses print in hex Added fix in the invalid transition panic and various places in ruby random tester. Change-Id: I879264da58369faf7de49d1a28b2da1cb935ef0a Signed-off-by: Jason Lowe-Power Reviewed-on: https://gem5-review.googlesource.com/8941 Reviewed-by: Nikos Nikoleris --- diff --git a/src/cpu/testers/rubytest/Check.cc b/src/cpu/testers/rubytest/Check.cc index e68196c65..2ce79e72d 100644 --- a/src/cpu/testers/rubytest/Check.cc +++ b/src/cpu/testers/rubytest/Check.cc @@ -209,7 +209,7 @@ Check::initiateAction() DPRINTF(RubyTest, "status before action update: %s\n", (TesterStatus_to_string(m_status)).c_str()); m_status = TesterStatus_Action_Pending; - DPRINTF(RubyTest, "Check %s, State=Action_Pending\n", m_address); + DPRINTF(RubyTest, "Check %#x, State=Action_Pending\n", m_address); } else { // If the packet did not issue, must delete // Note: No need to delete the data, the packet destructor @@ -263,7 +263,7 @@ Check::initiateCheck() DPRINTF(RubyTest, "status before check update: %s\n", TesterStatus_to_string(m_status).c_str()); m_status = TesterStatus_Check_Pending; - DPRINTF(RubyTest, "Check %s, State=Check_Pending\n", m_address); + DPRINTF(RubyTest, "Check %#x, State=Check_Pending\n", m_address); } else { // If the packet did not issue, must delete // Note: No need to delete the data, the packet destructor @@ -301,10 +301,10 @@ Check::performCallback(NodeID proc, SubBlock* data, Cycles curTime) m_store_count++; if (m_store_count == CHECK_SIZE) { m_status = TesterStatus_Ready; - DPRINTF(RubyTest, "Check %s, State=Ready\n", m_address); + DPRINTF(RubyTest, "Check %#x, State=Ready\n", m_address); } else { m_status = TesterStatus_Idle; - DPRINTF(RubyTest, "Check %s, State=Idle store_count: %d\n", + DPRINTF(RubyTest, "Check %#x, State=Idle store_count: %d\n", m_address, m_store_count); } DPRINTF(RubyTest, "Action callback return data now %d\n", @@ -314,7 +314,7 @@ Check::performCallback(NodeID proc, SubBlock* data, Cycles curTime) // Perform load/check for (int byte_number=0; byte_numbergetByte(byte_number)) { - panic("Action/check failure: proc: %d address: %s data: %s " + panic("Action/check failure: proc: %d address: %#x data: %s " "byte_number: %d m_value+byte_number: %d byte: %d %s" "Time: %d\n", proc, address, data, byte_number, @@ -329,7 +329,7 @@ Check::performCallback(NodeID proc, SubBlock* data, Cycles curTime) m_tester_ptr->incrementCheckCompletions(); m_status = TesterStatus_Idle; - DPRINTF(RubyTest, "Check %s, State=Idle\n", m_address); + DPRINTF(RubyTest, "Check %#x, State=Idle\n", m_address); pickValue(); } else { @@ -349,7 +349,7 @@ Check::changeAddress(Addr address) assert(m_status == TesterStatus_Idle || m_status == TesterStatus_Ready); m_status = TesterStatus_Idle; m_address = address; - DPRINTF(RubyTest, "Check %s, State=Idle\n", m_address); + DPRINTF(RubyTest, "Check %#x, State=Idle\n", m_address); m_store_count = 0; } @@ -367,7 +367,7 @@ Check::pickInitiatingNode() assert(m_status == TesterStatus_Idle || m_status == TesterStatus_Ready); m_status = TesterStatus_Idle; m_initiatingNode = (random_mt.random(0, m_num_writers - 1)); - DPRINTF(RubyTest, "Check %s, State=Idle, picked initiating node %d\n", + DPRINTF(RubyTest, "Check %#x, State=Idle, picked initiating node %d\n", m_address, m_initiatingNode); m_store_count = 0; } diff --git a/src/mem/slicc/symbols/StateMachine.py b/src/mem/slicc/symbols/StateMachine.py index 3f4e43a8b..e63f6fc60 100644 --- a/src/mem/slicc/symbols/StateMachine.py +++ b/src/mem/slicc/symbols/StateMachine.py @@ -1400,7 +1400,7 @@ if (!checkResourceAvailable(%s_RequestType_%s, addr)) { code(''' default: panic("Invalid transition\\n" - "%s time: %d addr: %s event: %s state: %s\\n", + "%s time: %d addr: %#x event: %s state: %s\\n", name(), curCycle(), addr, event, state); }