Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux...
[linux/fpc-iii.git] / tools / perf / arch / arm / include / perf_regs.h
blobf619c9c5a4bff402a6c6c90d80134a6a53f207a3
1 #ifndef ARCH_PERF_REGS_H
2 #define ARCH_PERF_REGS_H
4 #include <stdlib.h>
5 #include <linux/types.h>
6 #include <asm/perf_regs.h>
8 void perf_regs_load(u64 *regs);
10 #define PERF_REGS_MASK ((1ULL << PERF_REG_ARM_MAX) - 1)
11 #define PERF_REGS_MAX PERF_REG_ARM_MAX
12 #define PERF_SAMPLE_REGS_ABI PERF_SAMPLE_REGS_ABI_32
14 #define PERF_REG_IP PERF_REG_ARM_PC
15 #define PERF_REG_SP PERF_REG_ARM_SP
17 static inline const char *perf_reg_name(int id)
19 switch (id) {
20 case PERF_REG_ARM_R0:
21 return "r0";
22 case PERF_REG_ARM_R1:
23 return "r1";
24 case PERF_REG_ARM_R2:
25 return "r2";
26 case PERF_REG_ARM_R3:
27 return "r3";
28 case PERF_REG_ARM_R4:
29 return "r4";
30 case PERF_REG_ARM_R5:
31 return "r5";
32 case PERF_REG_ARM_R6:
33 return "r6";
34 case PERF_REG_ARM_R7:
35 return "r7";
36 case PERF_REG_ARM_R8:
37 return "r8";
38 case PERF_REG_ARM_R9:
39 return "r9";
40 case PERF_REG_ARM_R10:
41 return "r10";
42 case PERF_REG_ARM_FP:
43 return "fp";
44 case PERF_REG_ARM_IP:
45 return "ip";
46 case PERF_REG_ARM_SP:
47 return "sp";
48 case PERF_REG_ARM_LR:
49 return "lr";
50 case PERF_REG_ARM_PC:
51 return "pc";
52 default:
53 return NULL;
56 return NULL;
59 #endif /* ARCH_PERF_REGS_H */