Blame src/libpfm4/lib/events/power4_events.h

Packit 577717
/****************************/
Packit 577717
/* THIS IS OPEN SOURCE CODE */
Packit 577717
/****************************/
Packit 577717
Packit 577717
#ifndef __POWER4_EVENTS_H__
Packit 577717
#define __POWER4_EVENTS_H__
Packit 577717
Packit 577717
/*
Packit 577717
* File:    power4_events.h
Packit 577717
* CVS:
Packit 577717
* Author:  Corey Ashford
Packit 577717
*          cjashfor@us.ibm.com
Packit 577717
* Mods:    <your name here>
Packit 577717
*          <your email address>
Packit 577717
*
Packit 577717
* (C) Copyright IBM Corporation, 2009.  All Rights Reserved.
Packit 577717
* Contributed by Corey Ashford <cjashfor.ibm.com>
Packit 577717
*
Packit 577717
* Note: This code was automatically generated and should not be modified by
Packit 577717
* hand.
Packit 577717
*
Packit 577717
*/
Packit 577717
#define POWER4_PME_PM_MRK_LSU_SRQ_INST_VALID 0
Packit 577717
#define POWER4_PME_PM_FPU1_SINGLE 1
Packit 577717
#define POWER4_PME_PM_DC_PREF_OUT_STREAMS 2
Packit 577717
#define POWER4_PME_PM_FPU0_STALL3 3
Packit 577717
#define POWER4_PME_PM_TB_BIT_TRANS 4
Packit 577717
#define POWER4_PME_PM_GPR_MAP_FULL_CYC 5
Packit 577717
#define POWER4_PME_PM_MRK_ST_CMPL 6
Packit 577717
#define POWER4_PME_PM_MRK_LSU_FLUSH_LRQ 7
Packit 577717
#define POWER4_PME_PM_FPU0_STF 8
Packit 577717
#define POWER4_PME_PM_FPU1_FMA 9
Packit 577717
#define POWER4_PME_PM_L2SA_MOD_TAG 10
Packit 577717
#define POWER4_PME_PM_MRK_DATA_FROM_L275_SHR 11
Packit 577717
#define POWER4_PME_PM_1INST_CLB_CYC 12
Packit 577717
#define POWER4_PME_PM_LSU1_FLUSH_ULD 13
Packit 577717
#define POWER4_PME_PM_MRK_INST_FIN 14
Packit 577717
#define POWER4_PME_PM_MRK_LSU0_FLUSH_UST 15
Packit 577717
#define POWER4_PME_PM_FPU_FDIV 16
Packit 577717
#define POWER4_PME_PM_LSU_LRQ_S0_ALLOC 17
Packit 577717
#define POWER4_PME_PM_FPU0_FULL_CYC 18
Packit 577717
#define POWER4_PME_PM_FPU_SINGLE 19
Packit 577717
#define POWER4_PME_PM_FPU0_FMA 20
Packit 577717
#define POWER4_PME_PM_MRK_LSU1_FLUSH_ULD 21
Packit 577717
#define POWER4_PME_PM_LSU1_FLUSH_LRQ 22
Packit 577717
#define POWER4_PME_PM_L2SA_ST_HIT 23
Packit 577717
#define POWER4_PME_PM_L2SB_SHR_INV 24
Packit 577717
#define POWER4_PME_PM_DTLB_MISS 25
Packit 577717
#define POWER4_PME_PM_MRK_ST_MISS_L1 26
Packit 577717
#define POWER4_PME_PM_EXT_INT 27
Packit 577717
#define POWER4_PME_PM_MRK_LSU1_FLUSH_LRQ 28
Packit 577717
#define POWER4_PME_PM_MRK_ST_GPS 29
Packit 577717
#define POWER4_PME_PM_GRP_DISP_SUCCESS 30
Packit 577717
#define POWER4_PME_PM_LSU1_LDF 31
Packit 577717
#define POWER4_PME_PM_FAB_CMD_ISSUED 32
Packit 577717
#define POWER4_PME_PM_LSU0_SRQ_STFWD 33
Packit 577717
#define POWER4_PME_PM_CR_MAP_FULL_CYC 34
Packit 577717
#define POWER4_PME_PM_MRK_LSU0_FLUSH_ULD 35
Packit 577717
#define POWER4_PME_PM_LSU_DERAT_MISS 36
Packit 577717
#define POWER4_PME_PM_FPU0_SINGLE 37
Packit 577717
#define POWER4_PME_PM_FPU1_FDIV 38
Packit 577717
#define POWER4_PME_PM_FPU1_FEST 39
Packit 577717
#define POWER4_PME_PM_FPU0_FRSP_FCONV 40
Packit 577717
#define POWER4_PME_PM_MRK_ST_CMPL_INT 41
Packit 577717
#define POWER4_PME_PM_FXU_FIN 42
Packit 577717
#define POWER4_PME_PM_FPU_STF 43
Packit 577717
#define POWER4_PME_PM_DSLB_MISS 44
Packit 577717
#define POWER4_PME_PM_DATA_FROM_L275_SHR 45
Packit 577717
#define POWER4_PME_PM_FXLS1_FULL_CYC 46
Packit 577717
#define POWER4_PME_PM_L3B0_DIR_MIS 47
Packit 577717
#define POWER4_PME_PM_2INST_CLB_CYC 48
Packit 577717
#define POWER4_PME_PM_MRK_STCX_FAIL 49
Packit 577717
#define POWER4_PME_PM_LSU_LMQ_LHR_MERGE 50
Packit 577717
#define POWER4_PME_PM_FXU0_BUSY_FXU1_IDLE 51
Packit 577717
#define POWER4_PME_PM_L3B1_DIR_REF 52
Packit 577717
#define POWER4_PME_PM_MRK_LSU_FLUSH_UST 53
Packit 577717
#define POWER4_PME_PM_MRK_DATA_FROM_L25_SHR 54
Packit 577717
#define POWER4_PME_PM_LSU_FLUSH_ULD 55
Packit 577717
#define POWER4_PME_PM_MRK_BRU_FIN 56
Packit 577717
#define POWER4_PME_PM_IERAT_XLATE_WR 57
Packit 577717
#define POWER4_PME_PM_LSU0_BUSY 58
Packit 577717
#define POWER4_PME_PM_L2SA_ST_REQ 59
Packit 577717
#define POWER4_PME_PM_DATA_FROM_MEM 60
Packit 577717
#define POWER4_PME_PM_FPR_MAP_FULL_CYC 61
Packit 577717
#define POWER4_PME_PM_FPU1_FULL_CYC 62
Packit 577717
#define POWER4_PME_PM_FPU0_FIN 63
Packit 577717
#define POWER4_PME_PM_3INST_CLB_CYC 64
Packit 577717
#define POWER4_PME_PM_DATA_FROM_L35 65
Packit 577717
#define POWER4_PME_PM_L2SA_SHR_INV 66
Packit 577717
#define POWER4_PME_PM_MRK_LSU_FLUSH_SRQ 67
Packit 577717
#define POWER4_PME_PM_THRESH_TIMEO 68
Packit 577717
#define POWER4_PME_PM_FPU_FSQRT 69
Packit 577717
#define POWER4_PME_PM_MRK_LSU0_FLUSH_LRQ 70
Packit 577717
#define POWER4_PME_PM_FXLS0_FULL_CYC 71
Packit 577717
#define POWER4_PME_PM_DATA_TABLEWALK_CYC 72
Packit 577717
#define POWER4_PME_PM_FPU0_ALL 73
Packit 577717
#define POWER4_PME_PM_FPU0_FEST 74
Packit 577717
#define POWER4_PME_PM_DATA_FROM_L25_MOD 75
Packit 577717
#define POWER4_PME_PM_LSU_LMQ_SRQ_EMPTY_CYC 76
Packit 577717
#define POWER4_PME_PM_FPU_FEST 77
Packit 577717
#define POWER4_PME_PM_0INST_FETCH 78
Packit 577717
#define POWER4_PME_PM_LARX_LSU1 79
Packit 577717
#define POWER4_PME_PM_LD_MISS_L1_LSU0 80
Packit 577717
#define POWER4_PME_PM_L1_PREF 81
Packit 577717
#define POWER4_PME_PM_FPU1_STALL3 82
Packit 577717
#define POWER4_PME_PM_BRQ_FULL_CYC 83
Packit 577717
#define POWER4_PME_PM_LARX 84
Packit 577717
#define POWER4_PME_PM_MRK_DATA_FROM_L35 85
Packit 577717
#define POWER4_PME_PM_WORK_HELD 86
Packit 577717
#define POWER4_PME_PM_MRK_LD_MISS_L1_LSU0 87
Packit 577717
#define POWER4_PME_PM_FXU_IDLE 88
Packit 577717
#define POWER4_PME_PM_INST_CMPL 89
Packit 577717
#define POWER4_PME_PM_LSU1_FLUSH_UST 90
Packit 577717
#define POWER4_PME_PM_LSU0_FLUSH_ULD 91
Packit 577717
#define POWER4_PME_PM_INST_FROM_L2 92
Packit 577717
#define POWER4_PME_PM_DATA_FROM_L3 93
Packit 577717
#define POWER4_PME_PM_FPU0_DENORM 94
Packit 577717
#define POWER4_PME_PM_FPU1_FMOV_FEST 95
Packit 577717
#define POWER4_PME_PM_GRP_DISP_REJECT 96
Packit 577717
#define POWER4_PME_PM_INST_FETCH_CYC 97
Packit 577717
#define POWER4_PME_PM_LSU_LDF 98
Packit 577717
#define POWER4_PME_PM_INST_DISP 99
Packit 577717
#define POWER4_PME_PM_L2SA_MOD_INV 100
Packit 577717
#define POWER4_PME_PM_DATA_FROM_L25_SHR 101
Packit 577717
#define POWER4_PME_PM_FAB_CMD_RETRIED 102
Packit 577717
#define POWER4_PME_PM_L1_DCACHE_RELOAD_VALID 103
Packit 577717
#define POWER4_PME_PM_MRK_GRP_ISSUED 104
Packit 577717
#define POWER4_PME_PM_FPU_FULL_CYC 105
Packit 577717
#define POWER4_PME_PM_FPU_FMA 106
Packit 577717
#define POWER4_PME_PM_MRK_CRU_FIN 107
Packit 577717
#define POWER4_PME_PM_MRK_LSU1_FLUSH_UST 108
Packit 577717
#define POWER4_PME_PM_MRK_FXU_FIN 109
Packit 577717
#define POWER4_PME_PM_BR_ISSUED 110
Packit 577717
#define POWER4_PME_PM_EE_OFF 111
Packit 577717
#define POWER4_PME_PM_INST_FROM_L3 112
Packit 577717
#define POWER4_PME_PM_ITLB_MISS 113
Packit 577717
#define POWER4_PME_PM_FXLS_FULL_CYC 114
Packit 577717
#define POWER4_PME_PM_FXU1_BUSY_FXU0_IDLE 115
Packit 577717
#define POWER4_PME_PM_GRP_DISP_VALID 116
Packit 577717
#define POWER4_PME_PM_L2SC_ST_HIT 117
Packit 577717
#define POWER4_PME_PM_MRK_GRP_DISP 118
Packit 577717
#define POWER4_PME_PM_L2SB_MOD_TAG 119
Packit 577717
#define POWER4_PME_PM_INST_FROM_L25_L275 120
Packit 577717
#define POWER4_PME_PM_LSU_FLUSH_UST 121
Packit 577717
#define POWER4_PME_PM_L2SB_ST_HIT 122
Packit 577717
#define POWER4_PME_PM_FXU1_FIN 123
Packit 577717
#define POWER4_PME_PM_L3B1_DIR_MIS 124
Packit 577717
#define POWER4_PME_PM_4INST_CLB_CYC 125
Packit 577717
#define POWER4_PME_PM_GRP_CMPL 126
Packit 577717
#define POWER4_PME_PM_DC_PREF_L2_CLONE_L3 127
Packit 577717
#define POWER4_PME_PM_FPU_FRSP_FCONV 128
Packit 577717
#define POWER4_PME_PM_5INST_CLB_CYC 129
Packit 577717
#define POWER4_PME_PM_MRK_LSU0_FLUSH_SRQ 130
Packit 577717
#define POWER4_PME_PM_MRK_LSU_FLUSH_ULD 131
Packit 577717
#define POWER4_PME_PM_8INST_CLB_CYC 132
Packit 577717
#define POWER4_PME_PM_LSU_LMQ_FULL_CYC 133
Packit 577717
#define POWER4_PME_PM_ST_REF_L1_LSU0 134
Packit 577717
#define POWER4_PME_PM_LSU0_DERAT_MISS 135
Packit 577717
#define POWER4_PME_PM_LSU_SRQ_SYNC_CYC 136
Packit 577717
#define POWER4_PME_PM_FPU_STALL3 137
Packit 577717
#define POWER4_PME_PM_MRK_DATA_FROM_L2 138
Packit 577717
#define POWER4_PME_PM_FPU0_FMOV_FEST 139
Packit 577717
#define POWER4_PME_PM_LSU0_FLUSH_SRQ 140
Packit 577717
#define POWER4_PME_PM_LD_REF_L1_LSU0 141
Packit 577717
#define POWER4_PME_PM_L2SC_SHR_INV 142
Packit 577717
#define POWER4_PME_PM_LSU1_FLUSH_SRQ 143
Packit 577717
#define POWER4_PME_PM_LSU_LMQ_S0_ALLOC 144
Packit 577717
#define POWER4_PME_PM_ST_REF_L1 145
Packit 577717
#define POWER4_PME_PM_LSU_SRQ_EMPTY_CYC 146
Packit 577717
#define POWER4_PME_PM_FPU1_STF 147
Packit 577717
#define POWER4_PME_PM_L3B0_DIR_REF 148
Packit 577717
#define POWER4_PME_PM_RUN_CYC 149
Packit 577717
#define POWER4_PME_PM_LSU_LMQ_S0_VALID 150
Packit 577717
#define POWER4_PME_PM_LSU_LRQ_S0_VALID 151
Packit 577717
#define POWER4_PME_PM_LSU0_LDF 152
Packit 577717
#define POWER4_PME_PM_MRK_IMR_RELOAD 153
Packit 577717
#define POWER4_PME_PM_7INST_CLB_CYC 154
Packit 577717
#define POWER4_PME_PM_MRK_GRP_TIMEO 155
Packit 577717
#define POWER4_PME_PM_FPU_FMOV_FEST 156
Packit 577717
#define POWER4_PME_PM_GRP_DISP_BLK_SB_CYC 157
Packit 577717
#define POWER4_PME_PM_XER_MAP_FULL_CYC 158
Packit 577717
#define POWER4_PME_PM_ST_MISS_L1 159
Packit 577717
#define POWER4_PME_PM_STOP_COMPLETION 160
Packit 577717
#define POWER4_PME_PM_MRK_GRP_CMPL 161
Packit 577717
#define POWER4_PME_PM_ISLB_MISS 162
Packit 577717
#define POWER4_PME_PM_CYC 163
Packit 577717
#define POWER4_PME_PM_LD_MISS_L1_LSU1 164
Packit 577717
#define POWER4_PME_PM_STCX_FAIL 165
Packit 577717
#define POWER4_PME_PM_LSU1_SRQ_STFWD 166
Packit 577717
#define POWER4_PME_PM_GRP_DISP 167
Packit 577717
#define POWER4_PME_PM_DATA_FROM_L2 168
Packit 577717
#define POWER4_PME_PM_L2_PREF 169
Packit 577717
#define POWER4_PME_PM_FPU0_FPSCR 170
Packit 577717
#define POWER4_PME_PM_FPU1_DENORM 171
Packit 577717
#define POWER4_PME_PM_MRK_DATA_FROM_L25_MOD 172
Packit 577717
#define POWER4_PME_PM_L2SB_ST_REQ 173
Packit 577717
#define POWER4_PME_PM_L2SB_MOD_INV 174
Packit 577717
#define POWER4_PME_PM_FPU0_FSQRT 175
Packit 577717
#define POWER4_PME_PM_LD_REF_L1 176
Packit 577717
#define POWER4_PME_PM_MRK_L1_RELOAD_VALID 177
Packit 577717
#define POWER4_PME_PM_L2SB_SHR_MOD 178
Packit 577717
#define POWER4_PME_PM_INST_FROM_L1 179
Packit 577717
#define POWER4_PME_PM_1PLUS_PPC_CMPL 180
Packit 577717
#define POWER4_PME_PM_EE_OFF_EXT_INT 181
Packit 577717
#define POWER4_PME_PM_L2SC_SHR_MOD 182
Packit 577717
#define POWER4_PME_PM_LSU_LRQ_FULL_CYC 183
Packit 577717
#define POWER4_PME_PM_IC_PREF_INSTALL 184
Packit 577717
#define POWER4_PME_PM_MRK_LSU1_FLUSH_SRQ 185
Packit 577717
#define POWER4_PME_PM_GCT_FULL_CYC 186
Packit 577717
#define POWER4_PME_PM_INST_FROM_MEM 187
Packit 577717
#define POWER4_PME_PM_FXU_BUSY 188
Packit 577717
#define POWER4_PME_PM_ST_REF_L1_LSU1 189
Packit 577717
#define POWER4_PME_PM_MRK_LD_MISS_L1 190
Packit 577717
#define POWER4_PME_PM_MRK_LSU1_INST_FIN 191
Packit 577717
#define POWER4_PME_PM_L1_WRITE_CYC 192
Packit 577717
#define POWER4_PME_PM_BIQ_IDU_FULL_CYC 193
Packit 577717
#define POWER4_PME_PM_MRK_LSU0_INST_FIN 194
Packit 577717
#define POWER4_PME_PM_L2SC_ST_REQ 195
Packit 577717
#define POWER4_PME_PM_LSU1_BUSY 196
Packit 577717
#define POWER4_PME_PM_FPU_ALL 197
Packit 577717
#define POWER4_PME_PM_LSU_SRQ_S0_ALLOC 198
Packit 577717
#define POWER4_PME_PM_GRP_MRK 199
Packit 577717
#define POWER4_PME_PM_FPU1_FIN 200
Packit 577717
#define POWER4_PME_PM_DC_PREF_STREAM_ALLOC 201
Packit 577717
#define POWER4_PME_PM_BR_MPRED_CR 202
Packit 577717
#define POWER4_PME_PM_BR_MPRED_TA 203
Packit 577717
#define POWER4_PME_PM_CRQ_FULL_CYC 204
Packit 577717
#define POWER4_PME_PM_INST_FROM_PREF 205
Packit 577717
#define POWER4_PME_PM_LD_MISS_L1 206
Packit 577717
#define POWER4_PME_PM_STCX_PASS 207
Packit 577717
#define POWER4_PME_PM_DC_INV_L2 208
Packit 577717
#define POWER4_PME_PM_LSU_SRQ_FULL_CYC 209
Packit 577717
#define POWER4_PME_PM_LSU0_FLUSH_LRQ 210
Packit 577717
#define POWER4_PME_PM_LSU_SRQ_S0_VALID 211
Packit 577717
#define POWER4_PME_PM_LARX_LSU0 212
Packit 577717
#define POWER4_PME_PM_GCT_EMPTY_CYC 213
Packit 577717
#define POWER4_PME_PM_FPU1_ALL 214
Packit 577717
#define POWER4_PME_PM_FPU1_FSQRT 215
Packit 577717
#define POWER4_PME_PM_FPU_FIN 216
Packit 577717
#define POWER4_PME_PM_L2SA_SHR_MOD 217
Packit 577717
#define POWER4_PME_PM_MRK_LD_MISS_L1_LSU1 218
Packit 577717
#define POWER4_PME_PM_LSU_SRQ_STFWD 219
Packit 577717
#define POWER4_PME_PM_FXU0_FIN 220
Packit 577717
#define POWER4_PME_PM_MRK_FPU_FIN 221
Packit 577717
#define POWER4_PME_PM_LSU_BUSY 222
Packit 577717
#define POWER4_PME_PM_INST_FROM_L35 223
Packit 577717
#define POWER4_PME_PM_FPU1_FRSP_FCONV 224
Packit 577717
#define POWER4_PME_PM_SNOOP_TLBIE 225
Packit 577717
#define POWER4_PME_PM_FPU0_FDIV 226
Packit 577717
#define POWER4_PME_PM_LD_REF_L1_LSU1 227
Packit 577717
#define POWER4_PME_PM_MRK_DATA_FROM_L275_MOD 228
Packit 577717
#define POWER4_PME_PM_HV_CYC 229
Packit 577717
#define POWER4_PME_PM_6INST_CLB_CYC 230
Packit 577717
#define POWER4_PME_PM_LR_CTR_MAP_FULL_CYC 231
Packit 577717
#define POWER4_PME_PM_L2SC_MOD_INV 232
Packit 577717
#define POWER4_PME_PM_FPU_DENORM 233
Packit 577717
#define POWER4_PME_PM_DATA_FROM_L275_MOD 234
Packit 577717
#define POWER4_PME_PM_LSU1_DERAT_MISS 235
Packit 577717
#define POWER4_PME_PM_IC_PREF_REQ 236
Packit 577717
#define POWER4_PME_PM_MRK_LSU_FIN 237
Packit 577717
#define POWER4_PME_PM_MRK_DATA_FROM_L3 238
Packit 577717
#define POWER4_PME_PM_MRK_DATA_FROM_MEM 239
Packit 577717
#define POWER4_PME_PM_LSU0_FLUSH_UST 240
Packit 577717
#define POWER4_PME_PM_LSU_FLUSH_LRQ 241
Packit 577717
#define POWER4_PME_PM_LSU_FLUSH_SRQ 242
Packit 577717
#define POWER4_PME_PM_L2SC_MOD_TAG 243
Packit 577717
Packit 577717
static const pme_power_entry_t power4_pe[] = {
Packit 577717
	[ POWER4_PME_PM_MRK_LSU_SRQ_INST_VALID ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU_SRQ_INST_VALID",
Packit 577717
		.pme_code = 0x933,
Packit 577717
		.pme_short_desc = "Marked instruction valid in SRQ",
Packit 577717
		.pme_long_desc = "This signal is asserted every cycle when a marked request is resident in the Store Request Queue",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU1_SINGLE ] = {
Packit 577717
		.pme_name = "PM_FPU1_SINGLE",
Packit 577717
		.pme_code = 0x127,
Packit 577717
		.pme_short_desc = "FPU1 executed single precision instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when fp1 is executing single precision instruction.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_DC_PREF_OUT_STREAMS ] = {
Packit 577717
		.pme_name = "PM_DC_PREF_OUT_STREAMS",
Packit 577717
		.pme_code = 0xc36,
Packit 577717
		.pme_short_desc = "Out of prefetch streams",
Packit 577717
		.pme_long_desc = "A new prefetch stream was detected, but no more stream entries were available",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU0_STALL3 ] = {
Packit 577717
		.pme_name = "PM_FPU0_STALL3",
Packit 577717
		.pme_code = 0x121,
Packit 577717
		.pme_short_desc = "FPU0 stalled in pipe3",
Packit 577717
		.pme_long_desc = "This signal indicates that fp0 has generated a stall in pipe3 due to overflow, underflow, massive cancel, convert to integer (sometimes), or convert from integer (always). This signal is active during the entire duration of the stall. ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_TB_BIT_TRANS ] = {
Packit 577717
		.pme_name = "PM_TB_BIT_TRANS",
Packit 577717
		.pme_code = 0x8005,
Packit 577717
		.pme_short_desc = "Time Base bit transition",
Packit 577717
		.pme_long_desc = "When the selected time base bit (as specified in MMCR0[TBSEL])transitions from 0 to 1 ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_GPR_MAP_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_GPR_MAP_FULL_CYC",
Packit 577717
		.pme_code = 0x235,
Packit 577717
		.pme_short_desc = "Cycles GPR mapper full",
Packit 577717
		.pme_long_desc = "The ISU sends a signal indicating that the gpr mapper cannot accept any more groups. Dispatch is stopped. Note: this condition indicates that a pool of mapper is full but the entire mapper may not be.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_ST_CMPL ] = {
Packit 577717
		.pme_name = "PM_MRK_ST_CMPL",
Packit 577717
		.pme_code = 0x1003,
Packit 577717
		.pme_short_desc = "Marked store instruction completed",
Packit 577717
		.pme_long_desc = "A sampled store has completed (data home)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LSU_FLUSH_LRQ ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU_FLUSH_LRQ",
Packit 577717
		.pme_code = 0x3910,
Packit 577717
		.pme_short_desc = "Marked LRQ flushes",
Packit 577717
		.pme_long_desc = "A marked load was flushed because a younger load executed before an older store executed and they had overlapping data OR two loads executed out of order and they have byte overlap and there was a snoop in between to an overlapped byte.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU0_STF ] = {
Packit 577717
		.pme_name = "PM_FPU0_STF",
Packit 577717
		.pme_code = 0x122,
Packit 577717
		.pme_short_desc = "FPU0 executed store instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when fp0 is executing a store instruction.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU1_FMA ] = {
Packit 577717
		.pme_name = "PM_FPU1_FMA",
Packit 577717
		.pme_code = 0x105,
Packit 577717
		.pme_short_desc = "FPU1 executed multiply-add instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when fp1 is executing multiply-add kind of instruction. This could be fmadd*, fnmadd*, fmsub*, fnmsub* where XYZ* means XYZ, XYZs, XYZ., XYZs.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SA_MOD_TAG ] = {
Packit 577717
		.pme_name = "PM_L2SA_MOD_TAG",
Packit 577717
		.pme_code = 0xf06,
Packit 577717
		.pme_short_desc = "L2 slice A transition from modified to tagged",
Packit 577717
		.pme_long_desc = "A cache line in the local L2 directory made a state transition from the Modified state to the Tagged state. This transition was caused by a read snoop request that hit against a modified entry in the local L2. The event is provided on each of the three slices A,B,and C.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_DATA_FROM_L275_SHR ] = {
Packit 577717
		.pme_name = "PM_MRK_DATA_FROM_L275_SHR",
Packit 577717
		.pme_code = 0x6c76,
Packit 577717
		.pme_short_desc = "Marked data loaded from L2.75 shared",
Packit 577717
		.pme_long_desc = "DL1 was reloaded with shared (T) data from the L2 of another MCM due to a marked demand load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_1INST_CLB_CYC ] = {
Packit 577717
		.pme_name = "PM_1INST_CLB_CYC",
Packit 577717
		.pme_code = 0x450,
Packit 577717
		.pme_short_desc = "Cycles 1 instruction in CLB",
Packit 577717
		.pme_long_desc = "The cache line buffer (CLB) is an 8-deep, 4-wide instruction buffer. Fullness is indicated in the 8 valid bits associated with each of the 4-wide slots with full(0) correspanding to the number of cycles there are 8 instructions in the queue and full (7) corresponding to the number of cycles there is 1 instruction in the queue. This signal gives a real time history of the number of instruction quads valid in the instruction queue.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU1_FLUSH_ULD ] = {
Packit 577717
		.pme_name = "PM_LSU1_FLUSH_ULD",
Packit 577717
		.pme_code = 0xc04,
Packit 577717
		.pme_short_desc = "LSU1 unaligned load flushes",
Packit 577717
		.pme_long_desc = "A load was flushed from unit 1 because it was unaligned (crossed a 64byte boundary, or 32 byte if it missed the L1)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_INST_FIN ] = {
Packit 577717
		.pme_name = "PM_MRK_INST_FIN",
Packit 577717
		.pme_code = 0x7005,
Packit 577717
		.pme_short_desc = "Marked instruction finished",
Packit 577717
		.pme_long_desc = "One of the execution units finished a marked instruction. Instructions that finish may not necessary complete",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LSU0_FLUSH_UST ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU0_FLUSH_UST",
Packit 577717
		.pme_code = 0x911,
Packit 577717
		.pme_short_desc = "LSU0 marked unaligned store flushes",
Packit 577717
		.pme_long_desc = "A marked store was flushed from unit 0 because it was unaligned",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU_FDIV ] = {
Packit 577717
		.pme_name = "PM_FPU_FDIV",
Packit 577717
		.pme_code = 0x1100,
Packit 577717
		.pme_short_desc = "FPU executed FDIV instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle at the end of the microcode executed when FPU is executing a divide instruction. This could be fdiv, fdivs, fdiv. fdivs. Combined Unit 0 + Unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_LRQ_S0_ALLOC ] = {
Packit 577717
		.pme_name = "PM_LSU_LRQ_S0_ALLOC",
Packit 577717
		.pme_code = 0xc26,
Packit 577717
		.pme_short_desc = "LRQ slot 0 allocated",
Packit 577717
		.pme_long_desc = "LRQ slot zero was allocated",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU0_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_FPU0_FULL_CYC",
Packit 577717
		.pme_code = 0x203,
Packit 577717
		.pme_short_desc = "Cycles FPU0 issue queue full",
Packit 577717
		.pme_long_desc = "The issue queue for FPU unit 0 cannot accept any more instructions. Issue is stopped",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU_SINGLE ] = {
Packit 577717
		.pme_name = "PM_FPU_SINGLE",
Packit 577717
		.pme_code = 0x5120,
Packit 577717
		.pme_short_desc = "FPU executed single precision instruction",
Packit 577717
		.pme_long_desc = "FPU is executing single precision instruction. Combined Unit 0 + Unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU0_FMA ] = {
Packit 577717
		.pme_name = "PM_FPU0_FMA",
Packit 577717
		.pme_code = 0x101,
Packit 577717
		.pme_short_desc = "FPU0 executed multiply-add instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when fp0 is executing multiply-add kind of instruction. This could be fmadd*, fnmadd*, fmsub*, fnmsub* where XYZ* means XYZ, XYZs, XYZ., XYZs.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LSU1_FLUSH_ULD ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU1_FLUSH_ULD",
Packit 577717
		.pme_code = 0x914,
Packit 577717
		.pme_short_desc = "LSU1 marked unaligned load flushes",
Packit 577717
		.pme_long_desc = "A marked load was flushed from unit 1 because it was unaligned (crossed a 64byte boundary, or 32 byte if it missed the L1)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU1_FLUSH_LRQ ] = {
Packit 577717
		.pme_name = "PM_LSU1_FLUSH_LRQ",
Packit 577717
		.pme_code = 0xc06,
Packit 577717
		.pme_short_desc = "LSU1 LRQ flushes",
Packit 577717
		.pme_long_desc = "A load was flushed by unit 1 because a younger load executed before an older store executed and they had overlapping data OR two loads executed out of order and they have byte overlap and there was a snoop in between to an overlapped byte.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SA_ST_HIT ] = {
Packit 577717
		.pme_name = "PM_L2SA_ST_HIT",
Packit 577717
		.pme_code = 0xf11,
Packit 577717
		.pme_short_desc = "L2 slice A store hits",
Packit 577717
		.pme_long_desc = "A store request made from the core hit in the L2 directory.  This event is provided on each of the three L2 slices A,B, and C.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SB_SHR_INV ] = {
Packit 577717
		.pme_name = "PM_L2SB_SHR_INV",
Packit 577717
		.pme_code = 0xf21,
Packit 577717
		.pme_short_desc = "L2 slice B transition from shared to invalid",
Packit 577717
		.pme_long_desc = "A cache line in the local L2 directory made a state transition from Shared (Shared, Shared L, or Tagged) to the Invalid state. This transition was caused by any external snoop request. The event is provided on each of the three slices A,B,and C. NOTE: For this event to be useful the tablewalk duration event should also be counted.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_DTLB_MISS ] = {
Packit 577717
		.pme_name = "PM_DTLB_MISS",
Packit 577717
		.pme_code = 0x904,
Packit 577717
		.pme_short_desc = "Data TLB misses",
Packit 577717
		.pme_long_desc = "A TLB miss for a data request occurred. Requests that miss the TLB may be retried until the instruction is in the next to complete group (unless HID4 is set to allow speculative tablewalks). This may result in multiple TLB misses for the same instruction.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_ST_MISS_L1 ] = {
Packit 577717
		.pme_name = "PM_MRK_ST_MISS_L1",
Packit 577717
		.pme_code = 0x923,
Packit 577717
		.pme_short_desc = "Marked L1 D cache store misses",
Packit 577717
		.pme_long_desc = "A marked store missed the dcache",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_EXT_INT ] = {
Packit 577717
		.pme_name = "PM_EXT_INT",
Packit 577717
		.pme_code = 0x8002,
Packit 577717
		.pme_short_desc = "External interrupts",
Packit 577717
		.pme_long_desc = "An external interrupt occurred",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LSU1_FLUSH_LRQ ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU1_FLUSH_LRQ",
Packit 577717
		.pme_code = 0x916,
Packit 577717
		.pme_short_desc = "LSU1 marked LRQ flushes",
Packit 577717
		.pme_long_desc = "A marked load was flushed by unit 1 because a younger load executed before an older store executed and they had overlapping data OR two loads executed out of order and they have byte overlap and there was a snoop in between to an overlapped byte.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_ST_GPS ] = {
Packit 577717
		.pme_name = "PM_MRK_ST_GPS",
Packit 577717
		.pme_code = 0x6003,
Packit 577717
		.pme_short_desc = "Marked store sent to GPS",
Packit 577717
		.pme_long_desc = "A sampled store has been sent to the memory subsystem",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_GRP_DISP_SUCCESS ] = {
Packit 577717
		.pme_name = "PM_GRP_DISP_SUCCESS",
Packit 577717
		.pme_code = 0x5001,
Packit 577717
		.pme_short_desc = "Group dispatch success",
Packit 577717
		.pme_long_desc = "Number of groups sucessfully dispatched (not rejected)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU1_LDF ] = {
Packit 577717
		.pme_name = "PM_LSU1_LDF",
Packit 577717
		.pme_code = 0x934,
Packit 577717
		.pme_short_desc = "LSU1 executed Floating Point load instruction",
Packit 577717
		.pme_long_desc = "A floating point load was executed from LSU unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FAB_CMD_ISSUED ] = {
Packit 577717
		.pme_name = "PM_FAB_CMD_ISSUED",
Packit 577717
		.pme_code = 0xf16,
Packit 577717
		.pme_short_desc = "Fabric command issued",
Packit 577717
		.pme_long_desc = "A bus command was issued on the MCM to MCM fabric from the local (this chip's) Fabric Bus Controller.  This event is scaled to the fabric frequency and must be adjusted for a true count.  i.e. if the fabric is running 2:1, divide the count by 2.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU0_SRQ_STFWD ] = {
Packit 577717
		.pme_name = "PM_LSU0_SRQ_STFWD",
Packit 577717
		.pme_code = 0xc20,
Packit 577717
		.pme_short_desc = "LSU0 SRQ store forwarded",
Packit 577717
		.pme_long_desc = "Data from a store instruction was forwarded to a load on unit 0",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_CR_MAP_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_CR_MAP_FULL_CYC",
Packit 577717
		.pme_code = 0x204,
Packit 577717
		.pme_short_desc = "Cycles CR logical operation mapper full",
Packit 577717
		.pme_long_desc = "The ISU sends a signal indicating that the cr mapper cannot accept any more groups. Dispatch is stopped. Note: this condition indicates that a pool of mapper is full but the entire mapper may not be.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LSU0_FLUSH_ULD ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU0_FLUSH_ULD",
Packit 577717
		.pme_code = 0x910,
Packit 577717
		.pme_short_desc = "LSU0 marked unaligned load flushes",
Packit 577717
		.pme_long_desc = "A marked load was flushed from unit 0 because it was unaligned (crossed a 64byte boundary, or 32 byte if it missed the L1)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_DERAT_MISS ] = {
Packit 577717
		.pme_name = "PM_LSU_DERAT_MISS",
Packit 577717
		.pme_code = 0x6900,
Packit 577717
		.pme_short_desc = "DERAT misses",
Packit 577717
		.pme_long_desc = "Total D-ERAT Misses (Unit 0 + Unit 1). Requests that miss the Derat are rejected and retried until the request hits in the Erat. This may result in multiple erat misses for the same instruction.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU0_SINGLE ] = {
Packit 577717
		.pme_name = "PM_FPU0_SINGLE",
Packit 577717
		.pme_code = 0x123,
Packit 577717
		.pme_short_desc = "FPU0 executed single precision instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when fp0 is executing single precision instruction.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU1_FDIV ] = {
Packit 577717
		.pme_name = "PM_FPU1_FDIV",
Packit 577717
		.pme_code = 0x104,
Packit 577717
		.pme_short_desc = "FPU1 executed FDIV instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle at the end of the microcode executed when fp1 is executing a divide instruction. This could be fdiv, fdivs, fdiv. fdivs.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU1_FEST ] = {
Packit 577717
		.pme_name = "PM_FPU1_FEST",
Packit 577717
		.pme_code = 0x116,
Packit 577717
		.pme_short_desc = "FPU1 executed FEST instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when fp1 is executing one of the estimate instructions. This could be fres* or frsqrte* where XYZ* means XYZ or XYZ. ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU0_FRSP_FCONV ] = {
Packit 577717
		.pme_name = "PM_FPU0_FRSP_FCONV",
Packit 577717
		.pme_code = 0x111,
Packit 577717
		.pme_short_desc = "FPU0 executed FRSP or FCONV instructions",
Packit 577717
		.pme_long_desc = "fThis signal is active for one cycle when fp0 is executing frsp or convert kind of instruction. This could be frsp*, fcfid*, fcti* where XYZ* means XYZ, XYZs, XYZ., XYZs.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_ST_CMPL_INT ] = {
Packit 577717
		.pme_name = "PM_MRK_ST_CMPL_INT",
Packit 577717
		.pme_code = 0x3003,
Packit 577717
		.pme_short_desc = "Marked store completed with intervention",
Packit 577717
		.pme_long_desc = "A marked store previously sent to the memory subsystem completed (data home) after requiring intervention",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FXU_FIN ] = {
Packit 577717
		.pme_name = "PM_FXU_FIN",
Packit 577717
		.pme_code = 0x3230,
Packit 577717
		.pme_short_desc = "FXU produced a result",
Packit 577717
		.pme_long_desc = "The fixed point unit (Unit 0 + Unit 1) finished a marked instruction. Instructions that finish may not necessary complete.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU_STF ] = {
Packit 577717
		.pme_name = "PM_FPU_STF",
Packit 577717
		.pme_code = 0x6120,
Packit 577717
		.pme_short_desc = "FPU executed store instruction",
Packit 577717
		.pme_long_desc = "FPU is executing a store instruction. Combined Unit 0 + Unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_DSLB_MISS ] = {
Packit 577717
		.pme_name = "PM_DSLB_MISS",
Packit 577717
		.pme_code = 0x905,
Packit 577717
		.pme_short_desc = "Data SLB misses",
Packit 577717
		.pme_long_desc = "A SLB miss for a data request occurred. SLB misses trap to the operating system to resolve",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_DATA_FROM_L275_SHR ] = {
Packit 577717
		.pme_name = "PM_DATA_FROM_L275_SHR",
Packit 577717
		.pme_code = 0x6c66,
Packit 577717
		.pme_short_desc = "Data loaded from L2.75 shared",
Packit 577717
		.pme_long_desc = "DL1 was reloaded with shared (T) data from the L2 of another MCM due to a demand load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FXLS1_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_FXLS1_FULL_CYC",
Packit 577717
		.pme_code = 0x214,
Packit 577717
		.pme_short_desc = "Cycles FXU1/LS1 queue full",
Packit 577717
		.pme_long_desc = "The issue queue for FXU/LSU unit 1 cannot accept any more instructions. Issue is stopped",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L3B0_DIR_MIS ] = {
Packit 577717
		.pme_name = "PM_L3B0_DIR_MIS",
Packit 577717
		.pme_code = 0xf01,
Packit 577717
		.pme_short_desc = "L3 bank 0 directory misses",
Packit 577717
		.pme_long_desc = "A reference was made to the local L3 directory by a local CPU and it missed in the L3. Only requests from on-MCM CPUs are counted. This event is scaled to the L3 speed and the count must be scaled. i.e. if the L3 is running 3:1, divide the count by 3",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_2INST_CLB_CYC ] = {
Packit 577717
		.pme_name = "PM_2INST_CLB_CYC",
Packit 577717
		.pme_code = 0x451,
Packit 577717
		.pme_short_desc = "Cycles 2 instructions in CLB",
Packit 577717
		.pme_long_desc = "The cache line buffer (CLB) is an 8-deep, 4-wide instruction buffer. Fullness is indicated in the 8 valid bits associated with each of the 4-wide slots with full(0) correspanding to the number of cycles there are 8 instructions in the queue and full (7) corresponding to the number of cycles there is 1 instruction in the queue. This signal gives a real time history of the number of instruction quads valid in the instruction queue.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_STCX_FAIL ] = {
Packit 577717
		.pme_name = "PM_MRK_STCX_FAIL",
Packit 577717
		.pme_code = 0x925,
Packit 577717
		.pme_short_desc = "Marked STCX failed",
Packit 577717
		.pme_long_desc = "A marked stcx (stwcx or stdcx) failed",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_LMQ_LHR_MERGE ] = {
Packit 577717
		.pme_name = "PM_LSU_LMQ_LHR_MERGE",
Packit 577717
		.pme_code = 0x926,
Packit 577717
		.pme_short_desc = "LMQ LHR merges",
Packit 577717
		.pme_long_desc = "A dcache miss occurred for the same real cache line address as an earlier request already in the Load Miss Queue and was merged into the LMQ entry.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FXU0_BUSY_FXU1_IDLE ] = {
Packit 577717
		.pme_name = "PM_FXU0_BUSY_FXU1_IDLE",
Packit 577717
		.pme_code = 0x7002,
Packit 577717
		.pme_short_desc = "FXU0 busy FXU1 idle",
Packit 577717
		.pme_long_desc = "FXU0 is busy while FXU1 was idle",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L3B1_DIR_REF ] = {
Packit 577717
		.pme_name = "PM_L3B1_DIR_REF",
Packit 577717
		.pme_code = 0xf02,
Packit 577717
		.pme_short_desc = "L3 bank 1 directory references",
Packit 577717
		.pme_long_desc = "A reference was made to the local L3 directory by a local CPU. Only requests from on-MCM CPUs are counted. This event is scaled to the L3 speed and the count must be scaled. i.e. if the L3 is running 3:1, divide the count by 3",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LSU_FLUSH_UST ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU_FLUSH_UST",
Packit 577717
		.pme_code = 0x7910,
Packit 577717
		.pme_short_desc = "Marked unaligned store flushes",
Packit 577717
		.pme_long_desc = "A marked store was flushed because it was unaligned",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_DATA_FROM_L25_SHR ] = {
Packit 577717
		.pme_name = "PM_MRK_DATA_FROM_L25_SHR",
Packit 577717
		.pme_code = 0x5c76,
Packit 577717
		.pme_short_desc = "Marked data loaded from L2.5 shared",
Packit 577717
		.pme_long_desc = "DL1 was reloaded with shared (T or SL) data from the L2 of a chip on this MCM due to a marked demand load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_FLUSH_ULD ] = {
Packit 577717
		.pme_name = "PM_LSU_FLUSH_ULD",
Packit 577717
		.pme_code = 0x1c00,
Packit 577717
		.pme_short_desc = "LRQ unaligned load flushes",
Packit 577717
		.pme_long_desc = "A load was flushed because it was unaligned (crossed a 64byte boundary, or 32 byte if it missed the L1)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_BRU_FIN ] = {
Packit 577717
		.pme_name = "PM_MRK_BRU_FIN",
Packit 577717
		.pme_code = 0x2005,
Packit 577717
		.pme_short_desc = "Marked instruction BRU processing finished",
Packit 577717
		.pme_long_desc = "The branch unit finished a marked instruction. Instructions that finish may not necessary complete",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_IERAT_XLATE_WR ] = {
Packit 577717
		.pme_name = "PM_IERAT_XLATE_WR",
Packit 577717
		.pme_code = 0x327,
Packit 577717
		.pme_short_desc = "Translation written to ierat",
Packit 577717
		.pme_long_desc = "This signal will be asserted each time the I-ERAT is written. This indicates that an ERAT miss has been serviced. ERAT misses will initiate a sequence resulting in the ERAT being written. ERAT misses that are later ignored will not be counted unless the ERAT is written before the instruction stream is changed, This should be a fairly accurate count of ERAT missed (best available).",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU0_BUSY ] = {
Packit 577717
		.pme_name = "PM_LSU0_BUSY",
Packit 577717
		.pme_code = 0xc33,
Packit 577717
		.pme_short_desc = "LSU0 busy",
Packit 577717
		.pme_long_desc = "LSU unit 0 is busy rejecting instructions",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SA_ST_REQ ] = {
Packit 577717
		.pme_name = "PM_L2SA_ST_REQ",
Packit 577717
		.pme_code = 0xf10,
Packit 577717
		.pme_short_desc = "L2 slice A store requests",
Packit 577717
		.pme_long_desc = "A store request as seen at the L2 directory has been made from the core. Stores are counted after gathering in the L2 store queues. The event is provided on each of the three slices A,B,and C.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_DATA_FROM_MEM ] = {
Packit 577717
		.pme_name = "PM_DATA_FROM_MEM",
Packit 577717
		.pme_code = 0x2c66,
Packit 577717
		.pme_short_desc = "Data loaded from memory",
Packit 577717
		.pme_long_desc = "DL1 was reloaded from memory due to a demand load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPR_MAP_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_FPR_MAP_FULL_CYC",
Packit 577717
		.pme_code = 0x201,
Packit 577717
		.pme_short_desc = "Cycles FPR mapper full",
Packit 577717
		.pme_long_desc = "The ISU sends a signal indicating that the FPR mapper cannot accept any more groups. Dispatch is stopped. Note: this condition indicates that a pool of mapper is full but the entire mapper may not be.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU1_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_FPU1_FULL_CYC",
Packit 577717
		.pme_code = 0x207,
Packit 577717
		.pme_short_desc = "Cycles FPU1 issue queue full",
Packit 577717
		.pme_long_desc = "The issue queue for FPU unit 1 cannot accept any more instructions. Issue is stopped",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU0_FIN ] = {
Packit 577717
		.pme_name = "PM_FPU0_FIN",
Packit 577717
		.pme_code = 0x113,
Packit 577717
		.pme_short_desc = "FPU0 produced a result",
Packit 577717
		.pme_long_desc = "fp0 finished, produced a result This only indicates finish, not completion. ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_3INST_CLB_CYC ] = {
Packit 577717
		.pme_name = "PM_3INST_CLB_CYC",
Packit 577717
		.pme_code = 0x452,
Packit 577717
		.pme_short_desc = "Cycles 3 instructions in CLB",
Packit 577717
		.pme_long_desc = "The cache line buffer (CLB) is an 8-deep, 4-wide instruction buffer. Fullness is indicated in the 8 valid bits associated with each of the 4-wide slots with full(0) correspanding to the number of cycles there are 8 instructions in the queue and full (7) corresponding to the number of cycles there is 1 instruction in the queue. This signal gives a real time history of the number of instruction quads valid in the instruction queue.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_DATA_FROM_L35 ] = {
Packit 577717
		.pme_name = "PM_DATA_FROM_L35",
Packit 577717
		.pme_code = 0x3c66,
Packit 577717
		.pme_short_desc = "Data loaded from L3.5",
Packit 577717
		.pme_long_desc = "DL1 was reloaded from the L3 of another MCM due to a demand load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SA_SHR_INV ] = {
Packit 577717
		.pme_name = "PM_L2SA_SHR_INV",
Packit 577717
		.pme_code = 0xf05,
Packit 577717
		.pme_short_desc = "L2 slice A transition from shared to invalid",
Packit 577717
		.pme_long_desc = "A cache line in the local L2 directory made a state transition from Shared (Shared, Shared L, or Tagged) to the Invalid state. This transition was caused by any external snoop request. The event is provided on each of the three slices A,B,and C. NOTE: For this event to be useful the tablewalk duration event should also be counted.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LSU_FLUSH_SRQ ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU_FLUSH_SRQ",
Packit 577717
		.pme_code = 0x4910,
Packit 577717
		.pme_short_desc = "Marked SRQ flushes",
Packit 577717
		.pme_long_desc = "A marked store was flushed because younger load hits and older store that is already in the SRQ or in the same group.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_THRESH_TIMEO ] = {
Packit 577717
		.pme_name = "PM_THRESH_TIMEO",
Packit 577717
		.pme_code = 0x2003,
Packit 577717
		.pme_short_desc = "Threshold timeout",
Packit 577717
		.pme_long_desc = "The threshold timer expired",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU_FSQRT ] = {
Packit 577717
		.pme_name = "PM_FPU_FSQRT",
Packit 577717
		.pme_code = 0x6100,
Packit 577717
		.pme_short_desc = "FPU executed FSQRT instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle at the end of the microcode executed when FPU is executing a square root instruction. This could be fsqrt* where XYZ* means XYZ, XYZs, XYZ., XYZs. Combined Unit 0 + Unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LSU0_FLUSH_LRQ ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU0_FLUSH_LRQ",
Packit 577717
		.pme_code = 0x912,
Packit 577717
		.pme_short_desc = "LSU0 marked LRQ flushes",
Packit 577717
		.pme_long_desc = "A marked load was flushed by unit 0 because a younger load executed before an older store executed and they had overlapping data OR two loads executed out of order and they have byte overlap and there was a snoop in between to an overlapped byte.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FXLS0_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_FXLS0_FULL_CYC",
Packit 577717
		.pme_code = 0x210,
Packit 577717
		.pme_short_desc = "Cycles FXU0/LS0 queue full",
Packit 577717
		.pme_long_desc = "The issue queue for FXU/LSU unit 0 cannot accept any more instructions. Issue is stopped",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_DATA_TABLEWALK_CYC ] = {
Packit 577717
		.pme_name = "PM_DATA_TABLEWALK_CYC",
Packit 577717
		.pme_code = 0x936,
Packit 577717
		.pme_short_desc = "Cycles doing data tablewalks",
Packit 577717
		.pme_long_desc = "This signal is asserted every cycle when a tablewalk is active. While a tablewalk is active any request attempting to access the TLB will be rejected and retried.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU0_ALL ] = {
Packit 577717
		.pme_name = "PM_FPU0_ALL",
Packit 577717
		.pme_code = 0x103,
Packit 577717
		.pme_short_desc = "FPU0 executed add, mult, sub, cmp or sel instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when fp0 is executing an add, mult, sub, compare, or fsel kind of instruction. This could be fadd*, fmul*, fsub*, fcmp**, fsel where XYZ* means XYZ, XYZs, XYZ., XYZs. and XYZ** means XYZu, XYZo",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU0_FEST ] = {
Packit 577717
		.pme_name = "PM_FPU0_FEST",
Packit 577717
		.pme_code = 0x112,
Packit 577717
		.pme_short_desc = "FPU0 executed FEST instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when fp0 is executing one of the estimate instructions. This could be fres* or frsqrte* where XYZ* means XYZ or XYZ. ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_DATA_FROM_L25_MOD ] = {
Packit 577717
		.pme_name = "PM_DATA_FROM_L25_MOD",
Packit 577717
		.pme_code = 0x8c66,
Packit 577717
		.pme_short_desc = "Data loaded from L2.5 modified",
Packit 577717
		.pme_long_desc = "DL1 was reloaded with modified (M) data from the L2 of a chip on this MCM due to a demand load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_LMQ_SRQ_EMPTY_CYC ] = {
Packit 577717
		.pme_name = "PM_LSU_LMQ_SRQ_EMPTY_CYC",
Packit 577717
		.pme_code = 0x2002,
Packit 577717
		.pme_short_desc = "Cycles LMQ and SRQ empty",
Packit 577717
		.pme_long_desc = "Cycles when both the LMQ and SRQ are empty (LSU is idle)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU_FEST ] = {
Packit 577717
		.pme_name = "PM_FPU_FEST",
Packit 577717
		.pme_code = 0x3110,
Packit 577717
		.pme_short_desc = "FPU executed FEST instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when executing one of the estimate instructions. This could be fres* or frsqrte* where XYZ* means XYZ or XYZ. Combined Unit 0 + Unit 1.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_0INST_FETCH ] = {
Packit 577717
		.pme_name = "PM_0INST_FETCH",
Packit 577717
		.pme_code = 0x8327,
Packit 577717
		.pme_short_desc = "No instructions fetched",
Packit 577717
		.pme_long_desc = "No instructions were fetched this cycles (due to IFU hold, redirect, or icache miss)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LARX_LSU1 ] = {
Packit 577717
		.pme_name = "PM_LARX_LSU1",
Packit 577717
		.pme_code = 0xc77,
Packit 577717
		.pme_short_desc = "Larx executed on LSU1",
Packit 577717
		.pme_long_desc = "Invalid event, larx instructions are never executed on unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LD_MISS_L1_LSU0 ] = {
Packit 577717
		.pme_name = "PM_LD_MISS_L1_LSU0",
Packit 577717
		.pme_code = 0xc12,
Packit 577717
		.pme_short_desc = "LSU0 L1 D cache load misses",
Packit 577717
		.pme_long_desc = "A load, executing on unit 0, missed the dcache",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L1_PREF ] = {
Packit 577717
		.pme_name = "PM_L1_PREF",
Packit 577717
		.pme_code = 0xc35,
Packit 577717
		.pme_short_desc = "L1 cache data prefetches",
Packit 577717
		.pme_long_desc = "A request to prefetch data into the L1 was made",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU1_STALL3 ] = {
Packit 577717
		.pme_name = "PM_FPU1_STALL3",
Packit 577717
		.pme_code = 0x125,
Packit 577717
		.pme_short_desc = "FPU1 stalled in pipe3",
Packit 577717
		.pme_long_desc = "This signal indicates that fp1 has generated a stall in pipe3 due to overflow, underflow, massive cancel, convert to integer (sometimes), or convert from integer (always). This signal is active during the entire duration of the stall. ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_BRQ_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_BRQ_FULL_CYC",
Packit 577717
		.pme_code = 0x205,
Packit 577717
		.pme_short_desc = "Cycles branch queue full",
Packit 577717
		.pme_long_desc = "The ISU sends a signal indicating that the issue queue that feeds the ifu br unit cannot accept any more group (queue is full of groups).",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LARX ] = {
Packit 577717
		.pme_name = "PM_LARX",
Packit 577717
		.pme_code = 0x4c70,
Packit 577717
		.pme_short_desc = "Larx executed",
Packit 577717
		.pme_long_desc = "A Larx (lwarx or ldarx) was executed. This is the combined count from LSU0 + LSU1, but these instructions only execute on LSU0",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_DATA_FROM_L35 ] = {
Packit 577717
		.pme_name = "PM_MRK_DATA_FROM_L35",
Packit 577717
		.pme_code = 0x3c76,
Packit 577717
		.pme_short_desc = "Marked data loaded from L3.5",
Packit 577717
		.pme_long_desc = "DL1 was reloaded from the L3 of another MCM due to a marked demand load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_WORK_HELD ] = {
Packit 577717
		.pme_name = "PM_WORK_HELD",
Packit 577717
		.pme_code = 0x2001,
Packit 577717
		.pme_short_desc = "Work held",
Packit 577717
		.pme_long_desc = "RAS Unit has signaled completion to stop and there are groups waiting to complete",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LD_MISS_L1_LSU0 ] = {
Packit 577717
		.pme_name = "PM_MRK_LD_MISS_L1_LSU0",
Packit 577717
		.pme_code = 0x920,
Packit 577717
		.pme_short_desc = "LSU0 L1 D cache load misses",
Packit 577717
		.pme_long_desc = "A marked load, executing on unit 0, missed the dcache",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FXU_IDLE ] = {
Packit 577717
		.pme_name = "PM_FXU_IDLE",
Packit 577717
		.pme_code = 0x5002,
Packit 577717
		.pme_short_desc = "FXU idle",
Packit 577717
		.pme_long_desc = "FXU0 and FXU1 are both idle",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_INST_CMPL ] = {
Packit 577717
		.pme_name = "PM_INST_CMPL",
Packit 577717
		.pme_code = 0x8001,
Packit 577717
		.pme_short_desc = "Instructions completed",
Packit 577717
		.pme_long_desc = "Number of Eligible Instructions that completed. ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU1_FLUSH_UST ] = {
Packit 577717
		.pme_name = "PM_LSU1_FLUSH_UST",
Packit 577717
		.pme_code = 0xc05,
Packit 577717
		.pme_short_desc = "LSU1 unaligned store flushes",
Packit 577717
		.pme_long_desc = "A store was flushed from unit 1 because it was unaligned (crossed a 4k boundary)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU0_FLUSH_ULD ] = {
Packit 577717
		.pme_name = "PM_LSU0_FLUSH_ULD",
Packit 577717
		.pme_code = 0xc00,
Packit 577717
		.pme_short_desc = "LSU0 unaligned load flushes",
Packit 577717
		.pme_long_desc = "A load was flushed from unit 0 because it was unaligned (crossed a 64byte boundary, or 32 byte if it missed the L1)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_INST_FROM_L2 ] = {
Packit 577717
		.pme_name = "PM_INST_FROM_L2",
Packit 577717
		.pme_code = 0x3327,
Packit 577717
		.pme_short_desc = "Instructions fetched from L2",
Packit 577717
		.pme_long_desc = "An instruction fetch group was fetched from L2. Fetch Groups can contain up to 8 instructions",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_DATA_FROM_L3 ] = {
Packit 577717
		.pme_name = "PM_DATA_FROM_L3",
Packit 577717
		.pme_code = 0x1c66,
Packit 577717
		.pme_short_desc = "Data loaded from L3",
Packit 577717
		.pme_long_desc = "DL1 was reloaded from the local L3 due to a demand load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU0_DENORM ] = {
Packit 577717
		.pme_name = "PM_FPU0_DENORM",
Packit 577717
		.pme_code = 0x120,
Packit 577717
		.pme_short_desc = "FPU0 received denormalized data",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when one of the operands is denormalized.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU1_FMOV_FEST ] = {
Packit 577717
		.pme_name = "PM_FPU1_FMOV_FEST",
Packit 577717
		.pme_code = 0x114,
Packit 577717
		.pme_short_desc = "FPU1 executing FMOV or FEST instructions",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when fp1 is executing a move kind of instruction or one of the estimate instructions.. This could be fmr*, fneg*, fabs*, fnabs* , fres* or frsqrte* where XYZ* means XYZ or XYZ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_GRP_DISP_REJECT ] = {
Packit 577717
		.pme_name = "PM_GRP_DISP_REJECT",
Packit 577717
		.pme_code = 0x8003,
Packit 577717
		.pme_short_desc = "Group dispatch rejected",
Packit 577717
		.pme_long_desc = "A group that previously attempted dispatch was rejected.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_INST_FETCH_CYC ] = {
Packit 577717
		.pme_name = "PM_INST_FETCH_CYC",
Packit 577717
		.pme_code = 0x323,
Packit 577717
		.pme_short_desc = "Cycles at least 1 instruction fetched",
Packit 577717
		.pme_long_desc = "Asserted each cycle when the IFU sends at least one instruction to the IDU. ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_LDF ] = {
Packit 577717
		.pme_name = "PM_LSU_LDF",
Packit 577717
		.pme_code = 0x8930,
Packit 577717
		.pme_short_desc = "LSU executed Floating Point load instruction",
Packit 577717
		.pme_long_desc = "LSU executed Floating Point load instruction",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_INST_DISP ] = {
Packit 577717
		.pme_name = "PM_INST_DISP",
Packit 577717
		.pme_code = 0x221,
Packit 577717
		.pme_short_desc = "Instructions dispatched",
Packit 577717
		.pme_long_desc = "The ISU sends the number of instructions dispatched.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SA_MOD_INV ] = {
Packit 577717
		.pme_name = "PM_L2SA_MOD_INV",
Packit 577717
		.pme_code = 0xf07,
Packit 577717
		.pme_short_desc = "L2 slice A transition from modified to invalid",
Packit 577717
		.pme_long_desc = "A cache line in the local L2 directory made a state transition from the Modified state to the Invalid state. This transition was caused by any RWITM snoop request that hit against a modified entry in the local L2. The event is provided on each of the three slices A,B,and C.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_DATA_FROM_L25_SHR ] = {
Packit 577717
		.pme_name = "PM_DATA_FROM_L25_SHR",
Packit 577717
		.pme_code = 0x5c66,
Packit 577717
		.pme_short_desc = "Data loaded from L2.5 shared",
Packit 577717
		.pme_long_desc = "DL1 was reloaded with shared (T or SL) data from the L2 of a chip on this MCM due to a demand load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FAB_CMD_RETRIED ] = {
Packit 577717
		.pme_name = "PM_FAB_CMD_RETRIED",
Packit 577717
		.pme_code = 0xf17,
Packit 577717
		.pme_short_desc = "Fabric command retried",
Packit 577717
		.pme_long_desc = "A bus command on the MCM to MCM fabric was retried.  This event is the total count of all retried fabric commands for the local MCM (all four chips report the same value).  This event is scaled to the fabric frequency and must be adjusted for a true count.  i.e. if the fabric is running 2:1, divide the count by 2.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L1_DCACHE_RELOAD_VALID ] = {
Packit 577717
		.pme_name = "PM_L1_DCACHE_RELOAD_VALID",
Packit 577717
		.pme_code = 0xc64,
Packit 577717
		.pme_short_desc = "L1 reload data source valid",
Packit 577717
		.pme_long_desc = "The data source information is valid",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_GRP_ISSUED ] = {
Packit 577717
		.pme_name = "PM_MRK_GRP_ISSUED",
Packit 577717
		.pme_code = 0x6005,
Packit 577717
		.pme_short_desc = "Marked group issued",
Packit 577717
		.pme_long_desc = "A sampled instruction was issued",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_FPU_FULL_CYC",
Packit 577717
		.pme_code = 0x5200,
Packit 577717
		.pme_short_desc = "Cycles FPU issue queue full",
Packit 577717
		.pme_long_desc = "Cycles when one or both FPU issue queues are full",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU_FMA ] = {
Packit 577717
		.pme_name = "PM_FPU_FMA",
Packit 577717
		.pme_code = 0x2100,
Packit 577717
		.pme_short_desc = "FPU executed multiply-add instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when FPU is executing multiply-add kind of instruction. This could be fmadd*, fnmadd*, fmsub*, fnmsub* where XYZ* means XYZ, XYZs, XYZ., XYZs. Combined Unit 0 + Unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_CRU_FIN ] = {
Packit 577717
		.pme_name = "PM_MRK_CRU_FIN",
Packit 577717
		.pme_code = 0x4005,
Packit 577717
		.pme_short_desc = "Marked instruction CRU processing finished",
Packit 577717
		.pme_long_desc = "The Condition Register Unit finished a marked instruction. Instructions that finish may not necessary complete",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LSU1_FLUSH_UST ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU1_FLUSH_UST",
Packit 577717
		.pme_code = 0x915,
Packit 577717
		.pme_short_desc = "LSU1 marked unaligned store flushes",
Packit 577717
		.pme_long_desc = "A marked store was flushed from unit 1 because it was unaligned (crossed a 4k boundary)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_FXU_FIN ] = {
Packit 577717
		.pme_name = "PM_MRK_FXU_FIN",
Packit 577717
		.pme_code = 0x6004,
Packit 577717
		.pme_short_desc = "Marked instruction FXU processing finished",
Packit 577717
		.pme_long_desc = "One of the Fixed Point Units finished a marked instruction. Instructions that finish may not necessary complete",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_BR_ISSUED ] = {
Packit 577717
		.pme_name = "PM_BR_ISSUED",
Packit 577717
		.pme_code = 0x330,
Packit 577717
		.pme_short_desc = "Branches issued",
Packit 577717
		.pme_long_desc = "This signal will be asserted each time the ISU issues a branch instruction. This signal will be asserted each time the ISU selects a branch instruction to issue.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_EE_OFF ] = {
Packit 577717
		.pme_name = "PM_EE_OFF",
Packit 577717
		.pme_code = 0x233,
Packit 577717
		.pme_short_desc = "Cycles MSR(EE) bit off",
Packit 577717
		.pme_long_desc = "The number of Cycles MSR(EE) bit was off.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_INST_FROM_L3 ] = {
Packit 577717
		.pme_name = "PM_INST_FROM_L3",
Packit 577717
		.pme_code = 0x5327,
Packit 577717
		.pme_short_desc = "Instruction fetched from L3",
Packit 577717
		.pme_long_desc = "An instruction fetch group was fetched from L3. Fetch Groups can contain up to 8 instructions",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_ITLB_MISS ] = {
Packit 577717
		.pme_name = "PM_ITLB_MISS",
Packit 577717
		.pme_code = 0x900,
Packit 577717
		.pme_short_desc = "Instruction TLB misses",
Packit 577717
		.pme_long_desc = "A TLB miss for an Instruction Fetch has occurred",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FXLS_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_FXLS_FULL_CYC",
Packit 577717
		.pme_code = 0x8210,
Packit 577717
		.pme_short_desc = "Cycles FXLS queue is full",
Packit 577717
		.pme_long_desc = "Cycles when one or both FXU/LSU issue queue are full",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FXU1_BUSY_FXU0_IDLE ] = {
Packit 577717
		.pme_name = "PM_FXU1_BUSY_FXU0_IDLE",
Packit 577717
		.pme_code = 0x4002,
Packit 577717
		.pme_short_desc = "FXU1 busy FXU0 idle",
Packit 577717
		.pme_long_desc = "FXU0 was idle while FXU1 was busy",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_GRP_DISP_VALID ] = {
Packit 577717
		.pme_name = "PM_GRP_DISP_VALID",
Packit 577717
		.pme_code = 0x223,
Packit 577717
		.pme_short_desc = "Group dispatch valid",
Packit 577717
		.pme_long_desc = "Dispatch has been attempted for a valid group.  Some groups may be rejected.  The total number of successful dispatches is the number of dispatch valid minus dispatch reject.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SC_ST_HIT ] = {
Packit 577717
		.pme_name = "PM_L2SC_ST_HIT",
Packit 577717
		.pme_code = 0xf15,
Packit 577717
		.pme_short_desc = "L2 slice C store hits",
Packit 577717
		.pme_long_desc = "A store request made from the core hit in the L2 directory.  This event is provided on each of the three L2 slices A,B, and C.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_GRP_DISP ] = {
Packit 577717
		.pme_name = "PM_MRK_GRP_DISP",
Packit 577717
		.pme_code = 0x1002,
Packit 577717
		.pme_short_desc = "Marked group dispatched",
Packit 577717
		.pme_long_desc = "A group containing a sampled instruction was dispatched",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SB_MOD_TAG ] = {
Packit 577717
		.pme_name = "PM_L2SB_MOD_TAG",
Packit 577717
		.pme_code = 0xf22,
Packit 577717
		.pme_short_desc = "L2 slice B transition from modified to tagged",
Packit 577717
		.pme_long_desc = "A cache line in the local L2 directory made a state transition from the Modified state to the Tagged state. This transition was caused by a read snoop request that hit against a modified entry in the local L2. The event is provided on each of the three slices A,B,and C.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_INST_FROM_L25_L275 ] = {
Packit 577717
		.pme_name = "PM_INST_FROM_L25_L275",
Packit 577717
		.pme_code = 0x2327,
Packit 577717
		.pme_short_desc = "Instruction fetched from L2.5/L2.75",
Packit 577717
		.pme_long_desc = "An instruction fetch group was fetched from the L2 of another chip. Fetch Groups can contain up to 8 instructions",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_FLUSH_UST ] = {
Packit 577717
		.pme_name = "PM_LSU_FLUSH_UST",
Packit 577717
		.pme_code = 0x2c00,
Packit 577717
		.pme_short_desc = "SRQ unaligned store flushes",
Packit 577717
		.pme_long_desc = "A store was flushed because it was unaligned",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SB_ST_HIT ] = {
Packit 577717
		.pme_name = "PM_L2SB_ST_HIT",
Packit 577717
		.pme_code = 0xf13,
Packit 577717
		.pme_short_desc = "L2 slice B store hits",
Packit 577717
		.pme_long_desc = "A store request made from the core hit in the L2 directory.  This event is provided on each of the three L2 slices A,B, and C.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FXU1_FIN ] = {
Packit 577717
		.pme_name = "PM_FXU1_FIN",
Packit 577717
		.pme_code = 0x236,
Packit 577717
		.pme_short_desc = "FXU1 produced a result",
Packit 577717
		.pme_long_desc = "The Fixed Point unit 1 finished an instruction and produced a result",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L3B1_DIR_MIS ] = {
Packit 577717
		.pme_name = "PM_L3B1_DIR_MIS",
Packit 577717
		.pme_code = 0xf03,
Packit 577717
		.pme_short_desc = "L3 bank 1 directory misses",
Packit 577717
		.pme_long_desc = "A reference was made to the local L3 directory by a local CPU and it missed in the L3. Only requests from on-MCM CPUs are counted. This event is scaled to the L3 speed and the count must be scaled. i.e. if the L3 is running 3:1, divide the count by 3",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_4INST_CLB_CYC ] = {
Packit 577717
		.pme_name = "PM_4INST_CLB_CYC",
Packit 577717
		.pme_code = 0x453,
Packit 577717
		.pme_short_desc = "Cycles 4 instructions in CLB",
Packit 577717
		.pme_long_desc = "The cache line buffer (CLB) is an 8-deep, 4-wide instruction buffer. Fullness is indicated in the 8 valid bits associated with each of the 4-wide slots with full(0) correspanding to the number of cycles there are 8 instructions in the queue and full (7) corresponding to the number of cycles there is 1 instruction in the queue. This signal gives a real time history of the number of instruction quads valid in the instruction queue.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_GRP_CMPL ] = {
Packit 577717
		.pme_name = "PM_GRP_CMPL",
Packit 577717
		.pme_code = 0x7003,
Packit 577717
		.pme_short_desc = "Group completed",
Packit 577717
		.pme_long_desc = "A group completed. Microcoded instructions that span multiple groups will generate this event once per group.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_DC_PREF_L2_CLONE_L3 ] = {
Packit 577717
		.pme_name = "PM_DC_PREF_L2_CLONE_L3",
Packit 577717
		.pme_code = 0xc27,
Packit 577717
		.pme_short_desc = "L2 prefetch cloned with L3",
Packit 577717
		.pme_long_desc = "A prefetch request was made to the L2 with a cloned request sent to the L3",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU_FRSP_FCONV ] = {
Packit 577717
		.pme_name = "PM_FPU_FRSP_FCONV",
Packit 577717
		.pme_code = 0x7110,
Packit 577717
		.pme_short_desc = "FPU executed FRSP or FCONV instructions",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when executing frsp or convert kind of instruction. This could be frsp*, fcfid*, fcti* where XYZ* means XYZ, XYZs, XYZ., XYZs. Combined Unit 0 + Unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_5INST_CLB_CYC ] = {
Packit 577717
		.pme_name = "PM_5INST_CLB_CYC",
Packit 577717
		.pme_code = 0x454,
Packit 577717
		.pme_short_desc = "Cycles 5 instructions in CLB",
Packit 577717
		.pme_long_desc = "The cache line buffer (CLB) is an 8-deep, 4-wide instruction buffer. Fullness is indicated in the 8 valid bits associated with each of the 4-wide slots with full(0) correspanding to the number of cycles there are 8 instructions in the queue and full (7) corresponding to the number of cycles there is 1 instruction in the queue. This signal gives a real time history of the number of instruction quads valid in the instruction queue.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LSU0_FLUSH_SRQ ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU0_FLUSH_SRQ",
Packit 577717
		.pme_code = 0x913,
Packit 577717
		.pme_short_desc = "LSU0 marked SRQ flushes",
Packit 577717
		.pme_long_desc = "A marked store was flushed because younger load hits and older store that is already in the SRQ or in the same group.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LSU_FLUSH_ULD ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU_FLUSH_ULD",
Packit 577717
		.pme_code = 0x8910,
Packit 577717
		.pme_short_desc = "Marked unaligned load flushes",
Packit 577717
		.pme_long_desc = "A marked load was flushed because it was unaligned (crossed a 64byte boundary, or 32 byte if it missed the L1)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_8INST_CLB_CYC ] = {
Packit 577717
		.pme_name = "PM_8INST_CLB_CYC",
Packit 577717
		.pme_code = 0x457,
Packit 577717
		.pme_short_desc = "Cycles 8 instructions in CLB",
Packit 577717
		.pme_long_desc = "The cache line buffer (CLB) is an 8-deep, 4-wide instruction buffer. Fullness is indicated in the 8 valid bits associated with each of the 4-wide slots with full(0) correspanding to the number of cycles there are 8 instructions in the queue and full (7) corresponding to the number of cycles there is 1 instruction in the queue. This signal gives a real time history of the number of instruction quads valid in the instruction queue.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_LMQ_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_LSU_LMQ_FULL_CYC",
Packit 577717
		.pme_code = 0x927,
Packit 577717
		.pme_short_desc = "Cycles LMQ full",
Packit 577717
		.pme_long_desc = "The LMQ was full",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_ST_REF_L1_LSU0 ] = {
Packit 577717
		.pme_name = "PM_ST_REF_L1_LSU0",
Packit 577717
		.pme_code = 0xc11,
Packit 577717
		.pme_short_desc = "LSU0 L1 D cache store references",
Packit 577717
		.pme_long_desc = "A store executed on unit 0",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU0_DERAT_MISS ] = {
Packit 577717
		.pme_name = "PM_LSU0_DERAT_MISS",
Packit 577717
		.pme_code = 0x902,
Packit 577717
		.pme_short_desc = "LSU0 DERAT misses",
Packit 577717
		.pme_long_desc = "A data request (load or store) from LSU Unit 0 missed the ERAT and resulted in an ERAT reload. Multiple instructions may miss the ERAT entry for the same 4K page, but only one reload will occur.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_SRQ_SYNC_CYC ] = {
Packit 577717
		.pme_name = "PM_LSU_SRQ_SYNC_CYC",
Packit 577717
		.pme_code = 0x932,
Packit 577717
		.pme_short_desc = "SRQ sync duration",
Packit 577717
		.pme_long_desc = "This signal is asserted every cycle when a sync is in the SRQ.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU_STALL3 ] = {
Packit 577717
		.pme_name = "PM_FPU_STALL3",
Packit 577717
		.pme_code = 0x2120,
Packit 577717
		.pme_short_desc = "FPU stalled in pipe3",
Packit 577717
		.pme_long_desc = "FPU has generated a stall in pipe3 due to overflow, underflow, massive cancel, convert to integer (sometimes), or convert from integer (always). This signal is active during the entire duration of the stall. Combined Unit 0 + Unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_DATA_FROM_L2 ] = {
Packit 577717
		.pme_name = "PM_MRK_DATA_FROM_L2",
Packit 577717
		.pme_code = 0x4c76,
Packit 577717
		.pme_short_desc = "Marked data loaded from L2",
Packit 577717
		.pme_long_desc = "DL1 was reloaded from the local L2 due to a marked demand load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU0_FMOV_FEST ] = {
Packit 577717
		.pme_name = "PM_FPU0_FMOV_FEST",
Packit 577717
		.pme_code = 0x110,
Packit 577717
		.pme_short_desc = "FPU0 executed FMOV or FEST instructions",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when fp0 is executing a move kind of instruction or one of the estimate instructions.. This could be fmr*, fneg*, fabs*, fnabs* , fres* or frsqrte* where XYZ* means XYZ or XYZ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU0_FLUSH_SRQ ] = {
Packit 577717
		.pme_name = "PM_LSU0_FLUSH_SRQ",
Packit 577717
		.pme_code = 0xc03,
Packit 577717
		.pme_short_desc = "LSU0 SRQ flushes",
Packit 577717
		.pme_long_desc = "A store was flushed because younger load hits and older store that is already in the SRQ or in the same group.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LD_REF_L1_LSU0 ] = {
Packit 577717
		.pme_name = "PM_LD_REF_L1_LSU0",
Packit 577717
		.pme_code = 0xc10,
Packit 577717
		.pme_short_desc = "LSU0 L1 D cache load references",
Packit 577717
		.pme_long_desc = "A load executed on unit 0",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SC_SHR_INV ] = {
Packit 577717
		.pme_name = "PM_L2SC_SHR_INV",
Packit 577717
		.pme_code = 0xf25,
Packit 577717
		.pme_short_desc = "L2 slice C transition from shared to invalid",
Packit 577717
		.pme_long_desc = "A cache line in the local L2 directory made a state transition from Shared (Shared, Shared L, or Tagged) to the Invalid state. This transition was caused by any external snoop request. The event is provided on each of the three slices A,B,and C. NOTE: For this event to be useful the tablewalk duration event should also be counted.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU1_FLUSH_SRQ ] = {
Packit 577717
		.pme_name = "PM_LSU1_FLUSH_SRQ",
Packit 577717
		.pme_code = 0xc07,
Packit 577717
		.pme_short_desc = "LSU1 SRQ flushes",
Packit 577717
		.pme_long_desc = "A store was flushed because younger load hits and older store that is already in the SRQ or in the same group. ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_LMQ_S0_ALLOC ] = {
Packit 577717
		.pme_name = "PM_LSU_LMQ_S0_ALLOC",
Packit 577717
		.pme_code = 0x935,
Packit 577717
		.pme_short_desc = "LMQ slot 0 allocated",
Packit 577717
		.pme_long_desc = "The first entry in the LMQ was allocated.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_ST_REF_L1 ] = {
Packit 577717
		.pme_name = "PM_ST_REF_L1",
Packit 577717
		.pme_code = 0x7c10,
Packit 577717
		.pme_short_desc = "L1 D cache store references",
Packit 577717
		.pme_long_desc = "Total DL1 Store references",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_SRQ_EMPTY_CYC ] = {
Packit 577717
		.pme_name = "PM_LSU_SRQ_EMPTY_CYC",
Packit 577717
		.pme_code = 0x4003,
Packit 577717
		.pme_short_desc = "Cycles SRQ empty",
Packit 577717
		.pme_long_desc = "The Store Request Queue is empty",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU1_STF ] = {
Packit 577717
		.pme_name = "PM_FPU1_STF",
Packit 577717
		.pme_code = 0x126,
Packit 577717
		.pme_short_desc = "FPU1 executed store instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when fp1 is executing a store instruction.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L3B0_DIR_REF ] = {
Packit 577717
		.pme_name = "PM_L3B0_DIR_REF",
Packit 577717
		.pme_code = 0xf00,
Packit 577717
		.pme_short_desc = "L3 bank 0 directory references",
Packit 577717
		.pme_long_desc = "A reference was made to the local L3 directory by a local CPU. Only requests from on-MCM CPUs are counted. This event is scaled to the L3 speed and the count must be scaled. i.e. if the L3 is running 3:1, divide the count by 3",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_RUN_CYC ] = {
Packit 577717
		.pme_name = "PM_RUN_CYC",
Packit 577717
		.pme_code = 0x1005,
Packit 577717
		.pme_short_desc = "Run cycles",
Packit 577717
		.pme_long_desc = "Processor Cycles gated by the run latch",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_LMQ_S0_VALID ] = {
Packit 577717
		.pme_name = "PM_LSU_LMQ_S0_VALID",
Packit 577717
		.pme_code = 0x931,
Packit 577717
		.pme_short_desc = "LMQ slot 0 valid",
Packit 577717
		.pme_long_desc = "This signal is asserted every cycle when the first entry in the LMQ is valid. The LMQ had eight entries that are allocated FIFO",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_LRQ_S0_VALID ] = {
Packit 577717
		.pme_name = "PM_LSU_LRQ_S0_VALID",
Packit 577717
		.pme_code = 0xc22,
Packit 577717
		.pme_short_desc = "LRQ slot 0 valid",
Packit 577717
		.pme_long_desc = "This signal is asserted every cycle that the Load Request Queue slot zero is valid. The SRQ is 32 entries long and is allocated round-robin.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU0_LDF ] = {
Packit 577717
		.pme_name = "PM_LSU0_LDF",
Packit 577717
		.pme_code = 0x930,
Packit 577717
		.pme_short_desc = "LSU0 executed Floating Point load instruction",
Packit 577717
		.pme_long_desc = "A floating point load was executed from LSU unit 0",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_IMR_RELOAD ] = {
Packit 577717
		.pme_name = "PM_MRK_IMR_RELOAD",
Packit 577717
		.pme_code = 0x922,
Packit 577717
		.pme_short_desc = "Marked IMR reloaded",
Packit 577717
		.pme_long_desc = "A DL1 reload occurred due to marked load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_7INST_CLB_CYC ] = {
Packit 577717
		.pme_name = "PM_7INST_CLB_CYC",
Packit 577717
		.pme_code = 0x456,
Packit 577717
		.pme_short_desc = "Cycles 7 instructions in CLB",
Packit 577717
		.pme_long_desc = "The cache line buffer (CLB) is an 8-deep, 4-wide instruction buffer. Fullness is indicated in the 8 valid bits associated with each of the 4-wide slots with full(0) correspanding to the number of cycles there are 8 instructions in the queue and full (7) corresponding to the number of cycles there is 1 instruction in the queue. This signal gives a real time history of the number of instruction quads valid in the instruction queue.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_GRP_TIMEO ] = {
Packit 577717
		.pme_name = "PM_MRK_GRP_TIMEO",
Packit 577717
		.pme_code = 0x5005,
Packit 577717
		.pme_short_desc = "Marked group completion timeout",
Packit 577717
		.pme_long_desc = "The sampling timeout expired indicating that the previously sampled instruction is no longer in the processor",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU_FMOV_FEST ] = {
Packit 577717
		.pme_name = "PM_FPU_FMOV_FEST",
Packit 577717
		.pme_code = 0x8110,
Packit 577717
		.pme_short_desc = "FPU executing FMOV or FEST instructions",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when executing a move kind of instruction or one of the estimate instructions.. This could be fmr*, fneg*, fabs*, fnabs* , fres* or frsqrte* where XYZ* means XYZ or XYZ . Combined Unit 0 + Unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_GRP_DISP_BLK_SB_CYC ] = {
Packit 577717
		.pme_name = "PM_GRP_DISP_BLK_SB_CYC",
Packit 577717
		.pme_code = 0x231,
Packit 577717
		.pme_short_desc = "Cycles group dispatch blocked by scoreboard",
Packit 577717
		.pme_long_desc = "The ISU sends a signal indicating that dispatch is blocked by scoreboard.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_XER_MAP_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_XER_MAP_FULL_CYC",
Packit 577717
		.pme_code = 0x202,
Packit 577717
		.pme_short_desc = "Cycles XER mapper full",
Packit 577717
		.pme_long_desc = "The ISU sends a signal indicating that the xer mapper cannot accept any more groups. Dispatch is stopped. Note: this condition indicates that a pool of mapper is full but the entire mapper may not be.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_ST_MISS_L1 ] = {
Packit 577717
		.pme_name = "PM_ST_MISS_L1",
Packit 577717
		.pme_code = 0xc23,
Packit 577717
		.pme_short_desc = "L1 D cache store misses",
Packit 577717
		.pme_long_desc = "A store missed the dcache",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_STOP_COMPLETION ] = {
Packit 577717
		.pme_name = "PM_STOP_COMPLETION",
Packit 577717
		.pme_code = 0x3001,
Packit 577717
		.pme_short_desc = "Completion stopped",
Packit 577717
		.pme_long_desc = "RAS Unit has signaled completion to stop",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_GRP_CMPL ] = {
Packit 577717
		.pme_name = "PM_MRK_GRP_CMPL",
Packit 577717
		.pme_code = 0x4004,
Packit 577717
		.pme_short_desc = "Marked group completed",
Packit 577717
		.pme_long_desc = "A group containing a sampled instruction completed. Microcoded instructions that span multiple groups will generate this event once per group.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_ISLB_MISS ] = {
Packit 577717
		.pme_name = "PM_ISLB_MISS",
Packit 577717
		.pme_code = 0x901,
Packit 577717
		.pme_short_desc = "Instruction SLB misses",
Packit 577717
		.pme_long_desc = "A SLB miss for an instruction fetch as occurred",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_CYC ] = {
Packit 577717
		.pme_name = "PM_CYC",
Packit 577717
		.pme_code = 0x7,
Packit 577717
		.pme_short_desc = "Processor cycles",
Packit 577717
		.pme_long_desc = "Processor cycles",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LD_MISS_L1_LSU1 ] = {
Packit 577717
		.pme_name = "PM_LD_MISS_L1_LSU1",
Packit 577717
		.pme_code = 0xc16,
Packit 577717
		.pme_short_desc = "LSU1 L1 D cache load misses",
Packit 577717
		.pme_long_desc = "A load, executing on unit 1, missed the dcache",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_STCX_FAIL ] = {
Packit 577717
		.pme_name = "PM_STCX_FAIL",
Packit 577717
		.pme_code = 0x921,
Packit 577717
		.pme_short_desc = "STCX failed",
Packit 577717
		.pme_long_desc = "A stcx (stwcx or stdcx) failed",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU1_SRQ_STFWD ] = {
Packit 577717
		.pme_name = "PM_LSU1_SRQ_STFWD",
Packit 577717
		.pme_code = 0xc24,
Packit 577717
		.pme_short_desc = "LSU1 SRQ store forwarded",
Packit 577717
		.pme_long_desc = "Data from a store instruction was forwarded to a load on unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_GRP_DISP ] = {
Packit 577717
		.pme_name = "PM_GRP_DISP",
Packit 577717
		.pme_code = 0x2004,
Packit 577717
		.pme_short_desc = "Group dispatches",
Packit 577717
		.pme_long_desc = "A group was dispatched",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_DATA_FROM_L2 ] = {
Packit 577717
		.pme_name = "PM_DATA_FROM_L2",
Packit 577717
		.pme_code = 0x4c66,
Packit 577717
		.pme_short_desc = "Data loaded from L2",
Packit 577717
		.pme_long_desc = "DL1 was reloaded from the local L2 due to a demand load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2_PREF ] = {
Packit 577717
		.pme_name = "PM_L2_PREF",
Packit 577717
		.pme_code = 0xc34,
Packit 577717
		.pme_short_desc = "L2 cache prefetches",
Packit 577717
		.pme_long_desc = "A request to prefetch data into L2 was made",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU0_FPSCR ] = {
Packit 577717
		.pme_name = "PM_FPU0_FPSCR",
Packit 577717
		.pme_code = 0x130,
Packit 577717
		.pme_short_desc = "FPU0 executed FPSCR instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when fp0 is executing fpscr move related instruction. This could be mtfsfi*, mtfsb0*, mtfsb1*. mffs*, mtfsf*, mcrsf* where XYZ* means XYZ, XYZs, XYZ., XYZs",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU1_DENORM ] = {
Packit 577717
		.pme_name = "PM_FPU1_DENORM",
Packit 577717
		.pme_code = 0x124,
Packit 577717
		.pme_short_desc = "FPU1 received denormalized data",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when one of the operands is denormalized.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_DATA_FROM_L25_MOD ] = {
Packit 577717
		.pme_name = "PM_MRK_DATA_FROM_L25_MOD",
Packit 577717
		.pme_code = 0x8c76,
Packit 577717
		.pme_short_desc = "Marked data loaded from L2.5 modified",
Packit 577717
		.pme_long_desc = "DL1 was reloaded with modified (M) data from the L2 of a chip on this MCM due to a marked demand load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SB_ST_REQ ] = {
Packit 577717
		.pme_name = "PM_L2SB_ST_REQ",
Packit 577717
		.pme_code = 0xf12,
Packit 577717
		.pme_short_desc = "L2 slice B store requests",
Packit 577717
		.pme_long_desc = "A store request as seen at the L2 directory has been made from the core. Stores are counted after gathering in the L2 store queues. The event is provided on each of the three slices A,B,and C.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SB_MOD_INV ] = {
Packit 577717
		.pme_name = "PM_L2SB_MOD_INV",
Packit 577717
		.pme_code = 0xf23,
Packit 577717
		.pme_short_desc = "L2 slice B transition from modified to invalid",
Packit 577717
		.pme_long_desc = "A cache line in the local L2 directory made a state transition from the Modified state to the Invalid state. This transition was caused by any RWITM snoop request that hit against a modified entry in the local L2. The event is provided on each of the three slices A,B,and C.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU0_FSQRT ] = {
Packit 577717
		.pme_name = "PM_FPU0_FSQRT",
Packit 577717
		.pme_code = 0x102,
Packit 577717
		.pme_short_desc = "FPU0 executed FSQRT instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle at the end of the microcode executed when fp0 is executing a square root instruction. This could be fsqrt* where XYZ* means XYZ, XYZs, XYZ., XYZs.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LD_REF_L1 ] = {
Packit 577717
		.pme_name = "PM_LD_REF_L1",
Packit 577717
		.pme_code = 0x8c10,
Packit 577717
		.pme_short_desc = "L1 D cache load references",
Packit 577717
		.pme_long_desc = "Total DL1 Load references",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_L1_RELOAD_VALID ] = {
Packit 577717
		.pme_name = "PM_MRK_L1_RELOAD_VALID",
Packit 577717
		.pme_code = 0xc74,
Packit 577717
		.pme_short_desc = "Marked L1 reload data source valid",
Packit 577717
		.pme_long_desc = "The source information is valid and is for a marked load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SB_SHR_MOD ] = {
Packit 577717
		.pme_name = "PM_L2SB_SHR_MOD",
Packit 577717
		.pme_code = 0xf20,
Packit 577717
		.pme_short_desc = "L2 slice B transition from shared to modified",
Packit 577717
		.pme_long_desc = "A cache line in the local L2 directory made a state transition from Shared (Shared, Shared L , or Tagged) to the Modified state. This transition was caused by a store from either of the two local CPUs to a cache line in any of the Shared states. The event is provided on each of the three slices A,B,and C. ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_INST_FROM_L1 ] = {
Packit 577717
		.pme_name = "PM_INST_FROM_L1",
Packit 577717
		.pme_code = 0x6327,
Packit 577717
		.pme_short_desc = "Instruction fetched from L1",
Packit 577717
		.pme_long_desc = "An instruction fetch group was fetched from L1. Fetch Groups can contain up to 8 instructions",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_1PLUS_PPC_CMPL ] = {
Packit 577717
		.pme_name = "PM_1PLUS_PPC_CMPL",
Packit 577717
		.pme_code = 0x5003,
Packit 577717
		.pme_short_desc = "One or more PPC instruction completed",
Packit 577717
		.pme_long_desc = "A group containing at least one PPC instruction completed. For microcoded instructions that span multiple groups, this will only occur once.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_EE_OFF_EXT_INT ] = {
Packit 577717
		.pme_name = "PM_EE_OFF_EXT_INT",
Packit 577717
		.pme_code = 0x237,
Packit 577717
		.pme_short_desc = "Cycles MSR(EE) bit off and external interrupt pending",
Packit 577717
		.pme_long_desc = "Cycles MSR(EE) bit off and external interrupt pending",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SC_SHR_MOD ] = {
Packit 577717
		.pme_name = "PM_L2SC_SHR_MOD",
Packit 577717
		.pme_code = 0xf24,
Packit 577717
		.pme_short_desc = "L2 slice C transition from shared to modified",
Packit 577717
		.pme_long_desc = "A cache line in the local L2 directory made a state transition from Shared (Shared, Shared L , or Tagged) to the Modified state. This transition was caused by a store from either of the two local CPUs to a cache line in any of the Shared states. The event is provided on each of the three slices A,B,and C. ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_LRQ_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_LSU_LRQ_FULL_CYC",
Packit 577717
		.pme_code = 0x212,
Packit 577717
		.pme_short_desc = "Cycles LRQ full",
Packit 577717
		.pme_long_desc = "The isu sends this signal when the lrq is full.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_IC_PREF_INSTALL ] = {
Packit 577717
		.pme_name = "PM_IC_PREF_INSTALL",
Packit 577717
		.pme_code = 0x325,
Packit 577717
		.pme_short_desc = "Instruction prefetched installed in prefetch buffer",
Packit 577717
		.pme_long_desc = "This signal is asserted when a prefetch buffer entry (line) is allocated but the request is not a demand fetch.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LSU1_FLUSH_SRQ ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU1_FLUSH_SRQ",
Packit 577717
		.pme_code = 0x917,
Packit 577717
		.pme_short_desc = "LSU1 marked SRQ flushes",
Packit 577717
		.pme_long_desc = "A marked store was flushed because younger load hits and older store that is already in the SRQ or in the same group.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_GCT_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_GCT_FULL_CYC",
Packit 577717
		.pme_code = 0x200,
Packit 577717
		.pme_short_desc = "Cycles GCT full",
Packit 577717
		.pme_long_desc = "The ISU sends a signal indicating the gct is full. ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_INST_FROM_MEM ] = {
Packit 577717
		.pme_name = "PM_INST_FROM_MEM",
Packit 577717
		.pme_code = 0x1327,
Packit 577717
		.pme_short_desc = "Instruction fetched from memory",
Packit 577717
		.pme_long_desc = "An instruction fetch group was fetched from memory. Fetch Groups can contain up to 8 instructions",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FXU_BUSY ] = {
Packit 577717
		.pme_name = "PM_FXU_BUSY",
Packit 577717
		.pme_code = 0x6002,
Packit 577717
		.pme_short_desc = "FXU busy",
Packit 577717
		.pme_long_desc = "FXU0 and FXU1 are both busy",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_ST_REF_L1_LSU1 ] = {
Packit 577717
		.pme_name = "PM_ST_REF_L1_LSU1",
Packit 577717
		.pme_code = 0xc15,
Packit 577717
		.pme_short_desc = "LSU1 L1 D cache store references",
Packit 577717
		.pme_long_desc = "A store executed on unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LD_MISS_L1 ] = {
Packit 577717
		.pme_name = "PM_MRK_LD_MISS_L1",
Packit 577717
		.pme_code = 0x1920,
Packit 577717
		.pme_short_desc = "Marked L1 D cache load misses",
Packit 577717
		.pme_long_desc = "Marked L1 D cache load misses",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LSU1_INST_FIN ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU1_INST_FIN",
Packit 577717
		.pme_code = 0xc32,
Packit 577717
		.pme_short_desc = "LSU1 finished a marked instruction",
Packit 577717
		.pme_long_desc = "LSU unit 1 finished a marked instruction",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L1_WRITE_CYC ] = {
Packit 577717
		.pme_name = "PM_L1_WRITE_CYC",
Packit 577717
		.pme_code = 0x333,
Packit 577717
		.pme_short_desc = "Cycles writing to instruction L1",
Packit 577717
		.pme_long_desc = "This signal is asserted each cycle a cache write is active.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_BIQ_IDU_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_BIQ_IDU_FULL_CYC",
Packit 577717
		.pme_code = 0x324,
Packit 577717
		.pme_short_desc = "Cycles BIQ or IDU full",
Packit 577717
		.pme_long_desc = "This signal will be asserted each time either the IDU is full or the BIQ is full.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LSU0_INST_FIN ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU0_INST_FIN",
Packit 577717
		.pme_code = 0xc31,
Packit 577717
		.pme_short_desc = "LSU0 finished a marked instruction",
Packit 577717
		.pme_long_desc = "LSU unit 0 finished a marked instruction",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SC_ST_REQ ] = {
Packit 577717
		.pme_name = "PM_L2SC_ST_REQ",
Packit 577717
		.pme_code = 0xf14,
Packit 577717
		.pme_short_desc = "L2 slice C store requests",
Packit 577717
		.pme_long_desc = "A store request as seen at the L2 directory has been made from the core. Stores are counted after gathering in the L2 store queues. The event is provided on each of the three slices A,B,and C.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU1_BUSY ] = {
Packit 577717
		.pme_name = "PM_LSU1_BUSY",
Packit 577717
		.pme_code = 0xc37,
Packit 577717
		.pme_short_desc = "LSU1 busy",
Packit 577717
		.pme_long_desc = "LSU unit 1 is busy rejecting instructions ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU_ALL ] = {
Packit 577717
		.pme_name = "PM_FPU_ALL",
Packit 577717
		.pme_code = 0x5100,
Packit 577717
		.pme_short_desc = "FPU executed add, mult, sub, cmp or sel instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when FPU is executing an add, mult, sub, compare, or fsel kind of instruction. This could be fadd*, fmul*, fsub*, fcmp**, fsel where XYZ* means XYZ, XYZs, XYZ., XYZs. and XYZ** means XYZu, XYZo. Combined Unit 0 + Unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_SRQ_S0_ALLOC ] = {
Packit 577717
		.pme_name = "PM_LSU_SRQ_S0_ALLOC",
Packit 577717
		.pme_code = 0xc25,
Packit 577717
		.pme_short_desc = "SRQ slot 0 allocated",
Packit 577717
		.pme_long_desc = "SRQ Slot zero was allocated",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_GRP_MRK ] = {
Packit 577717
		.pme_name = "PM_GRP_MRK",
Packit 577717
		.pme_code = 0x5004,
Packit 577717
		.pme_short_desc = "Group marked in IDU",
Packit 577717
		.pme_long_desc = "A group was sampled (marked)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU1_FIN ] = {
Packit 577717
		.pme_name = "PM_FPU1_FIN",
Packit 577717
		.pme_code = 0x117,
Packit 577717
		.pme_short_desc = "FPU1 produced a result",
Packit 577717
		.pme_long_desc = "fp1 finished, produced a result. This only indicates finish, not completion. ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_DC_PREF_STREAM_ALLOC ] = {
Packit 577717
		.pme_name = "PM_DC_PREF_STREAM_ALLOC",
Packit 577717
		.pme_code = 0x907,
Packit 577717
		.pme_short_desc = "D cache new prefetch stream allocated",
Packit 577717
		.pme_long_desc = "A new Prefetch Stream was allocated",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_BR_MPRED_CR ] = {
Packit 577717
		.pme_name = "PM_BR_MPRED_CR",
Packit 577717
		.pme_code = 0x331,
Packit 577717
		.pme_short_desc = "Branch mispredictions due CR bit setting",
Packit 577717
		.pme_long_desc = "This signal is asserted when the branch execution unit detects a branch mispredict because the CR value is opposite of the predicted value. This signal is asserted after a branch issue event and will result in a branch redirect flush if not overridden by a flush of an older instruction.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_BR_MPRED_TA ] = {
Packit 577717
		.pme_name = "PM_BR_MPRED_TA",
Packit 577717
		.pme_code = 0x332,
Packit 577717
		.pme_short_desc = "Branch mispredictions due to target address",
Packit 577717
		.pme_long_desc = "branch miss predict due to a target address prediction. This signal will be asserted each time the branch execution unit detects an incorrect target address prediction. This signal will be asserted after a valid branch execution unit issue and will cause a branch mispredict flush unless a flush is detected from an older instruction.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_CRQ_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_CRQ_FULL_CYC",
Packit 577717
		.pme_code = 0x211,
Packit 577717
		.pme_short_desc = "Cycles CR issue queue full",
Packit 577717
		.pme_long_desc = "The ISU sends a signal indicating that the issue queue that feeds the ifu cr unit cannot accept any more group (queue is full of groups).",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_INST_FROM_PREF ] = {
Packit 577717
		.pme_name = "PM_INST_FROM_PREF",
Packit 577717
		.pme_code = 0x7327,
Packit 577717
		.pme_short_desc = "Instructions fetched from prefetch",
Packit 577717
		.pme_long_desc = "An instruction fetch group was fetched from the prefetch buffer. Fetch Groups can contain up to 8 instructions",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LD_MISS_L1 ] = {
Packit 577717
		.pme_name = "PM_LD_MISS_L1",
Packit 577717
		.pme_code = 0x3c10,
Packit 577717
		.pme_short_desc = "L1 D cache load misses",
Packit 577717
		.pme_long_desc = "Total DL1 Load references that miss the DL1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_STCX_PASS ] = {
Packit 577717
		.pme_name = "PM_STCX_PASS",
Packit 577717
		.pme_code = 0xc75,
Packit 577717
		.pme_short_desc = "Stcx passes",
Packit 577717
		.pme_long_desc = "A stcx (stwcx or stdcx) instruction was successful",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_DC_INV_L2 ] = {
Packit 577717
		.pme_name = "PM_DC_INV_L2",
Packit 577717
		.pme_code = 0xc17,
Packit 577717
		.pme_short_desc = "L1 D cache entries invalidated from L2",
Packit 577717
		.pme_long_desc = "A dcache invalidated was received from the L2 because a line in L2 was castout.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_SRQ_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_LSU_SRQ_FULL_CYC",
Packit 577717
		.pme_code = 0x213,
Packit 577717
		.pme_short_desc = "Cycles SRQ full",
Packit 577717
		.pme_long_desc = "The isu sends this signal when the srq is full.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU0_FLUSH_LRQ ] = {
Packit 577717
		.pme_name = "PM_LSU0_FLUSH_LRQ",
Packit 577717
		.pme_code = 0xc02,
Packit 577717
		.pme_short_desc = "LSU0 LRQ flushes",
Packit 577717
		.pme_long_desc = "A load was flushed by unit 1 because a younger load executed before an older store executed and they had overlapping data OR two loads executed out of order and they have byte overlap and there was a snoop in between to an overlapped byte.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_SRQ_S0_VALID ] = {
Packit 577717
		.pme_name = "PM_LSU_SRQ_S0_VALID",
Packit 577717
		.pme_code = 0xc21,
Packit 577717
		.pme_short_desc = "SRQ slot 0 valid",
Packit 577717
		.pme_long_desc = "This signal is asserted every cycle that the Store Request Queue slot zero is valid. The SRQ is 32 entries long and is allocated round-robin.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LARX_LSU0 ] = {
Packit 577717
		.pme_name = "PM_LARX_LSU0",
Packit 577717
		.pme_code = 0xc73,
Packit 577717
		.pme_short_desc = "Larx executed on LSU0",
Packit 577717
		.pme_long_desc = "A larx (lwarx or ldarx) was executed on side 0 (there is no coresponding unit 1 event since larx instructions can only execute on unit 0)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_GCT_EMPTY_CYC ] = {
Packit 577717
		.pme_name = "PM_GCT_EMPTY_CYC",
Packit 577717
		.pme_code = 0x1004,
Packit 577717
		.pme_short_desc = "Cycles GCT empty",
Packit 577717
		.pme_long_desc = "The Global Completion Table is completely empty",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU1_ALL ] = {
Packit 577717
		.pme_name = "PM_FPU1_ALL",
Packit 577717
		.pme_code = 0x107,
Packit 577717
		.pme_short_desc = "FPU1 executed add, mult, sub, cmp or sel instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when fp1 is executing an add, mult, sub, compare, or fsel kind of instruction. This could be fadd*, fmul*, fsub*, fcmp**, fsel where XYZ* means XYZ, XYZs, XYZ., XYZs. and XYZ** means XYZu, XYZo",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU1_FSQRT ] = {
Packit 577717
		.pme_name = "PM_FPU1_FSQRT",
Packit 577717
		.pme_code = 0x106,
Packit 577717
		.pme_short_desc = "FPU1 executed FSQRT instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle at the end of the microcode executed when fp1 is executing a square root instruction. This could be fsqrt* where XYZ* means XYZ, XYZs, XYZ., XYZs.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU_FIN ] = {
Packit 577717
		.pme_name = "PM_FPU_FIN",
Packit 577717
		.pme_code = 0x4110,
Packit 577717
		.pme_short_desc = "FPU produced a result",
Packit 577717
		.pme_long_desc = "FPU finished, produced a result This only indicates finish, not completion. Combined Unit 0 + Unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SA_SHR_MOD ] = {
Packit 577717
		.pme_name = "PM_L2SA_SHR_MOD",
Packit 577717
		.pme_code = 0xf04,
Packit 577717
		.pme_short_desc = "L2 slice A transition from shared to modified",
Packit 577717
		.pme_long_desc = "A cache line in the local L2 directory made a state transition from Shared (Shared, Shared L , or Tagged) to the Modified state. This transition was caused by a store from either of the two local CPUs to a cache line in any of the Shared states. The event is provided on each of the three slices A,B,and C. ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LD_MISS_L1_LSU1 ] = {
Packit 577717
		.pme_name = "PM_MRK_LD_MISS_L1_LSU1",
Packit 577717
		.pme_code = 0x924,
Packit 577717
		.pme_short_desc = "LSU1 L1 D cache load misses",
Packit 577717
		.pme_long_desc = "A marked load, executing on unit 1, missed the dcache",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_SRQ_STFWD ] = {
Packit 577717
		.pme_name = "PM_LSU_SRQ_STFWD",
Packit 577717
		.pme_code = 0x1c20,
Packit 577717
		.pme_short_desc = "SRQ store forwarded",
Packit 577717
		.pme_long_desc = "Data from a store instruction was forwarded to a load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FXU0_FIN ] = {
Packit 577717
		.pme_name = "PM_FXU0_FIN",
Packit 577717
		.pme_code = 0x232,
Packit 577717
		.pme_short_desc = "FXU0 produced a result",
Packit 577717
		.pme_long_desc = "The Fixed Point unit 0 finished an instruction and produced a result",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_FPU_FIN ] = {
Packit 577717
		.pme_name = "PM_MRK_FPU_FIN",
Packit 577717
		.pme_code = 0x7004,
Packit 577717
		.pme_short_desc = "Marked instruction FPU processing finished",
Packit 577717
		.pme_long_desc = "One of the Floating Point Units finished a marked instruction. Instructions that finish may not necessary complete",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_BUSY ] = {
Packit 577717
		.pme_name = "PM_LSU_BUSY",
Packit 577717
		.pme_code = 0x4c30,
Packit 577717
		.pme_short_desc = "LSU busy",
Packit 577717
		.pme_long_desc = "LSU (unit 0 + unit 1) is busy rejecting instructions ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_INST_FROM_L35 ] = {
Packit 577717
		.pme_name = "PM_INST_FROM_L35",
Packit 577717
		.pme_code = 0x4327,
Packit 577717
		.pme_short_desc = "Instructions fetched from L3.5",
Packit 577717
		.pme_long_desc = "An instruction fetch group was fetched from the L3 of another module. Fetch Groups can contain up to 8 instructions",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU1_FRSP_FCONV ] = {
Packit 577717
		.pme_name = "PM_FPU1_FRSP_FCONV",
Packit 577717
		.pme_code = 0x115,
Packit 577717
		.pme_short_desc = "FPU1 executed FRSP or FCONV instructions",
Packit 577717
		.pme_long_desc = "fThis signal is active for one cycle when fp1 is executing frsp or convert kind of instruction. This could be frsp*, fcfid*, fcti* where XYZ* means XYZ, XYZs, XYZ., XYZs.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_SNOOP_TLBIE ] = {
Packit 577717
		.pme_name = "PM_SNOOP_TLBIE",
Packit 577717
		.pme_code = 0x903,
Packit 577717
		.pme_short_desc = "Snoop TLBIE",
Packit 577717
		.pme_long_desc = "A TLB miss for a data request occurred. Requests that miss the TLB may be retried until the instruction is in the next to complete group (unless HID4 is set to allow speculative tablewalks). This may result in multiple TLB misses for the same instruction.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU0_FDIV ] = {
Packit 577717
		.pme_name = "PM_FPU0_FDIV",
Packit 577717
		.pme_code = 0x100,
Packit 577717
		.pme_short_desc = "FPU0 executed FDIV instruction",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle at the end of the microcode executed when fp0 is executing a divide instruction. This could be fdiv, fdivs, fdiv. fdivs.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LD_REF_L1_LSU1 ] = {
Packit 577717
		.pme_name = "PM_LD_REF_L1_LSU1",
Packit 577717
		.pme_code = 0xc14,
Packit 577717
		.pme_short_desc = "LSU1 L1 D cache load references",
Packit 577717
		.pme_long_desc = "A load executed on unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_DATA_FROM_L275_MOD ] = {
Packit 577717
		.pme_name = "PM_MRK_DATA_FROM_L275_MOD",
Packit 577717
		.pme_code = 0x7c76,
Packit 577717
		.pme_short_desc = "Marked data loaded from L2.75 modified",
Packit 577717
		.pme_long_desc = "DL1 was reloaded with modified (M) data from the L2 of another MCM due to a marked demand load. ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_HV_CYC ] = {
Packit 577717
		.pme_name = "PM_HV_CYC",
Packit 577717
		.pme_code = 0x3004,
Packit 577717
		.pme_short_desc = "Hypervisor Cycles",
Packit 577717
		.pme_long_desc = "Cycles when the processor is executing in Hypervisor (MSR[HV] = 0 and MSR[PR]=0)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_6INST_CLB_CYC ] = {
Packit 577717
		.pme_name = "PM_6INST_CLB_CYC",
Packit 577717
		.pme_code = 0x455,
Packit 577717
		.pme_short_desc = "Cycles 6 instructions in CLB",
Packit 577717
		.pme_long_desc = "The cache line buffer (CLB) is an 8-deep, 4-wide instruction buffer. Fullness is indicated in the 8 valid bits associated with each of the 4-wide slots with full(0) correspanding to the number of cycles there are 8 instructions in the queue and full (7) corresponding to the number of cycles there is 1 instruction in the queue. This signal gives a real time history of the number of instruction quads valid in the instruction queue.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LR_CTR_MAP_FULL_CYC ] = {
Packit 577717
		.pme_name = "PM_LR_CTR_MAP_FULL_CYC",
Packit 577717
		.pme_code = 0x206,
Packit 577717
		.pme_short_desc = "Cycles LR/CTR mapper full",
Packit 577717
		.pme_long_desc = "The ISU sends a signal indicating that the lr/ctr mapper cannot accept any more groups. Dispatch is stopped. Note: this condition indicates that a pool of mapper is full but the entire mapper may not be.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SC_MOD_INV ] = {
Packit 577717
		.pme_name = "PM_L2SC_MOD_INV",
Packit 577717
		.pme_code = 0xf27,
Packit 577717
		.pme_short_desc = "L2 slice C transition from modified to invalid",
Packit 577717
		.pme_long_desc = "A cache line in the local L2 directory made a state transition from the Modified state to the Invalid state. This transition was caused by any RWITM snoop request that hit against a modified entry in the local L2. The event is provided on each of the three slices A,B,and C.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_FPU_DENORM ] = {
Packit 577717
		.pme_name = "PM_FPU_DENORM",
Packit 577717
		.pme_code = 0x1120,
Packit 577717
		.pme_short_desc = "FPU received denormalized data",
Packit 577717
		.pme_long_desc = "This signal is active for one cycle when one of the operands is denormalized. Combined Unit 0 + Unit 1",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_DATA_FROM_L275_MOD ] = {
Packit 577717
		.pme_name = "PM_DATA_FROM_L275_MOD",
Packit 577717
		.pme_code = 0x7c66,
Packit 577717
		.pme_short_desc = "Data loaded from L2.75 modified",
Packit 577717
		.pme_long_desc = "DL1 was reloaded with modified (M) data from the L2 of another MCM due to a demand load. ",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU1_DERAT_MISS ] = {
Packit 577717
		.pme_name = "PM_LSU1_DERAT_MISS",
Packit 577717
		.pme_code = 0x906,
Packit 577717
		.pme_short_desc = "LSU1 DERAT misses",
Packit 577717
		.pme_long_desc = "A data request (load or store) from LSU Unit 1 missed the ERAT and resulted in an ERAT reload. Multiple instructions may miss the ERAT entry for the same 4K page, but only one reload will occur.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_IC_PREF_REQ ] = {
Packit 577717
		.pme_name = "PM_IC_PREF_REQ",
Packit 577717
		.pme_code = 0x326,
Packit 577717
		.pme_short_desc = "Instruction prefetch requests",
Packit 577717
		.pme_long_desc = "Asserted when a non-canceled prefetch is made to the cache interface unit (CIU).",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_LSU_FIN ] = {
Packit 577717
		.pme_name = "PM_MRK_LSU_FIN",
Packit 577717
		.pme_code = 0x8004,
Packit 577717
		.pme_short_desc = "Marked instruction LSU processing finished",
Packit 577717
		.pme_long_desc = "One of the Load/Store Units finished a marked instruction. Instructions that finish may not necessary complete",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_DATA_FROM_L3 ] = {
Packit 577717
		.pme_name = "PM_MRK_DATA_FROM_L3",
Packit 577717
		.pme_code = 0x1c76,
Packit 577717
		.pme_short_desc = "Marked data loaded from L3",
Packit 577717
		.pme_long_desc = "DL1 was reloaded from the local L3 due to a marked demand load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_MRK_DATA_FROM_MEM ] = {
Packit 577717
		.pme_name = "PM_MRK_DATA_FROM_MEM",
Packit 577717
		.pme_code = 0x2c76,
Packit 577717
		.pme_short_desc = "Marked data loaded from memory",
Packit 577717
		.pme_long_desc = "DL1 was reloaded from memory due to a marked demand load",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU0_FLUSH_UST ] = {
Packit 577717
		.pme_name = "PM_LSU0_FLUSH_UST",
Packit 577717
		.pme_code = 0xc01,
Packit 577717
		.pme_short_desc = "LSU0 unaligned store flushes",
Packit 577717
		.pme_long_desc = "A store was flushed from unit 0 because it was unaligned (crossed a 4k boundary)",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_FLUSH_LRQ ] = {
Packit 577717
		.pme_name = "PM_LSU_FLUSH_LRQ",
Packit 577717
		.pme_code = 0x6c00,
Packit 577717
		.pme_short_desc = "LRQ flushes",
Packit 577717
		.pme_long_desc = "A load was flushed because a younger load executed before an older store executed and they had overlapping data OR two loads executed out of order and they have byte overlap and there was a snoop in between to an overlapped byte.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_LSU_FLUSH_SRQ ] = {
Packit 577717
		.pme_name = "PM_LSU_FLUSH_SRQ",
Packit 577717
		.pme_code = 0x5c00,
Packit 577717
		.pme_short_desc = "SRQ flushes",
Packit 577717
		.pme_long_desc = "A store was flushed because younger load hits and older store that is already in the SRQ or in the same group.",
Packit 577717
	},
Packit 577717
	[ POWER4_PME_PM_L2SC_MOD_TAG ] = {
Packit 577717
		.pme_name = "PM_L2SC_MOD_TAG",
Packit 577717
		.pme_code = 0xf26,
Packit 577717
		.pme_short_desc = "L2 slice C transition from modified to tagged",
Packit 577717
		.pme_long_desc = "A cache line in the local L2 directory made a state transition from the Modified state to the Tagged state. This transition was caused by a read snoop request that hit against a modified entry in the local L2. The event is provided on each of the three slices A,B,and C.",
Packit 577717
	}
Packit 577717
};
Packit 577717
#endif
Packit 577717