^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) #ifndef _PERF_DWARF_REGS_H_
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) #define _PERF_DWARF_REGS_H_
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) #ifdef HAVE_DWARF_SUPPORT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) const char *get_arch_regstr(unsigned int n);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) * get_dwarf_regstr - Returns ftrace register string from DWARF regnum
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) * n: DWARF register number
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) * machine: ELF machine signature (EM_*)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) const char *get_dwarf_regstr(unsigned int n, unsigned int machine);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) #ifdef HAVE_ARCH_REGS_QUERY_REGISTER_OFFSET
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) * Arch should support fetching the offset of a register in pt_regs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) * by its name. See kernel's regs_query_register_offset in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) * arch/xxx/kernel/ptrace.c.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) int regs_query_register_offset(const char *name);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) #endif