iew_impl.hh (3949:b6664282d899) iew_impl.hh (3958:58d09260d073)
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;

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

541{
542 DPRINTF(IEW, "[tid:%i]: Memory blocked, squashing load and younger insts, "
543 "PC: %#x [sn:%i].\n", tid, inst->readPC(), inst->seqNum);
544
545 toCommit->squash[tid] = true;
546 toCommit->squashedSeqNum[tid] = inst->seqNum;
547 toCommit->nextPC[tid] = inst->readPC();
548#if ISA_HAS_DELAY_SLOT
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;

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

541{
542 DPRINTF(IEW, "[tid:%i]: Memory blocked, squashing load and younger insts, "
543 "PC: %#x [sn:%i].\n", tid, inst->readPC(), inst->seqNum);
544
545 toCommit->squash[tid] = true;
546 toCommit->squashedSeqNum[tid] = inst->seqNum;
547 toCommit->nextPC[tid] = inst->readPC();
548#if ISA_HAS_DELAY_SLOT
549 toCommit->nextNPC[tid] = inst->readNextNPC();
549 toCommit->nextNPC[tid] = inst->readNextPC();
550#endif
551 toCommit->branchMispredict[tid] = false;
552
553 // Must include the broadcasted SN in the squash.
554 toCommit->includeSquashInst[tid] = true;
555
556 ldstQueue.setLoadBlockedHandled(tid);
557

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

1431void
1432DefaultIEW<Impl>::writebackInsts()
1433{
1434 // Loop through the head of the time buffer and wake any
1435 // dependents. These instructions are about to write back. Also
1436 // mark scoreboard that this instruction is finally complete.
1437 // Either have IEW have direct access to scoreboard, or have this
1438 // as part of backwards communication.
550#endif
551 toCommit->branchMispredict[tid] = false;
552
553 // Must include the broadcasted SN in the squash.
554 toCommit->includeSquashInst[tid] = true;
555
556 ldstQueue.setLoadBlockedHandled(tid);
557

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

1431void
1432DefaultIEW<Impl>::writebackInsts()
1433{
1434 // Loop through the head of the time buffer and wake any
1435 // dependents. These instructions are about to write back. Also
1436 // mark scoreboard that this instruction is finally complete.
1437 // Either have IEW have direct access to scoreboard, or have this
1438 // as part of backwards communication.
1439 for (int inst_num = 0; inst_num < issueWidth &&
1439 for (int inst_num = 0; inst_num < wbWidth &&
1440 toCommit->insts[inst_num]; inst_num++) {
1441 DynInstPtr inst = toCommit->insts[inst_num];
1442 int tid = inst->threadNumber;
1443
1444 DPRINTF(IEW, "Sending instructions to commit, [sn:%lli] PC %#x.\n",
1445 inst->seqNum, inst->readPC());
1446
1447 iewInstsToCommit[tid]++;

--- 184 unchanged lines hidden ---
1440 toCommit->insts[inst_num]; inst_num++) {
1441 DynInstPtr inst = toCommit->insts[inst_num];
1442 int tid = inst->threadNumber;
1443
1444 DPRINTF(IEW, "Sending instructions to commit, [sn:%lli] PC %#x.\n",
1445 inst->seqNum, inst->readPC());
1446
1447 iewInstsToCommit[tid]++;

--- 184 unchanged lines hidden ---