Deleted Added
sdiff udiff text old ( 2670:9107b8bd08cd ) new ( 2674:6d4afef73a20 )
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;

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

92 */
93 void setCPU(FullCPU *cpu_ptr);
94
95 /** Sets pointer to the list of active threads.
96 * @param at_ptr Pointer to the list of active threads.
97 */
98 void setActiveThreads(std::list<unsigned>* at_ptr);
99
100 void switchOut();
101
102 void takeOverFrom();
103
104 /** Function to insert an instruction into the ROB. Note that whatever
105 * calls this function must ensure that there is enough space within the
106 * ROB for the new instruction.
107 * @param inst The instruction being inserted into the ROB.
108 */
109 void insertInst(DynInstPtr &inst);

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

295 * This will always be set to cpu->instList.end() if it is invalid.
296 */
297 InstIt squashIt[Impl::MaxThreads];
298
299 public:
300 /** Number of instructions in the ROB. */
301 int numInstsInROB;
302
303 DynInstPtr dummyInst;
304
305 private:
306 /** The sequence number of the squashed instruction. */
307 InstSeqNum squashedSeqNum;
308
309 /** Is the ROB done squashing. */
310 bool doneSquashing[Impl::MaxThreads];
311
312 /** Number of active threads. */
313 unsigned numThreads;
314};
315
316#endif //__CPU_O3_ROB_HH__