File tree Expand file tree Collapse file tree 1 file changed +11
-4
lines changed
Expand file tree Collapse file tree 1 file changed +11
-4
lines changed Original file line number Diff line number Diff line change @@ -219,10 +219,17 @@ BTBITTAGE::update(const FetchStream &stream)
219219 all_entries_to_update.push_back (stream.updateNewBTBEntry );
220220 }
221221
222- // only update indirect branches that are not returns
223- auto remove_it = std::remove_if (all_entries_to_update.begin (), all_entries_to_update.end (),
224- [](const BTBEntry &e) { return !(e.isIndirect && !e.isReturn ); });
225- all_entries_to_update.erase (remove_it, all_entries_to_update.end ());
222+ // // only update indirect branches that are not returns
223+ if (getResolvedUpdate ()) {
224+ auto remove_it =
225+ std::remove_if (all_entries_to_update.begin (), all_entries_to_update.end (),
226+ [](const BTBEntry &e) { return !(e.isIndirect && !e.isReturn && e.resolved ); });
227+ all_entries_to_update.erase (remove_it, all_entries_to_update.end ());
228+ } else {
229+ auto remove_it = std::remove_if (all_entries_to_update.begin (), all_entries_to_update.end (),
230+ [](const BTBEntry &e) { return !(e.isIndirect && !e.isReturn ); });
231+ all_entries_to_update.erase (remove_it, all_entries_to_update.end ());
232+ }
226233
227234 // get tage predictions from meta
228235 // TODO: use component idx
You can’t perform that action at this time.
0 commit comments