1[ 2 { 3 "EventName": "bp_l2_btb_correct", 4 "EventCode": "0x8b", 5 "BriefDescription": "L2 branch prediction overrides existing prediction (speculative)." 6 }, 7 { 8 "EventName": "bp_dyn_ind_pred", 9 "EventCode": "0x8e", 10 "BriefDescription": "Dynamic indirect predictions (branch used the indirect predictor to make a prediction)." 11 }, 12 { 13 "EventName": "bp_de_redirect", 14 "EventCode": "0x91", 15 "BriefDescription": "Instruction decoder corrects the predicted target and resteers the branch predictor." 16 }, 17 { 18 "EventName": "ex_ret_brn", 19 "EventCode": "0xc2", 20 "BriefDescription": "Retired branch instructions (all types of architectural control flow changes, including exceptions and interrupts)." 21 }, 22 { 23 "EventName": "ex_ret_brn_misp", 24 "EventCode": "0xc3", 25 "BriefDescription": "Retired branch instructions mispredicted." 26 }, 27 { 28 "EventName": "ex_ret_brn_tkn", 29 "EventCode": "0xc4", 30 "BriefDescription": "Retired taken branch instructions (all types of architectural control flow changes, including exceptions and interrupts)." 31 }, 32 { 33 "EventName": "ex_ret_brn_tkn_misp", 34 "EventCode": "0xc5", 35 "BriefDescription": "Retired taken branch instructions mispredicted." 36 }, 37 { 38 "EventName": "ex_ret_brn_far", 39 "EventCode": "0xc6", 40 "BriefDescription": "Retired far control transfers (far call/jump/return, IRET, SYSCALL and SYSRET, plus exceptions and interrupts). Far control transfers are not subject to branch prediction." 41 }, 42 { 43 "EventName": "ex_ret_near_ret", 44 "EventCode": "0xc8", 45 "BriefDescription": "Retired near returns (RET or RET Iw)." 46 }, 47 { 48 "EventName": "ex_ret_near_ret_mispred", 49 "EventCode": "0xc9", 50 "BriefDescription": "Retired near returns mispredicted. Each misprediction incurs the same penalty as a mispredicted conditional branch instruction." 51 }, 52 { 53 "EventName": "ex_ret_brn_ind_misp", 54 "EventCode": "0xca", 55 "BriefDescription": "Retired indirect branch instructions mispredicted (only EX mispredicts). Each misprediction incurs the same penalty as a mispredicted conditional branch instruction." 56 }, 57 { 58 "EventName": "ex_ret_ind_brch_instr", 59 "EventCode": "0xcc", 60 "BriefDescription": "Retired indirect branch instructions." 61 }, 62 { 63 "EventName": "ex_ret_cond", 64 "EventCode": "0xd1", 65 "BriefDescription": "Retired conditional branch instructions." 66 }, 67 { 68 "EventName": "ex_ret_msprd_brnch_instr_dir_msmtch", 69 "EventCode": "0x1c7", 70 "BriefDescription": "Retired branch instructions mispredicted due to direction mismatch." 71 }, 72 { 73 "EventName": "ex_ret_uncond_brnch_instr_mispred", 74 "EventCode": "0x1c8", 75 "BriefDescription": "Retired unconditional indirect branch instructions mispredicted." 76 }, 77 { 78 "EventName": "ex_ret_uncond_brnch_instr", 79 "EventCode": "0x1c9", 80 "BriefDescription": "Retired unconditional branch instructions." 81 } 82] 83