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

Packit 577717
/*
Packit 577717
 * Copyright (c) 2011 Google, Inc
Packit 577717
 * Contributed by Stephane Eranian <eranian@gmail.com>
Packit 577717
 *
Packit 577717
 * Permission is hereby granted, free of charge, to any person obtaining a copy
Packit 577717
 * of this software and associated documentation files (the "Software"), to deal
Packit 577717
 * in the Software without restriction, including without limitation the rights
Packit 577717
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
Packit 577717
 * of the Software, and to permit persons to whom the Software is furnished to do so,
Packit 577717
 * subject to the following conditions:
Packit 577717
 *
Packit 577717
 * The above copyright notice and this permission notice shall be included in all
Packit 577717
 * copies or substantial portions of the Software.
Packit 577717
 *
Packit 577717
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
Packit 577717
 * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
Packit 577717
 * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
Packit 577717
 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
Packit 577717
 * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
Packit 577717
 * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Packit 577717
 *
Packit 577717
 * This file is part of libpfm, a performance monitoring support library for
Packit 577717
 * applications on Linux.
Packit 577717
 *
Packit 577717
 * This file has been automatically generated.
Packit 577717
 *
Packit 577717
 * PMU: coreduo (Intel Core Duo/Core Solo)
Packit 577717
 */
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_sse_prefetch[]={
Packit 577717
   { .uname  = "NTA",
Packit 577717
     .udesc  = "Streaming SIMD Extensions (SSE) Prefetch NTA instructions executed",
Packit 577717
     .ucode = 0x0,
Packit 577717
   },
Packit 577717
   { .uname  = "T1",
Packit 577717
     .udesc  = "SSE software prefetch instruction PREFE0xTCT1 retired",
Packit 577717
     .ucode = 0x100,
Packit 577717
   },
Packit 577717
   { .uname  = "T2",
Packit 577717
     .udesc  = "SSE software prefetch instruction PREFE0xTCT2 retired",
Packit 577717
     .ucode = 0x200,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_l2_ads[]={
Packit 577717
   { .uname  = "SELF",
Packit 577717
     .udesc  = "This core",
Packit 577717
     .ucode = 0x4000,
Packit 577717
     .uflags= INTEL_X86_NCOMBO | INTEL_X86_DFL,
Packit 577717
   },
Packit 577717
   { .uname  = "BOTH_CORES",
Packit 577717
     .udesc  = "Both cores",
Packit 577717
     .ucode = 0xc000,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_l2_lines_in[]={
Packit 577717
   { .uname  = "SELF",
Packit 577717
     .udesc  = "This core",
Packit 577717
     .ucode = 0x4000,
Packit 577717
     .uflags= INTEL_X86_NCOMBO | INTEL_X86_DFL,
Packit 577717
     .grpid = 0,
Packit 577717
   },
Packit 577717
   { .uname  = "BOTH_CORES",
Packit 577717
     .udesc  = "Both cores",
Packit 577717
     .ucode = 0xc000,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
     .grpid = 0,
Packit 577717
   },
Packit 577717
   { .uname  = "ANY",
Packit 577717
     .udesc  = "All inclusive",
Packit 577717
     .ucode = 0x3000,
Packit 577717
     .uflags= INTEL_X86_NCOMBO | INTEL_X86_DFL,
Packit 577717
     .grpid = 1,
Packit 577717
   },
Packit 577717
   { .uname  = "PREFETCH",
Packit 577717
     .udesc  = "Hardware prefetch only",
Packit 577717
     .ucode = 0x1000,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
     .grpid = 1,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_l2_ifetch[]={
Packit 577717
   { .uname  = "MESI",
Packit 577717
     .udesc  = "Any cacheline access",
Packit 577717
     .ucode = 0xf00,
Packit 577717
     .uflags= INTEL_X86_NCOMBO | INTEL_X86_DFL,
Packit 577717
     .grpid = 0,
Packit 577717
   },
Packit 577717
   { .uname  = "I_STATE",
Packit 577717
     .udesc  = "Invalid cacheline",
Packit 577717
     .ucode = 0x100,
Packit 577717
     .grpid = 0,
Packit 577717
   },
Packit 577717
   { .uname  = "S_STATE",
Packit 577717
     .udesc  = "Shared cacheline",
Packit 577717
     .ucode = 0x200,
Packit 577717
     .grpid = 0,
Packit 577717
   },
Packit 577717
   { .uname  = "E_STATE",
Packit 577717
     .udesc  = "Exclusive cacheline",
Packit 577717
     .ucode = 0x400,
Packit 577717
     .grpid = 0,
Packit 577717
   },
Packit 577717
   { .uname  = "M_STATE",
Packit 577717
     .udesc  = "Modified cacheline",
Packit 577717
     .ucode = 0x800,
Packit 577717
     .grpid = 0,
Packit 577717
   },
Packit 577717
   { .uname  = "SELF",
Packit 577717
     .udesc  = "This core",
Packit 577717
     .ucode = 0x4000,
Packit 577717
     .uflags= INTEL_X86_NCOMBO | INTEL_X86_DFL,
Packit 577717
     .grpid = 1,
Packit 577717
   },
Packit 577717
   { .uname  = "BOTH_CORES",
Packit 577717
     .udesc  = "Both cores",
Packit 577717
     .ucode = 0xc000,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
     .grpid = 1,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_l2_rqsts[]={
Packit 577717
   { .uname  = "MESI",
Packit 577717
     .udesc  = "Any cacheline access",
Packit 577717
     .ucode = 0xf00,
Packit 577717
     .uflags= INTEL_X86_NCOMBO | INTEL_X86_DFL,
Packit 577717
     .grpid = 0,
Packit 577717
   },
Packit 577717
   { .uname  = "I_STATE",
Packit 577717
     .udesc  = "Invalid cacheline",
Packit 577717
     .ucode = 0x100,
Packit 577717
     .grpid = 0,
Packit 577717
   },
Packit 577717
   { .uname  = "S_STATE",
Packit 577717
     .udesc  = "Shared cacheline",
Packit 577717
     .ucode = 0x200,
Packit 577717
     .grpid = 0,
Packit 577717
   },
Packit 577717
   { .uname  = "E_STATE",
Packit 577717
     .udesc  = "Exclusive cacheline",
Packit 577717
     .ucode = 0x400,
Packit 577717
     .grpid = 0,
Packit 577717
   },
Packit 577717
   { .uname  = "M_STATE",
Packit 577717
     .udesc  = "Modified cacheline",
Packit 577717
     .ucode = 0x800,
Packit 577717
     .grpid = 0,
Packit 577717
   },
Packit 577717
   { .uname  = "SELF",
Packit 577717
     .udesc  = "This core",
Packit 577717
     .ucode = 0x4000,
Packit 577717
     .uflags= INTEL_X86_NCOMBO | INTEL_X86_DFL,
Packit 577717
     .grpid = 1,
Packit 577717
   },
Packit 577717
   { .uname  = "BOTH_CORES",
Packit 577717
     .udesc  = "Both cores",
Packit 577717
     .ucode = 0xc000,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
     .grpid = 1,
Packit 577717
   },
Packit 577717
   { .uname  = "ANY",
Packit 577717
     .udesc  = "All inclusive",
Packit 577717
     .ucode = 0x3000,
Packit 577717
     .uflags= INTEL_X86_NCOMBO | INTEL_X86_DFL,
Packit 577717
     .grpid = 2,
Packit 577717
   },
Packit 577717
   { .uname  = "PREFETCH",
Packit 577717
     .udesc  = "Hardware prefetch only",
Packit 577717
     .ucode = 0x1000,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
     .grpid = 2,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_thermal_trip[]={
Packit 577717
   { .uname  = "CYCLES",
Packit 577717
     .udesc  = "Duration in a thermal trip based on the current core clock",
Packit 577717
     .ucode = 0xc000,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
   },
Packit 577717
   { .uname  = "TRIPS",
Packit 577717
     .udesc  = "Number of thermal trips",
Packit 577717
     .ucode = 0xc000 | INTEL_X86_MOD_EDGE,
Packit 577717
     .modhw = _INTEL_X86_ATTR_E,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_cpu_clk_unhalted[]={
Packit 577717
   { .uname  = "CORE_P",
Packit 577717
     .udesc  = "Unhalted core cycles",
Packit 577717
     .ucode = 0x0,
Packit 577717
   },
Packit 577717
   { .uname  = "NONHLT_REF_CYCLES",
Packit 577717
     .udesc  = "Non-halted bus cycles",
Packit 577717
     .ucode = 0x100,
Packit 577717
   },
Packit 577717
   { .uname  = "SERIAL_EXECUTION_CYCLES",
Packit 577717
     .udesc  = "Non-halted bus cycles of this core executing code while the other core is halted",
Packit 577717
     .ucode = 0x200,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_dcache_cache_ld[]={
Packit 577717
   { .uname  = "MESI",
Packit 577717
     .udesc  = "Any cacheline access",
Packit 577717
     .ucode = 0xf00,
Packit 577717
     .uflags= INTEL_X86_NCOMBO | INTEL_X86_DFL,
Packit 577717
   },
Packit 577717
   { .uname  = "I_STATE",
Packit 577717
     .udesc  = "Invalid cacheline",
Packit 577717
     .ucode = 0x100,
Packit 577717
   },
Packit 577717
   { .uname  = "S_STATE",
Packit 577717
     .udesc  = "Shared cacheline",
Packit 577717
     .ucode = 0x200,
Packit 577717
   },
Packit 577717
   { .uname  = "E_STATE",
Packit 577717
     .udesc  = "Exclusive cacheline",
Packit 577717
     .ucode = 0x400,
Packit 577717
   },
Packit 577717
   { .uname  = "M_STATE",
Packit 577717
     .udesc  = "Modified cacheline",
Packit 577717
     .ucode = 0x800,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_sse_pre_miss[]={
Packit 577717
   { .uname  = "NTA_MISS",
Packit 577717
     .udesc  = "PREFETCHNTA missed all caches",
Packit 577717
     .ucode = 0x0,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
   },
Packit 577717
   { .uname  = "T1_MISS",
Packit 577717
     .udesc  = "PREFETCHT1 missed all caches",
Packit 577717
     .ucode = 0x100,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
   },
Packit 577717
   { .uname  = "T2_MISS",
Packit 577717
     .udesc  = "PREFETCHT2 missed all caches",
Packit 577717
     .ucode = 0x200,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
   },
Packit 577717
   { .uname  = "STORES_MISS",
Packit 577717
     .udesc  = "SSE streaming store instruction missed all caches",
Packit 577717
     .ucode = 0x300,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_bus_drdy_clocks[]={
Packit 577717
   { .uname  = "THIS_AGENT",
Packit 577717
     .udesc  = "This agent",
Packit 577717
     .ucode = 0x0,
Packit 577717
     .uflags= INTEL_X86_NCOMBO | INTEL_X86_DFL,
Packit 577717
   },
Packit 577717
   { .uname  = "ALL_AGENTS",
Packit 577717
     .udesc  = "Any agent on the bus",
Packit 577717
     .ucode = 0x2000,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_simd_int_instructions[]={
Packit 577717
   { .uname  = "MUL",
Packit 577717
     .udesc  = "Number of SIMD Integer packed multiply instructions executed",
Packit 577717
     .ucode = 0x100,
Packit 577717
   },
Packit 577717
   { .uname  = "SHIFT",
Packit 577717
     .udesc  = "Number of SIMD Integer packed shift instructions executed",
Packit 577717
     .ucode = 0x200,
Packit 577717
   },
Packit 577717
   { .uname  = "PACK",
Packit 577717
     .udesc  = "Number of SIMD Integer pack operations instruction executed",
Packit 577717
     .ucode = 0x400,
Packit 577717
   },
Packit 577717
   { .uname  = "UNPACK",
Packit 577717
     .udesc  = "Number of SIMD Integer unpack instructions executed",
Packit 577717
     .ucode = 0x800,
Packit 577717
   },
Packit 577717
   { .uname  = "LOGICAL",
Packit 577717
     .udesc  = "Number of SIMD Integer packed logical instructions executed",
Packit 577717
     .ucode = 0x1000,
Packit 577717
   },
Packit 577717
   { .uname  = "ARITHMETIC",
Packit 577717
     .udesc  = "Number of SIMD Integer packed arithmetic instructions executed",
Packit 577717
     .ucode = 0x2000,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_mmx_fp_trans[]={
Packit 577717
   { .uname  = "TO_FP",
Packit 577717
     .udesc  = "Number of transitions from MMX to X87",
Packit 577717
     .ucode = 0x0,
Packit 577717
   },
Packit 577717
   { .uname  = "TO_MMX",
Packit 577717
     .udesc  = "Number of transitions from X87 to MMX",
Packit 577717
     .ucode = 0x100,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_sse_instructions_retired[]={
Packit 577717
   { .uname  = "SINGLE",
Packit 577717
     .udesc  = "Number of SSE/SSE2 single precision instructions retired (packed and scalar)",
Packit 577717
     .ucode = 0x0,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
   },
Packit 577717
   { .uname  = "SCALAR_SINGLE",
Packit 577717
     .udesc  = "Number of SSE/SSE2 scalar single precision instructions retired",
Packit 577717
     .ucode = 0x100,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
   },
Packit 577717
   { .uname  = "PACKED_DOUBLE",
Packit 577717
     .udesc  = "Number of SSE/SSE2 packed double precision instructions retired",
Packit 577717
     .ucode = 0x200,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
   },
Packit 577717
   { .uname  = "DOUBLE",
Packit 577717
     .udesc  = "Number of SSE/SSE2 scalar double precision instructions retired",
Packit 577717
     .ucode = 0x300,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
   },
Packit 577717
   { .uname  = "INT_128",
Packit 577717
     .udesc  = "Number of SSE2 128 bit integer  instructions retired",
Packit 577717
     .ucode = 0x400,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_sse_comp_instructions_retired[]={
Packit 577717
   { .uname  = "PACKED_SINGLE",
Packit 577717
     .udesc  = "Number of SSE/SSE2 packed single precision compute instructions retired (does not include AND, OR, XOR)",
Packit 577717
     .ucode = 0x0,
Packit 577717
   },
Packit 577717
   { .uname  = "SCALAR_SINGLE",
Packit 577717
     .udesc  = "Number of SSE/SSE2 scalar single precision compute instructions retired (does not include AND, OR, XOR)",
Packit 577717
     .ucode = 0x100,
Packit 577717
   },
Packit 577717
   { .uname  = "PACKED_DOUBLE",
Packit 577717
     .udesc  = "Number of SSE/SSE2 packed double precision compute instructions retired (does not include AND, OR, XOR)",
Packit 577717
     .ucode = 0x200,
Packit 577717
   },
Packit 577717
   { .uname  = "SCALAR_DOUBLE",
Packit 577717
     .udesc  = "Number of SSE/SSE2 scalar double precision compute instructions retired (does not include AND, OR, XOR)",
Packit 577717
     .ucode = 0x300,
Packit 577717
     .uflags= INTEL_X86_NCOMBO,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_fused_uops[]={
Packit 577717
   { .uname  = "ALL",
Packit 577717
     .udesc  = "All fused uops retired",
Packit 577717
     .ucode = 0x0,
Packit 577717
   },
Packit 577717
   { .uname  = "LOADS",
Packit 577717
     .udesc  = "Fused load uops retired",
Packit 577717
     .ucode = 0x100,
Packit 577717
   },
Packit 577717
   { .uname  = "STORES",
Packit 577717
     .udesc  = "Fused load uops retired",
Packit 577717
     .ucode = 0x200,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_umask_t coreduo_est_trans[]={
Packit 577717
   { .uname = "ANY",
Packit 577717
     .udesc = "Any Intel Enhanced SpeedStep(R) Technology transitions",
Packit 577717
     .ucode = 0x0,
Packit 577717
   },
Packit 577717
   { .uname = "FREQ",
Packit 577717
     .udesc = "Intel Enhanced SpeedStep Technology frequency transitions",
Packit 577717
     .ucode = 0x1000,
Packit 577717
   },
Packit 577717
};
Packit 577717
Packit 577717
static const intel_x86_entry_t intel_coreduo_pe[]={
Packit 577717
{ .name   = "UNHALTED_CORE_CYCLES",
Packit 577717
  .desc   = "Unhalted core cycles",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .equiv = "CPU_CLK_UNHALTED:CORE_P",
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x3c,
Packit 577717
},
Packit 577717
{ .name   = "UNHALTED_REFERENCE_CYCLES",
Packit 577717
  .desc   = "Unhalted reference cycles. Measures bus cycles",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x13c,
Packit 577717
  .flags = INTEL_X86_FIXED,
Packit 577717
},
Packit 577717
{ .name   = "INSTRUCTION_RETIRED",
Packit 577717
  .desc   = "Instructions retired",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .equiv = "INSTR_RET",
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc0,
Packit 577717
},
Packit 577717
{ .name   = "INSTRUCTIONS_RETIRED",
Packit 577717
  .desc   = "This is an alias for INSTRUCTION_RETIRED",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .equiv = "INSTRUCTION_RETIRED",
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc0,
Packit 577717
},
Packit 577717
{ .name   = "LLC_REFERENCES",
Packit 577717
  .desc   = "Last level of cache references",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x4f2e,
Packit 577717
},
Packit 577717
{ .name   = "LAST_LEVEL_CACHE_REFERENCES",
Packit 577717
  .desc   = "This is an alias for LLC_REFERENCES",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .equiv = "LLC_REFERENCES",
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x4f2e,
Packit 577717
},
Packit 577717
{ .name   = "LLC_MISSES",
Packit 577717
  .desc   = "Last level of cache misses",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x412e,
Packit 577717
},
Packit 577717
{ .name   = "LAST_LEVEL_CACHE_MISSES",
Packit 577717
  .desc   = "This is an alias for LLC_MISSES",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .equiv = "LLC_MISSES",
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x412e,
Packit 577717
},
Packit 577717
{ .name   = "BRANCH_INSTRUCTIONS_RETIRED",
Packit 577717
  .desc   = "Branch instructions retired",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .equiv = "BR_INSTR_RET",
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc4,
Packit 577717
},
Packit 577717
{ .name   = "MISPREDICTED_BRANCH_RETIRED",
Packit 577717
  .desc   = "Mispredicted branch instruction retired",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .equiv = "BR_MISPRED_RET",
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc5,
Packit 577717
},
Packit 577717
{ .name   = "LD_BLOCKS",
Packit 577717
  .desc   = "Load operations delayed due to store buffer blocks. The preceding store may be blocked due to unknown address, unknown data, or conflict due to partial overlap between the load and store.",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x3,
Packit 577717
},
Packit 577717
{ .name   = "SD_DRAINS",
Packit 577717
  .desc   = "Cycles while draining store buffers",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x4,
Packit 577717
},
Packit 577717
{ .name   = "MISALIGN_MEM_REF",
Packit 577717
  .desc   = "Misaligned data memory references (MOB splits of loads and stores).",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x5,
Packit 577717
},
Packit 577717
{ .name   = "SEG_REG_LOADS",
Packit 577717
  .desc   = "Segment register loads",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x6,
Packit 577717
},
Packit 577717
{ .name   = "SSE_PREFETCH",
Packit 577717
  .desc   = "Streaming SIMD Extensions (SSE) Prefetch instructions executed",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x7,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_sse_prefetch),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_sse_prefetch,
Packit 577717
},
Packit 577717
{ .name   = "SSE_NTSTORES_RET",
Packit 577717
  .desc   = "SSE streaming store instruction retired",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x307,
Packit 577717
},
Packit 577717
{ .name   = "FP_COMPS_OP_EXE",
Packit 577717
  .desc   = "FP computational Instruction executed. FADD, FSUB, FCOM, FMULs, MUL, IMUL, FDIVs, DIV, IDIV, FPREMs, FSQRT are included; but exclude FADD or FMUL used in the middle of a transcendental instruction.",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x10,
Packit 577717
},
Packit 577717
{ .name   = "FP_ASSIST",
Packit 577717
  .desc   = "FP exceptions experienced microcode assists",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x2,
Packit 577717
  .code = 0x11,
Packit 577717
},
Packit 577717
{ .name   = "MUL",
Packit 577717
  .desc   = "Multiply operations (a speculative count, including FP and integer multiplies).",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x2,
Packit 577717
  .code = 0x12,
Packit 577717
},
Packit 577717
{ .name   = "DIV",
Packit 577717
  .desc   = "Divide operations (a speculative count, including FP and integer multiplies). ",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x2,
Packit 577717
  .code = 0x13,
Packit 577717
},
Packit 577717
{ .name   = "CYCLES_DIV_BUSY",
Packit 577717
  .desc   = "Cycles the divider is busy ",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x1,
Packit 577717
  .code = 0x14,
Packit 577717
},
Packit 577717
{ .name   = "L2_ADS",
Packit 577717
  .desc   = "L2 Address strobes ",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x21,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_ads),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_l2_ads,
Packit 577717
},
Packit 577717
{ .name   = "DBUS_BUSY",
Packit 577717
  .desc   = "Core cycle during which data bus was busy (increments by 4)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x22,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_ads),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_l2_ads, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "DBUS_BUSY_RD",
Packit 577717
  .desc   = "Cycles data bus is busy transferring data to a core (increments by 4) ",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x23,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_ads),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_l2_ads, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "L2_LINES_IN",
Packit 577717
  .desc   = "L2 cache lines allocated",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x24,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_lines_in),
Packit 577717
  .ngrp = 2,
Packit 577717
  .umasks = coreduo_l2_lines_in,
Packit 577717
},
Packit 577717
{ .name   = "L2_M_LINES_IN",
Packit 577717
  .desc   = "L2 Modified-state cache lines allocated",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x25,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_ads),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_l2_ads, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "L2_LINES_OUT",
Packit 577717
  .desc   = "L2 cache lines evicted ",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x26,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_lines_in),
Packit 577717
  .ngrp = 2,
Packit 577717
  .umasks = coreduo_l2_lines_in, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "L2_M_LINES_OUT",
Packit 577717
  .desc   = "L2 Modified-state cache lines evicted ",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x27,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_lines_in),
Packit 577717
  .ngrp = 2,
Packit 577717
  .umasks = coreduo_l2_lines_in, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "L2_IFETCH",
Packit 577717
  .desc   = "L2 instruction fetches from instruction fetch unit (includes speculative fetches) ",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x28,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_ifetch),
Packit 577717
  .ngrp = 2,
Packit 577717
  .umasks = coreduo_l2_ifetch,
Packit 577717
},
Packit 577717
{ .name   = "L2_LD",
Packit 577717
  .desc   = "L2 cache reads (includes speculation) ",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x29,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_ifetch),
Packit 577717
  .ngrp = 2,
Packit 577717
  .umasks = coreduo_l2_ifetch, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "L2_ST",
Packit 577717
  .desc   = "L2 cache writes (includes speculation)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x2a,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_ifetch),
Packit 577717
  .ngrp = 2,
Packit 577717
  .umasks = coreduo_l2_ifetch, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "L2_RQSTS",
Packit 577717
  .desc   = "L2 cache reference requests ",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x2e,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_rqsts),
Packit 577717
  .ngrp = 3,
Packit 577717
  .umasks = coreduo_l2_rqsts,
Packit 577717
},
Packit 577717
{ .name   = "L2_REJECT_CYCLES",
Packit 577717
  .desc   = "Cycles L2 is busy and rejecting new requests.",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x30,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_rqsts),
Packit 577717
  .ngrp = 3,
Packit 577717
  .umasks = coreduo_l2_rqsts, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "L2_NO_REQUEST_CYCLES",
Packit 577717
  .desc   = "Cycles there is no request to access L2.",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x32,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_rqsts),
Packit 577717
  .ngrp = 3,
Packit 577717
  .umasks = coreduo_l2_rqsts, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "EST_TRANS",
Packit 577717
  .desc   = "Intel Enhanced SpeedStep(R) Technology transitions",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x3a,
Packit 577717
  .numasks= LIBPFM_ARRAY_SIZE(coreduo_est_trans),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_est_trans,
Packit 577717
},
Packit 577717
{ .name   = "THERMAL_TRIP",
Packit 577717
  .desc   = "Duration in a thermal trip based on the current core clock ",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x3b,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_thermal_trip),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_thermal_trip,
Packit 577717
},
Packit 577717
{ .name   = "CPU_CLK_UNHALTED",
Packit 577717
  .desc   = "Core cycles when core is not halted",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x3c,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_cpu_clk_unhalted),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_cpu_clk_unhalted,
Packit 577717
},
Packit 577717
{ .name   = "DCACHE_CACHE_LD",
Packit 577717
  .desc   = "L1 cacheable data read operations",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x40,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_dcache_cache_ld),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_dcache_cache_ld,
Packit 577717
},
Packit 577717
{ .name   = "DCACHE_CACHE_ST",
Packit 577717
  .desc   = "L1 cacheable data write operations",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x41,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_dcache_cache_ld),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_dcache_cache_ld, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "DCACHE_CACHE_LOCK",
Packit 577717
  .desc   = "L1 cacheable lock read operations to invalid state",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x42,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_dcache_cache_ld),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_dcache_cache_ld, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "DATA_MEM_REF",
Packit 577717
  .desc   = "L1 data read and writes of cacheable and non-cacheable types",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x143,
Packit 577717
},
Packit 577717
{ .name   = "DATA_MEM_CACHE_REF",
Packit 577717
  .desc   = "L1 data cacheable read and write operations.",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x244,
Packit 577717
},
Packit 577717
{ .name   = "DCACHE_REPL",
Packit 577717
  .desc   = "L1 data cache line replacements",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xf45,
Packit 577717
},
Packit 577717
{ .name   = "DCACHE_M_REPL",
Packit 577717
  .desc   = "L1 data M-state cache line  allocated",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x46,
Packit 577717
},
Packit 577717
{ .name   = "DCACHE_M_EVICT",
Packit 577717
  .desc   = "L1 data M-state cache line evicted",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x47,
Packit 577717
},
Packit 577717
{ .name   = "DCACHE_PEND_MISS",
Packit 577717
  .desc   = "Weighted cycles of L1 miss outstanding",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x48,
Packit 577717
},
Packit 577717
{ .name   = "DTLB_MISS",
Packit 577717
  .desc   = "Data references that missed TLB",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x49,
Packit 577717
},
Packit 577717
{ .name   = "SSE_PRE_MISS",
Packit 577717
  .desc   = "Streaming SIMD Extensions (SSE) instructions missing all cache levels",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x4b,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_sse_pre_miss),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_sse_pre_miss,
Packit 577717
},
Packit 577717
{ .name   = "L1_PREF_REQ",
Packit 577717
  .desc   = "L1 prefetch requests due to DCU cache misses",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x4f,
Packit 577717
},
Packit 577717
{ .name   = "BUS_REQ_OUTSTANDING",
Packit 577717
  .desc   = "Weighted cycles of cacheable bus data read requests. This event counts full-line read request from DCU or HW prefetcher, but not RFO, write, instruction fetches, or others.",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x60,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_lines_in),
Packit 577717
  .ngrp = 2,
Packit 577717
  .umasks = coreduo_l2_lines_in, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_BNR_CLOCKS",
Packit 577717
  .desc   = "External bus cycles while BNR asserted",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x61,
Packit 577717
},
Packit 577717
{ .name   = "BUS_DRDY_CLOCKS",
Packit 577717
  .desc   = "External bus cycles while DRDY asserted",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x62,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_bus_drdy_clocks),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_bus_drdy_clocks,
Packit 577717
},
Packit 577717
{ .name   = "BUS_LOCKS_CLOCKS",
Packit 577717
  .desc   = "External bus cycles while bus lock signal asserted",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x63,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_ads),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_l2_ads, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_DATA_RCV",
Packit 577717
  .desc   = "External bus cycles while bus lock signal asserted",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x4064,
Packit 577717
},
Packit 577717
{ .name   = "BUS_TRANS_BRD",
Packit 577717
  .desc   = "Burst read bus transactions (data or code)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x65,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_ads),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_l2_ads, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_TRANS_RFO",
Packit 577717
  .desc   = "Completed read for ownership ",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x66,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_lines_in),
Packit 577717
  .ngrp = 2,
Packit 577717
  .umasks = coreduo_l2_lines_in, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_TRANS_IFETCH",
Packit 577717
  .desc   = "Completed instruction fetch transactions",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x68,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_lines_in),
Packit 577717
  .ngrp = 2,
Packit 577717
  .umasks = coreduo_l2_lines_in, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_TRANS_INVAL",
Packit 577717
  .desc   = "Completed invalidate transactions",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x69,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_lines_in),
Packit 577717
  .ngrp = 2,
Packit 577717
  .umasks = coreduo_l2_lines_in, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_TRANS_PWR",
Packit 577717
  .desc   = "Completed partial write transactions",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x6a,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_lines_in),
Packit 577717
  .ngrp = 2,
Packit 577717
  .umasks = coreduo_l2_lines_in, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_TRANS_P",
Packit 577717
  .desc   = "Completed partial transactions (include partial read + partial write + line write)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x6b,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_lines_in),
Packit 577717
  .ngrp = 2,
Packit 577717
  .umasks = coreduo_l2_lines_in, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_TRANS_IO",
Packit 577717
  .desc   = "Completed I/O transactions (read and write)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x6c,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_lines_in),
Packit 577717
  .ngrp = 2,
Packit 577717
  .umasks = coreduo_l2_lines_in, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_TRANS_DEF",
Packit 577717
  .desc   = "Completed defer transactions ",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x206d,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_ads),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_l2_ads, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_TRANS_WB",
Packit 577717
  .desc   = "Completed writeback transactions from DCU (does not include L2 writebacks)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc067,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_bus_drdy_clocks),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_bus_drdy_clocks, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_TRANS_BURST",
Packit 577717
  .desc   = "Completed burst transactions (full line transactions include reads, write, RFO, and writebacks) ",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc06e,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_bus_drdy_clocks),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_bus_drdy_clocks, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_TRANS_MEM",
Packit 577717
  .desc   = "Completed memory transactions. This includes Bus_Trans_Burst + Bus_Trans_P + Bus_Trans_Inval.",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc06f,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_bus_drdy_clocks),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_bus_drdy_clocks, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_TRANS_ANY",
Packit 577717
  .desc   = "Any completed bus transactions",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc070,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_bus_drdy_clocks),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_bus_drdy_clocks, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_SNOOPS",
Packit 577717
  .desc   = "External bus cycles while bus lock signal asserted",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x77,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_ifetch),
Packit 577717
  .ngrp = 2,
Packit 577717
  .umasks = coreduo_l2_ifetch, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "DCU_SNOOP_TO_SHARE",
Packit 577717
  .desc   = "DCU snoops to share-state L1 cache line due to L1 misses ",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x178,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_ads),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_l2_ads, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_NOT_IN_USE",
Packit 577717
  .desc   = "Number of cycles there is no transaction from the core",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x7d,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_l2_ads),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_l2_ads, /* identical to actual umasks list for this event */
Packit 577717
},
Packit 577717
{ .name   = "BUS_SNOOP_STALL",
Packit 577717
  .desc   = "Number of bus cycles while bus snoop is stalled",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x7e,
Packit 577717
},
Packit 577717
{ .name   = "ICACHE_READS",
Packit 577717
  .desc   = "Number of instruction fetches from ICache, streaming buffers (both cacheable and uncacheable fetches)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x80,
Packit 577717
},
Packit 577717
{ .name   = "ICACHE_MISSES",
Packit 577717
  .desc   = "Number of instruction fetch misses from ICache, streaming buffers.",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x81,
Packit 577717
},
Packit 577717
{ .name   = "ITLB_MISSES",
Packit 577717
  .desc   = "Number of iITLB misses",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x85,
Packit 577717
},
Packit 577717
{ .name   = "IFU_MEM_STALL",
Packit 577717
  .desc   = "Cycles IFU is stalled while waiting for data from memory",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x86,
Packit 577717
},
Packit 577717
{ .name   = "ILD_STALL",
Packit 577717
  .desc   = "Number of instruction length decoder stalls (Counts number of LCP stalls)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x87,
Packit 577717
},
Packit 577717
{ .name   = "BR_INST_EXEC",
Packit 577717
  .desc   = "Branch instruction executed (includes speculation).",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x88,
Packit 577717
},
Packit 577717
{ .name   = "BR_MISSP_EXEC",
Packit 577717
  .desc   = "Branch instructions executed and mispredicted at execution  (includes branches that do not have prediction or mispredicted)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x89,
Packit 577717
},
Packit 577717
{ .name   = "BR_BAC_MISSP_EXEC",
Packit 577717
  .desc   = "Branch instructions executed that were mispredicted at front end",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x8a,
Packit 577717
},
Packit 577717
{ .name   = "BR_CND_EXEC",
Packit 577717
  .desc   = "Conditional branch instructions executed",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x8b,
Packit 577717
},
Packit 577717
{ .name   = "BR_CND_MISSP_EXEC",
Packit 577717
  .desc   = "Conditional branch instructions executed that were mispredicted",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x8c,
Packit 577717
},
Packit 577717
{ .name   = "BR_IND_EXEC",
Packit 577717
  .desc   = "Indirect branch instructions executed",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x8d,
Packit 577717
},
Packit 577717
{ .name   = "BR_IND_MISSP_EXEC",
Packit 577717
  .desc   = "Indirect branch instructions executed that were mispredicted",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x8e,
Packit 577717
},
Packit 577717
{ .name   = "BR_RET_EXEC",
Packit 577717
  .desc   = "Return branch instructions executed",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x8f,
Packit 577717
},
Packit 577717
{ .name   = "BR_RET_MISSP_EXEC",
Packit 577717
  .desc   = "Return branch instructions executed that were mispredicted",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x90,
Packit 577717
},
Packit 577717
{ .name   = "BR_RET_BAC_MISSP_EXEC",
Packit 577717
  .desc   = "Return branch instructions executed that were mispredicted at the front end",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x91,
Packit 577717
},
Packit 577717
{ .name   = "BR_CALL_EXEC",
Packit 577717
  .desc   = "Return call instructions executed",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x92,
Packit 577717
},
Packit 577717
{ .name   = "BR_CALL_MISSP_EXEC",
Packit 577717
  .desc   = "Return call instructions executed that were mispredicted",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x93,
Packit 577717
},
Packit 577717
{ .name   = "BR_IND_CALL_EXEC",
Packit 577717
  .desc   = "Indirect call branch instructions executed",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0x94,
Packit 577717
},
Packit 577717
{ .name   = "RESOURCE_STALL",
Packit 577717
  .desc   = "Cycles while there is a resource related stall (renaming, buffer entries) as seen by allocator",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xa2,
Packit 577717
},
Packit 577717
{ .name   = "MMX_INSTR_EXEC",
Packit 577717
  .desc   = "Number of MMX instructions executed (does not include MOVQ and MOVD stores)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xb0,
Packit 577717
},
Packit 577717
{ .name   = "SIMD_INT_SAT_EXEC",
Packit 577717
  .desc   = "Number of SIMD Integer saturating instructions executed",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xb1,
Packit 577717
},
Packit 577717
{ .name   = "SIMD_INT_INSTRUCTIONS",
Packit 577717
  .desc   = "Number of SIMD Integer instructions executed",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xb3,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_simd_int_instructions),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_simd_int_instructions,
Packit 577717
},
Packit 577717
{ .name   = "INSTR_RET",
Packit 577717
  .desc   = "Number of instruction retired (Macro fused instruction count as 2)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc0,
Packit 577717
},
Packit 577717
{ .name   = "FP_COMP_INSTR_RET",
Packit 577717
  .desc   = "Number of FP compute instructions retired (X87 instruction or instruction that contain X87 operations)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x1,
Packit 577717
  .code = 0xc1,
Packit 577717
},
Packit 577717
{ .name   = "UOPS_RET",
Packit 577717
  .desc   = "Number of micro-ops retired (include fused uops)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc2,
Packit 577717
},
Packit 577717
{ .name   = "SMC_DETECTED",
Packit 577717
  .desc   = "Number of times self-modifying code condition detected",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc3,
Packit 577717
},
Packit 577717
{ .name   = "BR_INSTR_RET",
Packit 577717
  .desc   = "Number of branch instructions retired",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc4,
Packit 577717
},
Packit 577717
{ .name   = "BR_MISPRED_RET",
Packit 577717
  .desc   = "Number of mispredicted branch instructions retired",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc5,
Packit 577717
},
Packit 577717
{ .name   = "CYCLES_INT_MASKED",
Packit 577717
  .desc   = "Cycles while interrupt is disabled",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc6,
Packit 577717
},
Packit 577717
{ .name   = "CYCLES_INT_PEDNING_MASKED",
Packit 577717
  .desc   = "Cycles while interrupt is disabled and interrupts are pending",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc7,
Packit 577717
},
Packit 577717
{ .name   = "HW_INT_RX",
Packit 577717
  .desc   = "Number of hardware interrupts received",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc8,
Packit 577717
},
Packit 577717
{ .name   = "BR_TAKEN_RET",
Packit 577717
  .desc   = "Number of taken branch instruction retired",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xc9,
Packit 577717
},
Packit 577717
{ .name   = "BR_MISPRED_TAKEN_RET",
Packit 577717
  .desc   = "Number of taken and mispredicted branch instructions retired",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xca,
Packit 577717
},
Packit 577717
{ .name   = "MMX_FP_TRANS",
Packit 577717
  .desc   = "Transitions from MMX (TM) Instructions to Floating Point Instructions",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xcc,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_mmx_fp_trans),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_mmx_fp_trans,
Packit 577717
},
Packit 577717
{ .name   = "MMX_ASSIST",
Packit 577717
  .desc   = "Number of EMMS executed",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xcd,
Packit 577717
},
Packit 577717
{ .name   = "MMX_INSTR_RET",
Packit 577717
  .desc   = "Number of MMX instruction retired",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xce,
Packit 577717
},
Packit 577717
{ .name   = "INSTR_DECODED",
Packit 577717
  .desc   = "Number of instruction decoded",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xd0,
Packit 577717
},
Packit 577717
{ .name   = "ESP_UOPS",
Packit 577717
  .desc   = "Number of ESP folding instruction decoded",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xd7,
Packit 577717
},
Packit 577717
{ .name   = "SSE_INSTRUCTIONS_RETIRED",
Packit 577717
  .desc   = "Number of SSE/SSE2 instructions retired (packed and scalar)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xd8,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_sse_instructions_retired),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_sse_instructions_retired,
Packit 577717
},
Packit 577717
{ .name   = "SSE_COMP_INSTRUCTIONS_RETIRED",
Packit 577717
  .desc   = "Number of computational SSE/SSE2 instructions retired (does not include AND, OR, XOR)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xd9,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_sse_comp_instructions_retired),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_sse_comp_instructions_retired,
Packit 577717
},
Packit 577717
{ .name   = "FUSED_UOPS",
Packit 577717
  .desc   = "Fused uops retired",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xda,
Packit 577717
  .numasks = LIBPFM_ARRAY_SIZE(coreduo_fused_uops),
Packit 577717
  .ngrp = 1,
Packit 577717
  .umasks = coreduo_fused_uops,
Packit 577717
},
Packit 577717
{ .name   = "UNFUSION",
Packit 577717
  .desc   = "Number of unfusion events in the ROB (due to exception)",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xdb,
Packit 577717
},
Packit 577717
{ .name   = "BR_INSTR_DECODED",
Packit 577717
  .desc   = "Branch instructions decoded",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xe0,
Packit 577717
},
Packit 577717
{ .name   = "BTB_MISSES",
Packit 577717
  .desc   = "Number of branches the BTB did not produce a prediction",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xe2,
Packit 577717
},
Packit 577717
{ .name   = "BR_BOGUS",
Packit 577717
  .desc   = "Number of bogus branches",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xe4,
Packit 577717
},
Packit 577717
{ .name   = "BACLEARS",
Packit 577717
  .desc   = "Number of BAClears asserted",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xe6,
Packit 577717
},
Packit 577717
{ .name   = "PREF_RQSTS_UP",
Packit 577717
  .desc   = "Number of hardware prefetch requests issued in forward streams",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xf0,
Packit 577717
},
Packit 577717
{ .name   = "PREF_RQSTS_DN",
Packit 577717
  .desc   = "Number of hardware prefetch requests issued in backward streams",
Packit 577717
  .modmsk = INTEL_X86_ATTRS,
Packit 577717
  .cntmsk = 0x3,
Packit 577717
  .code = 0xf8,
Packit 577717
},
Packit 577717
};