Deleted Added
sdiff udiff text old ( 9427:ddf45c1d54d4 ) new ( 9444:ab47fe7f03f0 )
full compact
1/*
2 * Copyright (c) 2010 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software
9 * licensed hereunder. You may use the software subject to the license
10 * terms below provided that you ensure that this notice is replicated

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

145 void setIEWQueue(TimeBuffer<IEWStruct> *iq_ptr);
146
147 /** Sets pointer to list of active threads. */
148 void setActiveThreads(std::list<ThreadID> *at_ptr);
149
150 /** Sets pointer to the scoreboard. */
151 void setScoreboard(Scoreboard *sb_ptr);
152
153 /** Drains IEW stage. */
154 bool drain();
155
156 /** Resumes execution after a drain. */
157 void resume();
158
159 /** Completes switch out of IEW stage. */
160 void switchOut();
161
162 /** Takes over from another CPU's thread. */
163 void takeOverFrom();
164
165 /** Returns if IEW is switched out. */
166 bool isSwitchedOut() { return switchedOut; }
167
168 /** Squashes instructions in IEW for a specific thread. */
169 void squash(ThreadID tid);
170
171 /** Wakes all dependents of a completed instruction. */
172 void wakeDependents(DynInstPtr &inst);
173
174 /** Tells memory dependence unit that a memory instruction needs to be
175 * rescheduled. It will re-execute once replayMemInst() is called.

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

465 ThreadID numThreads;
466
467 /** Pointer to list of active threads. */
468 std::list<ThreadID> *activeThreads;
469
470 /** Maximum size of the skid buffer. */
471 unsigned skidBufferMax;
472
473 /** Is this stage switched out. */
474 bool switchedOut;
475
476 /** Stat for total number of idle cycles. */
477 Stats::Scalar iewIdleCycles;
478 /** Stat for total number of squashing cycles. */
479 Stats::Scalar iewSquashCycles;
480 /** Stat for total number of blocking cycles. */
481 Stats::Scalar iewBlockCycles;
482 /** Stat for total number of unblocking cycles. */
483 Stats::Scalar iewUnblockCycles;

--- 65 unchanged lines hidden ---