Re: [PATCH 0/4] objtool,perf: Use shared x86 insn decoder

From: Arnaldo Carvalho de Melo
Date: Fri Aug 30 2019 - 14:40:33 EST


Em Thu, Aug 29, 2019 at 05:41:17PM -0500, Josh Poimboeuf escreveu:
> It's kind of silly that we have *three* identical copies of the x86 insn
> decoder in the kernel tree. Make it approximately 50% less silly by
> reducing that number to two.

Ok, I fixed up some minor conflicts with my perf/core branch and will
submit this together with the other things to the container builds and
then push it upstream, collected Peter and Masami's Acks.

- Arnaldo

> Josh Poimboeuf (4):
> objtool: Move x86 insn decoder to a common location
> perf: Update .gitignore file
> perf intel-pt: Remove inat.c from build dependency list
> perf intel-pt: Use shared x86 insn decoder
>
> .../{objtool => }/arch/x86/include/asm/inat.h | 0
> .../arch/x86/include/asm/inat_types.h | 0
> .../{objtool => }/arch/x86/include/asm/insn.h | 0
> .../arch/x86/include/asm/orc_types.h | 0
> tools/{objtool => }/arch/x86/lib/inat.c | 0
> tools/{objtool => }/arch/x86/lib/insn.c | 0
> .../arch/x86/lib/x86-opcode-map.txt | 0
> .../arch/x86/tools/gen-insn-attr-x86.awk | 0
> tools/objtool/Makefile | 4 +-
> tools/objtool/arch/x86/Build | 4 +-
> tools/objtool/arch/x86/decode.c | 4 +-
> tools/objtool/sync-check.sh | 12 +-
> tools/perf/.gitignore | 3 +
> tools/perf/arch/x86/tests/insn-x86.c | 2 +-
> tools/perf/arch/x86/util/archinsn.c | 2 +-
> tools/perf/check-headers.sh | 11 +-
> tools/perf/util/intel-pt-decoder/Build | 22 +-
> .../intel-pt-decoder/gen-insn-attr-x86.awk | 392 ------
> tools/perf/util/intel-pt-decoder/inat.c | 82 --
> tools/perf/util/intel-pt-decoder/inat.h | 230 ----
> tools/perf/util/intel-pt-decoder/inat_types.h | 15 -
> tools/perf/util/intel-pt-decoder/insn.c | 593 ---------
> tools/perf/util/intel-pt-decoder/insn.h | 216 ----
> .../intel-pt-decoder/intel-pt-insn-decoder.c | 10 +-
> .../util/intel-pt-decoder/x86-opcode-map.txt | 1072 -----------------
> 25 files changed, 34 insertions(+), 2640 deletions(-)
> rename tools/{objtool => }/arch/x86/include/asm/inat.h (100%)
> rename tools/{objtool => }/arch/x86/include/asm/inat_types.h (100%)
> rename tools/{objtool => }/arch/x86/include/asm/insn.h (100%)
> rename tools/{objtool => }/arch/x86/include/asm/orc_types.h (100%)
> rename tools/{objtool => }/arch/x86/lib/inat.c (100%)
> rename tools/{objtool => }/arch/x86/lib/insn.c (100%)
> rename tools/{objtool => }/arch/x86/lib/x86-opcode-map.txt (100%)
> rename tools/{objtool => }/arch/x86/tools/gen-insn-attr-x86.awk (100%)
> delete mode 100644 tools/perf/util/intel-pt-decoder/gen-insn-attr-x86.awk
> delete mode 100644 tools/perf/util/intel-pt-decoder/inat.c
> delete mode 100644 tools/perf/util/intel-pt-decoder/inat.h
> delete mode 100644 tools/perf/util/intel-pt-decoder/inat_types.h
> delete mode 100644 tools/perf/util/intel-pt-decoder/insn.c
> delete mode 100644 tools/perf/util/intel-pt-decoder/insn.h
> delete mode 100644 tools/perf/util/intel-pt-decoder/x86-opcode-map.txt
>
> --
> 2.20.1

--

- Arnaldo