bi_mode.cc (12180:72159e1f6701) bi_mode.cc (13626:d6a6358aa6db)
1/*
2 * Copyright (c) 2014 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;

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

156/* Only the selected direction predictor will be updated with the final
157 * outcome; the status of the unselected one will not be altered. The choice
158 * predictor is always updated with the branch outcome, except when the
159 * choice is opposite to the branch outcome but the selected counter of
160 * the direction predictors makes a correct final prediction.
161 */
162void
163BiModeBP::update(ThreadID tid, Addr branchAddr, bool taken, void *bpHistory,
1/*
2 * Copyright (c) 2014 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;

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

156/* Only the selected direction predictor will be updated with the final
157 * outcome; the status of the unselected one will not be altered. The choice
158 * predictor is always updated with the branch outcome, except when the
159 * choice is opposite to the branch outcome but the selected counter of
160 * the direction predictors makes a correct final prediction.
161 */
162void
163BiModeBP::update(ThreadID tid, Addr branchAddr, bool taken, void *bpHistory,
164 bool squashed)
164 bool squashed, const StaticInstPtr & inst, Addr corrTarget)
165{
166 assert(bpHistory);
167
168 BPHistory *history = static_cast<BPHistory*>(bpHistory);
169
170 // We do not update the counters speculatively on a squash.
171 // We just restore the global history register.
172 if (squashed) {

--- 78 unchanged lines hidden ---
165{
166 assert(bpHistory);
167
168 BPHistory *history = static_cast<BPHistory*>(bpHistory);
169
170 // We do not update the counters speculatively on a squash.
171 // We just restore the global history register.
172 if (squashed) {

--- 78 unchanged lines hidden ---