treewide: remove redundant IS_ERR() before error code check
[linux/fpc-iii.git] / tools / perf / arch / csky / include / perf_regs.h
blob8f336ea1161af9d495f3d7629b0c6f4b4c2a7db5
1 /* SPDX-License-Identifier: GPL-2.0 */
2 // Copyright (C) 2019 Hangzhou C-SKY Microsystems co.,ltd.
4 #ifndef ARCH_PERF_REGS_H
5 #define ARCH_PERF_REGS_H
7 #include <stdlib.h>
8 #include <linux/types.h>
9 #include <asm/perf_regs.h>
11 #define PERF_REGS_MASK ((1ULL << PERF_REG_CSKY_MAX) - 1)
12 #define PERF_REGS_MAX PERF_REG_CSKY_MAX
13 #define PERF_SAMPLE_REGS_ABI PERF_SAMPLE_REGS_ABI_32
15 #define PERF_REG_IP PERF_REG_CSKY_PC
16 #define PERF_REG_SP PERF_REG_CSKY_SP
18 static inline const char *perf_reg_name(int id)
20 switch (id) {
21 case PERF_REG_CSKY_A0:
22 return "a0";
23 case PERF_REG_CSKY_A1:
24 return "a1";
25 case PERF_REG_CSKY_A2:
26 return "a2";
27 case PERF_REG_CSKY_A3:
28 return "a3";
29 case PERF_REG_CSKY_REGS0:
30 return "regs0";
31 case PERF_REG_CSKY_REGS1:
32 return "regs1";
33 case PERF_REG_CSKY_REGS2:
34 return "regs2";
35 case PERF_REG_CSKY_REGS3:
36 return "regs3";
37 case PERF_REG_CSKY_REGS4:
38 return "regs4";
39 case PERF_REG_CSKY_REGS5:
40 return "regs5";
41 case PERF_REG_CSKY_REGS6:
42 return "regs6";
43 case PERF_REG_CSKY_REGS7:
44 return "regs7";
45 case PERF_REG_CSKY_REGS8:
46 return "regs8";
47 case PERF_REG_CSKY_REGS9:
48 return "regs9";
49 case PERF_REG_CSKY_SP:
50 return "sp";
51 case PERF_REG_CSKY_LR:
52 return "lr";
53 case PERF_REG_CSKY_PC:
54 return "pc";
55 #if defined(__CSKYABIV2__)
56 case PERF_REG_CSKY_EXREGS0:
57 return "exregs0";
58 case PERF_REG_CSKY_EXREGS1:
59 return "exregs1";
60 case PERF_REG_CSKY_EXREGS2:
61 return "exregs2";
62 case PERF_REG_CSKY_EXREGS3:
63 return "exregs3";
64 case PERF_REG_CSKY_EXREGS4:
65 return "exregs4";
66 case PERF_REG_CSKY_EXREGS5:
67 return "exregs5";
68 case PERF_REG_CSKY_EXREGS6:
69 return "exregs6";
70 case PERF_REG_CSKY_EXREGS7:
71 return "exregs7";
72 case PERF_REG_CSKY_EXREGS8:
73 return "exregs8";
74 case PERF_REG_CSKY_EXREGS9:
75 return "exregs9";
76 case PERF_REG_CSKY_EXREGS10:
77 return "exregs10";
78 case PERF_REG_CSKY_EXREGS11:
79 return "exregs11";
80 case PERF_REG_CSKY_EXREGS12:
81 return "exregs12";
82 case PERF_REG_CSKY_EXREGS13:
83 return "exregs13";
84 case PERF_REG_CSKY_EXREGS14:
85 return "exregs14";
86 case PERF_REG_CSKY_TLS:
87 return "tls";
88 case PERF_REG_CSKY_HI:
89 return "hi";
90 case PERF_REG_CSKY_LO:
91 return "lo";
92 #endif
93 default:
94 return NULL;
97 return NULL;
100 #endif /* ARCH_PERF_REGS_H */