]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/blame - tools/perf/arch/arm/include/perf_regs.h
perf tools: Fix arm64 build error with gcc-11
[mirror_ubuntu-hirsute-kernel.git] / tools / perf / arch / arm / include / perf_regs.h
CommitLineData
b2441318 1/* SPDX-License-Identifier: GPL-2.0 */
7495f374
WD
2#ifndef ARCH_PERF_REGS_H
3#define ARCH_PERF_REGS_H
4
5#include <stdlib.h>
21a8b756 6#include <linux/types.h>
7495f374
WD
7#include <asm/perf_regs.h>
8
3418f966
JP
9void perf_regs_load(u64 *regs);
10
7495f374 11#define PERF_REGS_MASK ((1ULL << PERF_REG_ARM_MAX) - 1)
90fa9deb
JP
12#define PERF_REGS_MAX PERF_REG_ARM_MAX
13#define PERF_SAMPLE_REGS_ABI PERF_SAMPLE_REGS_ABI_32
14
7495f374
WD
15#define PERF_REG_IP PERF_REG_ARM_PC
16#define PERF_REG_SP PERF_REG_ARM_SP
17
92186c88 18static inline const char *__perf_reg_name(int id)
7495f374
WD
19{
20 switch (id) {
21 case PERF_REG_ARM_R0:
22 return "r0";
23 case PERF_REG_ARM_R1:
24 return "r1";
25 case PERF_REG_ARM_R2:
26 return "r2";
27 case PERF_REG_ARM_R3:
28 return "r3";
29 case PERF_REG_ARM_R4:
30 return "r4";
31 case PERF_REG_ARM_R5:
32 return "r5";
33 case PERF_REG_ARM_R6:
34 return "r6";
35 case PERF_REG_ARM_R7:
36 return "r7";
37 case PERF_REG_ARM_R8:
38 return "r8";
39 case PERF_REG_ARM_R9:
40 return "r9";
41 case PERF_REG_ARM_R10:
42 return "r10";
43 case PERF_REG_ARM_FP:
44 return "fp";
45 case PERF_REG_ARM_IP:
46 return "ip";
47 case PERF_REG_ARM_SP:
48 return "sp";
49 case PERF_REG_ARM_LR:
50 return "lr";
51 case PERF_REG_ARM_PC:
52 return "pc";
53 default:
54 return NULL;
55 }
56
57 return NULL;
58}
59
60#endif /* ARCH_PERF_REGS_H */