11b097845SAndi Kleen[ 21b097845SAndi Kleen { 3a2f6001bSIan Rogers "BriefDescription": "Counts the number of baclears", 4a2f6001bSIan Rogers "EventCode": "0xE6", 5a2f6001bSIan Rogers "EventName": "BACLEARS.ALL", 6a2f6001bSIan Rogers "PublicDescription": "The BACLEARS event counts the number of times the front end is resteered, mainly when the Branch Prediction Unit cannot provide a correct prediction and this is corrected by the Branch Address Calculator at the front end. The BACLEARS.ANY event counts the number of baclears for any type of branch.", 71b097845SAndi Kleen "SampleAfterValue": "200003", 8a2f6001bSIan Rogers "UMask": "0x1" 91b097845SAndi Kleen }, 101b097845SAndi Kleen { 11a2f6001bSIan Rogers "BriefDescription": "Counts the number of JCC baclears", 12a2f6001bSIan Rogers "EventCode": "0xE6", 13a2f6001bSIan Rogers "EventName": "BACLEARS.COND", 14*c3fdd79dSIan Rogers "PublicDescription": "The BACLEARS event counts the number of times the front end is resteered, mainly when the Branch Prediction Unit cannot provide a correct prediction and this is corrected by the Branch Address Calculator at the front end. The BACLEARS.COND event counts the number of JCC (Jump on Conditional Code) baclears.", 151b097845SAndi Kleen "SampleAfterValue": "200003", 16a2f6001bSIan Rogers "UMask": "0x10" 171b097845SAndi Kleen }, 181b097845SAndi Kleen { 19a2f6001bSIan Rogers "BriefDescription": "Counts the number of RETURN baclears", 20a2f6001bSIan Rogers "EventCode": "0xE6", 21a2f6001bSIan Rogers "EventName": "BACLEARS.RETURN", 22a2f6001bSIan Rogers "PublicDescription": "The BACLEARS event counts the number of times the front end is resteered, mainly when the Branch Prediction Unit cannot provide a correct prediction and this is corrected by the Branch Address Calculator at the front end. The BACLEARS.RETURN event counts the number of RETURN baclears.", 231b097845SAndi Kleen "SampleAfterValue": "200003", 24a2f6001bSIan Rogers "UMask": "0x8" 251b097845SAndi Kleen }, 261b097845SAndi Kleen { 27a2f6001bSIan Rogers "BriefDescription": "Counts the number of times a decode restriction reduced the decode throughput due to wrong instruction length prediction", 281b097845SAndi Kleen "EventCode": "0xE9", 291b097845SAndi Kleen "EventName": "DECODE_RESTRICTION.PREDECODE_WRONG", 30a2f6001bSIan Rogers "PublicDescription": "Counts the number of times a decode restriction reduced the decode throughput due to wrong instruction length prediction.", 311b097845SAndi Kleen "SampleAfterValue": "200003", 32a2f6001bSIan Rogers "UMask": "0x1" 33a2f6001bSIan Rogers }, 34a2f6001bSIan Rogers { 35a2f6001bSIan Rogers "BriefDescription": "Instruction fetches", 36a2f6001bSIan Rogers "EventCode": "0x80", 37a2f6001bSIan Rogers "EventName": "ICACHE.ACCESSES", 38a2f6001bSIan Rogers "PublicDescription": "This event counts all instruction fetches, not including most uncacheable\r\nfetches.", 39a2f6001bSIan Rogers "SampleAfterValue": "200003", 40a2f6001bSIan Rogers "UMask": "0x3" 41a2f6001bSIan Rogers }, 42a2f6001bSIan Rogers { 43a2f6001bSIan Rogers "BriefDescription": "Instruction fetches from Icache", 44a2f6001bSIan Rogers "EventCode": "0x80", 45a2f6001bSIan Rogers "EventName": "ICACHE.HIT", 46a2f6001bSIan Rogers "PublicDescription": "This event counts all instruction fetches from the instruction cache.", 47a2f6001bSIan Rogers "SampleAfterValue": "200003", 48a2f6001bSIan Rogers "UMask": "0x1" 49a2f6001bSIan Rogers }, 50a2f6001bSIan Rogers { 51a2f6001bSIan Rogers "BriefDescription": "Icache miss", 52a2f6001bSIan Rogers "EventCode": "0x80", 53a2f6001bSIan Rogers "EventName": "ICACHE.MISSES", 54a2f6001bSIan Rogers "PublicDescription": "This event counts all instruction fetches that miss the Instruction cache or produce memory requests. This includes uncacheable fetches. An instruction fetch miss is counted only once and not once for every cycle it is outstanding.", 55a2f6001bSIan Rogers "SampleAfterValue": "200003", 56a2f6001bSIan Rogers "UMask": "0x2" 57a2f6001bSIan Rogers }, 58a2f6001bSIan Rogers { 59a2f6001bSIan Rogers "BriefDescription": "Counts the number of times entered into a ucode flow in the FEC. Includes inserted flows due to front-end detected faults or assists. Speculative count.", 60a2f6001bSIan Rogers "EventCode": "0xE7", 61a2f6001bSIan Rogers "EventName": "MS_DECODED.MS_ENTRY", 62a2f6001bSIan Rogers "PublicDescription": "Counts the number of times the MSROM starts a flow of UOPS. It does not count every time a UOP is read from the microcode ROM. The most common case that this counts is when a micro-coded instruction is encountered by the front end of the machine. Other cases include when an instruction encounters a fault, trap, or microcode assist of any sort. The event will count MSROM startups for UOPS that are speculative, and subsequently cleared by branch mispredict or machine clear. Background: UOPS are produced by two mechanisms. Either they are generated by hardware that decodes instructions into UOPS, or they are delivered by a ROM (called the MSROM) that holds UOPS associated with a specific instruction. MSROM UOPS might also be delivered in response to some condition such as a fault or other exceptional condition. This event is an excellent mechanism for detecting instructions that require the use of MSROM instructions.", 63a2f6001bSIan Rogers "SampleAfterValue": "200003", 64a2f6001bSIan Rogers "UMask": "0x1" 651b097845SAndi Kleen } 661b097845SAndi Kleen] 67