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:
parent
4478bcb7c7
commit
14c11155be
1 changed files with 11 additions and 8 deletions
|
@ -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;
|
||||||
|
|
Loading…
Reference in a new issue