63ab024a5b
regs_query_register_offset() is a helper function which converts register name like "%rax" to offset of a register in 'struct pt_regs', which is required by BPF prologue generator. PERF_HAVE_ARCH_REGS_QUERY_REGISTER_OFFSET indicates an architecture supports converting name of a register to its offset in 'struct pt_regs'. HAVE_ARCH_REGS_QUERY_REGISTER_OFFSET is introduced as the corresponding CFLAGS of PERF_HAVE_ARCH_REGS_QUERY_REGISTER_OFFSET. Signed-off-by: Wang Nan <wangnan0@huawei.com> Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com> Cc: Alexei Starovoitov <ast@plumgrid.com> Cc: Brendan Gregg <brendan.d.gregg@gmail.com> Cc: Daniel Borkmann <daniel@iogearbox.net> Cc: David Ahern <dsahern@gmail.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Kaixu Xia <xiakaixu@huawei.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Zefan Li <lizefan@huawei.com> Cc: pi3orama@163.com Link: http://lkml.kernel.org/r/1441523623-152703-19-git-send-email-wangnan0@huawei.com Signed-off-by: He Kuang <hekuang@huawei.com> [ Extracted from eBPF patches ] Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
17 lines
407 B
C
17 lines
407 B
C
#ifndef _PERF_DWARF_REGS_H_
|
|
#define _PERF_DWARF_REGS_H_
|
|
|
|
#ifdef HAVE_DWARF_SUPPORT
|
|
const char *get_arch_regstr(unsigned int n);
|
|
#endif
|
|
|
|
#ifdef HAVE_ARCH_REGS_QUERY_REGISTER_OFFSET
|
|
/*
|
|
* Arch should support fetching the offset of a register in pt_regs
|
|
* by its name. See kernel's regs_query_register_offset in
|
|
* arch/xxx/kernel/ptrace.c.
|
|
*/
|
|
int regs_query_register_offset(const char *name);
|
|
#endif
|
|
#endif
|