src/cpu/pred/bi_mode.cc
/*
 * For an unconditional branch we set its history such that
 * everything is set to taken. I.e., its choice predictor
 * chooses the taken array and the taken array predicts taken.
 */
For an unconditional branch we set its history such that
everything is set to taken. I.e., its choice predictor
chooses the taken array and the taken array predicts taken.
For an unconditional branch we set its history such that everything is set to taken . I . e . its choice predictor chooses the taken array and the taken array predicts taken .
void
BiModeBP::uncondBranch(ThreadID tid, Addr pc, void * &bpHistory)
{
    BPHistory *history = new BPHistory;
    history->globalHistoryReg = globalHistoryReg[tid];
    history->takenUsed = true;
    history->takenPred = true;
    history->notTakenPred = true;
    history->finalPred = true;
    bpHistory = static_cast<void*>(history);
    updateGlobalHistReg(tid, true);
}
void BiModeBP :: uncondBranch ( ThreadID tid , Addr pc , void * & bpHistory ) { BPHistory * history = new BPHistory ; history -> globalHistoryReg = globalHistoryReg [ tid ] ; history -> takenUsed = true ; history -> takenPred = true ; history -> notTakenPred = true ; history -> finalPred = true ; bpHistory = static_cast < void * > ( history ) ; updateGlobalHistReg ( tid , true ) ; }
For an unconditional branch we set its history such that
 everything is set to taken.
For an unconditional branch we set its history such that everything is set to taken .