summaryrefslogtreecommitdiffstats
path: root/sys/dev/hwpmc/pmc_events.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/hwpmc/pmc_events.h')
-rw-r--r--sys/dev/hwpmc/pmc_events.h59
1 files changed, 41 insertions, 18 deletions
diff --git a/sys/dev/hwpmc/pmc_events.h b/sys/dev/hwpmc/pmc_events.h
index 45ebc21..f43e128 100644
--- a/sys/dev/hwpmc/pmc_events.h
+++ b/sys/dev/hwpmc/pmc_events.h
@@ -1981,27 +1981,50 @@ __PMC_EV_ALIAS("SIMD_INT_64.SHUFFLE_MOVE", IAP_EVENT_FDH_40H)
/*
- * Intel XScale events from "Intel XScale Core Developer's Manual",
- * January 2004, #27347302
+ * Intel XScale events from:
+ *
+ * Intel XScale Core Developer's Manual
+ * January, 2004, #27347302
+ *
+ * 3rd Generation Intel XScale Microarchitecture
+ * Developer's Manual
+ * May 2007, #31628302
+ *
+ * First 14 events are for 1st and 2nd Generation Intel XScale cores. The
+ * remaining are available only on 3rd Generation Intel XScale cores.
*/
-#define __PMC_EV_XSCALE() \
- __PMC_EV(XSCALE, IC_FETCH) \
- __PMC_EV(XSCALE, IC_MISS) \
- __PMC_EV(XSCALE, DATA_DEPENDENCY_STALL) \
- __PMC_EV(XSCALE, ITLB_MISS) \
- __PMC_EV(XSCALE, DTLB_MISS) \
- __PMC_EV(XSCALE, BRANCH_EXECUTED) \
- __PMC_EV(XSCALE, BRANCH_MISPRED) \
- __PMC_EV(XSCALE, INSTR_EXECUTED) \
- __PMC_EV(XSCALE, DC_FULL_CYCLE) \
- __PMC_EV(XSCALE, DC_FULL_CONTIG) \
- __PMC_EV(XSCALE, DC_ACCESS) \
- __PMC_EV(XSCALE, DC_MISS) \
- __PMC_EV(XSCALE, DC_WRITEBACK) \
- __PMC_EV(XSCALE, PC_CHANGE)
+#define __PMC_EV_XSCALE() \
+ __PMC_EV(XSCALE, IC_FETCH) \
+ __PMC_EV(XSCALE, IC_MISS) \
+ __PMC_EV(XSCALE, DATA_DEPENDENCY_STALLED) \
+ __PMC_EV(XSCALE, ITLB_MISS) \
+ __PMC_EV(XSCALE, DTLB_MISS) \
+ __PMC_EV(XSCALE, BRANCH_RETIRED) \
+ __PMC_EV(XSCALE, BRANCH_MISPRED) \
+ __PMC_EV(XSCALE, INSTR_RETIRED) \
+ __PMC_EV(XSCALE, DC_FULL_CYCLE) \
+ __PMC_EV(XSCALE, DC_FULL_CONTIG) \
+ __PMC_EV(XSCALE, DC_ACCESS) \
+ __PMC_EV(XSCALE, DC_MISS) \
+ __PMC_EV(XSCALE, DC_WRITEBACK) \
+ __PMC_EV(XSCALE, PC_CHANGE) \
+ __PMC_EV(XSCALE, BRANCH_RETIRED_ALL) \
+ __PMC_EV(XSCALE, INSTR_CYCLE) \
+ __PMC_EV(XSCALE, CP_STALL) \
+ __PMC_EV(XSCALE, PC_CHANGE_ALL) \
+ __PMC_EV(XSCALE, PIPELINE_FLUSH) \
+ __PMC_EV(XSCALE, BACKEND_STALL) \
+ __PMC_EV(XSCALE, MULTIPLIER_USE) \
+ __PMC_EV(XSCALE, MULTIPLIER_STALLED) \
+ __PMC_EV(XSCALE, DATA_CACHE_STALLED) \
+ __PMC_EV(XSCALE, L2_CACHE_REQ) \
+ __PMC_EV(XSCALE, L2_CACHE_MISS) \
+ __PMC_EV(XSCALE, ADDRESS_BUS_TRANS) \
+ __PMC_EV(XSCALE, SELF_ADDRESS_BUS_TRANS) \
+ __PMC_EV(XSCALE, DATA_BUS_TRANS)
#define PMC_EV_XSCALE_FIRST PMC_EV_XSCALE_IC_FETCH
-#define PMC_EV_XSCALE_LAST PMC_EV_XSCALE_PC_CHANGE
+#define PMC_EV_XSCALE_LAST PMC_EV_XSCALE_DATA_BUS_TRANS
/*
* All known PMC events.
OpenPOWER on IntegriCloud