tournament.hh (11434:b5aed9d2d54e) | tournament.hh (11782:c2e1ead33662) |
---|---|
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 --- 43 unchanged lines hidden (view full) --- 52#include "cpu/pred/sat_counter.hh" 53#include "params/TournamentBP.hh" 54 55/** 56 * Implements a tournament branch predictor, hopefully identical to the one 57 * used in the 21264. It has a local predictor, which uses a local history 58 * table to index into a table of counters, and a global predictor, which 59 * uses a global history to index into a table of counters. A choice | 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 --- 43 unchanged lines hidden (view full) --- 52#include "cpu/pred/sat_counter.hh" 53#include "params/TournamentBP.hh" 54 55/** 56 * Implements a tournament branch predictor, hopefully identical to the one 57 * used in the 21264. It has a local predictor, which uses a local history 58 * table to index into a table of counters, and a global predictor, which 59 * uses a global history to index into a table of counters. A choice |
60 * predictor chooses between the two. Only the global history register 61 * is speculatively updated, the rest are updated upon branches committing 62 * or misspeculating. | 60 * predictor chooses between the two. Both the global history register 61 * and the selected local history are speculatively updated. |
63 */ 64class TournamentBP : public BPredUnit 65{ 66 public: 67 /** 68 * Default branch predictor constructor. 69 */ 70 TournamentBP(const TournamentBPParams *params); --- 177 unchanged lines hidden --- | 62 */ 63class TournamentBP : public BPredUnit 64{ 65 public: 66 /** 67 * Default branch predictor constructor. 68 */ 69 TournamentBP(const TournamentBPParams *params); --- 177 unchanged lines hidden --- |