tournament.hh (13654:dc3878f03a0c) tournament.hh (13959:ea907b02c800)
1/*
2 * Copyright (c) 2011, 2014 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

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

169 unsigned localHistory;
170 bool localPredTaken;
171 bool globalPredTaken;
172 bool globalUsed;
173 };
174
175 /** Flag for invalid predictor index */
176 static const int invalidPredictorIndex = -1;
1/*
2 * Copyright (c) 2011, 2014 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

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

169 unsigned localHistory;
170 bool localPredTaken;
171 bool globalPredTaken;
172 bool globalUsed;
173 };
174
175 /** Flag for invalid predictor index */
176 static const int invalidPredictorIndex = -1;
177 /** Local counters. */
178 std::vector<SatCounter> localCtrs;
179
180 /** Number of counters in the local predictor. */
181 unsigned localPredictorSize;
182
183 /** Mask to truncate values stored in the local history table. */
184 unsigned localPredictorMask;
185
186 /** Number of bits of the local predictor's counters. */
187 unsigned localCtrBits;
188
177 /** Number of counters in the local predictor. */
178 unsigned localPredictorSize;
179
180 /** Mask to truncate values stored in the local history table. */
181 unsigned localPredictorMask;
182
183 /** Number of bits of the local predictor's counters. */
184 unsigned localCtrBits;
185
186 /** Local counters. */
187 std::vector<SatCounter> localCtrs;
188
189 /** Array of local history table entries. */
190 std::vector<unsigned> localHistoryTable;
191
192 /** Number of entries in the local history table. */
193 unsigned localHistoryTableSize;
194
195 /** Number of bits for each entry of the local history table. */
196 unsigned localHistoryBits;
197
189 /** Array of local history table entries. */
190 std::vector<unsigned> localHistoryTable;
191
192 /** Number of entries in the local history table. */
193 unsigned localHistoryTableSize;
194
195 /** Number of bits for each entry of the local history table. */
196 unsigned localHistoryBits;
197
198 /** Array of counters that make up the global predictor. */
199 std::vector<SatCounter> globalCtrs;
200
201 /** Number of entries in the global predictor. */
202 unsigned globalPredictorSize;
203
204 /** Number of bits of the global predictor's counters. */
205 unsigned globalCtrBits;
206
198 /** Number of entries in the global predictor. */
199 unsigned globalPredictorSize;
200
201 /** Number of bits of the global predictor's counters. */
202 unsigned globalCtrBits;
203
204 /** Array of counters that make up the global predictor. */
205 std::vector<SatCounter> globalCtrs;
206
207 /** Global history register. Contains as much history as specified by
208 * globalHistoryBits. Actual number of bits used is determined by
209 * globalHistoryMask and choiceHistoryMask. */
210 std::vector<unsigned> globalHistory;
211
212 /** Number of bits for the global history. Determines maximum number of
213 entries in global and choice predictor tables. */
214 unsigned globalHistoryBits;

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

220 /** Mask to apply to globalHistory to access choice history table.
221 * Based on choicePredictorSize.*/
222 unsigned choiceHistoryMask;
223
224 /** Mask to control how much history is stored. All of it might not be
225 * used. */
226 unsigned historyRegisterMask;
227
207 /** Global history register. Contains as much history as specified by
208 * globalHistoryBits. Actual number of bits used is determined by
209 * globalHistoryMask and choiceHistoryMask. */
210 std::vector<unsigned> globalHistory;
211
212 /** Number of bits for the global history. Determines maximum number of
213 entries in global and choice predictor tables. */
214 unsigned globalHistoryBits;

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

220 /** Mask to apply to globalHistory to access choice history table.
221 * Based on choicePredictorSize.*/
222 unsigned choiceHistoryMask;
223
224 /** Mask to control how much history is stored. All of it might not be
225 * used. */
226 unsigned historyRegisterMask;
227
228 /** Array of counters that make up the choice predictor. */
229 std::vector<SatCounter> choiceCtrs;
230
231 /** Number of entries in the choice predictor. */
232 unsigned choicePredictorSize;
233
234 /** Number of bits in the choice predictor's counters. */
235 unsigned choiceCtrBits;
236
228 /** Number of entries in the choice predictor. */
229 unsigned choicePredictorSize;
230
231 /** Number of bits in the choice predictor's counters. */
232 unsigned choiceCtrBits;
233
234 /** Array of counters that make up the choice predictor. */
235 std::vector<SatCounter> choiceCtrs;
236
237 /** Thresholds for the counter value; above the threshold is taken,
238 * equal to or below the threshold is not taken.
239 */
240 unsigned localThreshold;
241 unsigned globalThreshold;
242 unsigned choiceThreshold;
243};
244
245#endif // __CPU_PRED_TOURNAMENT_PRED_HH__
237 /** Thresholds for the counter value; above the threshold is taken,
238 * equal to or below the threshold is not taken.
239 */
240 unsigned localThreshold;
241 unsigned globalThreshold;
242 unsigned choiceThreshold;
243};
244
245#endif // __CPU_PRED_TOURNAMENT_PRED_HH__