Add support for multiple outstanding aligned copies

cpu/memtest/memtest.cc:
    Add traceBlockAddr to trace outputs.

--HG--
extra : convert_revision : e4ebaf9647fb393448367f4f4af3bae566f51c24
This commit is contained in:
Erik Hallnor 2004-02-10 20:37:38 -05:00
parent 4478bcb7c7
commit 14c11155be

View file

@ -159,10 +159,10 @@ MemTest::completeRequest(MemReqPtr &req, uint8_t *data)
} }
if (blockAddr(req->paddr) == traceBlockAddr) { if (blockAddr(req->paddr) == traceBlockAddr) {
cerr << name() << ": completed " cerr << hex << traceBlockAddr << ": " << name() << ": completed "
<< (req->cmd.isWrite() ? "write" : "read") << (req->cmd.isWrite() ? "write" : "read")
<< " access of " << " access of "
<< req->size << " bytes at address 0x" << dec << req->size << " bytes at address 0x"
<< hex << req->paddr << ", value = 0x"; << hex << req->paddr << ", value = 0x";
printData(cerr, req->data, req->size); printData(cerr, req->data, req->size);
cerr << " @ cycle " << dec << curTick; cerr << " @ cycle " << dec << curTick;
@ -243,9 +243,10 @@ MemTest::tick()
uint8_t *result = new uint8_t[8]; uint8_t *result = new uint8_t[8];
checkMem->access(Read, req->paddr, result, req->size); checkMem->access(Read, req->paddr, result, req->size);
if (blockAddr(req->paddr) == traceBlockAddr) { if (blockAddr(req->paddr) == traceBlockAddr) {
cerr << name() << ": initiating read " cerr << hex << traceBlockAddr << ": " << name()
<< ": initiating read "
<< ((probe)?"probe of ":"access of ") << ((probe)?"probe of ":"access of ")
<< req->size << " bytes from addr 0x" << dec << req->size << " bytes from addr 0x"
<< hex << req->paddr << " at cycle " << hex << req->paddr << " at cycle "
<< dec << curTick << endl; << dec << curTick << endl;
} }
@ -262,9 +263,10 @@ MemTest::tick()
memcpy(req->data, &data, req->size); memcpy(req->data, &data, req->size);
checkMem->access(Write, req->paddr, req->data, req->size); checkMem->access(Write, req->paddr, req->data, req->size);
if (blockAddr(req->paddr) == traceBlockAddr) { if (blockAddr(req->paddr) == traceBlockAddr) {
cerr << name() << ": initiating write " cerr << hex << traceBlockAddr << ": "
<< name() << ": initiating write "
<< ((probe)?"probe of ":"access of ") << ((probe)?"probe of ":"access of ")
<< req->size << " bytes (value = 0x"; << dec << req->size << " bytes (value = 0x";
printData(cerr, req->data, req->size); printData(cerr, req->data, req->size);
cerr << ") to addr 0x" cerr << ") to addr 0x"
<< hex << req->paddr << " at cycle " << hex << req->paddr << " at cycle "
@ -289,8 +291,9 @@ MemTest::tick()
req->data = new uint8_t[blockSize]; req->data = new uint8_t[blockSize];
req->size = blockSize; req->size = blockSize;
if (source == traceBlockAddr || dest == traceBlockAddr) { if (source == traceBlockAddr || dest == traceBlockAddr) {
cerr << name() << ": initiating copy of " cerr << hex << traceBlockAddr << ": " << name()
<< req->size << " bytes from addr 0x" << ": initiating copy of "
<< dec << req->size << " bytes from addr 0x"
<< hex << source << " to addr 0x" << hex << source << " to addr 0x"
<< hex << dest << " at cycle " << hex << dest << " at cycle "
<< dec << curTick << endl; << dec << curTick << endl;