Sequencer.cc (7453:1a5db3dd0f62) | Sequencer.cc (7454:3a3e8e8cce1b) |
---|---|
1/* 2 * Copyright (c) 1999-2008 Mark D. Hill and David A. Wood 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 78 unchanged lines hidden (view full) --- 87Sequencer::wakeup() 88{ 89 // Check for deadlock of any of the requests 90 Time current_time = g_eventQueue_ptr->getTime(); 91 92 // Check across all outstanding requests 93 int total_outstanding = 0; 94 | 1/* 2 * Copyright (c) 1999-2008 Mark D. Hill and David A. Wood 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 78 unchanged lines hidden (view full) --- 87Sequencer::wakeup() 88{ 89 // Check for deadlock of any of the requests 90 Time current_time = g_eventQueue_ptr->getTime(); 91 92 // Check across all outstanding requests 93 int total_outstanding = 0; 94 |
95 Vector<Address> keys = m_readRequestTable.keys(); | 95 std::vector<Address> keys = m_readRequestTable.keys(); |
96 for (int i = 0; i < keys.size(); i++) { 97 SequencerRequest* request = m_readRequestTable.lookup(keys[i]); 98 if (current_time - request->issue_time >= m_deadlock_threshold) { 99 WARN_MSG("Possible Deadlock detected"); 100 WARN_EXPR(request); 101 WARN_EXPR(m_version); 102 WARN_EXPR(request->ruby_request.paddr); 103 WARN_EXPR(keys.size()); --- 51 unchanged lines hidden (view full) --- 155{ 156#if 0 157 int total_demand = 0; 158 out << "Sequencer Stats Version " << m_version << endl; 159 out << "Current time = " << g_eventQueue_ptr->getTime() << endl; 160 out << "---------------" << endl; 161 out << "outstanding requests" << endl; 162 | 96 for (int i = 0; i < keys.size(); i++) { 97 SequencerRequest* request = m_readRequestTable.lookup(keys[i]); 98 if (current_time - request->issue_time >= m_deadlock_threshold) { 99 WARN_MSG("Possible Deadlock detected"); 100 WARN_EXPR(request); 101 WARN_EXPR(m_version); 102 WARN_EXPR(request->ruby_request.paddr); 103 WARN_EXPR(keys.size()); --- 51 unchanged lines hidden (view full) --- 155{ 156#if 0 157 int total_demand = 0; 158 out << "Sequencer Stats Version " << m_version << endl; 159 out << "Current time = " << g_eventQueue_ptr->getTime() << endl; 160 out << "---------------" << endl; 161 out << "outstanding requests" << endl; 162 |
163 Vector<Address> rkeys = m_readRequestTable.keys(); | 163 std::vector<Address> rkeys = m_readRequestTable.keys(); |
164 int read_size = rkeys.size(); 165 out << "proc " << m_version << " Read Requests = " << read_size << endl; 166 167 // print the request table 168 for (int i = 0; i < read_size; ++i) { 169 SequencerRequest *request = m_readRequestTable.lookup(rkeys[i]); 170 out << "\tRequest[ " << i << " ] = " << request->type 171 << " Address " << rkeys[i] 172 << " Posted " << request->issue_time 173 << " PF " << PrefetchBit_No << endl; 174 total_demand++; 175 } 176 | 164 int read_size = rkeys.size(); 165 out << "proc " << m_version << " Read Requests = " << read_size << endl; 166 167 // print the request table 168 for (int i = 0; i < read_size; ++i) { 169 SequencerRequest *request = m_readRequestTable.lookup(rkeys[i]); 170 out << "\tRequest[ " << i << " ] = " << request->type 171 << " Address " << rkeys[i] 172 << " Posted " << request->issue_time 173 << " PF " << PrefetchBit_No << endl; 174 total_demand++; 175 } 176 |
177 Vector<Address> wkeys = m_writeRequestTable.keys(); | 177 std::vector<Address> wkeys = m_writeRequestTable.keys(); |
178 int write_size = wkeys.size(); 179 out << "proc " << m_version << " Write Requests = " << write_size << endl; 180 181 // print the request table 182 for (int i = 0; i < write_size; ++i){ 183 CacheMsg &request = m_writeRequestTable.lookup(wkeys[i]); 184 out << "\tRequest[ " << i << " ] = " << request.getType() 185 << " Address " << wkeys[i] --- 417 unchanged lines hidden --- | 178 int write_size = wkeys.size(); 179 out << "proc " << m_version << " Write Requests = " << write_size << endl; 180 181 // print the request table 182 for (int i = 0; i < write_size; ++i){ 183 CacheMsg &request = m_writeRequestTable.lookup(wkeys[i]); 184 out << "\tRequest[ " << i << " ] = " << request.getType() 185 << " Address " << wkeys[i] --- 417 unchanged lines hidden --- |