Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/usr.sbin/tprof/arch Inline the values in amd_f10h_names[], w...



details:   https://anonhg.NetBSD.org/src/rev/8a72b2beef84
branches:  trunk
changeset: 320587:8a72b2beef84
user:      maxv <maxv%NetBSD.org@localhost>
date:      Fri Jul 13 08:09:21 2018 +0000

description:
Inline the values in amd_f10h_names[], we're not going to use defines for
each CPU model found in the wild.

diffstat:

 usr.sbin/tprof/arch/tprof_x86.c |  141 +++++++++++++++++++--------------------
 1 files changed, 70 insertions(+), 71 deletions(-)

diffs (156 lines):

diff -r 3ea8f1e18b0e -r 8a72b2beef84 usr.sbin/tprof/arch/tprof_x86.c
--- a/usr.sbin/tprof/arch/tprof_x86.c   Fri Jul 13 07:56:29 2018 +0000
+++ b/usr.sbin/tprof/arch/tprof_x86.c   Fri Jul 13 08:09:21 2018 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: tprof_x86.c,v 1.1 2018/07/13 07:56:29 maxv Exp $       */
+/*     $NetBSD: tprof_x86.c,v 1.2 2018/07/13 08:09:21 maxv Exp $       */
 
 /*
  * Copyright (c) 2018 The NetBSD Foundation, Inc.
@@ -180,77 +180,76 @@
  * AMD Family 10h
  */
 static struct name_to_event amd_f10h_names[] = {
-       { "seg-load-all",               F10H_SEGMENT_REG_LOADS,         0x7f, true },
-       { "seg-load-es",                F10H_SEGMENT_REG_LOADS,         0x01, true },
-       { "seg-load-cs",                F10H_SEGMENT_REG_LOADS,         0x02, true },
-       { "seg-load-ss",                F10H_SEGMENT_REG_LOADS,         0x04, true },
-       { "seg-load-ds",                F10H_SEGMENT_REG_LOADS,         0x08, true },
-       { "seg-load-fs",                F10H_SEGMENT_REG_LOADS,         0x10, true },
-       { "seg-load-gs",                F10H_SEGMENT_REG_LOADS,         0x20, true },
-       { "seg-load-hs",                F10H_SEGMENT_REG_LOADS,         0x40, true },
-       { "l1cache-access",             F10H_DATA_CACHE_ACCESS,         0, true },
-       { "l1cache-miss",               F10H_DATA_CACHE_MISS,           0, true },
-       { "l1cache-refill",             F10H_DATA_CACHE_REFILL_FROM_L2, 0x1f, true },
-       { "l1cache-refill-invalid",     F10H_DATA_CACHE_REFILL_FROM_L2, 0x01, true },
-       { "l1cache-refill-shared",      F10H_DATA_CACHE_REFILL_FROM_L2, 0x02, true },
-       { "l1cache-refill-exclusive",   F10H_DATA_CACHE_REFILL_FROM_L2, 0x04, true },
-       { "l1cache-refill-owner",       F10H_DATA_CACHE_REFILL_FROM_L2, 0x08, true },
-       { "l1cache-refill-modified",    F10H_DATA_CACHE_REFILL_FROM_L2, 0x10, true },
-       { "l1cache-load",               F10H_DATA_CACHE_REFILL_FROM_NORTHBRIDGE,0x1f, true },
-       { "l1cache-load-invalid",       F10H_DATA_CACHE_REFILL_FROM_NORTHBRIDGE,0x01, true },
-       { "l1cache-load-shared",        F10H_DATA_CACHE_REFILL_FROM_NORTHBRIDGE,0x02, true },
-       { "l1cache-load-exclusive",     F10H_DATA_CACHE_REFILL_FROM_NORTHBRIDGE,0x04, true },
-       { "l1cache-load-owner",         F10H_DATA_CACHE_REFILL_FROM_NORTHBRIDGE,0x08, true },
-       { "l1cache-load-modified",      F10H_DATA_CACHE_REFILL_FROM_NORTHBRIDGE,0x10, true },
-       { "l1cache-writeback",          F10H_CACHE_LINES_EVICTED,       0x1f, true },
-       { "l1cache-writeback-invalid",  F10H_CACHE_LINES_EVICTED,       0x01, true },
-       { "l1cache-writeback-shared",   F10H_CACHE_LINES_EVICTED,       0x02, true },
-       { "l1cache-writeback-exclusive",F10H_CACHE_LINES_EVICTED,       0x04, true },
-       { "l1cache-writeback-owner",    F10H_CACHE_LINES_EVICTED,       0x08, true },
-       { "l1cache-writeback-modified", F10H_CACHE_LINES_EVICTED,       0x10, true },
-       { "l1DTLB-hit-all",             F10H_L1_DTLB_HIT,               0x07, true },
-       { "l1DTLB-hit-4Kpage",          F10H_L1_DTLB_HIT,               0x01, true },
-       { "l1DTLB-hit-2Mpage",          F10H_L1_DTLB_HIT,               0x02, true },
-       { "l1DTLB-hit-1Gpage",          F10H_L1_DTLB_HIT,               0x04, true },
-       { "l1DTLB-miss-all",            F10H_L1_DTLB_MISS,              0x07, true },
-       { "l1DTLB-miss-4Kpage",         F10H_L1_DTLB_MISS,              0x01, true },
-       { "l1DTLB-miss-2Mpage",         F10H_L1_DTLB_MISS,              0x02, true },
-       { "l1DTLB-miss-1Gpage",         F10H_L1_DTLB_MISS,              0x04, true },
-       { "l2DTLB-miss-all",            F10H_L2_DTLB_MISS,              0x03, true },
-       { "l2DTLB-miss-4Kpage",         F10H_L2_DTLB_MISS,              0x01, true },
-       { "l2DTLB-miss-2Mpage",         F10H_L2_DTLB_MISS,              0x02, true },
+       { "seg-load-all",               0x20, 0x7f, true },
+       { "seg-load-es",                0x20, 0x01, true },
+       { "seg-load-cs",                0x20, 0x02, true },
+       { "seg-load-ss",                0x20, 0x04, true },
+       { "seg-load-ds",                0x20, 0x08, true },
+       { "seg-load-fs",                0x20, 0x10, true },
+       { "seg-load-gs",                0x20, 0x20, true },
+       { "seg-load-hs",                0x20, 0x40, true },
+       { "l1cache-access",             0x40, 0x00, true },
+       { "l1cache-miss",               0x41, 0x00, true },
+       { "l1cache-refill",             0x42, 0x1f, true },
+       { "l1cache-refill-invalid",     0x42, 0x01, true },
+       { "l1cache-refill-shared",      0x42, 0x02, true },
+       { "l1cache-refill-exclusive",   0x42, 0x04, true },
+       { "l1cache-refill-owner",       0x42, 0x08, true },
+       { "l1cache-refill-modified",    0x42, 0x10, true },
+       { "l1cache-load",               0x43, 0x1f, true },
+       { "l1cache-load-invalid",       0x43, 0x01, true },
+       { "l1cache-load-shared",        0x43, 0x02, true },
+       { "l1cache-load-exclusive",     0x43, 0x04, true },
+       { "l1cache-load-owner",         0x43, 0x08, true },
+       { "l1cache-load-modified",      0x43, 0x10, true },
+       { "l1cache-writeback",          0x44, 0x1f, true },
+       { "l1cache-writeback-invalid",  0x44, 0x01, true },
+       { "l1cache-writeback-shared",   0x44, 0x02, true },
+       { "l1cache-writeback-exclusive",0x44, 0x04, true },
+       { "l1cache-writeback-owner",    0x44, 0x08, true },
+       { "l1cache-writeback-modified", 0x44, 0x10, true },
+       { "l1DTLB-hit-all",             0x4D, 0x07, true },
+       { "l1DTLB-hit-4Kpage",          0x4D, 0x01, true },
+       { "l1DTLB-hit-2Mpage",          0x4D, 0x02, true },
+       { "l1DTLB-hit-1Gpage",          0x4D, 0x04, true },
+       { "l1DTLB-miss-all",            0x45, 0x07, true },
+       { "l1DTLB-miss-4Kpage",         0x45, 0x01, true },
+       { "l1DTLB-miss-2Mpage",         0x45, 0x02, true },
+       { "l1DTLB-miss-1Gpage",         0x45, 0x04, true },
+       { "l2DTLB-miss-all",            0x46, 0x03, true },
+       { "l2DTLB-miss-4Kpage",         0x46, 0x01, true },
+       { "l2DTLB-miss-2Mpage",         0x46, 0x02, true },
        /* l2DTLB-miss-1Gpage: reserved on some revisions, so disabled */
-       { "l1ITLB-miss",                F10H_L1_ITLB_MISS,              0, true },
-       { "l2ITLB-miss-all",            F10H_L2_ITLB_MISS,              0x03, true },
-       { "l2ITLB-miss-4Kpage",         F10H_L2_ITLB_MISS,              0x01, true },
-       { "l2ITLB-miss-2Mpage",         F10H_L2_ITLB_MISS,              0x02, true },
-       { "mem-misalign-ref",           F10H_MISALIGNED_ACCESS,         0, true },
-       { "ins-fetch",                  F10H_INSTRUCTION_CACHE_FETCH,   0, true },
-       { "ins-fetch-miss",             F10H_INSTRUCTION_CACHE_MISS,    0, true },
-       { "ins-refill-l2",              F10H_INSTRUCTION_CACHE_REFILL_FROM_L2,  0, true },
-       { "ins-refill-sys",             F10H_INSTRUCTION_CACHE_REFILL_FROM_SYS, 0, true },
-       { "ins-fetch-stall",            F10H_INSTRUCTION_FETCH_STALL,   0, true },
-       { "ins-retired",                F10H_RETIRED_INSTRUCTIONS,      0, true },
-       { "ins-empty",                  F10H_DECODER_EMPTY,     0, true },
-       { "ops-retired",                F10H_RETIRED_UOPS,              0, true },
-       { "branch-retired",             F10H_RETIRED_BRANCH,            0, true },
-       { "branch-miss-retired",        F10H_RETIRED_MISPREDICTED_BRANCH,0, true },
-       { "branch-taken-retired",       F10H_RETIRED_TAKEN_BRANCH,      0, true },
-       { "branch-taken-miss-retired",  F10H_RETIRED_TAKEN_BRANCH_MISPREDICTED, 0, true },
-       { "branch-far-retired",         F10H_RETIRED_FAR_CONTROL_TRANSFER, 0, true },
-       { "branch-resync-retired",      F10H_RETIRED_BRANCH_RESYNC,     0, true },
-       { "branch-near-retired",        F10H_RETIRED_NEAR_RETURNS,      0, true },
-       { "branch-near-miss-retired",   F10H_RETIRED_NEAR_RETURNS_MISPREDICTED, 0, true },
-       { "branch-indirect-miss-retired", F10H_RETIRED_INDIRECT_BRANCH_MISPREDICTED,    0, true },
-       { "int-hw",                     F10H_INTERRUPTS_TAKEN,          0, true },
-       { "int-cycles-masked",          F10H_INTERRUPTS_MASKED_CYCLES,  0, true },
-       { "int-cycles-masked-pending",
-           F10H_INTERRUPTS_MASKED_CYCLES_INTERRUPT_PENDING, 0, true },
-       { "fpu-exceptions",             F10H_FPU_EXCEPTIONS, 0, true },
-       { "break-match0",               F10H_DR0_BREAKPOINT_MATCHES,    0, true },
-       { "break-match1",               F10H_DR1_BREAKPOINT_MATCHES,    0, true },
-       { "break-match2",               F10H_DR2_BREAKPOINT_MATCHES,    0, true },
-       { "break-match3",               F10H_DR3_BREAKPOINT_MATCHES,    0, true },
+       { "l1ITLB-miss",                0x84, 0x00, true },
+       { "l2ITLB-miss-all",            0x85, 0x03, true },
+       { "l2ITLB-miss-4Kpage",         0x85, 0x01, true },
+       { "l2ITLB-miss-2Mpage",         0x85, 0x02, true },
+       { "mem-misalign-ref",           0x47, 0x00, true },
+       { "ins-fetch",                  0x80, 0x00, true },
+       { "ins-fetch-miss",             0x81, 0x00, true },
+       { "ins-refill-l2",              0x82, 0x00, true },
+       { "ins-refill-sys",             0x83, 0x00, true },
+       { "ins-fetch-stall",            0x87, 0x00, true },
+       { "ins-retired",                0xC0, 0x00, true },
+       { "ins-empty",                  0xD0, 0x00, true },
+       { "ops-retired",                0xC1, 0x00, true },
+       { "branch-retired",             0xC2, 0x00, true },
+       { "branch-miss-retired",        0xC3, 0x00, true },
+       { "branch-taken-retired",       0xC4, 0x00, true },
+       { "branch-taken-miss-retired",  0xC5, 0x00, true },
+       { "branch-far-retired",         0xC6, 0x00, true },
+       { "branch-resync-retired",      0xC7, 0x00, true },
+       { "branch-near-retired",        0xC8, 0x00, true },
+       { "branch-near-miss-retired",   0xC9, 0x00, true },
+       { "branch-indirect-miss-retired", 0xCA, 0x00, true },
+       { "int-hw",                     0xCF, 0x00, true },
+       { "int-cycles-masked",          0xCD, 0x00, true },
+       { "int-cycles-masked-pending",  0xCE, 0x00, true },
+       { "fpu-exceptions",             0xDB, 0x00, true },
+       { "break-match0",               0xDC, 0x00, true },
+       { "break-match1",               0xDD, 0x00, true },
+       { "break-match2",               0xDE, 0x00, true },
+       { "break-match3",               0xDF, 0x00, true },
 };
 
 static struct event_table amd_f10h = {



Home | Main Index | Thread Index | Old Index