/gem5/src/systemc/tests/systemc/datatypes/int/sc_signed/bit_select/test01/ |
H A D | test01.cpp | 4 sc_bigint<3> bi; local 6 cout << bi[3] << endl;
|
/gem5/src/systemc/tests/systemc/datatypes/int/sc_unsigned/bit_select/test01/ |
H A D | test01.cpp | 4 sc_biguint<3> bi; local 6 cout << bi[3] << endl;
|
/gem5/src/cpu/pred/ |
H A D | ltage.cc | 65 LTageBranchInfo *bi = new LTageBranchInfo(*tage, *loopPredictor); local 66 b = (void*)(bi); 69 bi->tageBranchInfo); 72 bi->lpBranchInfo, pred_taken, 75 if (bi->lpBranchInfo->loopPredUsed) { 76 bi->tageBranchInfo->provider = LOOP; 80 branch_pc, pred_taken, bi->lpBranchInfo->loopPred, 81 bi->lpBranchInfo->loopPredValid, 83 bi->tageBranchInfo->tagePred, bi 99 LTageBranchInfo* bi = static_cast<LTageBranchInfo*>(bp_history); local 140 LTageBranchInfo* bi = (LTageBranchInfo*)(bp_history); local [all...] |
H A D | multiperspective_perceptron_tage.cc | 54 TAGEBase::BranchInfo* bi) 56 if (bi->hitBank > 0) { 57 if (abs (2 * gtable[bi->hitBank][bi->hitBankIndex].ctr + 1) == 1) { 58 if (bi->longestMatchPred != taken) { 60 if (bi->altBank > 0) { 61 ctrUpdate(gtable[bi->altBank][bi->altBankIndex].ctr, taken, 64 if (bi->altBank == 0){ 65 baseUpdate(branch_pc, taken, bi); 53 handleTAGEUpdate(Addr branch_pc, bool taken, TAGEBase::BranchInfo* bi) argument 89 handleAllocAndUReset(bool alloc, bool taken, TAGEBase::BranchInfo* bi, int nrand) argument 169 getUseAltIdx(TAGEBase::BranchInfo* bi, Addr branch_pc) argument 298 getIndBias(Addr branch_pc, StatisticalCorrector::BranchInfo* bi, bool bias) const argument 314 getIndBiasBank(Addr branch_pc, StatisticalCorrector::BranchInfo* bi, int hitBank, int altBank) const argument 333 gUpdate(Addr branch_pc, bool taken, int64_t hist, std::vector<int> & length, std::vector<int8_t> * tab, int nbr, int logs, std::vector<int8_t> & w, StatisticalCorrector::BranchInfo* bi) argument 348 scPredict(ThreadID tid, Addr branch_pc, bool cond_branch, StatisticalCorrector::BranchInfo* bi, bool prev_pred_taken, bool bias_bit, bool use_conf_ctr, int8_t conf_ctr, unsigned conf_bits, int hitBank, int altBank, int64_t phist, int init_lsum) argument 411 getIndex(ThreadID tid, MPPTAGEBranchInfo &bi, const HistorySpec &spec, int index) const argument 447 updatePartial(ThreadID tid, MPPTAGEBranchInfo &bi, bool taken) argument 471 updateHistories(ThreadID tid, MPPTAGEBranchInfo &bi, bool taken) argument 530 MPPTAGEBranchInfo *bi = local 559 condBranchUpdate(ThreadID tid, Addr branch_pc, bool taken, StatisticalCorrector::BranchInfo *bi, Addr corrTarget, bool bias_bit, int hitBank, int altBank, int64_t phist) argument 606 MPPTAGEBranchInfo *bi = static_cast<MPPTAGEBranchInfo*>(bp_history); local 685 MPPTAGEBranchInfo *bi = local 695 MPPTAGEBranchInfo *bi = static_cast<MPPTAGEBranchInfo*>(bp_history); local [all...] |
H A D | tage_sc_l_8KB.cc | 68 BranchInfo* bi, int hitBank, int altBank) const 70 return (bi->predBeforeSC + (((hitBank+1)/4)<<4) + (bi->highConf<<1) + 71 (bi->lowConf <<2) +((altBank!=0)<<3)) & ((1<<logBias) -1); 76 ThreadID tid, Addr branch_pc, BranchInfo* bi, int & lsum, int64_t phist) 125 BranchInfo* bi, int64_t phist) 128 gUpdate(pc, taken, sh->globalHist, gm, ggehl, gnb, logGnb, wg, bi); 129 gUpdate(pc, taken, sh->bwHist, bwm, bwgehl, bwnb, logBwnb, wbw, bi); 131 bi); 132 gUpdate(pc, taken, sh->imliCount, im, igehl, inb, logInb, wi, bi); 67 getIndBiasBank(Addr branch_pc, BranchInfo* bi, int hitBank, int altBank) const argument 75 gPredictions( ThreadID tid, Addr branch_pc, BranchInfo* bi, int & lsum, int64_t phist) argument 124 gUpdates(ThreadID tid, Addr pc, bool taken, BranchInfo* bi, int64_t phist) argument 189 handleAllocAndUReset( bool alloc, bool taken, TAGEBase::BranchInfo* bi, int nrand) argument 258 handleTAGEUpdate(Addr branch_pc, bool taken, TAGEBase::BranchInfo* bi) argument [all...] |
H A D | loop_predictor.cc | 113 LoopPredictor::getLoop(Addr pc, BranchInfo* bi, bool speculative, argument 116 bi->loopHit = -1; 117 bi->loopPredValid = false; 118 bi->loopIndex = lindex(pc, instShiftAmt); 122 bi->loopIndexB = (pc >> pcShift) & loopSetMask; 123 bi->loopTag = (pc >> pcShift) ^ (pc >> (pcShift + loopTableTagBits)); 124 bi->loopTag &= loopTagMask; 127 bi->loopTag = (pc >> pcShift) & loopTagMask; 128 // bi->loopIndexB is not used without hash 132 int idx = finallindex(bi 157 specLoopUpdate(bool taken, BranchInfo* bi) argument 177 loopUpdate(Addr pc, bool taken, BranchInfo* bi, bool tage_pred) argument 272 loopPredict(ThreadID tid, Addr branch_pc, bool cond_branch, BranchInfo* bi, bool prev_pred_taken, unsigned instShiftAmt) argument 294 squash(ThreadID tid, BranchInfo *bi) argument 305 squashLoop(BranchInfo* bi) argument 316 updateStats(bool taken, BranchInfo* bi) argument 326 condBranchUpdate(ThreadID tid, Addr branch_pc, bool taken, bool tage_pred, BranchInfo* bi, unsigned instShiftAmt) argument [all...] |
H A D | tage_sc_l_64KB.cc | 85 BranchInfo* bi, int hitBank, int altBank) const 87 return (bi->predBeforeSC + (((hitBank+1)/4)<<4) + (bi->highConf<<1) + 88 (bi->lowConf <<2) + ((altBank!=0)<<3) + 94 BranchInfo* bi, int & lsum, int64_t pathHist) 100 (branch_pc << 1) + bi->predBeforeSC, sh->bwHist, bwm, 166 bool taken, BranchInfo* bi, int64_t phist) 171 gUpdate((pc << 1) + bi->predBeforeSC, taken, sh->bwHist, bwm, 172 bwgehl, bwnb, logBwnb, wbw, bi); 175 pgehl, pnb, logPnb, wp, bi); 84 getIndBiasBank(Addr branch_pc, BranchInfo* bi, int hitBank, int altBank) const argument 93 gPredictions(ThreadID tid, Addr branch_pc, BranchInfo* bi, int & lsum, int64_t pathHist) argument 165 gUpdates(ThreadID tid, Addr pc, bool taken, BranchInfo* bi, int64_t phist) argument 216 handleAllocAndUReset( bool alloc, bool taken, TAGEBase::BranchInfo* bi, int nrand) argument 264 handleTAGEUpdate(Addr branch_pc, bool taken, TAGEBase::BranchInfo* bi) argument [all...] |
H A D | tage.cc | 61 TageBranchInfo *bi = static_cast<TageBranchInfo*>(bp_history); local 62 TAGEBase::BranchInfo *tage_bi = bi->tageBranchInfo; 74 if (bi->tageBranchInfo->condBranch) { 77 tage->updateStats(taken, bi->tageBranchInfo); 79 corrTarget, bi->tageBranchInfo->tagePred); 85 delete bi; 91 TageBranchInfo *bi = static_cast<TageBranchInfo*>(bp_history); local 92 DPRINTF(Tage, "Deleting branch info: %lx\n", bi->tageBranchInfo->branchPC); 93 delete bi; 99 TageBranchInfo *bi local 109 TageBranchInfo *bi = static_cast<TageBranchInfo*>(bp_history); local 121 TageBranchInfo *bi = static_cast<TageBranchInfo*>(bp_history); local 130 TageBranchInfo *bi = static_cast<TageBranchInfo*>(bp_history); local [all...] |
H A D | tage_sc_l.cc | 129 ThreadID tid, Addr pc, TAGEBase::BranchInfo* bi) 140 bi->tableTags[i] = tableTags[i]; 141 bi->tableTags[i+1] = tableTags[i+1]; 151 bi->tableIndices[i] = tableIndices[i]; 163 bi->tableIndices[i] = tableIndices[i]; 171 TAGE_SC_L_TAGE::getUseAltIdx(TAGEBase::BranchInfo* bi, Addr branch_pc) argument 173 BranchInfo *tbi = static_cast<BranchInfo *>(bi); 175 idx = ((((bi->hitBank-1)/8)<<1)+tbi->altConf) % (numUseAltOnNa-1); 289 TAGE_SC_L_TAGE::squash(ThreadID tid, bool taken, TAGEBase::BranchInfo *bi, argument 305 TAGE_SC_L_TAGE::calcDep(TAGEBase::BranchInfo* bi) argument 128 calculateIndicesAndTags( ThreadID tid, Addr pc, TAGEBase::BranchInfo* bi) argument 342 TAGE_SC_L_TAGE::BranchInfo *bi = local 356 extraAltCalc(TAGEBase::BranchInfo* bi) argument 367 TageSCLBranchInfo *bi = new TageSCLBranchInfo(*tage, local 418 TageSCLBranchInfo* bi = static_cast<TageSCLBranchInfo*>(bp_history); local [all...] |
H A D | tage_base.cc | 183 TAGEBase::btbUpdate(ThreadID tid, Addr branch_pc, BranchInfo* &bi) argument 191 tHist.computeIndices[i].comp = bi->ci[i]; 192 tHist.computeTags[0][i].comp = bi->ct0[i]; 193 tHist.computeTags[1][i].comp = bi->ct1[i]; 288 TAGEBase::getBimodePred(Addr pc, BranchInfo* bi) const 290 return btablePrediction[bi->bimodalIndex]; 297 TAGEBase::baseUpdate(Addr pc, bool taken, BranchInfo* bi) argument 299 int inter = (btablePrediction[bi->bimodalIndex] << 1) 300 + btableHysteresis[bi->bimodalIndex >> logRatioBiModalHystEntries]; 309 btablePrediction[bi 335 calculateIndicesAndTags(ThreadID tid, Addr branch_pc, BranchInfo* bi) argument 348 getUseAltIdx(BranchInfo* bi, Addr branch_pc) argument 355 tagePredict(ThreadID tid, Addr branch_pc, bool cond_branch, BranchInfo* bi) argument 439 handleAllocAndUReset(bool alloc, bool taken, BranchInfo* bi, int nrand) argument 509 condBranchUpdate(ThreadID tid, Addr branch_pc, bool taken, BranchInfo* bi, int nrand, Addr corrTarget, bool pred, bool preAdjustAlloc) argument 550 handleTAGEUpdate(Addr branch_pc, bool taken, BranchInfo* bi) argument 583 updateHistories(ThreadID tid, Addr branch_pc, bool taken, BranchInfo* bi, bool speculative, const StaticInstPtr &inst, Addr target) argument 624 squash(ThreadID tid, bool taken, TAGEBase::BranchInfo *bi, Addr target) argument 650 extraAltCalc(BranchInfo* bi) argument 657 updateStats(bool taken, BranchInfo* bi) argument [all...] |
H A D | statistical_corrector.cc | 149 StatisticalCorrector::getIndBias(Addr branch_pc, BranchInfo* bi, argument 152 return (((((branch_pc ^(branch_pc >>2))<<1) ^ (bi->lowConf & bias)) <<1) 153 + bi->predBeforeSC) & ((1<<logBias) -1); 157 StatisticalCorrector::getIndBiasSK(Addr branch_pc, BranchInfo* bi) const 160 (bi->highConf))<<1) + bi->predBeforeSC) & ((1<<logBias) -1); 205 BranchInfo* bi) 215 int xsum = bi->lsum - ((w[getIndUpds(branch_pc)] >= 0)) * percsum; 224 BranchInfo* bi, bool prev_pred_taken, bool bias_bit, 231 bi 202 gUpdate(Addr branch_pc, bool taken, int64_t hist, std::vector<int> & length, std::vector<int8_t> * tab, int nbr, int logs, std::vector<int8_t> & w, BranchInfo* bi) argument 223 scPredict(ThreadID tid, Addr branch_pc, bool cond_branch, BranchInfo* bi, bool prev_pred_taken, bool bias_bit, bool use_conf_ctr, int8_t conf_ctr, unsigned conf_bits, int hitBank, int altBank, int64_t phist, int init_lsum) argument 317 condBranchUpdate(ThreadID tid, Addr branch_pc, bool taken, BranchInfo *bi, Addr corrTarget, bool b, int hitBank, int altBank, int64_t phist) argument 376 updateStats(bool taken, BranchInfo *bi) argument [all...] |
H A D | multiperspective_perceptron_tage_8KB.hh | 63 StatisticalCorrector::BranchInfo* bi, int &lsum, int64_t phist) 66 StatisticalCorrector::BranchInfo *bi, int &lsum) const override; 68 StatisticalCorrector::BranchInfo* bi, int64_t phist) override; 70 StatisticalCorrector::BranchInfo *bi, Addr corrTarget) override;
|
H A D | tage_sc_l_8KB.hh | 62 bool alloc, bool taken, TAGEBase::BranchInfo* bi, int nrand) override; 65 Addr branch_pc, bool taken, TAGEBase::BranchInfo* bi) override; 93 unsigned getIndBiasBank( Addr branch_pc, BranchInfo* bi, int hitBank, 97 BranchInfo* bi, int & lsum, int64_t phist) override; 105 void gUpdates(ThreadID tid, Addr pc, bool taken, BranchInfo* bi,
|
H A D | multiperspective_perceptron_tage_8KB.cc | 73 StatisticalCorrector::BranchInfo* bi, int &lsum) const 75 int8_t ctr = bias[getIndBias(branch_pc, bi, false /* unused */)]; 77 ctr = biasSK[getIndBiasSK(branch_pc, bi)]; 83 StatisticalCorrector::BranchInfo* bi, int & lsum, int64_t phist) 87 lsum += gPredict((pc << 1) + bi->predBeforeSC, sh->globalHist << 11, 106 StatisticalCorrector::BranchInfo* bi, int64_t phist) 110 gUpdate((pc << 1) + bi->predBeforeSC, taken, sh->globalHist << 11, 111 gm, ggehl, gnb, logGnb, wg, bi); 114 lm, lgehl, lnb, logLnb, wl, bi); 117 pm, pgehl, pnb, logPnb, wp, bi); 72 getBiasLSUM(Addr branch_pc, StatisticalCorrector::BranchInfo* bi, int &lsum) const argument 82 gPredictions(ThreadID tid, Addr branch_pc, StatisticalCorrector::BranchInfo* bi, int & lsum, int64_t phist) argument 105 gUpdates(ThreadID tid, Addr pc, bool taken, StatisticalCorrector::BranchInfo* bi, int64_t phist) argument 121 scHistoryUpdate(Addr branch_pc, const StaticInstPtr &inst, bool taken, StatisticalCorrector::BranchInfo *bi, Addr corrTarget) argument [all...] |
H A D | multiperspective_perceptron.cc | 272 MultiperspectivePerceptron::getIndex(ThreadID tid, const MPPBranchInfo &bi, argument 275 unsigned int g = spec.getHash(tid, bi.getPC(), bi.getPC2(), index); 280 h ^= bi.getPC2(); 283 h ^= bi.getHPC(); 295 bi.getPC2(), 31, index); 303 MultiperspectivePerceptron::computeOutput(ThreadID tid, MPPBranchInfo &bi) argument 309 bi.yout = 0; 313 int lhist = threadData[tid]->localHistories[bi.getPC()]; 316 bi 403 train(ThreadID tid, MPPBranchInfo &bi, bool taken) argument 547 MPPBranchInfo *bi = new MPPBranchInfo(pc, pcshift, false); local 570 MPPBranchInfo *bi = new MPPBranchInfo(instPC, pcshift, true); local 615 MPPBranchInfo *bi = static_cast<MPPBranchInfo*>(bp_history); local 819 MPPBranchInfo *bi = static_cast<MPPBranchInfo*>(bp_history); local [all...] |
H A D | loop_predictor.hh | 166 * @param bi Pointer to information on the 173 bool getLoop(Addr pc, BranchInfo* bi, bool speculative, 180 * @param bi Pointer to information on the 184 void loopUpdate(Addr pc, bool Taken, BranchInfo* bi, bool tage_pred); 190 * @param bi Pointer to information on the prediction 193 void specLoopUpdate(bool taken, BranchInfo* bi); 200 * @param bi Pointer to information on the prediction 205 bool tage_pred, BranchInfo* bi, unsigned instShiftAmt); 213 * @param bi Reference to wrapping pointer to allow storing 222 BranchInfo* bi, boo [all...] |
H A D | multiperspective_perceptron_tage_64KB.hh | 66 StatisticalCorrector::BranchInfo* bi, int &lsum, int64_t phist) 69 StatisticalCorrector::BranchInfo *bi, int &lsum) const override; 71 StatisticalCorrector::BranchInfo* bi, int64_t phist) override; 73 StatisticalCorrector::BranchInfo *bi, Addr corrTarget) override;
|
H A D | tage_sc_l_64KB.hh | 63 bool alloc, bool taken, TAGEBase::BranchInfo* bi, int nrand) override; 66 Addr branch_pc, bool taken, TAGEBase::BranchInfo* bi) override; 113 unsigned getIndBiasBank(Addr branch_pc, BranchInfo* bi, int hitBank, 116 int gPredictions(ThreadID tid, Addr branch_pc, BranchInfo* bi, 124 void gUpdates(ThreadID tid, Addr pc, bool taken, BranchInfo* bi,
|
H A D | multiperspective_perceptron_tage.hh | 66 void handleTAGEUpdate(Addr branch_pc, bool taken, TAGEBase::BranchInfo* bi) 68 void handleAllocAndUReset(bool alloc, bool taken, TAGEBase::BranchInfo* bi, 73 bool isHighConfidence(TAGEBase::BranchInfo *bi) const override; 75 unsigned getUseAltIdx(TAGEBase::BranchInfo* bi, Addr branch_pc) override; 152 unsigned getIndBias(Addr branch_pc, StatisticalCorrector::BranchInfo* bi, 154 unsigned getIndBiasSK(Addr branch_pc, StatisticalCorrector::BranchInfo* bi) 157 StatisticalCorrector::BranchInfo* bi, int hitBank, 163 StatisticalCorrector::BranchInfo* bi, bool prev_pred_taken, 169 StatisticalCorrector::BranchInfo *bi, 174 StatisticalCorrector::BranchInfo *bi, in [all...] |
H A D | tage_base.hh | 242 * @param bi Pointer to information on the 245 virtual bool getBimodePred(Addr pc, BranchInfo* bi) const; 251 * @param bi Pointer to information on the prediction 254 void baseUpdate(Addr pc, bool taken, BranchInfo* bi); 273 * @param bi Pointer to information on the prediction 276 void update(ThreadID tid, Addr branch_pc, bool taken, BranchInfo* bi); 310 ThreadID tid, bool taken, BranchInfo *bi, Addr target); 316 * @param bi Pointer to information on the prediction 325 ThreadID tid, Addr branch_pc, bool taken, BranchInfo* bi, 334 * @param bi Pointe [all...] |
H A D | multiperspective_perceptron_tage_64KB.cc | 74 StatisticalCorrector::BranchInfo* bi, int &lsum) const 76 int8_t ctr = bias[getIndBias(branch_pc, bi, false /* unused */)]; 78 ctr = biasSK[getIndBiasSK(branch_pc, bi)]; 84 StatisticalCorrector::BranchInfo* bi, int & lsum, int64_t phist) 88 lsum += gPredict((pc << 1) + bi->predBeforeSC, sh->globalHist << 11, 115 StatisticalCorrector::BranchInfo* bi, int64_t phist) 119 gUpdate((pc << 1) + bi->predBeforeSC, taken, sh->globalHist << 11, 120 gm, ggehl, gnb, logGnb, wg, bi); 123 lm, lgehl, lnb, logLnb, wl, bi); 126 sm, sgehl, snb, logSnb, ws, bi); 73 getBiasLSUM(Addr branch_pc, StatisticalCorrector::BranchInfo* bi, int &lsum) const argument 83 gPredictions(ThreadID tid, Addr branch_pc, StatisticalCorrector::BranchInfo* bi, int & lsum, int64_t phist) argument 114 gUpdates(ThreadID tid, Addr pc, bool taken, StatisticalCorrector::BranchInfo* bi, int64_t phist) argument 136 scHistoryUpdate(Addr branch_pc, const StaticInstPtr &inst, bool taken, StatisticalCorrector::BranchInfo *bi, Addr corrTarget) argument [all...] |
/gem5/src/systemc/tests/systemc/datatypes/misc/signless_conversion/ |
H A D | signless_conversion.cpp | 57 sc_bigint<6> bi; local 64 bi = 10; 71 DISPLAY(bi(3,0)) 78 DISPLAY((bi(3,2),i(1,0))) 79 DISPLAY((bi(3,2),ui(1,0))) 80 DISPLAY((bi(3,2),bui(1,0))) 81 DISPLAY((bi(3,2),bi(1,0))) 86 DISPLAY((bui(3,2),bi(1,0))) 91 DISPLAY((i(3,2),bi( [all...] |
/gem5/src/systemc/tests/systemc/misc/stars/star132136/ |
H A D | test.cpp | 56 sc_bigint<32> bi; local 64 bi.range(14,1) = I;
|
/gem5/ext/systemc/src/sysc/datatypes/fx/ |
H A D | scfx_rep.h | 126 int bi() const { return m_bi; } function in class:sc_dt::scfx_index 510 int bi = n % bits_in_word; local 512 if( bi < 0 ) 514 bi += bits_in_word; 518 return scfx_index( wi, bi ); 526 int bi = x.bi(); local 530 if( enc == SC_US_ || ( m_mant[wi] & ( ((word)1) << bi ) ) == 0 ) 532 if( bi != bits_in_word - 1 ) 533 m_mant[wi] &= ~( ((word)-1) << ( bi 553 int bi = x.bi(); local 565 int bi = x.bi(); local 583 int bi = x.bi(); local 599 int bi = x.bi(); local 620 int bi = x.bi(); local 655 int bi = x.bi(); local 703 int bi = x.bi(); local 720 int bi = x.bi(); local 734 int bi = x.bi(); local 758 int bi = x.bi(); local 770 int bi = x.bi(); local [all...] |
/gem5/src/systemc/ext/dt/fx/ |
H A D | scfx_rep.hh | 121 int bi() const { return m_bi; } function in class:sc_dt::scfx_index 429 int bi = n % bits_in_word; local 431 if (bi < 0) { 432 bi += bits_in_word; 436 return scfx_index(wi, bi); 443 int bi = x.bi(); local 447 if (enc == SC_US_ || (m_mant[wi] & (((word)1) << bi)) == 0) { 448 if (bi != bits_in_word - 1) 449 m_mant[wi] &= ~(((word)-1) << (bi 466 int bi = x.bi(); local 477 int bi = x.bi(); local 494 int bi = x.bi(); local 509 int bi = x.bi(); local 528 int bi = x.bi(); local 561 int bi = x.bi(); local 604 int bi = x.bi(); local 620 int bi = x.bi(); local 633 int bi = x.bi(); local 654 int bi = x.bi(); local 665 int bi = x.bi(); local [all...] |