inorder: remove decode squash
also, cleanup comments for gem5.fast compilation
This commit is contained in:
parent
a444133e73
commit
4c9ad53cc5
3 changed files with 6 additions and 19 deletions
|
@ -54,7 +54,6 @@ DecodeUnit::execute(int slot_num)
|
||||||
{
|
{
|
||||||
ResourceRequest* decode_req = reqs[slot_num];
|
ResourceRequest* decode_req = reqs[slot_num];
|
||||||
DynInstPtr inst = reqs[slot_num]->inst;
|
DynInstPtr inst = reqs[slot_num]->inst;
|
||||||
ThreadID tid = inst->readTid();
|
|
||||||
|
|
||||||
switch (decode_req->cmd)
|
switch (decode_req->cmd)
|
||||||
{
|
{
|
||||||
|
@ -71,11 +70,12 @@ DecodeUnit::execute(int slot_num)
|
||||||
if (inst->backSked != NULL) {
|
if (inst->backSked != NULL) {
|
||||||
DPRINTF(InOrderDecode,
|
DPRINTF(InOrderDecode,
|
||||||
"[tid:%i]: Back End Schedule created for %s [sn:%i].\n",
|
"[tid:%i]: Back End Schedule created for %s [sn:%i].\n",
|
||||||
tid, inst->instName(), inst->seqNum);
|
inst->readTid(), inst->instName(), inst->seqNum);
|
||||||
decode_req->done();
|
decode_req->done();
|
||||||
} else {
|
} else {
|
||||||
DPRINTF(Resource,
|
DPRINTF(Resource,
|
||||||
"[tid:%i] Static Inst not available to decode.\n", tid);
|
"[tid:%i] Static Inst not available to decode.\n",
|
||||||
|
inst->readTid());
|
||||||
DPRINTF(Resource,
|
DPRINTF(Resource,
|
||||||
"Unable to create schedule for instruction [sn:%i] \n",
|
"Unable to create schedule for instruction [sn:%i] \n",
|
||||||
inst->seqNum);
|
inst->seqNum);
|
||||||
|
@ -90,14 +90,3 @@ DecodeUnit::execute(int slot_num)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void
|
|
||||||
DecodeUnit::squash(DynInstPtr inst, int stage_num, InstSeqNum squash_seq_num,
|
|
||||||
ThreadID tid)
|
|
||||||
{
|
|
||||||
DPRINTF(InOrderDecode,
|
|
||||||
"[tid:%i]: Updating due to squash from stage %i after [sn:%i].\n",
|
|
||||||
tid, stage_num, squash_seq_num);
|
|
||||||
|
|
||||||
//cpu->removeInstsUntil(squash_seq_num, tid);
|
|
||||||
}
|
|
||||||
|
|
|
@ -56,9 +56,6 @@ class DecodeUnit : public Resource {
|
||||||
|
|
||||||
void execute(int slot_num);
|
void execute(int slot_num);
|
||||||
|
|
||||||
void squash(DynInstPtr inst, int stage_num, InstSeqNum squash_seq_num,
|
|
||||||
ThreadID tid);
|
|
||||||
|
|
||||||
RegDepMap *regDepMap[ThePipeline::MaxThreads];
|
RegDepMap *regDepMap[ThePipeline::MaxThreads];
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|
|
@ -88,9 +88,10 @@ ExecutionUnit::execute(int slot_num)
|
||||||
ResourceRequest* exec_req = reqs[slot_num];
|
ResourceRequest* exec_req = reqs[slot_num];
|
||||||
DynInstPtr inst = reqs[slot_num]->inst;
|
DynInstPtr inst = reqs[slot_num]->inst;
|
||||||
Fault fault = NoFault;
|
Fault fault = NoFault;
|
||||||
InstSeqNum seq_num = inst->seqNum;
|
|
||||||
Tick cur_tick = curTick();
|
Tick cur_tick = curTick();
|
||||||
|
#if TRACING_ON
|
||||||
|
InstSeqNum seq_num = inst->seqNum;
|
||||||
|
#endif
|
||||||
if (cur_tick == serializeTick) {
|
if (cur_tick == serializeTick) {
|
||||||
DPRINTF(InOrderExecute, "Can not execute [tid:%i][sn:%i][PC:%s] %s. "
|
DPRINTF(InOrderExecute, "Can not execute [tid:%i][sn:%i][PC:%s] %s. "
|
||||||
"All instructions are being serialized this cycle\n",
|
"All instructions are being serialized this cycle\n",
|
||||||
|
|
Loading…
Reference in a new issue