cpu: Fix case where o3 lsq could print out uninitialized data

In the O3 LSQ, data read/written is printed out in DPRINTFs.  However,
the data field is treated as a character string with a null terminated.
However the data field is not encoded this way.  This patch removes
that possibility by removing the data part of the print.
This commit is contained in:
Mitch Hayenga
2014-04-01 14:22:06 -05:00
parent a0d30f36a6
commit e4086878f6
2 changed files with 5 additions and 6 deletions

View File

@@ -711,8 +711,7 @@ LSQUnit<Impl>::read(Request *req, Request *sreqLow, Request *sreqHigh,
storeQueue[store_idx].data + shift_amt, req->getSize());
DPRINTF(LSQUnit, "Forwarding from store idx %i to load to "
"addr %#x, data %#x\n",
store_idx, req->getVaddr(), data);
"addr %#x\n", store_idx, req->getVaddr());
PacketPtr data_pkt = new Packet(req, MemCmd::ReadReq);
data_pkt->dataStatic(load_inst->memData);
@@ -916,9 +915,9 @@ LSQUnit<Impl>::write(Request *req, Request *sreqLow, Request *sreqHigh,
{
assert(storeQueue[store_idx].inst);
DPRINTF(LSQUnit, "Doing write to store idx %i, addr %#x data %#x"
DPRINTF(LSQUnit, "Doing write to store idx %i, addr %#x"
" | storeHead:%i [sn:%i]\n",
store_idx, req->getPaddr(), data, storeHead,
store_idx, req->getPaddr(), storeHead,
storeQueue[store_idx].inst->seqNum);
storeQueue[store_idx].req = req;

View File

@@ -155,12 +155,12 @@ LSQUnit<Impl>::init(O3CPU *cpu_ptr, IEW *iew_ptr, DerivO3CPUParams *params,
cpu = cpu_ptr;
iewStage = iew_ptr;
DPRINTF(LSQUnit, "Creating LSQUnit%i object.\n",id);
lsq = lsq_ptr;
lsqID = id;
DPRINTF(LSQUnit, "Creating LSQUnit%i object.\n",id);
// Add 1 for the sentinel entry (they are circular queues).
LQEntries = maxLQEntries + 1;
SQEntries = maxSQEntries + 1;