public void calculateBasicScore(ROB_entry entry) { // the baseline score, based only on instruction type (+mispredicted branch)
        if (entry.theUop.type == UopType.insn_CBRANCH){ // score for conditional branch
            entry.score += BRANCH_SCORE;
            if(heuristic.type != HeuristicType.heuristic_BASE_SCORE){//if we're doing the basic score we don't have the misprediction predictor
                if (entry.mispredictedBranch_f) {// check if need to add score for mispredicted branch
                    entry.score += MISPREDICTED_BRANCH_SCORE;
                }
            }
        }
        else if (entry.theUop.type == UopType.insn_UBRANCH) // score for unconditional branch
            entry.score += BRANCH_SCORE;
        else if (entry.theUop.type == UopType.insn_LOAD) // score for load
            entry.score += LOAD_SCORE;
        else if (entry.theUop.type == UopType.insn_DIVIDE) // score for divide
            entry.score += DIVIDE_SCORE;
        else if (entry.theUop.type == UopType.insn_MULTIPLY) // score for multiply
            entry.score += MULTIPLY_SCORE;
    }