All of lore.kernel.org
 help / color / mirror / Atom feed
* New attempt at adding an disassembler to perf
@ 2017-01-19  1:41 Andi Kleen
  2017-01-19  1:41 ` [PATCH 1/5] perf, tools: Add probing for xed Andi Kleen
                   ` (6 more replies)
  0 siblings, 7 replies; 15+ messages in thread
From: Andi Kleen @ 2017-01-19  1:41 UTC (permalink / raw)
  To: acme; +Cc: jolsa, linux-kernel

A native disassembler in perf is very useful, in particular with perf script to trace 
instruction streams, but also for other analysis. Previously I attempted
to do this using the udis86 library, but that was rejected because:
- udis86 was not maintained anymore and lacking recent instructions
- udis86 is dynamically linked and gives a runtime dependency.
Doing this needs a full disassembler, not just a decoder, so the existing
instruction decoder cannot be used without major changes.

This patchkit addresses these issues.  Intel recently released an open source version
of the XED disassembler library, which is used in many other Intel software.
It is very well maintained, uptodate, and supports static linking, so there is no
runtime dependency. This version adds XED support to perf, and uses it to implement
assembler output in perf script. It also fixes a range of issues in the previous
version, see the individual change logs.

Available in 
git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-misc.git perf/xed-6

v1: First post of XED version
v2: Change probing to not be default and support XED_DIR. Other cleanups
based on review.
v3: Use FEATURE_FLAGS_BASIC for probing

-Andi

^ permalink raw reply	[flat|nested] 15+ messages in thread
* New attempt at adding an disassembler to perf
@ 2017-01-03  9:00 Andi Kleen
  2017-01-08 14:21 ` Jiri Olsa
  0 siblings, 1 reply; 15+ messages in thread
From: Andi Kleen @ 2017-01-03  9:00 UTC (permalink / raw)
  To: acme; +Cc: jolsa, mingo, linux-kernel

A native disassembler in perf is very useful, in particular with perf script to trace 
instruction streams, but also for other analysis. Previously I attempted
to do this using the udis86 library, but that was rejected because:
- udis86 was not maintained anymore and lacking recent instructions
- udis86 is dynamically linked and gives a runtime dependency.
Doing this needs a full disassembler, not just a decoder, so the existing
instruction decoder cannot be used without major changes.

This patchkit addresses these issues.  Intel recently released an open source version
of the XED disassembler library, which is used in many other Intel software.
It is very well maintained, uptodate, and supports static linking, so there is no
runtime dependency. This version adds XED support to perf, and uses it to implement
assembler output in perf script. It also fixes a range of issues in the previous
version, see the individual change logs.

Available in 
git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-misc.git perf/xed-3

v1: First post of XED version

-Andi

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2017-01-24 18:54 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-19  1:41 New attempt at adding an disassembler to perf Andi Kleen
2017-01-19  1:41 ` [PATCH 1/5] perf, tools: Add probing for xed Andi Kleen
2017-01-19  1:41 ` [PATCH 2/5] perf, tools: Add one liner warning for disabled features Andi Kleen
2017-01-19  1:41 ` [PATCH 3/5] perf, tools: Add disassembler for x86 using the XED library Andi Kleen
2017-01-19  1:41 ` [PATCH 4/5] perf, tools, script: Add support for printing assembler Andi Kleen
2017-01-23 19:49   ` Arnaldo Carvalho de Melo
2017-01-23 19:55     ` Andi Kleen
2017-01-23 20:06       ` Arnaldo Carvalho de Melo
2017-01-19  1:41 ` [PATCH 5/5] perf, tools, script: Add brstackasm output for branch stacks Andi Kleen
2017-01-24 18:54   ` Arnaldo Carvalho de Melo
2017-01-19 15:36 ` New attempt at adding an disassembler to perf Jiri Olsa
2017-01-19 16:54   ` Andi Kleen
2017-01-20 13:22 ` Jiri Olsa
  -- strict thread matches above, loose matches on Subject: below --
2017-01-03  9:00 Andi Kleen
2017-01-08 14:21 ` Jiri Olsa

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.