bi_mode.hh (11783:f94c14fd6561) bi_mode.hh (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;

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

57{
58 public:
59 BiModeBP(const BiModeBPParams *params);
60 void uncondBranch(ThreadID tid, Addr pc, void * &bp_history);
61 void squash(ThreadID tid, void *bp_history);
62 bool lookup(ThreadID tid, Addr branch_addr, void * &bp_history);
63 void btbUpdate(ThreadID tid, Addr branch_addr, void * &bp_history);
64 void update(ThreadID tid, Addr branch_addr, bool taken, void *bp_history,
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;

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

57{
58 public:
59 BiModeBP(const BiModeBPParams *params);
60 void uncondBranch(ThreadID tid, Addr pc, void * &bp_history);
61 void squash(ThreadID tid, void *bp_history);
62 bool lookup(ThreadID tid, Addr branch_addr, void * &bp_history);
63 void btbUpdate(ThreadID tid, Addr branch_addr, void * &bp_history);
64 void update(ThreadID tid, Addr branch_addr, bool taken, void *bp_history,
65 bool squashed);
65 bool squashed, const StaticInstPtr & inst, Addr corrTarget);
66 unsigned getGHR(ThreadID tid, void *bp_history) const;
67
68 private:
69 void updateGlobalHistReg(ThreadID tid, bool taken);
70
71 struct BPHistory {
72 unsigned globalHistoryReg;
73 // was the taken array's prediction used?

--- 41 unchanged lines hidden ---
66 unsigned getGHR(ThreadID tid, void *bp_history) const;
67
68 private:
69 void updateGlobalHistReg(ThreadID tid, bool taken);
70
71 struct BPHistory {
72 unsigned globalHistoryReg;
73 // was the taken array's prediction used?

--- 41 unchanged lines hidden ---