linux/tools/perf/arch/x86/util
Leo Yan 9a4e47ef98 perf parse-regs: Introduce a weak function arch__sample_reg_masks()
Every architecture can provide a register list for sampling. If an
architecture doesn't support register sampling, it won't define the data
structure 'sample_reg_masks'. Consequently, any code using this
structure must be protected by the macro 'HAVE_PERF_REGS_SUPPORT'.

This patch defines a weak function, arch__sample_reg_masks(), which will
be replaced by an architecture-defined function for returning the
architecture's register list. With this refactoring, the function always
exists, the condition checking for 'HAVE_PERF_REGS_SUPPORT' is not
needed anymore, so remove it.

Signed-off-by: Leo Yan <leo.yan@linux.dev>
Reviewed-by: Ian Rogers <irogers@google.com>
Cc: James Clark <james.clark@arm.com>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Albert Ou <aou@eecs.berkeley.edu>
Cc: Huacai Chen <chenhuacai@kernel.org>
Cc: Guo Ren <guoren@kernel.org>
Cc: Will Deacon <will@kernel.org>
Cc: Mike Leach <mike.leach@linaro.org>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Ming Wang <wangming01@loongson.cn>
Cc: John Garry <john.g.garry@oracle.com>
Cc: Paul Walmsley <paul.walmsley@sifive.com>
Cc: linux-csky@vger.kernel.org
Cc: linux-riscv@lists.infradead.org
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/r/20240214113947.240957-4-leo.yan@linux.dev
2024-02-15 13:48:36 -08:00
..
Build perf tool x86: Consolidate is_amd check into single function 2023-06-13 23:40:33 -03:00
archinsn.c tools/perf: Convert to insn_decode() 2021-03-15 12:41:26 +01:00
auxtrace.c perf pmu: Separate pmu and pmus 2023-05-27 09:41:39 -03:00
cpuid.h perf tsc: Add arch TSC frequency information 2022-07-25 12:28:00 -03:00
dwarf-regs.c perf dwarf-regs: Add get_dwarf_regnum() 2023-12-23 10:56:05 -03:00
env.c perf tool x86: Fix perf_env memory leak 2023-06-14 18:19:06 -03:00
env.h perf tool x86: Consolidate is_amd check into single function 2023-06-13 23:40:33 -03:00
event.c perf events x86: Use function to add missing lock 2023-12-18 21:34:56 -03:00
evlist.c perf parse-events x86: Avoid sorting uops_retired.slots 2023-08-03 17:01:27 -03:00
evsel.c perf parse-events x86: Avoid sorting uops_retired.slots 2023-08-03 17:01:27 -03:00
evsel.h perf record: Support sample-read topdown metric group for hybrid platforms 2022-06-03 21:30:10 +02:00
header.c perf tsc: Add arch TSC frequency information 2022-07-25 12:28:00 -03:00
intel-bts.c libperf cpumap: Rename perf_cpu_map__empty() to perf_cpu_map__has_any_cpu_or_is_empty() 2023-12-12 14:55:13 -03:00
intel-pt.c libperf cpumap: Rename perf_cpu_map__empty() to perf_cpu_map__has_any_cpu_or_is_empty() 2023-12-12 14:55:13 -03:00
iostat.c perf x86 iostat: Use zfree() to reduce chances of use after free 2023-04-12 09:59:19 -03:00
kvm-stat.c perf evsel: Introduce evsel__name_is() method to check if the evsel name is equal to a given string 2023-04-24 14:28:11 -03:00
machine.c
mem-events.c perf mem: Clean up is_mem_loads_aux_event() 2024-01-24 14:05:00 -08:00
mem-events.h perf mem: Clean up perf_mem_events__name() 2024-01-24 14:04:28 -08:00
perf_regs.c perf parse-regs: Introduce a weak function arch__sample_reg_masks() 2024-02-15 13:48:36 -08:00
pmu.c perf mem: Clean up perf_pmus__num_mem_pmus() 2024-01-24 14:05:22 -08:00
topdown.c perf pmu: Separate pmu and pmus 2023-05-27 09:41:39 -03:00
topdown.h perf stat: Add TopdownL1 metric as a default if present 2023-02-19 08:07:19 -03:00
tsc.c perf tsc: Add missing newlines to debug statements 2024-02-02 13:07:18 -08:00
unwind-libdw.c perf parse-regs: Move out arch specific header from util/perf_regs.h 2023-08-16 08:52:45 -03:00
unwind-libunwind.c