Deleted Added
sdiff udiff text old ( 3708:b174ae14f007 ) new ( 3771:808a4c19cf34 )
full compact
1/*
2 * Copyright (c) 2004-2006 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 714 unchanged lines hidden (view full) ---

723
724 commitStatus[tid] = ROBSquashing;
725
726 // If we want to include the squashing instruction in the squash,
727 // then use one older sequence number.
728 InstSeqNum squashed_inst = fromIEW->squashedSeqNum[tid];
729
730#if ISA_HAS_DELAY_SLOT
731 InstSeqNum bdelay_done_seq_num = squashed_inst;
732 bool squash_bdelay_slot = fromIEW->squashDelaySlot[tid];
733
734 if (!squash_bdelay_slot)
735 bdelay_done_seq_num++;
736
737#endif
738
739 if (fromIEW->includeSquashInst[tid] == true) {
740 squashed_inst--;
741#if ISA_HAS_DELAY_SLOT
742 bdelay_done_seq_num--;
743#endif
744 }

--- 351 unchanged lines hidden (view full) ---

1096 head_inst->traceData->setFetchSeq(head_inst->seqNum);
1097 head_inst->traceData->setCPSeq(thread[tid]->numInst);
1098 head_inst->traceData->finalize();
1099 head_inst->traceData = NULL;
1100 }
1101
1102 // Update the commit rename map
1103 for (int i = 0; i < head_inst->numDestRegs(); i++) {
1104 renameMap[tid]->setEntry(head_inst->flattenedDestRegIdx(i),
1105 head_inst->renamedDestRegIdx(i));
1106 }
1107
1108 if (head_inst->isCopy())
1109 panic("Should not commit any copy instructions!");
1110
1111 // Finally clear the head ROB entry.
1112 rob->retireHead(tid);

--- 63 unchanged lines hidden (view full) ---

1176#if ISA_HAS_DELAY_SLOT
1177 if (rename_idx < fromRename->size) {
1178 DPRINTF(Commit,"Placing Rename Insts into skidBuffer.\n");
1179
1180 for (;
1181 rename_idx < fromRename->size;
1182 rename_idx++) {
1183 DynInstPtr inst = fromRename->insts[rename_idx];
1184 int tid = inst->threadNumber;
1185
1186 if (!inst->isSquashed()) {
1187 DPRINTF(Commit, "Inserting PC %#x [sn:%i] [tid:%i] into ",
1188 "skidBuffer.\n", inst->readPC(), inst->seqNum, tid);
1189 skidBuffer.push(inst);
1190 } else {
1191 DPRINTF(Commit, "Instruction PC %#x [sn:%i] [tid:%i] was "
1192 "squashed, skipping.\n",
1193 inst->readPC(), inst->seqNum, tid);
1194 }
1195 }
1196 }
1197#endif
1198
1199}
1200
1201template <class Impl>

--- 207 unchanged lines hidden ---