lkml.org 
[lkml]   [2016]   [Dec]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    Subject[GIT PULL] perf changes for v4.10
    Linus,

    Please pull the latest perf-core-for-linus git tree from:

    git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git perf-core-for-linus

    # HEAD: b0c1ef52959582144bbea9a2b37db7f4c9e399f7 perf/x86: Fix exclusion of BTS and LBR for Goldmont

    This tree is pretty big and almost exclusively includes tooling changes, because
    v4.9's LTS status forced to completion most of the pending kernel side hardware
    enablement work and because we tried to freeze core perf work a bit to give a time
    window for the fuzzing efforts.

    The tree has a large size mostly due to the JSON hardware event tables added for
    Intel and Power8 CPUs. This was a popular feature request from people working
    close to hardware and from the HPC community.

    Tree size is big because this added the CPU event tables for over a decade of
    Intel CPUs. Future changes for a CPU vendor alrady support should be much smaller,
    as events for new models are added. The new events are listed in 'perf list', for
    the CPU model the tool is running on. If you find an interesting event it can be
    used as-is:

    triton:~> perf stat -a -e l2_lines_out.pf_clean sleep 1

    Performance counter stats for 'system wide':

    7,860,403 l2_lines_out.pf_clean

    1.000624918 seconds time elapsed

    The event lists can be searched the usual 'perf list' fashion for (case
    insensitive) substrings as well:

    triton:~> perf list l2_lines_out

    List of pre-defined events (to be used in -e):

    cache:
    l2_lines_out.demand_clean
    [Clean L2 cache lines evicted by demand]
    l2_lines_out.demand_dirty
    [Dirty L2 cache lines evicted by demand]
    l2_lines_out.dirty_all
    [Dirty L2 cache lines filling the L2]
    l2_lines_out.pf_clean
    [Clean L2 cache lines evicted by L2 prefetch]
    l2_lines_out.pf_dirty
    [Dirty L2 cache lines evicted by L2 prefetch]

    etc.

    There's a few high level categories as well that can be listed: 'cache', 'floating
    point', 'frontend', 'memory', 'pipeline', 'virtual memory'.

    Existing generic events and workflows should work as-is.

    The only kernel side change is a late breaking fix for an older regression,
    related to Intel BTS, LBR and PT feature interaction.

    On the tooling side there are three new tools / major features:

    - The new 'perf c2c' tool provides means for Shared Data C2C/HITM analysis.

    It allows you to track down cacheline contention. The tool is based
    on x86's load latency and precise store facility events provided by
    Intel CPUs.

    It was tested by Joe Mario and has proven to be useful, finding some
    cacheline contentions. Joe also wrote a blog about c2c tool with
    examples:

    https://joemario.github.io/blog/2016/09/01/c2c-blog/

    Excerpt of the content on this site:

    ---
    At a high level, “perf c2c” will show you:

    * The cachelines where false sharing was detected.
    * The readers and writers to those cachelines, and the offsets where those accesses occurred.
    * The pid, tid, instruction addr, function name, binary object name for those readers and writers.
    * The source file and line number for each reader and writer.
    * The average load latency for the loads to those cachelines.
    * Which numa nodes the samples a cacheline came from and which CPUs were involved.

    Using perf c2c is similar to using the Linux perf tool today.
    First collect data with “perf c2c record” Then generate a report output with “perf c2c report”
    ---

    There one finds extensive details on using the tool, with tips on
    reducing the volume of samples while still capturing enough to do
    its job. (Dick Fowles, Joe Mario, Don Zickus, Jiri Olsa)

    - The new 'perf sched timehist' tool provides tailored analysis of scheduling
    events.

    Example usage:
    perf sched record -- sleep 1
    perf sched timehist

    By default it shows the individual schedule events, including the wait
    time (time between sched-out and next sched-in events for the task), the
    task scheduling delay (time between wakeup and actually running) and run
    time for the task:

    time cpu task name wait time sch delay run time
    [tid/pid] (msec) (msec) (msec)
    -------- ------ ---------------- --------- --------- --------
    1.874569 [0011] gcc[31949] 0.014 0.000 1.148
    1.874591 [0010] gcc[31951] 0.000 0.000 0.024
    1.874603 [0010] migration/10[59] 3.350 0.004 0.011
    1.874604 [0011] <idle> 1.148 0.000 0.035
    1.874723 [0005] <idle> 0.016 0.000 1.383
    1.874746 [0005] gcc[31949] 0.153 0.078 0.022
    ...

    Times are in msec.usec. (David Ahern, Namhyung Kim)

    - Add CPU vendor hardware event tables:

    Add JSON files with vendor event naming for Intel and Power8 processors,
    allowing users of tools like oprofile to keep using the event names they
    are used to, as well as people reading vendor documentation, where such
    naming is used. (Andi Kleen, Sukadev Bhattiprolu)

    You should see all the new events with 'perf list' and you should be able to
    search them, for example 'perf list miss' will list all the myriads of miss
    events.

    Other tooling features added were:

    - Cross-arch annotation support:

    - Improve ARM support in the annotation code, affecting 'perf annotate', 'perf
    report' and live annotation in 'perf top' (Kim Phillips)

    - Initial support for PowerPC in the annotation code (Ravi Bangoria)

    - Support AArch64 in the 'annotate' code, native/local and
    cross-arch/remote (Kim Phillips)

    - Allow considering just events in a given time interval, via the
    '--time start.s.ms,end.s.ms' command line, added to 'perf kmem',
    'perf report', 'perf sched timehist' and 'perf script' (David Ahern)

    - Add option to stop printing a callchain at one of a given group of
    symbol names (David Ahern)

    - Track memory freed in 'perf kmem stat' (David Ahern)

    - Allow querying and setting .perfconfig variables (Taeung Song)

    - Show branch information in callchains (predicted, TSX aborts, loop
    iteractions, etc) (Jin Yao)

    - Dynamicly change verbosity level by pressing 'V' in the 'perf top/report'
    hists TUI browser (Alexis Berlemont)

    - Implement 'perf trace --delay' in the same fashion as in 'perf record --delay',
    to skip sampling workload initialization events (Alexis Berlemont)

    - Make vendor named events case insensitive in 'perf list', i.e.
    'perf list LONGEST_LAT' works just the same as 'perf list longest_lat' (Andi Kleen)

    - Add unwinding support for jitdump (Stefano Sanfilippo)

    Tooling infrastructure changes:

    - Support linking perf with clang and LLVM libraries, initially statically, but
    this limitation will be lifted and shared libraries, when available, will
    be preferred to the static build, that should, as with other features, be
    enabled explicitly (Wang Nan)

    - Add initial support (and perf test entry) for tooling hooks, starting with
    'record_start' and 'record_end', that will have as its initial user the
    eBPF infrastructure, where perf_ prefixed functions will be JITed and
    run when such hooks are called (Wang Nan)

    - Implement assorted libbpf improvements (Wang Nan)

    ... and lots of other changes, features, cleanups and refactorings I did not list,
    see the shortlog and the git log for details.

    Thanks,

    Ingo

    ------------------>
    Adrian Hunter (1):
    perf intel-pt/bts: Tidy instruction buffer size usage

    Alexander Alemayhu (1):
    perf tools: Fix typo "No enough" to "Not enough"

    Alexis Berlemont (2):
    perf hists browser: Dynamically change verbosity level
    perf trace: Implement --delay

    Andi Kleen (27):
    perf vendor events: Add BroadwellDE V5 event file
    perf vendor events: Add Broadwell V17 event file
    perf vendor events: Add BroadwellX V10 event file
    perf vendor events: Add Bonnell V4 event file
    perf vendor events: Add Goldmont V8 event file
    perf vendor events: Add Haswell V24 event file
    perf vendor events: Add HaswellX V17 event file
    perf vendor events: Add IvyBridge V18 event file
    perf vendor events: Add IvyTown V19 event file
    perf vendor events: Add Jaketown V20 event file
    perf vendor events: Add KnightsLanding V9 event file
    perf vendor events: Add NehalemEP V2 event file
    perf vendor events: Add NehalemEX V2 event file
    perf vendor events: Add Skylake V24 event file
    perf vendor events: Add Silvermont V13 event file
    perf vendor events: Add SandyBridge V15 event file
    perf vendor events: Add WestmereEP-DP V2 event file
    perf vendor events: Add WestmereEP-SP V2 event file
    perf vendor events: Add WestmereEX V2 event file
    perf intel-pt/bts: Report instruction bytes and length in sample
    perf script: Support insn and insnlen
    perf record: Improve documentation of event parameters
    perf tools: Implement branch_type event parameter
    perf pmu: Only print Using CPUID message once
    perf list: Make vendor event matching case insensitive
    perf list: Support matching by topic
    perf/x86: Fix exclusion of BTS and LBR for Goldmont

    Arnaldo Carvalho de Melo (25):
    perf tools: Sync copy of x86's syscall table
    perf jit: Avoid returning garbage for a ret variable
    perf jit: Add NT_GNU_BUILD_ID definition for older distros
    perf bench mem: Move boilerplate memory allocation to the infrastructure
    perf tools: Normalize sq_quote_argv() error reporting
    perf tools: Use normal error reporting when processing PERF_RECORD_READ events
    perf trace: Remove thread_trace->exit_time
    perf trace: Use the syscall raw_syscalls:sys_enter timestamp
    perf bench mem: Ignore export.h related changes to mem{cpy,set}.S
    tools: Update asm-generic/mman-common.h copy from the kernel
    perf tools: Update x86's syscall_64.tbl, adding pkey_(alloc,free,mprotect)
    perf scripting: Avoid leaking the scripting_context variable
    perf scripting: Don't die if scripting can't be setup, disable it
    perf tools: Add missing object file to the python binding linkage list
    perf intel-pt: Update documentation about context switch events
    perf annotate: Start supporting cross arch annotation
    perf annotate: Allow arches to specify functions to skip
    perf annotate: Add per arch instructions annotate handlers
    perf annotate: Remove duplicate 'name' field from disasm_line
    perf annotate: Introduce alternative method of keeping instructions table
    perf annotate: Allow arches to have a init routine and a priv area
    perf annotate: Improve support for ARM
    perf ui helpline: Provide a printf variant
    perf annotate: Show invalid jump offset in error message
    perf test: Remove "test" and similar strings from test descriptions

    David Ahern (16):
    perf sched timehist: Introduce timehist command
    perf sched timehist: Add summary options
    perf sched timehist: Add -w/--wakeups option
    perf sched timehist: Add call graph options
    perf sched timehist: Add -V/--cpu-visual option
    perf sched timehist: Handle cpu migration events
    perf trace: Update tid/pid filtering option to leverage symbol_conf
    perf kmem stat: Track memory freed
    perf script: Add option to stop printing callchain
    perf tools: Add time-based utility functions
    perf tools: Move parse_nsec_time to time-utils.c
    perf script: Add option to specify time window of interest
    perf sched timehist: Add option to specify time window of interest
    perf kmem: Add option to specify time window of interest
    perf report: Add option to specify time window of interest
    perf sched timehist: Improve error message when analyzing wrong file

    Davidlohr Bueso (2):
    perf bench futex: Avoid worker cacheline bouncing
    perf bench futex: Sanitize numeric parameters

    Eric Leblond (1):
    tools lib bpf: Fix maps resolution

    Jin Yao (5):
    perf report: Add branch flag to callchain cursor node
    perf report: Create a symbol_conf flag for showing branch flag counting
    perf report: Calculate and return the branch flag counting
    perf report: Show branch info in callchain entry for stdio mode
    perf report: Show branch info in callchain entry for browser mode

    Jiri Olsa (80):
    perf c2c: Introduce c2c_decode_stats function
    perf c2c: Introduce c2c_add_stats function
    perf c2c: Add c2c command
    perf c2c: Add record subcommand
    perf c2c: Add report subcommand
    perf c2c report: Add dimension support
    perf c2c report: Add sort_entry dimension support
    perf c2c report: Fallback to standard dimensions
    perf c2c report: Add sample processing
    perf c2c report: Add cacheline hists processing
    perf c2c report: Decode c2c_stats for hist entries
    perf c2c report: Add header macros
    perf c2c report: Add 'dcacheline' dimension key
    perf c2c report: Add 'offset' dimension key
    perf c2c report: Add 'iaddr' dimension key
    perf c2c report: Add hitm related dimension keys
    perf c2c report: Add stores related dimension keys
    perf c2c report: Add loads related dimension keys
    perf c2c report: Add llc and remote loads related dimension keys
    perf c2c report: Add llc load miss dimension key
    perf c2c report: Add total record sort key
    perf c2c report: Add total loads sort key
    perf c2c report: Add hitm percent sort key
    perf c2c report: Add hitm/store percent related sort keys
    perf c2c report: Add dram related sort keys
    perf c2c report: Add 'pid' sort key
    perf c2c report: Add 'tid' sort key
    perf c2c report: Add 'symbol' and 'dso' sort keys
    perf c2c report: Add 'node' sort key
    perf c2c report: Add stats related sort keys
    perf c2c report: Add 'cpucnt' sort key
    perf c2c report: Add src line sort key
    perf c2c report: Setup number of header lines for hists
    perf c2c report: Set final resort fields
    perf c2c report: Add stdio output support
    perf c2c report: Add main TUI browser
    perf c2c report: Add TUI cacheline browser
    perf c2c report: Add global stats stdio output
    perf c2c report: Add shared cachelines stats stdio output
    perf c2c report: Add c2c related stats stdio output
    perf c2c report: Allow to report callchains
    perf c2c report: Limit the cachelines table entries
    perf c2c report: Add support to choose local HITMs
    perf c2c report: Allow to set cacheline sort fields
    perf c2c report: Recalc width of global sort entries
    perf c2c report: Add cacheline index entry
    perf c2c report: Add support to manage symbol name length
    perf c2c report: Iterate node display in browser
    perf c2c report: Add help windows
    perf c2c: Add man page and credits
    perf c2c report: Add --no-source option
    perf c2c report: Add --show-all option
    tools lib traceevent: Add install_headers target
    tools lib traceevent: Add do_install_mkdir Makefile function
    tools lib traceevent: Rename LIB_FILE to LIB_TARGET
    tools lib traceevent: Add version for traceevent shared object
    tools lib: Add for_each_clear_bit macro
    perf report: Move captured info to generic header info
    perf header: Display missing features
    perf header: Display feature name on write failure
    tools build: Add CFLAGS_REMOVE_* support
    tools build: Add jvmti feature detection support
    perf jvmti: Plug compilation into perf build
    perf kvmti: Remove unused Makefile file
    perf tools: Show event fd in debug output
    perf c2c report: Setup browser after opening perf.data
    perf c2c report: Add -f/--force option
    perf c2c report: Add struct c2c_stats::tot_hitm field
    perf c2c report: Display total HITMs on default
    perf c2c: Support cascading options
    tools build: Make fixdep parsing wait for last target
    tools build: Make the .cmd file more readable
    tools build: Move tabs to spaces where suitable
    perf tools: Move install-gtk target into rules area
    perf tools: Move python/perf.so target into rules area
    perf tools: Cleanup build directory before each test
    perf tools: Add non config targets
    perf tools: Move PERF-VERSION-FILE target into rules area
    perf tools: Force fixdep compilation at the start of the build
    perf tools: Move perf build related variables under non fixdep leg

    Kim Phillips (2):
    perf annotate: Use arch->objdump.comment_char in dec__parse()
    perf annotate: AArch64 support

    Maciej Debski (1):
    perf jit: Enable jitdump support without dwarf

    Madhavan Srinivasan (1):
    perf vendor events: Support couple more POWER8 PVRs in mapfile

    Mathieu Poirier (1):
    perf coresight: Removing miscellaneous debug output

    Namhyung Kim (15):
    perf hist browser: Fix hierarchy column counts
    tools lib subcmd: Suppport cascading options
    perf sched: Make common options cascading
    perf sched map: Apply cpu color when there's an activity
    perf sched map: Always show task comm with -v
    perf tools: Introduce timestamp__scnprintf_usec()
    perf symbols: Print symbol offsets conditionally
    perf evsel: Support printing callchains with arrows
    perf callchain: Add option to skip ignore symbol when printing callchains
    perf sched timehist: Mark schedule function in callchains
    perf sched timehist: Enlarge max stack depth by 2
    perf sched: Cleanup option processing
    perf callchain: Introduce callchain_cursor__copy()
    perf sched timehist: Handle zero sample->tid properly
    perf sched timehist: Cleanup idle_max_cpu handling

    Peter Foley (1):
    tools build: Fix objtool build with clang

    Rabin Vincent (1):
    perf callchain: Fixup help/config for no-unwinding

    Ravi Bangoria (2):
    perf annotate: Initial PowerPC support
    perf annotate: Show raw form for jump instruction with indirect target

    Sebastian Andrzej Siewior (1):
    perf bench futex: Cache align the worker struct

    Stefano Sanfilippo (5):
    perf jit: Make perf skip unknown records
    perf jit: Do not assume pgoff is zero
    perf jit: Add unwinding support
    perf jit: Generate .eh_frame/.eh_frame_hdr in DSO
    perf jit: Check JITHEADER_VERSION

    Stephane Eranian (3):
    perf jit: Improve error messages from JVMTI
    perf jit: Remove unecessary padding in jitdump file
    perf jit: Add jitdump format specification document

    Steven Rostedt (2):
    tools lib traceevent: Use USECS_PER_SEC instead of hardcoded number
    tools lib traceevent: Add retrieval of preempt count and latency flags

    Sukadev Bhattiprolu (1):
    perf vendor events: Add power8 PMU events

    Taeung Song (4):
    perf config: Add support for getting config key-value pairs
    perf config: Validate config variable arguments before trying use them
    perf config: Add support setting variables in a config file
    perf config: Mark where are config items from (user or system)

    Wang Nan (19):
    perf tools: Fix kernel version error in ubuntu
    perf record: Fix segfault when running with suid and kptr_restrict is 1
    perf tools: Add missing struct definition in probe_event.h
    tools lib bpf: Add missing BPF functions
    tools lib bpf: Add private field for bpf_object
    tools lib bpf: Retrive bpf_map through offset of bpf_map_def
    perf tools: Introduce perf hooks
    perf tools: Pass context to perf hook functions
    perf llvm: Extract helpers in llvm-utils.c
    tools build: Add feature detection for LLVM
    tools build: Add feature detection for clang
    perf build: Add clang and llvm compile and linking support
    perf clang: Add builtin clang support ant test case
    perf clang: Use real file system for #include
    perf clang: Allow passing CFLAGS to builtin clang
    perf clang: Update test case to use real BPF script
    perf clang: Support compile IR to BPF object and add testcase
    perf clang: Compile BPF script using builtin clang support
    perf build: Check LLVM version in feature check

    Yannick Brosseau (1):
    perf tools: Explicitly document that --children is enabled by default


    arch/x86/events/core.c | 8 +-
    arch/x86/events/perf_event.h | 2 +-
    tools/build/Build.include | 22 +-
    tools/build/Documentation/Build.txt | 6 +-
    tools/build/Makefile.feature | 138 +-
    tools/build/feature/Makefile | 126 +-
    tools/build/feature/test-clang.cpp | 21 +
    tools/build/feature/test-jvmti.c | 13 +
    tools/build/feature/test-llvm-version.cpp | 11 +
    tools/build/feature/test-llvm.cpp | 13 +
    tools/build/fixdep.c | 5 +-
    tools/include/asm-generic/bitops.h | 1 +
    tools/include/asm-generic/bitops/__ffz.h | 12 +
    tools/include/asm-generic/bitops/find.h | 28 +
    tools/include/linux/bitops.h | 5 +
    tools/include/uapi/asm-generic/mman-common.h | 5 +
    tools/lib/bpf/bpf.c | 56 +
    tools/lib/bpf/bpf.h | 7 +
    tools/lib/bpf/libbpf.c | 177 +-
    tools/lib/bpf/libbpf.h | 13 +
    tools/lib/find_bit.c | 25 +
    tools/lib/subcmd/parse-options.c | 14 +
    tools/lib/subcmd/parse-options.h | 2 +
    tools/lib/traceevent/Makefile | 40 +-
    tools/lib/traceevent/event-parse.c | 41 +-
    tools/lib/traceevent/event-parse.h | 5 +-
    tools/perf/Build | 1 +
    tools/perf/Documentation/intel-pt.txt | 19 +-
    tools/perf/Documentation/jitdump-specification.txt | 170 +
    tools/perf/Documentation/perf-c2c.txt | 290 ++
    tools/perf/Documentation/perf-config.txt | 35 +
    tools/perf/Documentation/perf-kmem.txt | 7 +
    tools/perf/Documentation/perf-record.txt | 9 +-
    tools/perf/Documentation/perf-report.txt | 10 +-
    tools/perf/Documentation/perf-sched.txt | 78 +-
    tools/perf/Documentation/perf-script.txt | 16 +-
    tools/perf/Documentation/perf-top.txt | 1 +
    tools/perf/Documentation/perf-trace.txt | 5 +
    tools/perf/MANIFEST | 1 +
    tools/perf/Makefile.config | 94 +-
    tools/perf/Makefile.perf | 150 +-
    tools/perf/arch/arm/annotate/instructions.c | 59 +
    tools/perf/arch/arm/util/cs-etm.c | 2 -
    tools/perf/arch/arm64/annotate/instructions.c | 62 +
    tools/perf/arch/powerpc/annotate/instructions.c | 58 +
    tools/perf/arch/x86/annotate/instructions.c | 78 +
    tools/perf/arch/x86/entry/syscalls/syscall_64.tbl | 7 +-
    tools/perf/arch/x86/tests/arch-tests.c | 10 +-
    tools/perf/bench/futex-hash.c | 10 +-
    tools/perf/bench/futex-lock-pi.c | 7 +-
    tools/perf/bench/futex-requeue.c | 2 +
    tools/perf/bench/futex-wake-parallel.c | 4 +
    tools/perf/bench/futex-wake.c | 3 +
    tools/perf/bench/futex.h | 4 +
    tools/perf/bench/mem-functions.c | 77 +-
    tools/perf/builtin-c2c.c | 2780 +++++++++++++
    tools/perf/builtin-config.c | 137 +-
    tools/perf/builtin-kmem.c | 36 +-
    tools/perf/builtin-record.c | 11 +
    tools/perf/builtin-report.c | 29 +-
    tools/perf/builtin-sched.c | 1118 ++++-
    tools/perf/builtin-script.c | 51 +-
    tools/perf/builtin-top.c | 2 +-
    tools/perf/builtin-trace.c | 68 +-
    tools/perf/builtin.h | 1 +
    tools/perf/jvmti/Build | 8 +
    tools/perf/jvmti/Makefile | 89 -
    tools/perf/jvmti/jvmti_agent.c | 38 +-
    tools/perf/jvmti/libjvmti.c | 39 +-
    tools/perf/perf.c | 1 +
    tools/perf/pmu-events/arch/powerpc/mapfile.csv | 21 +
    .../perf/pmu-events/arch/powerpc/power8/cache.json | 176 +
    .../arch/powerpc/power8/floating-point.json | 14 +
    .../pmu-events/arch/powerpc/power8/frontend.json | 470 +++
    .../pmu-events/arch/powerpc/power8/marked.json | 794 ++++
    .../pmu-events/arch/powerpc/power8/memory.json | 212 +
    .../perf/pmu-events/arch/powerpc/power8/other.json | 4064 ++++++++++++++++++
    .../pmu-events/arch/powerpc/power8/pipeline.json | 350 ++
    tools/perf/pmu-events/arch/powerpc/power8/pmc.json | 140 +
    .../arch/powerpc/power8/translation.json | 176 +
    tools/perf/pmu-events/arch/x86/bonnell/cache.json | 746 ++++
    .../arch/x86/bonnell/floating-point.json | 261 ++
    .../perf/pmu-events/arch/x86/bonnell/frontend.json | 83 +
    tools/perf/pmu-events/arch/x86/bonnell/memory.json | 154 +
    tools/perf/pmu-events/arch/x86/bonnell/other.json | 450 ++
    .../perf/pmu-events/arch/x86/bonnell/pipeline.json | 364 ++
    .../arch/x86/bonnell/virtual-memory.json | 124 +
    .../perf/pmu-events/arch/x86/broadwell/cache.json | 3198 +++++++++++++++
    .../arch/x86/broadwell/floating-point.json | 171 +
    .../pmu-events/arch/x86/broadwell/frontend.json | 286 ++
    .../perf/pmu-events/arch/x86/broadwell/memory.json | 2845 +++++++++++++
    .../perf/pmu-events/arch/x86/broadwell/other.json | 44 +
    .../pmu-events/arch/x86/broadwell/pipeline.json | 1417 +++++++
    .../arch/x86/broadwell/virtual-memory.json | 388 ++
    .../pmu-events/arch/x86/broadwellde/cache.json | 774 ++++
    .../arch/x86/broadwellde/floating-point.json | 171 +
    .../pmu-events/arch/x86/broadwellde/frontend.json | 286 ++
    .../pmu-events/arch/x86/broadwellde/memory.json | 433 ++
    .../pmu-events/arch/x86/broadwellde/other.json | 44 +
    .../pmu-events/arch/x86/broadwellde/pipeline.json | 1417 +++++++
    .../arch/x86/broadwellde/virtual-memory.json | 388 ++
    .../perf/pmu-events/arch/x86/broadwellx/cache.json | 942 +++++
    .../arch/x86/broadwellx/floating-point.json | 171 +
    .../pmu-events/arch/x86/broadwellx/frontend.json | 286 ++
    .../pmu-events/arch/x86/broadwellx/memory.json | 649 +++
    .../perf/pmu-events/arch/x86/broadwellx/other.json | 44 +
    .../pmu-events/arch/x86/broadwellx/pipeline.json | 1417 +++++++
    .../arch/x86/broadwellx/virtual-memory.json | 388 ++
    tools/perf/pmu-events/arch/x86/goldmont/cache.json | 1127 +++++
    .../pmu-events/arch/x86/goldmont/frontend.json | 52 +
    .../perf/pmu-events/arch/x86/goldmont/memory.json | 34 +
    tools/perf/pmu-events/arch/x86/goldmont/other.json | 52 +
    .../pmu-events/arch/x86/goldmont/pipeline.json | 433 ++
    .../arch/x86/goldmont/virtual-memory.json | 75 +
    tools/perf/pmu-events/arch/x86/haswell/cache.json | 1041 +++++
    .../arch/x86/haswell/floating-point.json | 83 +
    .../perf/pmu-events/arch/x86/haswell/frontend.json | 294 ++
    tools/perf/pmu-events/arch/x86/haswell/memory.json | 655 +++
    tools/perf/pmu-events/arch/x86/haswell/other.json | 43 +
    .../perf/pmu-events/arch/x86/haswell/pipeline.json | 1329 ++++++
    .../arch/x86/haswell/virtual-memory.json | 484 +++
    tools/perf/pmu-events/arch/x86/haswellx/cache.json | 1077 +++++
    .../arch/x86/haswellx/floating-point.json | 83 +
    .../pmu-events/arch/x86/haswellx/frontend.json | 294 ++
    .../perf/pmu-events/arch/x86/haswellx/memory.json | 739 ++++
    tools/perf/pmu-events/arch/x86/haswellx/other.json | 43 +
    .../pmu-events/arch/x86/haswellx/pipeline.json | 1329 ++++++
    .../arch/x86/haswellx/virtual-memory.json | 484 +++
    .../perf/pmu-events/arch/x86/ivybridge/cache.json | 1123 +++++
    .../arch/x86/ivybridge/floating-point.json | 151 +
    .../pmu-events/arch/x86/ivybridge/frontend.json | 305 ++
    .../perf/pmu-events/arch/x86/ivybridge/memory.json | 236 ++
    .../perf/pmu-events/arch/x86/ivybridge/other.json | 44 +
    .../pmu-events/arch/x86/ivybridge/pipeline.json | 1307 ++++++
    .../arch/x86/ivybridge/virtual-memory.json | 180 +
    tools/perf/pmu-events/arch/x86/ivytown/cache.json | 1272 ++++++
    .../arch/x86/ivytown/floating-point.json | 151 +
    .../perf/pmu-events/arch/x86/ivytown/frontend.json | 305 ++
    tools/perf/pmu-events/arch/x86/ivytown/memory.json | 503 +++
    tools/perf/pmu-events/arch/x86/ivytown/other.json | 44 +
    .../perf/pmu-events/arch/x86/ivytown/pipeline.json | 1307 ++++++
    .../arch/x86/ivytown/virtual-memory.json | 198 +
    tools/perf/pmu-events/arch/x86/jaketown/cache.json | 1290 ++++++
    .../arch/x86/jaketown/floating-point.json | 138 +
    .../pmu-events/arch/x86/jaketown/frontend.json | 305 ++
    .../perf/pmu-events/arch/x86/jaketown/memory.json | 422 ++
    tools/perf/pmu-events/arch/x86/jaketown/other.json | 58 +
    .../pmu-events/arch/x86/jaketown/pipeline.json | 1220 ++++++
    .../arch/x86/jaketown/virtual-memory.json | 149 +
    .../pmu-events/arch/x86/knightslanding/cache.json | 2305 +++++++++++
    .../arch/x86/knightslanding/frontend.json | 34 +
    .../pmu-events/arch/x86/knightslanding/memory.json | 1110 +++++
    .../arch/x86/knightslanding/pipeline.json | 435 ++
    .../arch/x86/knightslanding/virtual-memory.json | 65 +
    tools/perf/pmu-events/arch/x86/mapfile.csv | 35 +
    .../perf/pmu-events/arch/x86/nehalemep/cache.json | 3229 +++++++++++++++
    .../arch/x86/nehalemep/floating-point.json | 229 ++
    .../pmu-events/arch/x86/nehalemep/frontend.json | 26 +
    .../perf/pmu-events/arch/x86/nehalemep/memory.json | 739 ++++
    .../perf/pmu-events/arch/x86/nehalemep/other.json | 210 +
    .../pmu-events/arch/x86/nehalemep/pipeline.json | 881 ++++
    .../arch/x86/nehalemep/virtual-memory.json | 109 +
    .../perf/pmu-events/arch/x86/nehalemex/cache.json | 3184 +++++++++++++++
    .../arch/x86/nehalemex/floating-point.json | 229 ++
    .../pmu-events/arch/x86/nehalemex/frontend.json | 26 +
    .../perf/pmu-events/arch/x86/nehalemex/memory.json | 739 ++++
    .../perf/pmu-events/arch/x86/nehalemex/other.json | 210 +
    .../pmu-events/arch/x86/nehalemex/pipeline.json | 881 ++++
    .../arch/x86/nehalemex/virtual-memory.json | 109 +
    .../pmu-events/arch/x86/sandybridge/cache.json | 1879 +++++++++
    .../arch/x86/sandybridge/floating-point.json | 138 +
    .../pmu-events/arch/x86/sandybridge/frontend.json | 305 ++
    .../pmu-events/arch/x86/sandybridge/memory.json | 445 ++
    .../pmu-events/arch/x86/sandybridge/other.json | 58 +
    .../pmu-events/arch/x86/sandybridge/pipeline.json | 1220 ++++++
    .../arch/x86/sandybridge/virtual-memory.json | 149 +
    .../perf/pmu-events/arch/x86/silvermont/cache.json | 811 ++++
    .../pmu-events/arch/x86/silvermont/frontend.json | 47 +
    .../pmu-events/arch/x86/silvermont/memory.json | 11 +
    .../pmu-events/arch/x86/silvermont/pipeline.json | 359 ++
    .../arch/x86/silvermont/virtual-memory.json | 69 +
    tools/perf/pmu-events/arch/x86/skylake/cache.json | 4299 ++++++++++++++++++++
    .../arch/x86/skylake/floating-point.json | 68 +
    .../perf/pmu-events/arch/x86/skylake/frontend.json | 472 +++
    tools/perf/pmu-events/arch/x86/skylake/memory.json | 2309 +++++++++++
    tools/perf/pmu-events/arch/x86/skylake/other.json | 12 +
    .../perf/pmu-events/arch/x86/skylake/pipeline.json | 939 +++++
    .../arch/x86/skylake/virtual-memory.json | 272 ++
    .../pmu-events/arch/x86/westmereep-dp/cache.json | 2817 +++++++++++++
    .../arch/x86/westmereep-dp/floating-point.json | 229 ++
    .../arch/x86/westmereep-dp/frontend.json | 26 +
    .../pmu-events/arch/x86/westmereep-dp/memory.json | 758 ++++
    .../pmu-events/arch/x86/westmereep-dp/other.json | 287 ++
    .../arch/x86/westmereep-dp/pipeline.json | 899 ++++
    .../arch/x86/westmereep-dp/virtual-memory.json | 173 +
    .../pmu-events/arch/x86/westmereep-sp/cache.json | 3233 +++++++++++++++
    .../arch/x86/westmereep-sp/floating-point.json | 229 ++
    .../arch/x86/westmereep-sp/frontend.json | 26 +
    .../pmu-events/arch/x86/westmereep-sp/memory.json | 739 ++++
    .../pmu-events/arch/x86/westmereep-sp/other.json | 287 ++
    .../arch/x86/westmereep-sp/pipeline.json | 899 ++++
    .../arch/x86/westmereep-sp/virtual-memory.json | 149 +
    .../perf/pmu-events/arch/x86/westmereex/cache.json | 3225 +++++++++++++++
    .../arch/x86/westmereex/floating-point.json | 229 ++
    .../pmu-events/arch/x86/westmereex/frontend.json | 26 +
    .../pmu-events/arch/x86/westmereex/memory.json | 747 ++++
    .../perf/pmu-events/arch/x86/westmereex/other.json | 287 ++
    .../pmu-events/arch/x86/westmereex/pipeline.json | 905 ++++
    .../arch/x86/westmereex/virtual-memory.json | 173 +
    tools/perf/tests/Build | 2 +
    tools/perf/tests/backward-ring-buffer.c | 2 +-
    tools/perf/tests/bpf.c | 8 +-
    tools/perf/tests/builtin-test.c | 105 +-
    tools/perf/tests/clang.c | 46 +
    tools/perf/tests/llvm.c | 8 +-
    tools/perf/tests/llvm.h | 7 +
    tools/perf/tests/make | 6 +-
    tools/perf/tests/perf-hooks.c | 48 +
    tools/perf/tests/tests.h | 4 +
    tools/perf/ui/browsers/annotate.c | 26 +-
    tools/perf/ui/browsers/hists.c | 27 +-
    tools/perf/ui/browsers/hists.h | 1 +
    tools/perf/ui/gtk/annotate.c | 2 +-
    tools/perf/ui/helpline.c | 10 +
    tools/perf/ui/helpline.h | 1 +
    tools/perf/ui/stdio/hist.c | 35 +-
    tools/perf/util/Build | 7 +-
    tools/perf/util/annotate.c | 392 +-
    tools/perf/util/annotate.h | 23 +-
    tools/perf/util/bpf-loader.c | 33 +-
    tools/perf/util/c++/Build | 2 +
    tools/perf/util/c++/clang-c.h | 43 +
    tools/perf/util/c++/clang-test.cpp | 62 +
    tools/perf/util/c++/clang.cpp | 195 +
    tools/perf/util/c++/clang.h | 26 +
    tools/perf/util/callchain.c | 232 +-
    tools/perf/util/callchain.h | 29 +-
    tools/perf/util/config.c | 20 +
    tools/perf/util/config.h | 4 +
    tools/perf/util/event.h | 3 +
    tools/perf/util/evsel.c | 15 +-
    tools/perf/util/evsel.h | 4 +
    tools/perf/util/evsel_fprintf.c | 25 +-
    tools/perf/util/genelf.c | 113 +-
    tools/perf/util/genelf.h | 5 +-
    tools/perf/util/header.c | 19 +-
    tools/perf/util/hist.c | 1 +
    tools/perf/util/hist.h | 1 +
    tools/perf/util/intel-bts.c | 9 +-
    .../perf/util/intel-pt-decoder/intel-pt-decoder.c | 2 +
    .../perf/util/intel-pt-decoder/intel-pt-decoder.h | 1 +
    .../util/intel-pt-decoder/intel-pt-insn-decoder.c | 13 +-
    .../util/intel-pt-decoder/intel-pt-insn-decoder.h | 6 +-
    tools/perf/util/intel-pt-decoder/intel-pt-log.c | 4 +-
    tools/perf/util/intel-pt.c | 19 +-
    tools/perf/util/jitdump.c | 82 +-
    tools/perf/util/jitdump.h | 12 +
    tools/perf/util/llvm-utils.c | 78 +-
    tools/perf/util/llvm-utils.h | 6 +
    tools/perf/util/machine.c | 82 +-
    tools/perf/util/map.c | 17 +-
    tools/perf/util/mem-events.c | 136 +
    tools/perf/util/mem-events.h | 38 +
    tools/perf/util/parse-branch-options.c | 85 +-
    tools/perf/util/parse-branch-options.h | 3 +-
    tools/perf/util/parse-events.c | 15 +-
    tools/perf/util/perf-hooks-list.h | 3 +
    tools/perf/util/perf-hooks.c | 88 +
    tools/perf/util/perf-hooks.h | 39 +
    tools/perf/util/pmu.c | 14 +-
    tools/perf/util/probe-event.h | 2 +
    tools/perf/util/python-ext-sources | 1 +
    tools/perf/util/quote.c | 2 +-
    tools/perf/util/session.c | 10 -
    tools/perf/util/sort.c | 2 +-
    tools/perf/util/sort.h | 1 +
    tools/perf/util/string.c | 21 +-
    tools/perf/util/symbol.c | 10 +-
    tools/perf/util/symbol.h | 11 +-
    tools/perf/util/symbol_fprintf.c | 11 +-
    tools/perf/util/time-utils.c | 119 +
    tools/perf/util/time-utils.h | 14 +
    tools/perf/util/trace-event-scripting.c | 39 +-
    tools/perf/util/unwind-libunwind-local.c | 4 +-
    tools/perf/util/util-cxx.h | 26 +
    tools/perf/util/util.c | 88 +-
    tools/perf/util/util.h | 6 +-
    tools/perf/util/values.c | 81 +-
    tools/perf/util/values.h | 4 +-
    289 files changed, 98023 insertions(+), 1053 deletions(-)
    create mode 100644 tools/build/feature/test-clang.cpp
    create mode 100644 tools/build/feature/test-jvmti.c
    create mode 100644 tools/build/feature/test-llvm-version.cpp
    create mode 100644 tools/build/feature/test-llvm.cpp
    create mode 100644 tools/include/asm-generic/bitops/__ffz.h
    create mode 100644 tools/perf/Documentation/jitdump-specification.txt
    create mode 100644 tools/perf/Documentation/perf-c2c.txt
    create mode 100644 tools/perf/arch/arm/annotate/instructions.c
    create mode 100644 tools/perf/arch/arm64/annotate/instructions.c
    create mode 100644 tools/perf/arch/powerpc/annotate/instructions.c
    create mode 100644 tools/perf/arch/x86/annotate/instructions.c
    create mode 100644 tools/perf/builtin-c2c.c
    create mode 100644 tools/perf/jvmti/Build
    delete mode 100644 tools/perf/jvmti/Makefile
    create mode 100644 tools/perf/pmu-events/arch/powerpc/mapfile.csv
    create mode 100644 tools/perf/pmu-events/arch/powerpc/power8/cache.json
    create mode 100644 tools/perf/pmu-events/arch/powerpc/power8/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/powerpc/power8/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/powerpc/power8/marked.json
    create mode 100644 tools/perf/pmu-events/arch/powerpc/power8/memory.json
    create mode 100644 tools/perf/pmu-events/arch/powerpc/power8/other.json
    create mode 100644 tools/perf/pmu-events/arch/powerpc/power8/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/powerpc/power8/pmc.json
    create mode 100644 tools/perf/pmu-events/arch/powerpc/power8/translation.json
    create mode 100644 tools/perf/pmu-events/arch/x86/bonnell/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/bonnell/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/bonnell/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/bonnell/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/bonnell/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/bonnell/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/bonnell/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwell/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwell/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwell/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwell/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwell/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwell/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwell/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwellde/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwellde/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwellde/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwellde/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwellde/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwellde/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwellde/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwellx/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwellx/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwellx/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwellx/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwellx/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwellx/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/broadwellx/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/goldmont/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/goldmont/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/goldmont/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/goldmont/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/goldmont/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/goldmont/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/haswell/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/haswell/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/haswell/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/haswell/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/haswell/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/haswell/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/haswell/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/haswellx/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/haswellx/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/haswellx/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/haswellx/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/haswellx/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/haswellx/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/haswellx/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/ivybridge/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/ivybridge/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/ivybridge/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/ivybridge/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/ivybridge/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/ivybridge/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/ivybridge/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/ivytown/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/ivytown/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/ivytown/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/ivytown/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/ivytown/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/ivytown/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/ivytown/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/jaketown/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/jaketown/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/jaketown/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/jaketown/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/jaketown/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/jaketown/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/jaketown/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/knightslanding/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/knightslanding/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/knightslanding/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/knightslanding/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/knightslanding/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/mapfile.csv
    create mode 100644 tools/perf/pmu-events/arch/x86/nehalemep/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/nehalemep/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/nehalemep/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/nehalemep/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/nehalemep/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/nehalemep/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/nehalemep/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/nehalemex/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/nehalemex/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/nehalemex/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/nehalemex/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/nehalemex/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/nehalemex/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/nehalemex/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/sandybridge/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/sandybridge/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/sandybridge/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/sandybridge/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/sandybridge/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/sandybridge/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/sandybridge/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/silvermont/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/silvermont/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/silvermont/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/silvermont/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/silvermont/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/skylake/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/skylake/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/skylake/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/skylake/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/skylake/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/skylake/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/skylake/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereep-dp/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereep-dp/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereep-dp/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereep-dp/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereep-dp/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereep-dp/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereep-dp/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereep-sp/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereep-sp/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereep-sp/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereep-sp/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereep-sp/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereep-sp/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereep-sp/virtual-memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereex/cache.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereex/floating-point.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereex/frontend.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereex/memory.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereex/other.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereex/pipeline.json
    create mode 100644 tools/perf/pmu-events/arch/x86/westmereex/virtual-memory.json
    create mode 100644 tools/perf/tests/clang.c
    create mode 100644 tools/perf/tests/perf-hooks.c
    create mode 100644 tools/perf/util/c++/Build
    create mode 100644 tools/perf/util/c++/clang-c.h
    create mode 100644 tools/perf/util/c++/clang-test.cpp
    create mode 100644 tools/perf/util/c++/clang.cpp
    create mode 100644 tools/perf/util/c++/clang.h
    create mode 100644 tools/perf/util/perf-hooks-list.h
    create mode 100644 tools/perf/util/perf-hooks.c
    create mode 100644 tools/perf/util/perf-hooks.h
    create mode 100644 tools/perf/util/time-utils.c
    create mode 100644 tools/perf/util/time-utils.h
    create mode 100644 tools/perf/util/util-cxx.h

    [ ... diff skipped due to size ... ]

    \
     
     \ /
      Last update: 2016-12-12 09:52    [W:0.090 / U:35.732 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site