Lines Matching refs:RAS
64 RAS(numThreads),
68 for (auto& r : RAS)
116 .desc("Number of times the RAS was used to get a target.")
121 .desc("Number of incorrect RAS predictions.")
176 // If so, get its target addr either from the BTB or the RAS.
177 // Save off record of branch stuff so the RAS can be fixed
217 // Now lookup in the BTB or RAS.
223 // in the RAS.
224 TheISA::PCState rasTop = RAS[tid].top();
227 // Record the top entry of the RAS, and its index.
229 predict_record.RASIndex = RAS[tid].topIdx();
232 RAS[tid].pop();
235 "RAS predicted target: %s, RAS index: %i\n",
241 RAS[tid].push(pc);
244 // Record that it was a call so that the top RAS entry can
250 "%s to the RAS index: %i\n",
251 tid, seqNum, pc, pc, RAS[tid].topIdx());
278 RAS[tid].pop();
306 RAS[tid].pop();
380 " Restoring top of RAS to: %i,"
384 RAS[tid].restore(pred_hist.front().RASIndex,
387 // Was a call but predicated false. Pop RAS here
389 " Call [sn:%llu] PC: %s Popping RAS\n", tid, squashed_sn,
391 RAS[tid].pop();
460 "[tid:%i] [squash sn:%llu] Incorrect RAS [sn:%llu]\n",
493 RAS[tid].pop();
516 "return [sn:%llu] PC: %#x Restoring RAS\n", tid,
520 "[tid:%i] [squash sn:%llu] Restoring top of RAS "
523 RAS[tid].restore(hist_it->RASIndex, hist_it->RASTarget);
526 //Was a Call but predicated false. Pop RAS here
530 "Call [sn:%llu] PC: %s Popping RAS\n",
533 RAS[tid].pop();