Deleted Added
sdiff udiff text old ( 13627:ec1395943cd2 ) new ( 13685:bb3377c81303 )
full compact
1/*
2 * Copyright (c) 2014 The University of Wisconsin
3 *
4 * Copyright (c) 2006 INRIA (Institut National de Recherche en
5 * Informatique et en Automatique / French National Research Institute
6 * for Computer Science and Applied Mathematics)
7 *
8 * All rights reserved.

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

175
176 /**
177 * Updates the loop predictor.
178 * @param pc The unshifted branch PC.
179 * @param taken The actual branch outcome.
180 * @param bi Pointer to information on the
181 * prediction recorded at prediction time.
182 * @param tage_pred tage prediction of the branch
183 */
184 void loopUpdate(Addr pc, bool Taken, BranchInfo* bi, bool tage_pred);
185
186 /**
187 * Speculatively updates the loop predictor
188 * iteration count (only for useSpeculation).
189 * @param taken The predicted branch outcome.
190 * @param bi Pointer to information on the prediction
191 * recorded at prediction time.
192 */
193 void specLoopUpdate(bool taken, BranchInfo* bi);
194
195 /**
196 * Update LTAGE for conditional branches.
197 * @param branch_pc The unshifted branch PC.
198 * @param taken Actual branch outcome.
199 * @param tage_pred Prediction from TAGE
200 * @param bi Pointer to information on the prediction
201 * recorded at prediction time.
202 * @param instShiftAmt Number of bits to shift instructions
203 */
204 void condBranchUpdate(ThreadID tid, Addr branch_pc, bool taken,
205 bool tage_pred, BranchInfo* bi, unsigned instShiftAmt);
206
207 /**
208 * Get the loop prediction
209 * @param tid The thread ID to select the global
210 * histories to use.
211 * @param branch_pc The unshifted branch PC.
212 * @param cond_branch True if the branch is conditional.
213 * @param bi Reference to wrapping pointer to allow storing

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

230 void updateStats(bool taken, BranchInfo* bi);
231
232 void squashLoop(BranchInfo * bi);
233
234 void squash(ThreadID tid, BranchInfo *bi);
235
236 virtual bool calcConf(int index) const;
237
238 virtual bool optionalAgeInc() const;
239
240 virtual BranchInfo *makeBranchInfo();
241
242 /**
243 * Gets the value of the loop use counter
244 * @return the loop use counter value
245 */
246 int8_t getLoopUseCounter() const

--- 17 unchanged lines hidden ---