| 350 | |
| 351 | |
| 352 | void cHardwareTransSMT::PrintStatus(ostream& fp) |
| 353 | { |
| 354 | fp << m_organism->GetPhenotype().GetTimeUsed() << " " |
| 355 | << "THREAD: " << m_cur_thread << ", " << m_threads.GetSize() << " " |
| 356 | << "IP:(" << IP().GetMemSpace() << ", " << IP().GetPosition() << ")" << " (" << GetInstSet().GetName(IP().GetInst()) << ")" << endl; |
| 357 | |
| 358 | fp << "AX:" << Stack(STACK_AX).Top() << " " |
| 359 | << setbase(16) << "[0x" << Stack(STACK_AX).Top() << "] " << setbase(10) |
| 360 | |
| 361 | << "BX:" << Stack(STACK_BX).Top() << " " |
| 362 | << setbase(16) << "[0x" << Stack(STACK_BX).Top() << "] " << setbase(10) |
| 363 | |
| 364 | << "CX:" << Stack(STACK_CX).Top() << " " |
| 365 | << setbase(16) << "[0x" << Stack(STACK_CX).Top() << "] " << setbase(10) |
| 366 | |
| 367 | << "DX:" << Stack(STACK_DX).Top() << " " |
| 368 | << setbase(16) << "[0x" << Stack(STACK_DX).Top() << "] " << setbase(10) |
| 369 | |
| 370 | << endl; |
| 371 | |
| 372 | fp << " R-Head:(" << GetHead(nHardware::HEAD_READ).GetMemSpace() << ", " |
| 373 | << GetHead(nHardware::HEAD_READ).GetPosition() << ") " |
| 374 | << "W-Head:(" << GetHead(nHardware::HEAD_WRITE).GetMemSpace() << ", " |
| 375 | << GetHead(nHardware::HEAD_WRITE).GetPosition() << ") " |
| 376 | << "F-Head:(" << GetHead(nHardware::HEAD_FLOW).GetMemSpace() << ", " |
| 377 | << GetHead(nHardware::HEAD_FLOW).GetPosition() << ") " |
| 378 | << "RL:" << GetReadLabel().AsString() << " " |
| 379 | << endl; |
| 380 | |
| 381 | for (int i = 0; i < m_mem_array.GetSize(); i++) { |
| 382 | const cCPUMemory& mem = m_mem_array[i]; |
| 383 | fp << " Mem " << i << " (" << mem.GetSize() << "): " << mem.AsString() << endl; |
| 384 | } |
| 385 | |
| 386 | fp.flush(); |
| 387 | } |
| 388 | |
| 389 | int cHardwareTransSMT::FindMemorySpaceLabel(const cCodeLabel& label, int mem_space) |
| 390 | { |
nothing calls this directly
no test coverage detected