37,38c37,38
< StoreSet::StoreSet(int _SSIT_size, int _LFST_size)
< : SSITSize(_SSIT_size), LFSTSize(_LFST_size)
---
> StoreSet::StoreSet(uint64_t clear_period, int _SSIT_size, int _LFST_size)
> : clearPeriod(clear_period), SSITSize(_SSIT_size), LFSTSize(_LFST_size)
70a71,72
>
> memOpsPred = 0;
78c80
< StoreSet::init(int _SSIT_size, int _LFST_size)
---
> StoreSet::init(uint64_t clear_period, int _SSIT_size, int _LFST_size)
81a84
> clearPeriod = clear_period;
105a109,110
>
> memOpsPred = 0;
182a188,199
> StoreSet::checkClear()
> {
> memOpsPred++;
> if (memOpsPred > clearPeriod) {
> DPRINTF(StoreSet, "Wiping predictor state beacuse %d ld/st executed\n",
> clearPeriod);
> memOpsPred = 0;
> clear();
> }
> }
>
> void
184a202
> checkClear();
195a214
> checkClear();