blob: d662cca715181486bfefa21710cde707eefd3504 [file] [log] [blame]
Paul Lind73f45fe2013-03-04 17:10:49 -08001// events from file arm/armv7-common/events
2 {0x00, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "PMNC_SW_INCR",
3 "Software increment of PMNC registers"},
4 {0x01, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "IFETCH_MISS",
5 "Instruction fetch misses from cache or normal cacheable memory"},
6 {0x02, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "ITLB_MISS",
7 "Instruction fetch misses from TLB"},
8 {0x03, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "DCACHE_REFILL",
9 "Data R/W operation that causes a refill from cache or normal cacheable memory"},
10 {0x04, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "DCACHE_ACCESS",
11 "Data R/W from cache"},
12 {0x05, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "DTLB_REFILL",
13 "Data R/W that causes a TLB refill"},
14 {0x06, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "DREAD",
15 "Data read architecturally executed (note: architecturally executed = for instructions that are unconditional or that pass the condition code)"},
16 {0x07, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "DWRITE",
17 "Data write architecturally executed"},
18 {0x08, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "INSTR_EXECUTED",
19 "All executed instructions"},
20 {0x09, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "EXC_TAKEN",
21 "Exception taken"},
22 {0x0A, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "EXC_EXECUTED",
23 "Exception return architecturally executed"},
24 {0x0B, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "CID_WRITE",
25 "Instruction that writes to the Context ID Register architecturally executed"},
26 {0x0C, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "PC_WRITE",
27 "SW change of PC, architecturally executed (not by exceptions)"},
28 {0x0D, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "PC_IMM_BRANCH",
29 "Immediate branch instruction executed (taken or not)"},
30 {0x0E, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "PC_PROC_RETURN",
31 "Procedure return architecturally executed (not by exceptions)"},
32 {0x0F, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "UNALIGNED_ACCESS",
33 "Unaligned access architecturally executed"},
34 {0x10, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "PC_BRANCH_MIS_PRED",
35 "Branch mispredicted or not predicted. Counts pipeline flushes because of misprediction"},
36 {0x12, CTR(1) | CTR(2) | CTR(3) | CTR(4) | CTR(5) | CTR(6), 0, "PC_BRANCH_MIS_USED",
37 "Branch or change in program flow that could have been predicted"},
38 {0xFF, CTR(0), 0, "CPU_CYCLES",
39 "Number of CPU cycles"},
40// events from file arm/armv7/events
41 {0x40, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "WRITE_BUFFER_FULL",
42 "Any write buffer full cycle"},
43 {0x41, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "L2_STORE_MERGED",
44 "Any store that is merged in L2 cache"},
45 {0x42, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "L2_STORE_BUFF",
46 "Any bufferable store from load/store to L2 cache"},
47 {0x43, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "L2_ACCESS",
48 "Any access to L2 cache"},
49 {0x44, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "L2_CACH_MISS",
50 "Any cacheable miss in L2 cache"},
51 {0x45, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "AXI_READ_CYCLES",
52 "Number of cycles for an active AXI read"},
53 {0x46, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "AXI_WRITE_CYCLES",
54 "Number of cycles for an active AXI write"},
55 {0x47, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "MEMORY_REPLAY",
56 "Any replay event in the memory subsystem"},
57 {0x48, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "UNALIGNED_ACCESS_REPLAY",
58 "Unaligned access that causes a replay"},
59 {0x49, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "L1_DATA_MISS",
60 "L1 data cache miss as a result of the hashing algorithm"},
61 {0x4A, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "L1_INST_MISS",
62 "L1 instruction cache miss as a result of the hashing algorithm"},
63 {0x4B, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "L1_DATA_COLORING",
64 "L1 data access in which a page coloring alias occurs"},
65 {0x4C, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "L1_NEON_DATA",
66 "NEON data access that hits L1 cache"},
67 {0x4D, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "L1_NEON_CACH_DATA",
68 "NEON cacheable data access that hits L1 cache"},
69 {0x4E, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "L2_NEON",
70 "L2 access as a result of NEON memory access"},
71 {0x4F, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "L2_NEON_HIT",
72 "Any NEON hit in L2 cache"},
73 {0x50, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "L1_INST",
74 "Any L1 instruction cache access, excluding CP15 cache accesses"},
75 {0x51, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "PC_RETURN_MIS_PRED",
76 "Return stack misprediction at return stack pop (incorrect target address)"},
77 {0x52, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "PC_BRANCH_FAILED",
78 "Branch prediction misprediction"},
79 {0x53, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "PC_BRANCH_TAKEN",
80 "Any predicted branch that is taken"},
81 {0x54, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "PC_BRANCH_EXECUTED",
82 "Any taken branch that is executed"},
83 {0x55, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "OP_EXECUTED",
84 "Number of operations executed (in instruction or mutli-cycle instruction)"},
85 {0x56, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "CYCLES_INST_STALL",
86 "Cycles where no instruction available"},
87 {0x57, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "CYCLES_INST",
88 "Number of instructions issued in a cycle"},
89 {0x58, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "CYCLES_NEON_DATA_STALL",
90 "Number of cycles the processor waits on MRC data from NEON"},
91 {0x59, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "CYCLES_NEON_INST_STALL",
92 "Number of cycles the processor waits on NEON instruction queue or NEON load queue"},
93 {0x5A, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "NEON_CYCLES",
94 "Number of cycles NEON and integer processors are not idle"},
95 {0x70, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "PMU0_EVENTS",
96 "Number of events from external input source PMUEXTIN[0]"},
97 {0x71, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "PMU1_EVENTS",
98 "Number of events from external input source PMUEXTIN[1]"},
99 {0x72, CTR(1) | CTR(2) | CTR(3) | CTR(4), 0, "PMU_EVENTS",
100 "Number of events from both external input sources PMUEXTIN[0] and PMUEXTIN[1]"},