xref: /freebsd/lib/libpmc/pmu-events/arch/x86/goldmontplus/frontend.json (revision 18054d0220cfc8df9c9568c437bd6fbb59d53c3c)
1959826caSMatt Macy[
2959826caSMatt Macy    {
3*18054d02SAlexander Motin        "BriefDescription": "BACLEARs asserted for any branch type",
4959826caSMatt Macy        "CollectPEBSRecord": "1",
5959826caSMatt Macy        "Counter": "0,1,2,3",
6*18054d02SAlexander Motin        "EventCode": "0xE6",
7*18054d02SAlexander Motin        "EventName": "BACLEARS.ALL",
8959826caSMatt Macy        "PDIR_COUNTER": "na",
9*18054d02SAlexander Motin        "PEBScounters": "0,1,2,3",
10*18054d02SAlexander Motin        "PublicDescription": "Counts the number of times a BACLEAR is signaled for any reason, including, but not limited to indirect branch/call,  Jcc (Jump on Conditional Code/Jump if Condition is Met) branch, unconditional branch/call, and returns.",
11959826caSMatt Macy        "SampleAfterValue": "200003",
12*18054d02SAlexander Motin        "UMask": "0x1"
13959826caSMatt Macy    },
14959826caSMatt Macy    {
15*18054d02SAlexander Motin        "BriefDescription": "BACLEARs asserted for conditional branch",
16959826caSMatt Macy        "CollectPEBSRecord": "1",
17959826caSMatt Macy        "Counter": "0,1,2,3",
18*18054d02SAlexander Motin        "EventCode": "0xE6",
19*18054d02SAlexander Motin        "EventName": "BACLEARS.COND",
20959826caSMatt Macy        "PDIR_COUNTER": "na",
21*18054d02SAlexander Motin        "PEBScounters": "0,1,2,3",
22*18054d02SAlexander Motin        "PublicDescription": "Counts BACLEARS on Jcc (Jump on Conditional Code/Jump if Condition is Met) branches.",
23959826caSMatt Macy        "SampleAfterValue": "200003",
24*18054d02SAlexander Motin        "UMask": "0x10"
25959826caSMatt Macy    },
26959826caSMatt Macy    {
27*18054d02SAlexander Motin        "BriefDescription": "BACLEARs asserted for return branch",
28959826caSMatt Macy        "CollectPEBSRecord": "1",
29959826caSMatt Macy        "Counter": "0,1,2,3",
30*18054d02SAlexander Motin        "EventCode": "0xE6",
31*18054d02SAlexander Motin        "EventName": "BACLEARS.RETURN",
32959826caSMatt Macy        "PDIR_COUNTER": "na",
33*18054d02SAlexander Motin        "PEBScounters": "0,1,2,3",
34*18054d02SAlexander Motin        "PublicDescription": "Counts BACLEARS on return instructions.",
35959826caSMatt Macy        "SampleAfterValue": "200003",
36*18054d02SAlexander Motin        "UMask": "0x8"
37959826caSMatt Macy    },
38959826caSMatt Macy    {
39*18054d02SAlexander Motin        "BriefDescription": "Decode restrictions due to predicting wrong instruction length",
40959826caSMatt Macy        "CollectPEBSRecord": "1",
41959826caSMatt Macy        "Counter": "0,1,2,3",
42959826caSMatt Macy        "EventCode": "0xE9",
43959826caSMatt Macy        "EventName": "DECODE_RESTRICTION.PREDECODE_WRONG",
44959826caSMatt Macy        "PDIR_COUNTER": "na",
45*18054d02SAlexander Motin        "PEBScounters": "0,1,2,3",
46*18054d02SAlexander Motin        "PublicDescription": "Counts the number of times the prediction (from the predecode cache) for instruction length is incorrect.",
47959826caSMatt Macy        "SampleAfterValue": "200003",
48*18054d02SAlexander Motin        "UMask": "0x1"
49*18054d02SAlexander Motin    },
50*18054d02SAlexander Motin    {
51*18054d02SAlexander Motin        "BriefDescription": "References per ICache line. This event counts differently than Intel processors based on Silvermont microarchitecture",
52*18054d02SAlexander Motin        "CollectPEBSRecord": "1",
53*18054d02SAlexander Motin        "Counter": "0,1,2,3",
54*18054d02SAlexander Motin        "EventCode": "0x80",
55*18054d02SAlexander Motin        "EventName": "ICACHE.ACCESSES",
56*18054d02SAlexander Motin        "PDIR_COUNTER": "na",
57*18054d02SAlexander Motin        "PEBScounters": "0,1,2,3",
58*18054d02SAlexander Motin        "PublicDescription": "Counts requests to the Instruction Cache (ICache) for one or more bytes in an ICache Line.  The event strives to count on a cache line basis, so that multiple fetches to a single cache line count as one ICACHE.ACCESS.  Specifically, the event counts when accesses from straight line code crosses the cache line boundary, or when a branch target is to a new line.\r\nThis event counts differently than Intel processors based on Silvermont microarchitecture.",
59*18054d02SAlexander Motin        "SampleAfterValue": "200003",
60*18054d02SAlexander Motin        "UMask": "0x3"
61*18054d02SAlexander Motin    },
62*18054d02SAlexander Motin    {
63*18054d02SAlexander Motin        "BriefDescription": "References per ICache line that are available in the ICache (hit). This event counts differently than Intel processors based on Silvermont microarchitecture",
64*18054d02SAlexander Motin        "CollectPEBSRecord": "1",
65*18054d02SAlexander Motin        "Counter": "0,1,2,3",
66*18054d02SAlexander Motin        "EventCode": "0x80",
67*18054d02SAlexander Motin        "EventName": "ICACHE.HIT",
68*18054d02SAlexander Motin        "PDIR_COUNTER": "na",
69*18054d02SAlexander Motin        "PEBScounters": "0,1,2,3",
70*18054d02SAlexander Motin        "PublicDescription": "Counts requests to the Instruction Cache (ICache) for one or more bytes in an ICache Line and that cache line is in the ICache (hit).  The event strives to count on a cache line basis, so that multiple accesses which hit in a single cache line count as one ICACHE.HIT.  Specifically, the event counts when straight line code crosses the cache line boundary, or when a branch target is to a new line, and that cache line is in the ICache. This event counts differently than Intel processors based on Silvermont microarchitecture.",
71*18054d02SAlexander Motin        "SampleAfterValue": "200003",
72*18054d02SAlexander Motin        "UMask": "0x1"
73*18054d02SAlexander Motin    },
74*18054d02SAlexander Motin    {
75*18054d02SAlexander Motin        "BriefDescription": "References per ICache line that are not available in the ICache (miss). This event counts differently than Intel processors based on Silvermont microarchitecture",
76*18054d02SAlexander Motin        "CollectPEBSRecord": "1",
77*18054d02SAlexander Motin        "Counter": "0,1,2,3",
78*18054d02SAlexander Motin        "EventCode": "0x80",
79*18054d02SAlexander Motin        "EventName": "ICACHE.MISSES",
80*18054d02SAlexander Motin        "PDIR_COUNTER": "na",
81*18054d02SAlexander Motin        "PEBScounters": "0,1,2,3",
82*18054d02SAlexander Motin        "PublicDescription": "Counts requests to the Instruction Cache (ICache)  for one or more bytes in an ICache Line and that cache line is not in the ICache (miss).  The event strives to count on a cache line basis, so that multiple accesses which miss in a single cache line count as one ICACHE.MISS.  Specifically, the event counts when straight line code crosses the cache line boundary, or when a branch target is to a new line, and that cache line is not in the ICache. This event counts differently than Intel processors based on Silvermont microarchitecture.",
83*18054d02SAlexander Motin        "SampleAfterValue": "200003",
84*18054d02SAlexander Motin        "UMask": "0x2"
85*18054d02SAlexander Motin    },
86*18054d02SAlexander Motin    {
87*18054d02SAlexander Motin        "BriefDescription": "MS decode starts",
88*18054d02SAlexander Motin        "CollectPEBSRecord": "1",
89*18054d02SAlexander Motin        "Counter": "0,1,2,3",
90*18054d02SAlexander Motin        "EventCode": "0xE7",
91*18054d02SAlexander Motin        "EventName": "MS_DECODED.MS_ENTRY",
92*18054d02SAlexander Motin        "PDIR_COUNTER": "na",
93*18054d02SAlexander Motin        "PEBScounters": "0,1,2,3",
94*18054d02SAlexander Motin        "PublicDescription": "Counts the number of times the Microcode Sequencer (MS) starts a flow of uops from the MSROM. It does not count every time a uop is read from the MSROM.  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 that initiates a flow of uops.  The event will count MS startups for uops that are speculative, and subsequently cleared by branch mispredict or a machine clear.",
95*18054d02SAlexander Motin        "SampleAfterValue": "200003",
96*18054d02SAlexander Motin        "UMask": "0x1"
97959826caSMatt Macy    }
98959826caSMatt Macy]