qemu/tcg
Ilya Leoshkevich 5584e2dbe8 tcg: add perfmap and jitdump
Add ability to dump /tmp/perf-<pid>.map and jit-<pid>.dump.
The first one allows the perf tool to map samples to each individual
translation block. The second one adds the ability to resolve symbol
names, line numbers and inspect JITed code.

Example of use:

    perf record qemu-x86_64 -perfmap ./a.out
    perf report

or

    perf record -k 1 qemu-x86_64 -jitdump ./a.out
    DEBUGINFOD_URLS= perf inject -j -i perf.data -o perf.data.jitted
    perf report -i perf.data.jitted

Co-developed-by: Vanderson M. do Rosario <vandersonmr2@gmail.com>
Co-developed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Message-Id: <20230112152013.125680-4-iii@linux.ibm.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
2023-01-16 10:14:12 -10:00
..
aarch64 tcg: Add TCGHelperInfo argument to tcg_out_call 2023-01-05 11:41:29 -08:00
arm tcg: Add TCGHelperInfo argument to tcg_out_call 2023-01-05 11:41:29 -08:00
i386 tcg: Add TCGHelperInfo argument to tcg_out_call 2023-01-05 11:41:29 -08:00
loongarch64 tcg: Add TCGHelperInfo argument to tcg_out_call 2023-01-05 11:41:29 -08:00
mips tcg: Add TCGHelperInfo argument to tcg_out_call 2023-01-05 11:41:29 -08:00
ppc tcg: Add TCGHelperInfo argument to tcg_out_call 2023-01-05 11:41:29 -08:00
riscv First RISC-V PR for QEMU 8.0 2023-01-06 22:15:53 +00:00
s390x tcg/s390x: Avoid the constant pool in tcg_out_movi 2023-01-06 23:07:10 +00:00
sparc64 tcg: Add TCGHelperInfo argument to tcg_out_call 2023-01-05 11:41:29 -08:00
tci tcg: Add TCGHelperInfo argument to tcg_out_call 2023-01-05 11:41:29 -08:00
meson.build tcg: Build ffi data structures for helpers 2021-06-19 08:51:11 -07:00
optimize.c tcg: Reorg function calls 2023-01-05 11:41:29 -08:00
region.c tcg: Fix returned type in alloc_code_gen_buffer_splitwx_memfd() 2022-07-12 10:30:10 +05:30
tcg-common.c tcg/tci: Make tci_tb_ptr thread-local 2021-02-05 10:24:14 -10:00
tcg-internal.h tcg: Move ffi_cif pointer into TCGHelperInfo 2023-01-05 11:41:29 -08:00
tcg-ldst.c.inc tcg: Rename TCGMemOpIdx to MemOpIdx 2021-10-05 16:53:17 -07:00
tcg-op-gvec.c tcg/tcg-op-gvec.c: Introduce tcg_gen_gvec_4i 2022-03-02 06:51:38 +01:00
tcg-op-vec.c tcg: Pass number of arguments to tcg_emit_op() / tcg_op_insert_*() 2023-01-05 11:41:29 -08:00
tcg-op.c tcg: Pass number of arguments to tcg_emit_op() / tcg_op_insert_*() 2023-01-05 11:41:29 -08:00
tcg-pool.c.inc tcg: Introduce tcg_splitwx_to_{rx,rw} 2021-01-07 05:09:41 -10:00
tcg.c tcg: add perfmap and jitdump 2023-01-16 10:14:12 -10:00
tci.c tci: MAX_OPC_PARAM_IARGS is no longer used 2023-01-04 16:20:01 -08:00