Deleted Added
full compact
pmc_events.h (183725) pmc_events.h (185363)
1/*-
2 * Copyright (c) 2005 Joseph Koshy
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 9 unchanged lines hidden (view full) ---

18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
1/*-
2 * Copyright (c) 2005 Joseph Koshy
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 9 unchanged lines hidden (view full) ---

18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
26 * $FreeBSD: head/sys/dev/hwpmc/pmc_events.h 183725 2008-10-09 14:55:45Z jkoshy $
26 * $FreeBSD: head/sys/dev/hwpmc/pmc_events.h 185363 2008-11-27 09:00:47Z jkoshy $
27 */
28
29#ifndef _DEV_HWPMC_PMC_EVENTS_H_
30#define _DEV_HWPMC_PMC_EVENTS_H_
31
32/*
33 * PMC event codes.
34 *
27 */
28
29#ifndef _DEV_HWPMC_PMC_EVENTS_H_
30#define _DEV_HWPMC_PMC_EVENTS_H_
31
32/*
33 * PMC event codes.
34 *
35 * __PMC_EV(CLASS, SYMBOLIC-NAME, VALUE, READABLE-NAME)
35 * __PMC_EV(CLASS, SYMBOLIC-NAME)
36 *
37 */
38
39/*
40 * AMD K7 Events, from "The AMD Athlon(tm) Processor x86 Code
41 * Optimization Guide" [Doc#22007K, Feb 2002]
42 */
43

--- 20 unchanged lines hidden (view full) ---

64__PMC_EV(K7, RETIRED_RESYNC_BRANCHES) \
65__PMC_EV(K7, INTERRUPTS_MASKED_CYCLES) \
66__PMC_EV(K7, INTERRUPTS_MASKED_WHILE_PENDING_CYCLES) \
67__PMC_EV(K7, HARDWARE_INTERRUPTS)
68
69#define PMC_EV_K7_FIRST PMC_EV_K7_DC_ACCESSES
70#define PMC_EV_K7_LAST PMC_EV_K7_HARDWARE_INTERRUPTS
71
36 *
37 */
38
39/*
40 * AMD K7 Events, from "The AMD Athlon(tm) Processor x86 Code
41 * Optimization Guide" [Doc#22007K, Feb 2002]
42 */
43

--- 20 unchanged lines hidden (view full) ---

64__PMC_EV(K7, RETIRED_RESYNC_BRANCHES) \
65__PMC_EV(K7, INTERRUPTS_MASKED_CYCLES) \
66__PMC_EV(K7, INTERRUPTS_MASKED_WHILE_PENDING_CYCLES) \
67__PMC_EV(K7, HARDWARE_INTERRUPTS)
68
69#define PMC_EV_K7_FIRST PMC_EV_K7_DC_ACCESSES
70#define PMC_EV_K7_LAST PMC_EV_K7_HARDWARE_INTERRUPTS
71
72
72/*
73 * Intel P4 Events, from "IA-32 Intel(r) Architecture Software
74 * Developer's Manual, Volume 3: System Programming Guide" [245472-012]
75 */
76
77#define __PMC_EV_P4() \
78__PMC_EV(P4, TC_DELIVER_MODE) \
79__PMC_EV(P4, BPU_FETCH_REQUEST) \

--- 242 unchanged lines hidden (view full) ---

322__PMC_EV(K8, NB_HT_BUS1_BANDWIDTH) \
323__PMC_EV(K8, NB_HT_BUS2_BANDWIDTH)
324
325#define PMC_EV_K8_FIRST PMC_EV_K8_FP_DISPATCHED_FPU_OPS
326#define PMC_EV_K8_LAST PMC_EV_K8_NB_HT_BUS2_BANDWIDTH
327
328
329/*
73/*
74 * Intel P4 Events, from "IA-32 Intel(r) Architecture Software
75 * Developer's Manual, Volume 3: System Programming Guide" [245472-012]
76 */
77
78#define __PMC_EV_P4() \
79__PMC_EV(P4, TC_DELIVER_MODE) \
80__PMC_EV(P4, BPU_FETCH_REQUEST) \

--- 242 unchanged lines hidden (view full) ---

323__PMC_EV(K8, NB_HT_BUS1_BANDWIDTH) \
324__PMC_EV(K8, NB_HT_BUS2_BANDWIDTH)
325
326#define PMC_EV_K8_FIRST PMC_EV_K8_FP_DISPATCHED_FPU_OPS
327#define PMC_EV_K8_LAST PMC_EV_K8_NB_HT_BUS2_BANDWIDTH
328
329
330/*
330 * Intel Pentium and Pentium MMX Events, from the "Intel 64 and IA-32
331 * Intel(R) Architectures Software Developer's Manual, Volume 3B:
332 * System Programming Guide, Part 2, August 2007".
331 * Intel Pentium and Pentium MMX events, from the "Intel 64 and IA-32
332 * Architectures Software Developer's Manual, Volume 3B: System Programming
333 * Guide, Part 2, August 2007".
333 */
334#define __PMC_EV_P5() \
335__PMC_EV(P5, DATA_READ) \
336__PMC_EV(P5, DATA_WRITE) \
337__PMC_EV(P5, DATA_TLB_MISS) \
338__PMC_EV(P5, DATA_READ_MISS) \
339__PMC_EV(P5, DATA_WRITE_MISS) \
340__PMC_EV(P5, WRITE_HIT_TO_M_OR_E_STATE_LINES) \

--- 66 unchanged lines hidden (view full) ---

407__PMC_EV(P5, \
408 FULL_WRITE_BUFFER_STALL_DURATION_WHILE_EXECUTING_MMX_INSTRUCTIONS) \
409__PMC_EV(P5, STALL_ON_MMX_INSTRUCTION_WRITE_TO_E_OR_M_STATE_LINE)
410
411#define PMC_EV_P5_FIRST PMC_EV_P5_DATA_READ
412#define PMC_EV_P5_LAST \
413 PMC_EV_P5_STALL_ON_MMX_INSTRUCTION_WRITE_TO_E_OR_M_STATE_LINE
414
334 */
335#define __PMC_EV_P5() \
336__PMC_EV(P5, DATA_READ) \
337__PMC_EV(P5, DATA_WRITE) \
338__PMC_EV(P5, DATA_TLB_MISS) \
339__PMC_EV(P5, DATA_READ_MISS) \
340__PMC_EV(P5, DATA_WRITE_MISS) \
341__PMC_EV(P5, WRITE_HIT_TO_M_OR_E_STATE_LINES) \

--- 66 unchanged lines hidden (view full) ---

408__PMC_EV(P5, \
409 FULL_WRITE_BUFFER_STALL_DURATION_WHILE_EXECUTING_MMX_INSTRUCTIONS) \
410__PMC_EV(P5, STALL_ON_MMX_INSTRUCTION_WRITE_TO_E_OR_M_STATE_LINE)
411
412#define PMC_EV_P5_FIRST PMC_EV_P5_DATA_READ
413#define PMC_EV_P5_LAST \
414 PMC_EV_P5_STALL_ON_MMX_INSTRUCTION_WRITE_TO_E_OR_M_STATE_LINE
415
415#define __PMC_EV_IAF() /* Intel architectural fixed function */
416#define __PMC_EV_IAP() /* Intel architectural programmable */
416/*
417 * Events supported by Intel architectural fixed function counters,
418 * from the "Intel 64 and IA-32 Architectures Software Developer's
419 * Manual Volume 3B: System Programming Guide, Part 2", July 2008.
420 */
421#define __PMC_EV_IAF() \
422__PMC_EV(IAF, INSTR_RETIRED_ANY) \
423__PMC_EV(IAF, CPU_CLK_UNHALTED_CORE) \
424__PMC_EV(IAF, CPU_CLK_UNHALTED_REF)
417
425
426#define PMC_EV_IAF_FIRST PMC_EV_IAF_INSTR_RETIRED_ANY
427#define PMC_EV_IAF_LAST PMC_EV_IAF_CPU_CLK_UNHALTED_REF
428
429/*
430 * Events supported by programmable function counters present in
431 * Intel Atom, Core and Core2 CPUs, from the "Intel 64 and IA-32
432 * Architectures Software Developer's Manual Volume 3B: System Programming
433 * Guide, Part 2", July 2008.
434 *
435 * These PMCs select events with a combination of an event code and
436 * unit mask. Quirks that need to be taken care of include:
437 * - The set of (event code, umask) combinations supported by a processor
438 * varies according to the processor model.
439 * - A given (event code, umask) combination need not measure the same
440 * hardware event in all processor models.
441 * - Event names in vendor documentation for an (event code, umask) pair
442 * may vary according to the CPU model.
443 * - Identically named events can map to different (event code, umask)
444 * pairs on different CPUs.
445 * - New (event code, umask) combinations continue to be added as CPUs
446 * evolve. The interface between hwpmc(4) and libpmc(3) needs to be
447 * robust with respect to ABI changes.
448 *
449 * The IAP_EVENT_* symbols below define the ABI between userland and kernel.
450 * New (event code, * umask) combinations used in new CPUs would be added
451 * to the end of the list. Vendor names for events are mapped to IAP_EVENT_*
452 * symbols using aliases. The final disambiguation of semantics based on
453 * the CPU model happens inside hwpmc(4).
454 */
455#define __PMC_EV_IAP() \
456__PMC_EV(IAP, EVENT_02H_81H) \
457__PMC_EV(IAP, EVENT_03H_00H) \
458__PMC_EV(IAP, EVENT_03H_02H) \
459__PMC_EV(IAP, EVENT_03H_04H) \
460__PMC_EV(IAP, EVENT_03H_08H) \
461__PMC_EV(IAP, EVENT_03H_10H) \
462__PMC_EV(IAP, EVENT_03H_20H) \
463__PMC_EV(IAP, EVENT_04H_00H) \
464__PMC_EV(IAP, EVENT_04H_01H) \
465__PMC_EV(IAP, EVENT_04H_02H) \
466__PMC_EV(IAP, EVENT_04H_08H) \
467__PMC_EV(IAP, EVENT_05H_00H) \
468__PMC_EV(IAP, EVENT_06H_00H) \
469__PMC_EV(IAP, EVENT_07H_00H) \
470__PMC_EV(IAP, EVENT_07H_01H) \
471__PMC_EV(IAP, EVENT_07H_02H) \
472__PMC_EV(IAP, EVENT_07H_03H) \
473__PMC_EV(IAP, EVENT_07H_06H) \
474__PMC_EV(IAP, EVENT_07H_08H) \
475__PMC_EV(IAP, EVENT_08H_01H) \
476__PMC_EV(IAP, EVENT_08H_02H) \
477__PMC_EV(IAP, EVENT_08H_04H) \
478__PMC_EV(IAP, EVENT_08H_05H) \
479__PMC_EV(IAP, EVENT_08H_06H) \
480__PMC_EV(IAP, EVENT_08H_07H) \
481__PMC_EV(IAP, EVENT_08H_08H) \
482__PMC_EV(IAP, EVENT_08H_09H) \
483__PMC_EV(IAP, EVENT_09H_01H) \
484__PMC_EV(IAP, EVENT_09H_02H) \
485__PMC_EV(IAP, EVENT_0CH_01H) \
486__PMC_EV(IAP, EVENT_0CH_02H) \
487__PMC_EV(IAP, EVENT_0CH_03H) \
488__PMC_EV(IAP, EVENT_10H_00H) \
489__PMC_EV(IAP, EVENT_10H_01H) \
490__PMC_EV(IAP, EVENT_10H_81H) \
491__PMC_EV(IAP, EVENT_11H_00H) \
492__PMC_EV(IAP, EVENT_11H_01H) \
493__PMC_EV(IAP, EVENT_11H_81H) \
494__PMC_EV(IAP, EVENT_12H_00H) \
495__PMC_EV(IAP, EVENT_12H_01H) \
496__PMC_EV(IAP, EVENT_12H_81H) \
497__PMC_EV(IAP, EVENT_13H_00H) \
498__PMC_EV(IAP, EVENT_13H_01H) \
499__PMC_EV(IAP, EVENT_13H_81H) \
500__PMC_EV(IAP, EVENT_14H_00H) \
501__PMC_EV(IAP, EVENT_14H_01H) \
502__PMC_EV(IAP, EVENT_18H_00H) \
503__PMC_EV(IAP, EVENT_19H_00H) \
504__PMC_EV(IAP, EVENT_19H_01H) \
505__PMC_EV(IAP, EVENT_19H_02H) \
506__PMC_EV(IAP, EVENT_21H) \
507__PMC_EV(IAP, EVENT_22H) \
508__PMC_EV(IAP, EVENT_23H) \
509__PMC_EV(IAP, EVENT_24H) \
510__PMC_EV(IAP, EVENT_25H) \
511__PMC_EV(IAP, EVENT_26H) \
512__PMC_EV(IAP, EVENT_27H) \
513__PMC_EV(IAP, EVENT_28H) \
514__PMC_EV(IAP, EVENT_29H) \
515__PMC_EV(IAP, EVENT_2AH) \
516__PMC_EV(IAP, EVENT_2BH) \
517__PMC_EV(IAP, EVENT_2EH) \
518__PMC_EV(IAP, EVENT_2EH_41H) \
519__PMC_EV(IAP, EVENT_2EH_4FH) \
520__PMC_EV(IAP, EVENT_30H) \
521__PMC_EV(IAP, EVENT_32H) \
522__PMC_EV(IAP, EVENT_3AH) \
523__PMC_EV(IAP, EVENT_3AH_00H) \
524__PMC_EV(IAP, EVENT_3BH_C0H) \
525__PMC_EV(IAP, EVENT_3CH_00H) \
526__PMC_EV(IAP, EVENT_3CH_01H) \
527__PMC_EV(IAP, EVENT_3CH_02H) \
528__PMC_EV(IAP, EVENT_40H) \
529__PMC_EV(IAP, EVENT_40H_21H) \
530__PMC_EV(IAP, EVENT_41H) \
531__PMC_EV(IAP, EVENT_41H_22H) \
532__PMC_EV(IAP, EVENT_42H) \
533__PMC_EV(IAP, EVENT_42H_10H) \
534__PMC_EV(IAP, EVENT_43H_01H) \
535__PMC_EV(IAP, EVENT_43H_02H) \
536__PMC_EV(IAP, EVENT_44H_02H) \
537__PMC_EV(IAP, EVENT_45H_0FH) \
538__PMC_EV(IAP, EVENT_46H_00H) \
539__PMC_EV(IAP, EVENT_47H_00H) \
540__PMC_EV(IAP, EVENT_48H_00H) \
541__PMC_EV(IAP, EVENT_49H_00H) \
542__PMC_EV(IAP, EVENT_49H_01H) \
543__PMC_EV(IAP, EVENT_49H_02H) \
544__PMC_EV(IAP, EVENT_4BH_00H) \
545__PMC_EV(IAP, EVENT_4BH_01H) \
546__PMC_EV(IAP, EVENT_4BH_02H) \
547__PMC_EV(IAP, EVENT_4BH_03H) \
548__PMC_EV(IAP, EVENT_4CH_00H) \
549__PMC_EV(IAP, EVENT_4EH_10H) \
550__PMC_EV(IAP, EVENT_4FH_00H) \
551__PMC_EV(IAP, EVENT_60H) \
552__PMC_EV(IAP, EVENT_61H) \
553__PMC_EV(IAP, EVENT_61H_00H) \
554__PMC_EV(IAP, EVENT_62H) \
555__PMC_EV(IAP, EVENT_62H_00H) \
556__PMC_EV(IAP, EVENT_63H) \
557__PMC_EV(IAP, EVENT_64H) \
558__PMC_EV(IAP, EVENT_64H_40H) \
559__PMC_EV(IAP, EVENT_65H) \
560__PMC_EV(IAP, EVENT_66H) \
561__PMC_EV(IAP, EVENT_67H) \
562__PMC_EV(IAP, EVENT_68H) \
563__PMC_EV(IAP, EVENT_69H) \
564__PMC_EV(IAP, EVENT_6AH) \
565__PMC_EV(IAP, EVENT_6BH) \
566__PMC_EV(IAP, EVENT_6CH) \
567__PMC_EV(IAP, EVENT_6DH) \
568__PMC_EV(IAP, EVENT_6EH) \
569__PMC_EV(IAP, EVENT_6FH) \
570__PMC_EV(IAP, EVENT_70H) \
571__PMC_EV(IAP, EVENT_77H) \
572__PMC_EV(IAP, EVENT_78H) \
573__PMC_EV(IAP, EVENT_7AH) \
574__PMC_EV(IAP, EVENT_7BH) \
575__PMC_EV(IAP, EVENT_7DH) \
576__PMC_EV(IAP, EVENT_7EH) \
577__PMC_EV(IAP, EVENT_7EH_00H) \
578__PMC_EV(IAP, EVENT_7FH) \
579__PMC_EV(IAP, EVENT_80H_00H) \
580__PMC_EV(IAP, EVENT_80H_02H) \
581__PMC_EV(IAP, EVENT_80H_03H) \
582__PMC_EV(IAP, EVENT_81H_00H) \
583__PMC_EV(IAP, EVENT_82H_02H) \
584__PMC_EV(IAP, EVENT_82H_04H) \
585__PMC_EV(IAP, EVENT_82H_10H) \
586__PMC_EV(IAP, EVENT_82H_12H) \
587__PMC_EV(IAP, EVENT_82H_40H) \
588__PMC_EV(IAP, EVENT_83H_02H) \
589__PMC_EV(IAP, EVENT_85H_00H) \
590__PMC_EV(IAP, EVENT_86H_00H) \
591__PMC_EV(IAP, EVENT_87H_00H) \
592__PMC_EV(IAP, EVENT_88H_00H) \
593__PMC_EV(IAP, EVENT_89H_00H) \
594__PMC_EV(IAP, EVENT_8AH_00H) \
595__PMC_EV(IAP, EVENT_8BH_00H) \
596__PMC_EV(IAP, EVENT_8CH_00H) \
597__PMC_EV(IAP, EVENT_8DH_00H) \
598__PMC_EV(IAP, EVENT_8EH_00H) \
599__PMC_EV(IAP, EVENT_8FH_00H) \
600__PMC_EV(IAP, EVENT_90H_00H) \
601__PMC_EV(IAP, EVENT_91H_00H) \
602__PMC_EV(IAP, EVENT_92H_00H) \
603__PMC_EV(IAP, EVENT_93H_00H) \
604__PMC_EV(IAP, EVENT_94H_00H) \
605__PMC_EV(IAP, EVENT_97H_00H) \
606__PMC_EV(IAP, EVENT_98H_00H) \
607__PMC_EV(IAP, EVENT_A0H_00H) \
608__PMC_EV(IAP, EVENT_A1H_01H) \
609__PMC_EV(IAP, EVENT_A1H_02H) \
610__PMC_EV(IAP, EVENT_A1H_04H) \
611__PMC_EV(IAP, EVENT_A1H_08H) \
612__PMC_EV(IAP, EVENT_A1H_10H) \
613__PMC_EV(IAP, EVENT_A1H_20H) \
614__PMC_EV(IAP, EVENT_A2H_00H) \
615__PMC_EV(IAP, EVENT_AAH_01H) \
616__PMC_EV(IAP, EVENT_AAH_02H) \
617__PMC_EV(IAP, EVENT_AAH_03H) \
618__PMC_EV(IAP, EVENT_AAH_08H) \
619__PMC_EV(IAP, EVENT_ABH_01H) \
620__PMC_EV(IAP, EVENT_ABH_02H) \
621__PMC_EV(IAP, EVENT_B0H_00H) \
622__PMC_EV(IAP, EVENT_B0H_80H) \
623__PMC_EV(IAP, EVENT_B1H_00H) \
624__PMC_EV(IAP, EVENT_B1H_80H) \
625__PMC_EV(IAP, EVENT_B3H_01H) \
626__PMC_EV(IAP, EVENT_B3H_02H) \
627__PMC_EV(IAP, EVENT_B3H_04H) \
628__PMC_EV(IAP, EVENT_B3H_08H) \
629__PMC_EV(IAP, EVENT_B3H_10H) \
630__PMC_EV(IAP, EVENT_B3H_20H) \
631__PMC_EV(IAP, EVENT_B3H_81H) \
632__PMC_EV(IAP, EVENT_B3H_82H) \
633__PMC_EV(IAP, EVENT_B3H_84H) \
634__PMC_EV(IAP, EVENT_B3H_88H) \
635__PMC_EV(IAP, EVENT_B3H_90H) \
636__PMC_EV(IAP, EVENT_B3H_A0H) \
637__PMC_EV(IAP, EVENT_C0H_00H) \
638__PMC_EV(IAP, EVENT_C0H_01H) \
639__PMC_EV(IAP, EVENT_C0H_02H) \
640__PMC_EV(IAP, EVENT_C0H_04H) \
641__PMC_EV(IAP, EVENT_C0H_08H) \
642__PMC_EV(IAP, EVENT_C1H_00H) \
643__PMC_EV(IAP, EVENT_C1H_01H) \
644__PMC_EV(IAP, EVENT_C1H_FEH) \
645__PMC_EV(IAP, EVENT_C2H_00H) \
646__PMC_EV(IAP, EVENT_C2H_01H) \
647__PMC_EV(IAP, EVENT_C2H_02H) \
648__PMC_EV(IAP, EVENT_C2H_04H) \
649__PMC_EV(IAP, EVENT_C2H_07H) \
650__PMC_EV(IAP, EVENT_C2H_0FH) \
651__PMC_EV(IAP, EVENT_C2H_10H) \
652__PMC_EV(IAP, EVENT_C2H_08H) \
653__PMC_EV(IAP, EVENT_C3H_00H) \
654__PMC_EV(IAP, EVENT_C3H_01H) \
655__PMC_EV(IAP, EVENT_C3H_04H) \
656__PMC_EV(IAP, EVENT_C4H_00H) \
657__PMC_EV(IAP, EVENT_C4H_01H) \
658__PMC_EV(IAP, EVENT_C4H_02H) \
659__PMC_EV(IAP, EVENT_C4H_04H) \
660__PMC_EV(IAP, EVENT_C4H_08H) \
661__PMC_EV(IAP, EVENT_C4H_0CH) \
662__PMC_EV(IAP, EVENT_C4H_0FH) \
663__PMC_EV(IAP, EVENT_C5H_00H) \
664__PMC_EV(IAP, EVENT_C6H_00H) \
665__PMC_EV(IAP, EVENT_C6H_01H) \
666__PMC_EV(IAP, EVENT_C6H_02H) \
667__PMC_EV(IAP, EVENT_C7H_00H) \
668__PMC_EV(IAP, EVENT_C7H_01H) \
669__PMC_EV(IAP, EVENT_C7H_02H) \
670__PMC_EV(IAP, EVENT_C7H_04H) \
671__PMC_EV(IAP, EVENT_C7H_08H) \
672__PMC_EV(IAP, EVENT_C7H_10H) \
673__PMC_EV(IAP, EVENT_C7H_1FH) \
674__PMC_EV(IAP, EVENT_C8H_00H) \
675__PMC_EV(IAP, EVENT_C9H_00H) \
676__PMC_EV(IAP, EVENT_CAH_00H) \
677__PMC_EV(IAP, EVENT_CAH_01H) \
678__PMC_EV(IAP, EVENT_CAH_02H) \
679__PMC_EV(IAP, EVENT_CAH_04H) \
680__PMC_EV(IAP, EVENT_CAH_08H) \
681__PMC_EV(IAP, EVENT_CBH_01H) \
682__PMC_EV(IAP, EVENT_CBH_02H) \
683__PMC_EV(IAP, EVENT_CBH_04H) \
684__PMC_EV(IAP, EVENT_CBH_08H) \
685__PMC_EV(IAP, EVENT_CBH_10H) \
686__PMC_EV(IAP, EVENT_CCH_00H) \
687__PMC_EV(IAP, EVENT_CCH_01H) \
688__PMC_EV(IAP, EVENT_CCH_02H) \
689__PMC_EV(IAP, EVENT_CDH_00H) \
690__PMC_EV(IAP, EVENT_CEH_00H) \
691__PMC_EV(IAP, EVENT_CFH_00H) \
692__PMC_EV(IAP, EVENT_D0H_00H) \
693__PMC_EV(IAP, EVENT_D2H_01H) \
694__PMC_EV(IAP, EVENT_D2H_02H) \
695__PMC_EV(IAP, EVENT_D2H_04H) \
696__PMC_EV(IAP, EVENT_D2H_08H) \
697__PMC_EV(IAP, EVENT_D2H_0FH) \
698__PMC_EV(IAP, EVENT_D2H_10H) \
699__PMC_EV(IAP, EVENT_D4H_01H) \
700__PMC_EV(IAP, EVENT_D4H_02H) \
701__PMC_EV(IAP, EVENT_D4H_04H) \
702__PMC_EV(IAP, EVENT_D4H_08H) \
703__PMC_EV(IAP, EVENT_D4H_0FH) \
704__PMC_EV(IAP, EVENT_D5H_01H) \
705__PMC_EV(IAP, EVENT_D5H_02H) \
706__PMC_EV(IAP, EVENT_D5H_04H) \
707__PMC_EV(IAP, EVENT_D5H_08H) \
708__PMC_EV(IAP, EVENT_D5H_0FH) \
709__PMC_EV(IAP, EVENT_D7H_00H) \
710__PMC_EV(IAP, EVENT_D8H_00H) \
711__PMC_EV(IAP, EVENT_D8H_01H) \
712__PMC_EV(IAP, EVENT_D8H_02H) \
713__PMC_EV(IAP, EVENT_D8H_03H) \
714__PMC_EV(IAP, EVENT_D8H_04H) \
715__PMC_EV(IAP, EVENT_D9H_00H) \
716__PMC_EV(IAP, EVENT_D9H_01H) \
717__PMC_EV(IAP, EVENT_D9H_02H) \
718__PMC_EV(IAP, EVENT_D9H_03H) \
719__PMC_EV(IAP, EVENT_DAH_00H) \
720__PMC_EV(IAP, EVENT_DAH_01H) \
721__PMC_EV(IAP, EVENT_DAH_02H) \
722__PMC_EV(IAP, EVENT_DBH_00H) \
723__PMC_EV(IAP, EVENT_DCH_01H) \
724__PMC_EV(IAP, EVENT_DCH_02H) \
725__PMC_EV(IAP, EVENT_DCH_04H) \
726__PMC_EV(IAP, EVENT_DCH_08H) \
727__PMC_EV(IAP, EVENT_DCH_10H) \
728__PMC_EV(IAP, EVENT_DCH_1FH) \
729__PMC_EV(IAP, EVENT_E0H_00H) \
730__PMC_EV(IAP, EVENT_E0H_01H) \
731__PMC_EV(IAP, EVENT_E2H_00H) \
732__PMC_EV(IAP, EVENT_E4H_00H) \
733__PMC_EV(IAP, EVENT_E6H_00H) \
734__PMC_EV(IAP, EVENT_E6H_01H) \
735__PMC_EV(IAP, EVENT_F0H_00H) \
736__PMC_EV(IAP, EVENT_F8H_00H)
737
738#define PMC_EV_IAP_FIRST PMC_EV_IAP_EVENT_02H_81H
739#define PMC_EV_IAP_LAST PMC_EV_IAP_EVENT_F8H_00H
740
741/*
742 * Map "architectural" event names to event ids.
743 */
744#define __PMC_EV_ALIAS_INTEL_ARCHITECTURAL() \
745__PMC_EV_ALIAS("branch-instruction-retired", IAP_EVENT_C4H_00H) \
746__PMC_EV_ALIAS("branch-misses-retired", IAP_EVENT_C5H_00H) \
747__PMC_EV_ALIAS("instruction-retired", IAP_EVENT_C0H_00H) \
748__PMC_EV_ALIAS("llc-misses", IAP_EVENT_2EH_41H) \
749__PMC_EV_ALIAS("llc-reference", IAP_EVENT_2EH_4FH) \
750__PMC_EV_ALIAS("unhalted-reference-cycles", IAP_EVENT_3CH_01H) \
751__PMC_EV_ALIAS("unhalted-core-cycles", IAP_EVENT_3CH_00H)
752
753/*
754 * Aliases for Atom PMCs.
755 */
756#define __PMC_EV_ALIAS_ATOM() \
757__PMC_EV_ALIAS_INTEL_ARCHITECTURAL() \
758__PMC_EV_ALIAS("BACLEARS", IAP_EVENT_E6H_01H) \
759__PMC_EV_ALIAS("BOGUS_BR", IAP_EVENT_E4H_00H) \
760__PMC_EV_ALIAS("BR_BAC_MISSP_EXEC", IAP_EVENT_8AH_00H) \
761__PMC_EV_ALIAS("BR_CALL_EXEC", IAP_EVENT_92H_00H) \
762__PMC_EV_ALIAS("BR_CALL_MISSP_EXEC", IAP_EVENT_93H_00H) \
763__PMC_EV_ALIAS("BR_CND_EXEC", IAP_EVENT_8BH_00H) \
764__PMC_EV_ALIAS("BR_CND_MISSP_EXEC", IAP_EVENT_8CH_00H) \
765__PMC_EV_ALIAS("BR_IND_CALL_EXEC", IAP_EVENT_94H_00H) \
766__PMC_EV_ALIAS("BR_IND_EXEC", IAP_EVENT_8DH_00H) \
767__PMC_EV_ALIAS("BR_IND_MISSP_EXEC", IAP_EVENT_8EH_00H) \
768__PMC_EV_ALIAS("BR_INST_DECODED", IAP_EVENT_E0H_01H) \
769__PMC_EV_ALIAS("BR_INST_EXEC", IAP_EVENT_88H_00H) \
770__PMC_EV_ALIAS("BR_INST_RETIRED.ANY", IAP_EVENT_C4H_00H) \
771__PMC_EV_ALIAS("BR_INST_RETIRED.ANY1", IAP_EVENT_C4H_0FH) \
772__PMC_EV_ALIAS("BR_INST_RETIRED.MISPRED", IAP_EVENT_C5H_00H) \
773__PMC_EV_ALIAS("BR_INST_RETIRED.MISPRED_NOT_TAKEN", \
774 IAP_EVENT_C4H_02H) \
775__PMC_EV_ALIAS("BR_INST_RETIRED.MISPRED_TAKEN", IAP_EVENT_C4H_08H) \
776__PMC_EV_ALIAS("BR_INST_RETIRED.PRED_NOT_TAKEN",IAP_EVENT_C4H_01H) \
777__PMC_EV_ALIAS("BR_INST_RETIRED.PRED_TAKEN", IAP_EVENT_C4H_04H) \
778__PMC_EV_ALIAS("BR_INST_RETIRED.TAKEN", IAP_EVENT_C4H_0CH) \
779__PMC_EV_ALIAS("BR_MISSP_EXEC", IAP_EVENT_89H_00H) \
780__PMC_EV_ALIAS("BR_RET_BAC_MISSP_EXEC", IAP_EVENT_91H_00H) \
781__PMC_EV_ALIAS("BR_RET_EXEC", IAP_EVENT_8FH_00H) \
782__PMC_EV_ALIAS("BR_RET_MISSP_EXEC", IAP_EVENT_90H_00H) \
783__PMC_EV_ALIAS("BR_TKN_BUBBLE_1", IAP_EVENT_97H_00H) \
784__PMC_EV_ALIAS("BR_TKN_BUBBLE_2", IAP_EVENT_98H_00H) \
785__PMC_EV_ALIAS("BUSQ_EMPTY", IAP_EVENT_7DH) \
786__PMC_EV_ALIAS("BUS_BNR_DRV", IAP_EVENT_61H) \
787__PMC_EV_ALIAS("BUS_DATA_RCV", IAP_EVENT_64H) \
788__PMC_EV_ALIAS("BUS_DRDY_CLOCKS", IAP_EVENT_62H) \
789__PMC_EV_ALIAS("BUS_HITM_DRV", IAP_EVENT_7BH) \
790__PMC_EV_ALIAS("BUS_HIT_DRV", IAP_EVENT_7AH) \
791__PMC_EV_ALIAS("BUS_IO_WAIT", IAP_EVENT_7FH) \
792__PMC_EV_ALIAS("BUS_LOCK_CLOCKS", IAP_EVENT_63H) \
793__PMC_EV_ALIAS("BUS_REQUEST_OUTSTANDING", IAP_EVENT_60H) \
794__PMC_EV_ALIAS("BUS_TRANS_ANY", IAP_EVENT_70H) \
795__PMC_EV_ALIAS("BUS_TRANS_BRD", IAP_EVENT_65H) \
796__PMC_EV_ALIAS("BUS_TRANS_BURST", IAP_EVENT_6EH) \
797__PMC_EV_ALIAS("BUS_TRANS_DEF", IAP_EVENT_6DH) \
798__PMC_EV_ALIAS("BUS_TRANS_IFETCH", IAP_EVENT_68H) \
799__PMC_EV_ALIAS("BUS_TRANS_INVAL", IAP_EVENT_69H) \
800__PMC_EV_ALIAS("BUS_TRANS_IO", IAP_EVENT_6CH) \
801__PMC_EV_ALIAS("BUS_TRANS_MEM", IAP_EVENT_6FH) \
802__PMC_EV_ALIAS("BUS_TRANS_P", IAP_EVENT_6BH) \
803__PMC_EV_ALIAS("BUS_TRANS_PWR", IAP_EVENT_6AH) \
804__PMC_EV_ALIAS("BUS_TRANS_RFO", IAP_EVENT_66H) \
805__PMC_EV_ALIAS("BUS_TRANS_WB", IAP_EVENT_67H) \
806__PMC_EV_ALIAS("CMP_SNOOP", IAP_EVENT_78H) \
807__PMC_EV_ALIAS("CPU_CLK_UNHALTED.BUS", IAP_EVENT_3CH_01H) \
808__PMC_EV_ALIAS("CPU_CLK_UNHALTED.CORE_P", IAP_EVENT_3CH_00H) \
809__PMC_EV_ALIAS("CPU_CLK_UNHALTED.NO_OTHER", IAP_EVENT_3CH_02H) \
810__PMC_EV_ALIAS("CYCLES_DIV_BUSY", IAP_EVENT_14H_01H) \
811__PMC_EV_ALIAS("CYCLES_INT_MASKED.CYCLES_INT_MASKED", \
812 IAP_EVENT_C6H_01H) \
813__PMC_EV_ALIAS("CYCLES_INT_MASKED.CYCLES_INT_PENDING_AND_MASKED", \
814 IAP_EVENT_C6H_02H) \
815__PMC_EV_ALIAS("CYCLES_L1I_MEM_STALLED", IAP_EVENT_86H_00H) \
816__PMC_EV_ALIAS("DATA_TLB_MISSES.DTLB_MISS", IAP_EVENT_08H_07H) \
817__PMC_EV_ALIAS("DATA_TLB_MISSES.DTLB_MISS_LD", IAP_EVENT_08H_05H) \
818__PMC_EV_ALIAS("DATA_TLB_MISSES.DTLB_MISS_ST", IAP_EVENT_08H_06H) \
819__PMC_EV_ALIAS("DATA_TLB_MISSES.UTLB_MISS_LD", IAP_EVENT_08H_09H) \
820__PMC_EV_ALIAS("DELAYED_BYPASS.FP", IAP_EVENT_19H_00H) \
821__PMC_EV_ALIAS("DELAYED_BYPASS.LOAD", IAP_EVENT_19H_01H) \
822__PMC_EV_ALIAS("DELAYED_BYPASS.SIMD", IAP_EVENT_19H_02H) \
823__PMC_EV_ALIAS("DIV", IAP_EVENT_13H_00H) \
824__PMC_EV_ALIAS("DIV.AR", IAP_EVENT_13H_81H) \
825__PMC_EV_ALIAS("DIV.S", IAP_EVENT_13H_01H) \
826__PMC_EV_ALIAS("DTLB_MISSES.ANY", IAP_EVENT_08H_01H) \
827__PMC_EV_ALIAS("DTLB_MISSES.L0_MISS_LD", IAP_EVENT_08H_04H) \
828__PMC_EV_ALIAS("DTLB_MISSES.MISS_LD", IAP_EVENT_08H_02H) \
829__PMC_EV_ALIAS("DTLB_MISSES.MISS_ST", IAP_EVENT_08H_08H) \
830__PMC_EV_ALIAS("EIST_TRANS", IAP_EVENT_3AH_00H) \
831__PMC_EV_ALIAS("ESP.ADDITIONS", IAP_EVENT_ABH_02H) \
832__PMC_EV_ALIAS("ESP.SYNCH", IAP_EVENT_ABH_01H) \
833__PMC_EV_ALIAS("EXT_SNOOP", IAP_EVENT_77H) \
834__PMC_EV_ALIAS("FP_ASSIST", IAP_EVENT_11H_01H) \
835__PMC_EV_ALIAS("FP_ASSIST.AR", IAP_EVENT_11H_81H) \
836__PMC_EV_ALIAS("FP_COMP_OPS_EXE", IAP_EVENT_10H_00H) \
837__PMC_EV_ALIAS("FP_MMX_TRANS_TO_FP", IAP_EVENT_CCH_02H) \
838__PMC_EV_ALIAS("FP_MMX_TRANS_TO_MMX", IAP_EVENT_CCH_01H) \
839__PMC_EV_ALIAS("HW_INT_RCV", IAP_EVENT_C8H_00H) \
840__PMC_EV_ALIAS("ICACHE.ACCESSES", IAP_EVENT_80H_03H) \
841__PMC_EV_ALIAS("ICACHE.MISSES", IAP_EVENT_80H_02H) \
842__PMC_EV_ALIAS("IDLE_DURING_DIV", IAP_EVENT_18H_00H) \
843__PMC_EV_ALIAS("ILD_STALL", IAP_EVENT_87H_00H) \
844__PMC_EV_ALIAS("INST_QUEUE.FULL", IAP_EVENT_83H_02H) \
845__PMC_EV_ALIAS("INST_RETIRED.ANY_P", IAP_EVENT_C0H_00H) \
846__PMC_EV_ALIAS("INST_RETIRED.LOADS", IAP_EVENT_C0H_01H) \
847__PMC_EV_ALIAS("INST_RETIRED.OTHER", IAP_EVENT_C0H_04H) \
848__PMC_EV_ALIAS("INST_RETIRED.STORES", IAP_EVENT_C0H_02H) \
849__PMC_EV_ALIAS("ITLB.FLUSH", IAP_EVENT_82H_04H) \
850__PMC_EV_ALIAS("ITLB.LARGE_MISS", IAP_EVENT_82H_10H) \
851__PMC_EV_ALIAS("ITLB.MISSES", IAP_EVENT_82H_02H) \
852__PMC_EV_ALIAS("ITLB.SMALL_MISS", IAP_EVENT_82H_02H) \
853__PMC_EV_ALIAS("ITLB_MISS_RETIRED", IAP_EVENT_C9H_00H) \
854__PMC_EV_ALIAS("L1D_ALL_CACHE_REF", IAP_EVENT_43H_02H) \
855__PMC_EV_ALIAS("L1D_ALL_REF", IAP_EVENT_43H_01H) \
856__PMC_EV_ALIAS("L1D_CACHE.LD", IAP_EVENT_40H_21H) \
857__PMC_EV_ALIAS("L1D_CACHE.ST", IAP_EVENT_41H_22H) \
858__PMC_EV_ALIAS("L1D_CACHE_LOCK", IAP_EVENT_42H) \
859__PMC_EV_ALIAS("L1D_CACHE_LOCK_DURATION", IAP_EVENT_42H_10H) \
860__PMC_EV_ALIAS("L1D_M_EVICT", IAP_EVENT_47H_00H) \
861__PMC_EV_ALIAS("L1D_M_REPL", IAP_EVENT_46H_00H) \
862__PMC_EV_ALIAS("L1D_PEND_MISS", IAP_EVENT_48H_00H) \
863__PMC_EV_ALIAS("L1D_PREFETCH.REQUESTS", IAP_EVENT_4EH_10H) \
864__PMC_EV_ALIAS("L1D_REPL", IAP_EVENT_45H_0FH) \
865__PMC_EV_ALIAS("L1D_SPLIT.LOADS", IAP_EVENT_49H_01H) \
866__PMC_EV_ALIAS("L1D_SPLIT.STORES", IAP_EVENT_49H_02H) \
867__PMC_EV_ALIAS("L1I_MISSES", IAP_EVENT_81H_00H) \
868__PMC_EV_ALIAS("L1I_READS", IAP_EVENT_80H_00H) \
869__PMC_EV_ALIAS("L2_ADS", IAP_EVENT_21H) \
870__PMC_EV_ALIAS("L2_DBUS_BUSY_RD", IAP_EVENT_23H) \
871__PMC_EV_ALIAS("L2_IFETCH", IAP_EVENT_28H) \
872__PMC_EV_ALIAS("L2_LD", IAP_EVENT_29H) \
873__PMC_EV_ALIAS("L2_LINES_IN", IAP_EVENT_24H) \
874__PMC_EV_ALIAS("L2_LINES_OUT", IAP_EVENT_26H) \
875__PMC_EV_ALIAS("L2_LOCK", IAP_EVENT_2BH) \
876__PMC_EV_ALIAS("L2_M_LINES_IN", IAP_EVENT_25H) \
877__PMC_EV_ALIAS("L2_M_LINES_OUT", IAP_EVENT_27H) \
878__PMC_EV_ALIAS("L2_NO_REQ", IAP_EVENT_32H) \
879__PMC_EV_ALIAS("L2_REJECT_BUSQ", IAP_EVENT_30H) \
880__PMC_EV_ALIAS("L2_RQSTS", IAP_EVENT_2EH) \
881__PMC_EV_ALIAS("L2_RQSTS.SELF.DEMAND.I_STATE", IAP_EVENT_2EH_41H) \
882__PMC_EV_ALIAS("L2_RQSTS.SELF.DEMAND.MESI", IAP_EVENT_2EH_4FH) \
883__PMC_EV_ALIAS("L2_ST", IAP_EVENT_2AH) \
884__PMC_EV_ALIAS("LOAD_BLOCK.L1D", IAP_EVENT_03H_20H) \
885__PMC_EV_ALIAS("LOAD_BLOCK.OVERLAP_STORE", IAP_EVENT_03H_08H) \
886__PMC_EV_ALIAS("LOAD_BLOCK.STA", IAP_EVENT_03H_02H) \
887__PMC_EV_ALIAS("LOAD_BLOCK.STD", IAP_EVENT_03H_04H) \
888__PMC_EV_ALIAS("LOAD_BLOCK.UNTIL_RETIRE", IAP_EVENT_03H_10H) \
889__PMC_EV_ALIAS("LOAD_HIT_PRE", IAP_EVENT_4CH_00H) \
890__PMC_EV_ALIAS("MACHINE_CLEARS.SMC", IAP_EVENT_C3H_01H) \
891__PMC_EV_ALIAS("MACHINE_NUKES.MEM_ORDER", IAP_EVENT_C3H_04H) \
892__PMC_EV_ALIAS("MACRO_INSTS.ALL_DECODED", IAP_EVENT_AAH_03H) \
893__PMC_EV_ALIAS("MACRO_INSTS.CISC_DECODED", IAP_EVENT_AAH_02H) \
894__PMC_EV_ALIAS("MEMORY_DISAMBIGUATION.RESET", IAP_EVENT_09H_01H) \
895__PMC_EV_ALIAS("MEMORY_DISAMBIGUATION.SUCCESS", IAP_EVENT_09H_02H) \
896__PMC_EV_ALIAS("MEM_LOAD_RETIRED.DTLB_MISS", IAP_EVENT_CBH_04H) \
897__PMC_EV_ALIAS("MEM_LOAD_RETIRED.L2_HIT", IAP_EVENT_CBH_01H) \
898__PMC_EV_ALIAS("MEM_LOAD_RETIRED.L2_LINE_MISS", IAP_EVENT_CBH_08H) \
899__PMC_EV_ALIAS("MEM_LOAD_RETIRED.L2_MISS", IAP_EVENT_CBH_02H) \
900__PMC_EV_ALIAS("MUL", IAP_EVENT_12H_00H) \
901__PMC_EV_ALIAS("MUL.AR", IAP_EVENT_12H_81H) \
902__PMC_EV_ALIAS("MUL.S", IAP_EVENT_12H_01H) \
903__PMC_EV_ALIAS("PAGE_WALKS.CYCLES", IAP_EVENT_0CH_03H) \
904__PMC_EV_ALIAS("PAGE_WALKS.WALKS", IAP_EVENT_0CH_03H) \
905__PMC_EV_ALIAS("PREFETCH.PREFETCHNTA", IAP_EVENT_07H_08H) \
906__PMC_EV_ALIAS("PREFETCH.PREFETCHT0", IAP_EVENT_07H_01H) \
907__PMC_EV_ALIAS("PREFETCH.SW_L2", IAP_EVENT_07H_06H) \
908__PMC_EV_ALIAS("PREF_RQSTS_DN", IAP_EVENT_F8H_00H) \
909__PMC_EV_ALIAS("PREF_RQSTS_UP", IAP_EVENT_F0H_00H) \
910__PMC_EV_ALIAS("RAT_STALLS.ANY", IAP_EVENT_D2H_0FH) \
911__PMC_EV_ALIAS("RAT_STALLS.FLAGS", IAP_EVENT_D2H_04H) \
912__PMC_EV_ALIAS("RAT_STALLS.FPSW", IAP_EVENT_D2H_08H) \
913__PMC_EV_ALIAS("RAT_STALLS.PARTIAL_CYCLES", IAP_EVENT_D2H_02H) \
914__PMC_EV_ALIAS("RAT_STALLS.ROB_READ_PORT", IAP_EVENT_D2H_01H) \
915__PMC_EV_ALIAS("RESOURCE_STALLS.ANY", IAP_EVENT_DCH_1FH) \
916__PMC_EV_ALIAS("RESOURCE_STALLS.BR_MISS_CLEAR", IAP_EVENT_DCH_10H) \
917__PMC_EV_ALIAS("RESOURCE_STALLS.FPCW", IAP_EVENT_DCH_08H) \
918__PMC_EV_ALIAS("RESOURCE_STALLS.LD_ST", IAP_EVENT_DCH_04H) \
919__PMC_EV_ALIAS("RESOURCE_STALLS.ROB_FULL", IAP_EVENT_DCH_01H) \
920__PMC_EV_ALIAS("RESOURCE_STALLS.RS_FULL", IAP_EVENT_DCH_02H) \
921__PMC_EV_ALIAS("RS_UOPS_DISPATCHED", IAP_EVENT_A0H_00H) \
922__PMC_EV_ALIAS("RS_UOPS_DISPATCHED.PORT0", IAP_EVENT_A1H_01H) \
923__PMC_EV_ALIAS("RS_UOPS_DISPATCHED.PORT1", IAP_EVENT_A1H_02H) \
924__PMC_EV_ALIAS("RS_UOPS_DISPATCHED.PORT2", IAP_EVENT_A1H_04H) \
925__PMC_EV_ALIAS("RS_UOPS_DISPATCHED.PORT3", IAP_EVENT_A1H_08H) \
926__PMC_EV_ALIAS("RS_UOPS_DISPATCHED.PORT4", IAP_EVENT_A1H_10H) \
927__PMC_EV_ALIAS("RS_UOPS_DISPATCHED.PORT5", IAP_EVENT_A1H_20H) \
928__PMC_EV_ALIAS("SB_DRAIN_CYCLES", IAP_EVENT_04H_01H) \
929__PMC_EV_ALIAS("SEGMENT_REG_LOADS.ANY", IAP_EVENT_06H_00H) \
930__PMC_EV_ALIAS("SEG_REG_RENAMES.ANY", IAP_EVENT_D5H_0FH) \
931__PMC_EV_ALIAS("SEG_REG_RENAMES.DS", IAP_EVENT_D5H_02H) \
932__PMC_EV_ALIAS("SEG_REG_RENAMES.ES", IAP_EVENT_D5H_01H) \
933__PMC_EV_ALIAS("SEG_REG_RENAMES.FS", IAP_EVENT_D5H_04H) \
934__PMC_EV_ALIAS("SEG_REG_RENAMES.GS", IAP_EVENT_D5H_08H) \
935__PMC_EV_ALIAS("SEG_RENAME_STALLS.ANY", IAP_EVENT_D4H_0FH) \
936__PMC_EV_ALIAS("SEG_RENAME_STALLS.DS", IAP_EVENT_D4H_02H) \
937__PMC_EV_ALIAS("SEG_RENAME_STALLS.ES", IAP_EVENT_D4H_01H) \
938__PMC_EV_ALIAS("SEG_RENAME_STALLS.FS", IAP_EVENT_D4H_04H) \
939__PMC_EV_ALIAS("SEG_RENAME_STALLS.GS", IAP_EVENT_D4H_08H) \
940__PMC_EV_ALIAS("SIMD_ASSIST", IAP_EVENT_CDH_00H) \
941__PMC_EV_ALIAS("SIMD_COMP_INST_RETIRED.PACKED_DOUBLE", \
942 IAP_EVENT_CAH_04H) \
943__PMC_EV_ALIAS("SIMD_COMP_INST_RETIRED.PACKED_SINGLE", \
944 IAP_EVENT_CAH_01H) \
945__PMC_EV_ALIAS("SIMD_COMP_INST_RETIRED.SCALAR_DOUBLE", \
946 IAP_EVENT_CAH_08H) \
947__PMC_EV_ALIAS("SIMD_COMP_INST_RETIRED.SCALAR_SINGLE", \
948 IAP_EVENT_CAH_02H) \
949__PMC_EV_ALIAS("SIMD_INSTR_RETIRED", IAP_EVENT_CEH_00H) \
950__PMC_EV_ALIAS("SIMD_INST_RETIRED.ANY", IAP_EVENT_C7H_1FH) \
951__PMC_EV_ALIAS("SIMD_INST_RETIRED.PACKED_DOUBLE", IAP_EVENT_C7H_04H) \
952__PMC_EV_ALIAS("SIMD_INST_RETIRED.PACKED_SINGLE", IAP_EVENT_C7H_01H) \
953__PMC_EV_ALIAS("SIMD_INST_RETIRED.SCALAR_DOUBLE", IAP_EVENT_C7H_08H) \
954__PMC_EV_ALIAS("SIMD_INST_RETIRED.SCALAR_SINGLE", IAP_EVENT_C7H_02H) \
955__PMC_EV_ALIAS("SIMD_INST_RETIRED.VECTOR", IAP_EVENT_C7H_10H) \
956__PMC_EV_ALIAS("SIMD_SAT_INSTR_RETIRED", IAP_EVENT_CFH_00H) \
957__PMC_EV_ALIAS("SIMD_SAT_UOP_EXEC.AR", IAP_EVENT_B1H_80H) \
958__PMC_EV_ALIAS("SIMD_SAT_UOP_EXEC.S", IAP_EVENT_B1H_00H) \
959__PMC_EV_ALIAS("SIMD_UOPS_EXEC.AR", IAP_EVENT_B0H_80H) \
960__PMC_EV_ALIAS("SIMD_UOPS_EXEC.S", IAP_EVENT_B0H_00H) \
961__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.ARITHMETIC.AR", IAP_EVENT_B3H_A0H) \
962__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.ARITHMETIC.S", IAP_EVENT_B3H_20H) \
963__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.LOGICAL.AR", IAP_EVENT_B3H_90H) \
964__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.LOGICAL.S", IAP_EVENT_B3H_10H) \
965__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.MUL.AR", IAP_EVENT_B3H_81H) \
966__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.MUL.S", IAP_EVENT_B3H_01H) \
967__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.PACK.AR", IAP_EVENT_B3H_84H) \
968__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.PACK.S", IAP_EVENT_B3H_04H) \
969__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.SHIFT.AR", IAP_EVENT_B3H_82H) \
970__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.SHIFT.S", IAP_EVENT_B3H_02H) \
971__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.UNPACK.AR", IAP_EVENT_B3H_88H) \
972__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.UNPACK.S", IAP_EVENT_B3H_08H) \
973__PMC_EV_ALIAS("SNOOP_STALL_DRV", IAP_EVENT_7EH) \
974__PMC_EV_ALIAS("SSE_PRE_EXEC.L2", IAP_EVENT_07H_02H) \
975__PMC_EV_ALIAS("SSE_PRE_EXEC.STORES", IAP_EVENT_07H_03H) \
976__PMC_EV_ALIAS("SSE_PRE_MISS.L1", IAP_EVENT_4BH_01H) \
977__PMC_EV_ALIAS("SSE_PRE_MISS.L2", IAP_EVENT_4BH_02H) \
978__PMC_EV_ALIAS("SSE_PRE_MISS.NTA", IAP_EVENT_4BH_00H) \
979__PMC_EV_ALIAS("STORE_BLOCK.ORDER", IAP_EVENT_04H_02H) \
980__PMC_EV_ALIAS("STORE_BLOCK.SNOOP", IAP_EVENT_04H_08H) \
981__PMC_EV_ALIAS("STORE_FORWARDS.GOOD", IAP_EVENT_02H_81H) \
982__PMC_EV_ALIAS("THERMAL_TRIP", IAP_EVENT_3BH_C0H) \
983__PMC_EV_ALIAS("UOPS_RETIRED.ANY", IAP_EVENT_C2H_10H) \
984__PMC_EV_ALIAS("UOPS_RETIRED.FUSED", IAP_EVENT_C2H_07H) \
985__PMC_EV_ALIAS("UOPS_RETIRED.LD_IND_BR", IAP_EVENT_C2H_01H) \
986__PMC_EV_ALIAS("UOPS_RETIRED.MACRO_FUSION", IAP_EVENT_C2H_04H) \
987__PMC_EV_ALIAS("UOPS_RETIRED.NON_FUSED", IAP_EVENT_C2H_08H) \
988__PMC_EV_ALIAS("UOPS_RETIRED.STD_STA", IAP_EVENT_C2H_02H) \
989__PMC_EV_ALIAS("X87_COMP_OPS_EXE.ANY.AR", IAP_EVENT_10H_81H) \
990__PMC_EV_ALIAS("X87_COMP_OPS_EXE.ANY.S", IAP_EVENT_10H_01H) \
991__PMC_EV_ALIAS("X87_OPS_RETIRED.ANY", IAP_EVENT_C1H_FEH) \
992__PMC_EV_ALIAS("X87_OPS_RETIRED.FXCH", IAP_EVENT_C1H_01H)
993
994/*
995 * Aliases for Core PMC events.
996 */
997#define __PMC_EV_ALIAS_CORE() \
998__PMC_EV_ALIAS_INTEL_ARCHITECTURAL() \
999__PMC_EV_ALIAS("BAClears", IAP_EVENT_E6H_00H) \
1000__PMC_EV_ALIAS("BTB_Misses", IAP_EVENT_E2H_00H) \
1001__PMC_EV_ALIAS("Br_BAC_Missp_Exec", IAP_EVENT_8AH_00H) \
1002__PMC_EV_ALIAS("Br_Bogus", IAP_EVENT_E4H_00H) \
1003__PMC_EV_ALIAS("Br_Call_Exec", IAP_EVENT_92H_00H) \
1004__PMC_EV_ALIAS("Br_Call_Missp_Exec", IAP_EVENT_93H_00H) \
1005__PMC_EV_ALIAS("Br_Cnd_Exec", IAP_EVENT_8BH_00H) \
1006__PMC_EV_ALIAS("Br_Cnd_Missp_Exec", IAP_EVENT_8CH_00H) \
1007__PMC_EV_ALIAS("Br_Ind_Call_Exec", IAP_EVENT_94H_00H) \
1008__PMC_EV_ALIAS("Br_Ind_Exec", IAP_EVENT_8DH_00H) \
1009__PMC_EV_ALIAS("Br_Ind_Missp_Exec", IAP_EVENT_8EH_00H) \
1010__PMC_EV_ALIAS("Br_Inst_Exec", IAP_EVENT_88H_00H) \
1011__PMC_EV_ALIAS("Br_Instr_Decoded", IAP_EVENT_E0H_00H) \
1012__PMC_EV_ALIAS("Br_Instr_Ret", IAP_EVENT_C4H_00H) \
1013__PMC_EV_ALIAS("Br_MisPred_Ret", IAP_EVENT_C5H_00H) \
1014__PMC_EV_ALIAS("Br_MisPred_Taken_Ret", IAP_EVENT_CAH_00H) \
1015__PMC_EV_ALIAS("Br_Missp_Exec", IAP_EVENT_89H_00H) \
1016__PMC_EV_ALIAS("Br_Ret_BAC_Missp_Exec", IAP_EVENT_91H_00H) \
1017__PMC_EV_ALIAS("Br_Ret_Exec", IAP_EVENT_8FH_00H) \
1018__PMC_EV_ALIAS("Br_Ret_Missp_Exec", IAP_EVENT_90H_00H) \
1019__PMC_EV_ALIAS("Br_Taken_Ret", IAP_EVENT_C9H_00H) \
1020__PMC_EV_ALIAS("Bus_BNR_Clocks", IAP_EVENT_61H_00H) \
1021__PMC_EV_ALIAS("Bus_DRDY_Clocks", IAP_EVENT_62H_00H) \
1022__PMC_EV_ALIAS("Bus_Data_Rcv", IAP_EVENT_64H_40H) \
1023__PMC_EV_ALIAS("Bus_Locks_Clocks", IAP_EVENT_63H) \
1024__PMC_EV_ALIAS("Bus_Not_In_Use", IAP_EVENT_7DH) \
1025__PMC_EV_ALIAS("Bus_Req_Outstanding", IAP_EVENT_60H) \
1026__PMC_EV_ALIAS("Bus_Snoop_Stall", IAP_EVENT_7EH_00H) \
1027__PMC_EV_ALIAS("Bus_Snoops", IAP_EVENT_77H) \
1028__PMC_EV_ALIAS("Bus_Trans_Any", IAP_EVENT_70H) \
1029__PMC_EV_ALIAS("Bus_Trans_Brd", IAP_EVENT_65H) \
1030__PMC_EV_ALIAS("Bus_Trans_Burst", IAP_EVENT_6EH) \
1031__PMC_EV_ALIAS("Bus_Trans_Def", IAP_EVENT_6DH) \
1032__PMC_EV_ALIAS("Bus_Trans_IO", IAP_EVENT_6CH) \
1033__PMC_EV_ALIAS("Bus_Trans_Ifetch", IAP_EVENT_68H) \
1034__PMC_EV_ALIAS("Bus_Trans_Inval", IAP_EVENT_69H) \
1035__PMC_EV_ALIAS("Bus_Trans_Mem", IAP_EVENT_6FH) \
1036__PMC_EV_ALIAS("Bus_Trans_P", IAP_EVENT_6BH) \
1037__PMC_EV_ALIAS("Bus_Trans_Pwr", IAP_EVENT_6AH) \
1038__PMC_EV_ALIAS("Bus_Trans_RFO", IAP_EVENT_66H) \
1039__PMC_EV_ALIAS("Bus_Trans_WB", IAP_EVENT_67H) \
1040__PMC_EV_ALIAS("Cycles_Div_Busy", IAP_EVENT_14H_00H) \
1041__PMC_EV_ALIAS("Cycles_Int_Masked", IAP_EVENT_C6H_00H) \
1042__PMC_EV_ALIAS("Cycles_Int_Pending_Masked", IAP_EVENT_C7H_00H) \
1043__PMC_EV_ALIAS("DCU_Snoop_To_Share", IAP_EVENT_78H) \
1044__PMC_EV_ALIAS("DCache_Cache_LD", IAP_EVENT_40H) \
1045__PMC_EV_ALIAS("DCache_Cache_Lock", IAP_EVENT_42H) \
1046__PMC_EV_ALIAS("DCache_Cache_ST", IAP_EVENT_41H) \
1047__PMC_EV_ALIAS("DCache_M_Evict", IAP_EVENT_47H_00H) \
1048__PMC_EV_ALIAS("DCache_M_Repl", IAP_EVENT_46H_00H) \
1049__PMC_EV_ALIAS("DCache_Pend_Miss", IAP_EVENT_48H_00H) \
1050__PMC_EV_ALIAS("DCache_Repl", IAP_EVENT_45H_0FH) \
1051__PMC_EV_ALIAS("Data_Mem_Cache_Ref", IAP_EVENT_44H_02H) \
1052__PMC_EV_ALIAS("Data_Mem_Ref", IAP_EVENT_43H_01H) \
1053__PMC_EV_ALIAS("Dbus_Busy", IAP_EVENT_22H) \
1054__PMC_EV_ALIAS("Dbus_Busy_Rd", IAP_EVENT_23H) \
1055__PMC_EV_ALIAS("Div", IAP_EVENT_13H_00H) \
1056__PMC_EV_ALIAS("Dtlb_Miss", IAP_EVENT_49H_00H) \
1057__PMC_EV_ALIAS("ESP_Uops", IAP_EVENT_D7H_00H) \
1058__PMC_EV_ALIAS("EST_Trans", IAP_EVENT_3AH) \
1059__PMC_EV_ALIAS("FP_Assist", IAP_EVENT_11H_00H) \
1060__PMC_EV_ALIAS("FP_Comp_Instr_Ret", IAP_EVENT_C1H_00H) \
1061__PMC_EV_ALIAS("FP_Comps_Op_Exe", IAP_EVENT_10H_00H) \
1062__PMC_EV_ALIAS("FP_MMX_Trans", IAP_EVENT_CCH_01H) \
1063__PMC_EV_ALIAS("Fused_Ld_Uops_Ret", IAP_EVENT_DAH_01H) \
1064__PMC_EV_ALIAS("Fused_St_Uops_Ret", IAP_EVENT_DAH_02H) \
1065__PMC_EV_ALIAS("Fused_Uops_Ret", IAP_EVENT_DAH_00H) \
1066__PMC_EV_ALIAS("HW_Int_Rx", IAP_EVENT_C8H_00H) \
1067__PMC_EV_ALIAS("ICache_Misses", IAP_EVENT_81H_00H) \
1068__PMC_EV_ALIAS("ICache_Reads", IAP_EVENT_80H_00H) \
1069__PMC_EV_ALIAS("IFU_Mem_Stall", IAP_EVENT_86H_00H) \
1070__PMC_EV_ALIAS("ILD_Stall", IAP_EVENT_87H_00H) \
1071__PMC_EV_ALIAS("ITLB_Misses", IAP_EVENT_85H_00H) \
1072__PMC_EV_ALIAS("Instr_Decoded", IAP_EVENT_D0H_00H) \
1073__PMC_EV_ALIAS("Instr_Ret", IAP_EVENT_C0H_00H) \
1074__PMC_EV_ALIAS("L1_Pref_Req", IAP_EVENT_4FH_00H) \
1075__PMC_EV_ALIAS("L2_ADS", IAP_EVENT_21H) \
1076__PMC_EV_ALIAS("L2_IFetch", IAP_EVENT_28H) \
1077__PMC_EV_ALIAS("L2_LD", IAP_EVENT_29H) \
1078__PMC_EV_ALIAS("L2_Lines_In", IAP_EVENT_24H) \
1079__PMC_EV_ALIAS("L2_Lines_Out", IAP_EVENT_26H) \
1080__PMC_EV_ALIAS("L2_M_Lines_In", IAP_EVENT_25H) \
1081__PMC_EV_ALIAS("L2_M_Lines_Out", IAP_EVENT_27H) \
1082__PMC_EV_ALIAS("L2_No_Request_Cycles", IAP_EVENT_32H) \
1083__PMC_EV_ALIAS("L2_Reject_Cycles", IAP_EVENT_30H) \
1084__PMC_EV_ALIAS("L2_Rqsts", IAP_EVENT_2EH) \
1085__PMC_EV_ALIAS("L2_ST", IAP_EVENT_2AH) \
1086__PMC_EV_ALIAS("LD_Blocks", IAP_EVENT_03H_00H) \
1087__PMC_EV_ALIAS("LLC_Misses", IAP_EVENT_2EH_41H) \
1088__PMC_EV_ALIAS("LLC_Reference", IAP_EVENT_2EH_4FH) \
1089__PMC_EV_ALIAS("MMX_Assist", IAP_EVENT_CDH_00H) \
1090__PMC_EV_ALIAS("MMX_FP_Trans", IAP_EVENT_CCH_00H) \
1091__PMC_EV_ALIAS("MMX_Instr_Exec", IAP_EVENT_B0H_00H) \
1092__PMC_EV_ALIAS("MMX_Instr_Ret", IAP_EVENT_CEH_00H) \
1093__PMC_EV_ALIAS("Misalign_Mem_Ref", IAP_EVENT_05H_00H) \
1094__PMC_EV_ALIAS("Mul", IAP_EVENT_12H_00H) \
1095__PMC_EV_ALIAS("NonHlt_Ref_Cycles", IAP_EVENT_3CH_01H) \
1096__PMC_EV_ALIAS("Pref_Rqsts_Dn", IAP_EVENT_F8H_00H) \
1097__PMC_EV_ALIAS("Pref_Rqsts_Up", IAP_EVENT_F0H_00H) \
1098__PMC_EV_ALIAS("Resource_Stall", IAP_EVENT_A2H_00H) \
1099__PMC_EV_ALIAS("SD_Drains", IAP_EVENT_04H_00H) \
1100__PMC_EV_ALIAS("SIMD_FP_DP_P_Comp_Ret", IAP_EVENT_D9H_02H) \
1101__PMC_EV_ALIAS("SIMD_FP_DP_P_Ret", IAP_EVENT_D8H_02H) \
1102__PMC_EV_ALIAS("SIMD_FP_DP_S_Comp_Ret", IAP_EVENT_D9H_03H) \
1103__PMC_EV_ALIAS("SIMD_FP_DP_S_Ret", IAP_EVENT_D8H_03H) \
1104__PMC_EV_ALIAS("SIMD_FP_SP_P_Comp_Ret", IAP_EVENT_D9H_00H) \
1105__PMC_EV_ALIAS("SIMD_FP_SP_Ret", IAP_EVENT_D8H_00H) \
1106__PMC_EV_ALIAS("SIMD_FP_SP_S_Comp_Ret", IAP_EVENT_D9H_01H) \
1107__PMC_EV_ALIAS("SIMD_FP_SP_S_Ret", IAP_EVENT_D8H_01H) \
1108__PMC_EV_ALIAS("SIMD_Int_128_Ret", IAP_EVENT_D8H_04H) \
1109__PMC_EV_ALIAS("SIMD_Int_Pari_Exec", IAP_EVENT_B3H_20H) \
1110__PMC_EV_ALIAS("SIMD_Int_Pck_Exec", IAP_EVENT_B3H_04H) \
1111__PMC_EV_ALIAS("SIMD_Int_Plog_Exec", IAP_EVENT_B3H_10H) \
1112__PMC_EV_ALIAS("SIMD_Int_Pmul_Exec", IAP_EVENT_B3H_01H) \
1113__PMC_EV_ALIAS("SIMD_Int_Psft_Exec", IAP_EVENT_B3H_02H) \
1114__PMC_EV_ALIAS("SIMD_Int_Sat_Exec", IAP_EVENT_B1H_00H) \
1115__PMC_EV_ALIAS("SIMD_Int_Upck_Exec", IAP_EVENT_B3H_08H) \
1116__PMC_EV_ALIAS("SMC_Detected", IAP_EVENT_C3H_00H) \
1117__PMC_EV_ALIAS("SSE_NTStores_Miss", IAP_EVENT_4BH_03H) \
1118__PMC_EV_ALIAS("SSE_NTStores_Ret", IAP_EVENT_07H_03H) \
1119__PMC_EV_ALIAS("SSE_PrefNta_Miss", IAP_EVENT_4BH_00H) \
1120__PMC_EV_ALIAS("SSE_PrefNta_Ret", IAP_EVENT_07H_00H) \
1121__PMC_EV_ALIAS("SSE_PrefT1_Miss", IAP_EVENT_4BH_01H) \
1122__PMC_EV_ALIAS("SSE_PrefT1_Ret", IAP_EVENT_07H_01H) \
1123__PMC_EV_ALIAS("SSE_PrefT2_Miss", IAP_EVENT_4BH_02H) \
1124__PMC_EV_ALIAS("SSE_PrefT2_Ret", IAP_EVENT_07H_02H) \
1125__PMC_EV_ALIAS("Seg_Reg_Loads", IAP_EVENT_06H_00H) \
1126__PMC_EV_ALIAS("Serial_Execution_Cycles", IAP_EVENT_3CH_02H) \
1127__PMC_EV_ALIAS("Thermal_Trip", IAP_EVENT_3BH_C0H) \
1128__PMC_EV_ALIAS("Unfusion", IAP_EVENT_DBH_00H) \
1129__PMC_EV_ALIAS("Unhalted_Core_Cycles", IAP_EVENT_3CH_00H) \
1130__PMC_EV_ALIAS("Uops_Ret", IAP_EVENT_C2H_00H)
1131
1132/*
1133 * Aliases for Core2 PMC events.
1134 */
1135#define __PMC_EV_ALIAS_CORE2() \
1136__PMC_EV_ALIAS_INTEL_ARCHITECTURAL() \
1137__PMC_EV_ALIAS("BACLEARS", IAP_EVENT_E6H_00H) \
1138__PMC_EV_ALIAS("BOGUS_BR", IAP_EVENT_E4H_00H) \
1139__PMC_EV_ALIAS("BR_BAC_MISSP_EXEC", IAP_EVENT_8AH_00H) \
1140__PMC_EV_ALIAS("BR_CALL_EXEC", IAP_EVENT_92H_00H) \
1141__PMC_EV_ALIAS("BR_CALL_MISSP_EXEC", IAP_EVENT_93H_00H) \
1142__PMC_EV_ALIAS("BR_CND_EXEC", IAP_EVENT_8BH_00H) \
1143__PMC_EV_ALIAS("BR_CND_MISSP_EXEC", IAP_EVENT_8CH_00H) \
1144__PMC_EV_ALIAS("BR_IND_CALL_EXEC", IAP_EVENT_94H_00H) \
1145__PMC_EV_ALIAS("BR_IND_EXEC", IAP_EVENT_8DH_00H) \
1146__PMC_EV_ALIAS("BR_IND_MISSP_EXEC", IAP_EVENT_8EH_00H) \
1147__PMC_EV_ALIAS("BR_INST_DECODED", IAP_EVENT_E0H_00H) \
1148__PMC_EV_ALIAS("BR_INST_EXEC", IAP_EVENT_88H_00H) \
1149__PMC_EV_ALIAS("BR_INST_RETIRED.ANY", IAP_EVENT_C4H_00H) \
1150__PMC_EV_ALIAS("BR_INST_RETIRED.MISPRED", IAP_EVENT_C5H_00H) \
1151__PMC_EV_ALIAS("BR_INST_RETIRED.MISPRED_NOT_TAKEN", \
1152 IAP_EVENT_C4H_02H) \
1153__PMC_EV_ALIAS("BR_INST_RETIRED.MISPRED_TAKEN", \
1154 IAP_EVENT_C4H_08H) \
1155__PMC_EV_ALIAS("BR_INST_RETIRED.PRED_NOT_TAKEN", \
1156 IAP_EVENT_C4H_01H) \
1157__PMC_EV_ALIAS("BR_INST_RETIRED.PRED_TAKEN", \
1158 IAP_EVENT_C4H_04H) \
1159__PMC_EV_ALIAS("BR_INST_RETIRED.TAKEN", IAP_EVENT_C4H_0CH) \
1160__PMC_EV_ALIAS("BR_MISSP_EXEC", IAP_EVENT_89H_00H) \
1161__PMC_EV_ALIAS("BR_RET_BAC_MISSP_EXEC", IAP_EVENT_91H_00H) \
1162__PMC_EV_ALIAS("BR_RET_EXEC", IAP_EVENT_8FH_00H) \
1163__PMC_EV_ALIAS("BR_RET_MISSP_EXEC", IAP_EVENT_90H_00H) \
1164__PMC_EV_ALIAS("BR_TKN_BUBBLE_1", IAP_EVENT_97H_00H) \
1165__PMC_EV_ALIAS("BR_TKN_BUBBLE_2", IAP_EVENT_98H_00H) \
1166__PMC_EV_ALIAS("BUSQ_EMPTY", IAP_EVENT_7DH) \
1167__PMC_EV_ALIAS("BUS_BNR_DRV", IAP_EVENT_61H) \
1168__PMC_EV_ALIAS("BUS_DATA_RCV", IAP_EVENT_64H) \
1169__PMC_EV_ALIAS("BUS_DRDY_CLOCKS", IAP_EVENT_62H) \
1170__PMC_EV_ALIAS("BUS_HITM_DRV", IAP_EVENT_7BH) \
1171__PMC_EV_ALIAS("BUS_HIT_DRV", IAP_EVENT_7AH) \
1172__PMC_EV_ALIAS("BUS_IO_WAIT", IAP_EVENT_7FH) \
1173__PMC_EV_ALIAS("BUS_LOCK_CLOCKS", IAP_EVENT_63H) \
1174__PMC_EV_ALIAS("BUS_REQUEST_OUTSTANDING", \
1175 IAP_EVENT_60H) \
1176__PMC_EV_ALIAS("BUS_TRANS_ANY", IAP_EVENT_70H) \
1177__PMC_EV_ALIAS("BUS_TRANS_BRD", IAP_EVENT_65H) \
1178__PMC_EV_ALIAS("BUS_TRANS_BURST", IAP_EVENT_6EH) \
1179__PMC_EV_ALIAS("BUS_TRANS_DEF", IAP_EVENT_6DH) \
1180__PMC_EV_ALIAS("BUS_TRANS_IFETCH", IAP_EVENT_68H) \
1181__PMC_EV_ALIAS("BUS_TRANS_INVAL", IAP_EVENT_69H) \
1182__PMC_EV_ALIAS("BUS_TRANS_IO", IAP_EVENT_6CH) \
1183__PMC_EV_ALIAS("BUS_TRANS_MEM", IAP_EVENT_6FH) \
1184__PMC_EV_ALIAS("BUS_TRANS_P", IAP_EVENT_6BH) \
1185__PMC_EV_ALIAS("BUS_TRANS_PWR", IAP_EVENT_6AH) \
1186__PMC_EV_ALIAS("BUS_TRANS_RFO", IAP_EVENT_66H) \
1187__PMC_EV_ALIAS("BUS_TRANS_WB", IAP_EVENT_67H) \
1188__PMC_EV_ALIAS("CMP_SNOOP", IAP_EVENT_78H) \
1189__PMC_EV_ALIAS("CPU_CLK_UNHALTED.BUS", IAP_EVENT_3CH_01H) \
1190__PMC_EV_ALIAS("CPU_CLK_UNHALTED.CORE_P", \
1191 IAP_EVENT_3CH_00H) \
1192__PMC_EV_ALIAS("CPU_CLK_UNHALTED.NO_OTHER", \
1193 IAP_EVENT_3CH_02H) \
1194__PMC_EV_ALIAS("CYCLES_DIV_BUSY", IAP_EVENT_14H_00H) \
1195__PMC_EV_ALIAS("CYCLES_INT_MASKED", IAP_EVENT_C6H_01H) \
1196__PMC_EV_ALIAS("CYCLES_INT_PENDING_AND_MASKED", \
1197 IAP_EVENT_C6H_02H) \
1198__PMC_EV_ALIAS("CYCLES_L1I_MEM_STALLED", IAP_EVENT_86H_00H) \
1199__PMC_EV_ALIAS("DELAYED_BYPASS.FP", IAP_EVENT_19H_00H) \
1200__PMC_EV_ALIAS("DELAYED_BYPASS.LOAD", IAP_EVENT_19H_01H) \
1201__PMC_EV_ALIAS("DELAYED_BYPASS.SIMD", IAP_EVENT_19H_02H) \
1202__PMC_EV_ALIAS("DIV", IAP_EVENT_13H_00H) \
1203__PMC_EV_ALIAS("DTLB_MISSES.ANY", IAP_EVENT_08H_01H) \
1204__PMC_EV_ALIAS("DTLB_MISSES.L0_MISS_LD", IAP_EVENT_08H_04H) \
1205__PMC_EV_ALIAS("DTLB_MISSES.MISS_LD", IAP_EVENT_08H_02H) \
1206__PMC_EV_ALIAS("DTLB_MISSES.MISS_ST", IAP_EVENT_08H_08H) \
1207__PMC_EV_ALIAS("EIST_TRANS", IAP_EVENT_3AH_00H) \
1208__PMC_EV_ALIAS("ESP.ADDITIONS", IAP_EVENT_ABH_02H) \
1209__PMC_EV_ALIAS("ESP.SYNCH", IAP_EVENT_ABH_01H) \
1210__PMC_EV_ALIAS("EXT_SNOOP", IAP_EVENT_77H) \
1211__PMC_EV_ALIAS("FP_ASSIST", IAP_EVENT_11H_00H) \
1212__PMC_EV_ALIAS("FP_COMP_OPS_EXE", IAP_EVENT_10H_00H) \
1213__PMC_EV_ALIAS("FP_MMX_TRANS_TO_FP", IAP_EVENT_CCH_02H) \
1214__PMC_EV_ALIAS("FP_MMX_TRANS_TO_MMX", IAP_EVENT_CCH_01H) \
1215__PMC_EV_ALIAS("HW_INT_RCV", IAP_EVENT_C8H_00H) \
1216__PMC_EV_ALIAS("IDLE_DURING_DIV", IAP_EVENT_18H_00H) \
1217__PMC_EV_ALIAS("ILD_STALL", IAP_EVENT_87H_00H) \
1218__PMC_EV_ALIAS("INST_QUEUE.FULL", IAP_EVENT_83H_02H) \
1219__PMC_EV_ALIAS("INST_RETIRED.ANY_P", IAP_EVENT_C0H_00H) \
1220__PMC_EV_ALIAS("INST_RETIRED.LOADS", IAP_EVENT_C0H_01H) \
1221__PMC_EV_ALIAS("INST_RETIRED.OTHER", IAP_EVENT_C0H_04H) \
1222__PMC_EV_ALIAS("INST_RETIRED.STORES", IAP_EVENT_C0H_02H) \
1223__PMC_EV_ALIAS("INST_RETIRED.VM_H", IAP_EVENT_C0H_08H) \
1224__PMC_EV_ALIAS("ITLB.FLUSH", IAP_EVENT_82H_40H) \
1225__PMC_EV_ALIAS("ITLB.LARGE_MISS", IAP_EVENT_82H_10H) \
1226__PMC_EV_ALIAS("ITLB.MISSES", IAP_EVENT_82H_12H) \
1227__PMC_EV_ALIAS("ITLB.SMALL_MISS", IAP_EVENT_82H_02H) \
1228__PMC_EV_ALIAS("ITLB_MISS_RETIRED", IAP_EVENT_C9H_00H) \
1229__PMC_EV_ALIAS("L1D_ALL_CACHE_REF", IAP_EVENT_43H_02H) \
1230__PMC_EV_ALIAS("L1D_ALL_REF", IAP_EVENT_43H_01H) \
1231__PMC_EV_ALIAS("L1D_CACHE_LD", IAP_EVENT_40H) \
1232__PMC_EV_ALIAS("L1D_CACHE_LOCK", IAP_EVENT_42H) \
1233__PMC_EV_ALIAS("L1D_CACHE_LOCK_DURATION", IAP_EVENT_42H_10H) \
1234__PMC_EV_ALIAS("L1D_CACHE_ST", IAP_EVENT_41H) \
1235__PMC_EV_ALIAS("L1D_M_EVICT", IAP_EVENT_47H_00H) \
1236__PMC_EV_ALIAS("L1D_M_REPL", IAP_EVENT_46H_00H) \
1237__PMC_EV_ALIAS("L1D_PEND_MISS", IAP_EVENT_48H_00H) \
1238__PMC_EV_ALIAS("L1D_PREFETCH.REQUESTS", IAP_EVENT_4EH_10H) \
1239__PMC_EV_ALIAS("L1D_REPL", IAP_EVENT_45H_0FH) \
1240__PMC_EV_ALIAS("L1D_SPLIT.LOADS", IAP_EVENT_49H_01H) \
1241__PMC_EV_ALIAS("L1D_SPLIT.STORES", IAP_EVENT_49H_02H) \
1242__PMC_EV_ALIAS("L1I_MISSES", IAP_EVENT_81H_00H) \
1243__PMC_EV_ALIAS("L1I_READS", IAP_EVENT_80H_00H) \
1244__PMC_EV_ALIAS("L2_ADS", IAP_EVENT_21H) \
1245__PMC_EV_ALIAS("L2_DBUS_BUSY_RD", IAP_EVENT_23H) \
1246__PMC_EV_ALIAS("L2_IFETCH", IAP_EVENT_28H) \
1247__PMC_EV_ALIAS("L2_LD", IAP_EVENT_29H) \
1248__PMC_EV_ALIAS("L2_LINES_IN", IAP_EVENT_24H) \
1249__PMC_EV_ALIAS("L2_LINES_OUT", IAP_EVENT_26H) \
1250__PMC_EV_ALIAS("L2_LOCK", IAP_EVENT_2BH) \
1251__PMC_EV_ALIAS("L2_M_LINES_IN", IAP_EVENT_25H) \
1252__PMC_EV_ALIAS("L2_M_LINES_OUT", IAP_EVENT_27H) \
1253__PMC_EV_ALIAS("L2_NO_REQ", IAP_EVENT_32H) \
1254__PMC_EV_ALIAS("L2_REJECT_BUSQ", IAP_EVENT_30H) \
1255__PMC_EV_ALIAS("L2_RQSTS", IAP_EVENT_2EH) \
1256__PMC_EV_ALIAS("L2_RQSTS.SELF.DEMAND.I_STATE", \
1257 IAP_EVENT_2EH_41H) \
1258__PMC_EV_ALIAS("L2_RQSTS.SELF.DEMAND.MESI", \
1259 IAP_EVENT_2EH_4FH) \
1260__PMC_EV_ALIAS("L2_ST", IAP_EVENT_2AH) \
1261__PMC_EV_ALIAS("LOAD_BLOCK.L1D", IAP_EVENT_03H_20H) \
1262__PMC_EV_ALIAS("LOAD_BLOCK.OVERLAP_STORE", \
1263 IAP_EVENT_03H_08H) \
1264__PMC_EV_ALIAS("LOAD_BLOCK.STA", IAP_EVENT_03H_02H) \
1265__PMC_EV_ALIAS("LOAD_BLOCK.STD", IAP_EVENT_03H_04H) \
1266__PMC_EV_ALIAS("LOAD_BLOCK.UNTIL_RETIRE", IAP_EVENT_03H_10H) \
1267__PMC_EV_ALIAS("LOAD_HIT_PRE", IAP_EVENT_4CH_00H) \
1268__PMC_EV_ALIAS("MACHINE_NUKES.MEM_ORDER", IAP_EVENT_C3H_04H) \
1269__PMC_EV_ALIAS("MACHINE_NUKES.SMC", IAP_EVENT_C3H_01H) \
1270__PMC_EV_ALIAS("MACRO_INSTS.CISC_DECODED", IAP_EVENT_AAH_08H) \
1271__PMC_EV_ALIAS("MACRO_INSTS.DECODED", IAP_EVENT_AAH_01H) \
1272__PMC_EV_ALIAS("MEMORY_DISAMBIGUATION.RESET", \
1273 IAP_EVENT_09H_01H) \
1274__PMC_EV_ALIAS("MEMORY_DISAMBIGUATION.SUCCESS", \
1275 IAP_EVENT_09H_02H) \
1276__PMC_EV_ALIAS("MEM_LOAD_RETIRED.DTLB_MISS", \
1277 IAP_EVENT_CBH_10H) \
1278__PMC_EV_ALIAS("MEM_LOAD_RETIRED.L1D_LINE_MISS", \
1279 IAP_EVENT_CBH_02H) \
1280__PMC_EV_ALIAS("MEM_LOAD_RETIRED.L1D_MISS", \
1281 IAP_EVENT_CBH_01H) \
1282__PMC_EV_ALIAS("MEM_LOAD_RETIRED.L2_LINE_MISS", \
1283 IAP_EVENT_CBH_08H) \
1284__PMC_EV_ALIAS("MEM_LOAD_RETIRED.L2_MISS", \
1285 IAP_EVENT_CBH_04H) \
1286__PMC_EV_ALIAS("MUL", IAP_EVENT_12H_00H) \
1287__PMC_EV_ALIAS("PAGE_WALKS.COUNT", IAP_EVENT_0CH_01H) \
1288__PMC_EV_ALIAS("PAGE_WALKS.CYCLES", IAP_EVENT_0CH_02H) \
1289__PMC_EV_ALIAS("PREF_RQSTS_DN", IAP_EVENT_F8H_00H) \
1290__PMC_EV_ALIAS("PREF_RQSTS_UP", IAP_EVENT_F0H_00H) \
1291__PMC_EV_ALIAS("RAT_STALLS.ANY", IAP_EVENT_D2H_0FH) \
1292__PMC_EV_ALIAS("RAT_STALLS.FLAGS", IAP_EVENT_D2H_04H) \
1293__PMC_EV_ALIAS("RAT_STALLS.FPSW", IAP_EVENT_D2H_08H) \
1294__PMC_EV_ALIAS("RAT_STALLS.OTHER_SERIALIZATION_STALLS", \
1295 IAP_EVENT_D2H_10H) \
1296__PMC_EV_ALIAS("RAT_STALLS.PARTIAL_CYCLES", \
1297 IAP_EVENT_D2H_02H) \
1298__PMC_EV_ALIAS("RAT_STALLS.ROB_READ_PORT", \
1299 IAP_EVENT_D2H_01H) \
1300__PMC_EV_ALIAS("RESOURCE_STALLS.ANY", IAP_EVENT_DCH_1FH) \
1301__PMC_EV_ALIAS("RESOURCE_STALLS.BR_MISS_CLEAR", \
1302 IAP_EVENT_DCH_10H) \
1303__PMC_EV_ALIAS("RESOURCE_STALLS.FPCW", IAP_EVENT_DCH_08H) \
1304__PMC_EV_ALIAS("RESOURCE_STALLS.LD_ST", IAP_EVENT_DCH_04H) \
1305__PMC_EV_ALIAS("RESOURCE_STALLS.ROB_FULL", \
1306 IAP_EVENT_DCH_01H) \
1307__PMC_EV_ALIAS("RESOURCE_STALLS.RS_FULL", IAP_EVENT_DCH_02H) \
1308__PMC_EV_ALIAS("RS_UOPS_DISPATCHED", IAP_EVENT_A0H_00H) \
1309__PMC_EV_ALIAS("RS_UOPS_DISPATCHED.PORT0", IAP_EVENT_A1H_01H) \
1310__PMC_EV_ALIAS("RS_UOPS_DISPATCHED.PORT1", IAP_EVENT_A1H_02H) \
1311__PMC_EV_ALIAS("RS_UOPS_DISPATCHED.PORT2", IAP_EVENT_A1H_04H) \
1312__PMC_EV_ALIAS("RS_UOPS_DISPATCHED.PORT3", IAP_EVENT_A1H_08H) \
1313__PMC_EV_ALIAS("RS_UOPS_DISPATCHED.PORT4", IAP_EVENT_A1H_10H) \
1314__PMC_EV_ALIAS("RS_UOPS_DISPATCHED.PORT5", IAP_EVENT_A1H_20H) \
1315__PMC_EV_ALIAS("SB_DRAIN_CYCLES", IAP_EVENT_04H_01H) \
1316__PMC_EV_ALIAS("SEGMENT_REG_LOADS", IAP_EVENT_06H_00H) \
1317__PMC_EV_ALIAS("SEG_REG_RENAMES.ANY", IAP_EVENT_D5H_0FH) \
1318__PMC_EV_ALIAS("SEG_REG_RENAMES.DS", IAP_EVENT_D5H_02H) \
1319__PMC_EV_ALIAS("SEG_REG_RENAMES.ES", IAP_EVENT_D5H_01H) \
1320__PMC_EV_ALIAS("SEG_REG_RENAMES.FS", IAP_EVENT_D5H_04H) \
1321__PMC_EV_ALIAS("SEG_REG_RENAMES.GS", IAP_EVENT_D5H_08H) \
1322__PMC_EV_ALIAS("SEG_RENAME_STALLS.ANY", IAP_EVENT_D4H_0FH) \
1323__PMC_EV_ALIAS("SEG_RENAME_STALLS.DS", IAP_EVENT_D4H_02H) \
1324__PMC_EV_ALIAS("SEG_RENAME_STALLS.ES", IAP_EVENT_D4H_01H) \
1325__PMC_EV_ALIAS("SEG_RENAME_STALLS.FS", IAP_EVENT_D4H_04H) \
1326__PMC_EV_ALIAS("SEG_RENAME_STALLS.GS", IAP_EVENT_D4H_08H) \
1327__PMC_EV_ALIAS("SIMD_ASSIST", IAP_EVENT_CDH_00H) \
1328__PMC_EV_ALIAS("SIMD_COMP_INST_RETIRED.PACKED_DOUBLE", \
1329 IAP_EVENT_CAH_04H) \
1330__PMC_EV_ALIAS("SIMD_COMP_INST_RETIRED.PACKED_SINGLE", \
1331 IAP_EVENT_CAH_01H) \
1332__PMC_EV_ALIAS("SIMD_COMP_INST_RETIRED.SCALAR_DOUBLE", \
1333 IAP_EVENT_CAH_08H) \
1334__PMC_EV_ALIAS("SIMD_COMP_INST_RETIRED.SCALAR_SINGLE", \
1335 IAP_EVENT_CAH_02H) \
1336__PMC_EV_ALIAS("SIMD_INSTR_RETIRED", IAP_EVENT_CEH_00H) \
1337__PMC_EV_ALIAS("SIMD_INST_RETIRED.ANY", IAP_EVENT_C7H_1FH) \
1338__PMC_EV_ALIAS("SIMD_INST_RETIRED.PACKED_DOUBLE", \
1339 IAP_EVENT_C7H_04H) \
1340__PMC_EV_ALIAS("SIMD_INST_RETIRED.PACKED_SINGLE", \
1341 IAP_EVENT_C7H_01H) \
1342__PMC_EV_ALIAS("SIMD_INST_RETIRED.SCALAR_DOUBLE", \
1343 IAP_EVENT_C7H_08H) \
1344__PMC_EV_ALIAS("SIMD_INST_RETIRED.SCALAR_SINGLE", \
1345 IAP_EVENT_C7H_02H) \
1346__PMC_EV_ALIAS("SIMD_INST_RETIRED.VECTOR", IAP_EVENT_C7H_10H) \
1347__PMC_EV_ALIAS("SIMD_SAT_INSTR_RETIRED", IAP_EVENT_CFH_00H) \
1348__PMC_EV_ALIAS("SIMD_SAT_UOP_EXEC", IAP_EVENT_B1H_00H) \
1349__PMC_EV_ALIAS("SIMD_UOPS_EXEC", IAP_EVENT_B0H_00H) \
1350__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.ARITHMETIC", IAP_EVENT_B3H_20H) \
1351__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.LOGICAL", IAP_EVENT_B3H_10H) \
1352__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.MUL", IAP_EVENT_B3H_01H) \
1353__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.PACK", IAP_EVENT_B3H_04H) \
1354__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.SHIFT", IAP_EVENT_B3H_02H) \
1355__PMC_EV_ALIAS("SIMD_UOP_TYPE_EXEC.UNPACK", IAP_EVENT_B3H_08H) \
1356__PMC_EV_ALIAS("SNOOP_STALL_DRV", IAP_EVENT_7EH) \
1357__PMC_EV_ALIAS("SSE_PRE_EXEC.L1", IAP_EVENT_07H_01H) \
1358__PMC_EV_ALIAS("SSE_PRE_EXEC.L2", IAP_EVENT_07H_02H) \
1359__PMC_EV_ALIAS("SSE_PRE_EXEC.NTA", IAP_EVENT_07H_00H) \
1360__PMC_EV_ALIAS("SSE_PRE_EXEC.STORES", IAP_EVENT_07H_03H) \
1361__PMC_EV_ALIAS("SSE_PRE_MISS.L1", IAP_EVENT_4BH_01H) \
1362__PMC_EV_ALIAS("SSE_PRE_MISS.L2", IAP_EVENT_4BH_02H) \
1363__PMC_EV_ALIAS("SSE_PRE_MISS.NTA", IAP_EVENT_4BH_00H) \
1364__PMC_EV_ALIAS("STORE_BLOCK.ORDER", IAP_EVENT_04H_02H) \
1365__PMC_EV_ALIAS("STORE_BLOCK.SNOOP", IAP_EVENT_04H_08H) \
1366__PMC_EV_ALIAS("THERMAL_TRIP", IAP_EVENT_3BH_C0H) \
1367__PMC_EV_ALIAS("UOPS_RETIRED.ANY", IAP_EVENT_C2H_0FH) \
1368__PMC_EV_ALIAS("UOPS_RETIRED.FUSED", IAP_EVENT_C2H_07H) \
1369__PMC_EV_ALIAS("UOPS_RETIRED.LD_IND_BR", IAP_EVENT_C2H_01H) \
1370__PMC_EV_ALIAS("UOPS_RETIRED.MACRO_FUSION", IAP_EVENT_C2H_04H) \
1371__PMC_EV_ALIAS("UOPS_RETIRED.NON_FUSED", IAP_EVENT_C2H_08H) \
1372__PMC_EV_ALIAS("UOPS_RETIRED.STD_STA", IAP_EVENT_C2H_02H) \
1373__PMC_EV_ALIAS("X87_OPS_RETIRED.ANY", IAP_EVENT_C1H_FEH) \
1374__PMC_EV_ALIAS("X87_OPS_RETIRED.FXCH", IAP_EVENT_C1H_01H)
1375
418/* timestamp counters. */
419#define __PMC_EV_TSC() \
420 __PMC_EV(TSC, TSC)
421
422#define PMC_EV_TSC_FIRST PMC_EV_TSC_TSC
423#define PMC_EV_TSC_LAST PMC_EV_TSC_TSC
424
425/*

--- 39 unchanged lines hidden ---
1376/* timestamp counters. */
1377#define __PMC_EV_TSC() \
1378 __PMC_EV(TSC, TSC)
1379
1380#define PMC_EV_TSC_FIRST PMC_EV_TSC_TSC
1381#define PMC_EV_TSC_LAST PMC_EV_TSC_TSC
1382
1383/*

--- 39 unchanged lines hidden ---