[PATCH V2 0/7] x86/insn: perf tools: Add a few new x86 instructions

Adrian Hunter
2015-09-02T12:18:46Z

Hi

Here is version 2.

perf tools has a copy of the x86 instruction decoder for decoding
Intel PT. This patch set adds a perf tools test to use it to
test new instructions. Subsequent patches add a few new x86
instructions, or very slightly modify them in the case of MPX.
Those changes affect both perf tools and x86/insn.

I suggest Arnaldo takes all these patches as they mainly affect
perf tools, at least in terms of lines-of-code.

Changes in V2:

perf tools: Display build warning if x86 instruction decoder differs from kernel
New patch (slightly modified from the proposal and so without Jiri's Ack)

x86/insn: perf tools: Pedantically tweak opcode map for MPX instructions
Tweaked comment to refer to: tools/perf/perf test "x86 ins"

x86/insn: perf tools: Add new SHA instructions
Tweaked comment to refer to: tools/perf/perf test "x86 ins"

x86/insn: perf tools: Add new memory instructions
Tweaked comment to refer to: tools/perf/perf test "x86 ins"

x86/insn: perf tools: Add new memory protection keys instructions
New patch

x86/insn: perf tools: Add new xsave instructions
New patch

Adrian Hunter (7):
perf tools: Display build warning if x86 instruction decoder differs from kernel
perf tools: Add a test for decoding of new x86 instructions
x86/insn: perf tools: Pedantically tweak opcode map for MPX instructions
x86/insn: perf tools: Add new SHA instructions
x86/insn: perf tools: Add new memory instructions
x86/insn: perf tools: Add new memory protection keys instructions
x86/insn: perf tools: Add new xsave instructions

arch/x86/lib/x86-opcode-map.txt | 24 +-
tools/perf/tests/Build | 3 +
tools/perf/tests/builtin-test.c | 8 +
tools/perf/tests/gen-insn-x86-dat.awk | 75 ++
tools/perf/tests/gen-insn-x86-dat.sh | 43 +
tools/perf/tests/insn-x86-dat-32.c | 658 ++++++++++++++++
tools/perf/tests/insn-x86-dat-64.c | 768 ++++++++++++++++++
tools/perf/tests/insn-x86-dat-src.c | 877 +++++++++++++++++++++
tools/perf/tests/insn-x86.c | 184 +++++
tools/perf/tests/tests.h | 1 +
tools/perf/util/intel-pt-decoder/Build | 13 +-
.../perf/util/intel-pt-decoder/x86-opcode-map.txt | 24 +-
12 files changed, 2667 insertions(+), 11 deletions(-)
create mode 100644 tools/perf/tests/gen-insn-x86-dat.awk
create mode 100755 tools/perf/tests/gen-insn-x86-dat.sh
create mode 100644 tools/perf/tests/insn-x86-dat-32.c
create mode 100644 tools/perf/tests/insn-x86-dat-64.c
create mode 100644 tools/perf/tests/insn-x86-dat-src.c
create mode 100644 tools/perf/tests/insn-x86.c

Regards
Adrian