1 #ifndef ARCH_PERF_REGS_H 2 #define ARCH_PERF_REGS_H 3 4 #include <stdlib.h> 5 #include <linux/types.h> 6 #include <../../../../arch/s390/include/uapi/asm/perf_regs.h> 7 8 void perf_regs_load(u64 *regs); 9 10 #define PERF_REGS_MASK ((1ULL << PERF_REG_S390_MAX) - 1) 11 #define PERF_REGS_MAX PERF_REG_S390_MAX 12 #define PERF_SAMPLE_REGS_ABI PERF_SAMPLE_REGS_ABI_64 13 14 #define PERF_REG_IP PERF_REG_S390_PC 15 #define PERF_REG_SP PERF_REG_S390_R15 16 17 static inline const char *perf_reg_name(int id) 18 { 19 switch (id) { 20 case PERF_REG_S390_R0: 21 return "R0"; 22 case PERF_REG_S390_R1: 23 return "R1"; 24 case PERF_REG_S390_R2: 25 return "R2"; 26 case PERF_REG_S390_R3: 27 return "R3"; 28 case PERF_REG_S390_R4: 29 return "R4"; 30 case PERF_REG_S390_R5: 31 return "R5"; 32 case PERF_REG_S390_R6: 33 return "R6"; 34 case PERF_REG_S390_R7: 35 return "R7"; 36 case PERF_REG_S390_R8: 37 return "R8"; 38 case PERF_REG_S390_R9: 39 return "R9"; 40 case PERF_REG_S390_R10: 41 return "R10"; 42 case PERF_REG_S390_R11: 43 return "R11"; 44 case PERF_REG_S390_R12: 45 return "R12"; 46 case PERF_REG_S390_R13: 47 return "R13"; 48 case PERF_REG_S390_R14: 49 return "R14"; 50 case PERF_REG_S390_R15: 51 return "R15"; 52 case PERF_REG_S390_FP0: 53 return "FP0"; 54 case PERF_REG_S390_FP1: 55 return "FP1"; 56 case PERF_REG_S390_FP2: 57 return "FP2"; 58 case PERF_REG_S390_FP3: 59 return "FP3"; 60 case PERF_REG_S390_FP4: 61 return "FP4"; 62 case PERF_REG_S390_FP5: 63 return "FP5"; 64 case PERF_REG_S390_FP6: 65 return "FP6"; 66 case PERF_REG_S390_FP7: 67 return "FP7"; 68 case PERF_REG_S390_FP8: 69 return "FP8"; 70 case PERF_REG_S390_FP9: 71 return "FP9"; 72 case PERF_REG_S390_FP10: 73 return "FP10"; 74 case PERF_REG_S390_FP11: 75 return "FP11"; 76 case PERF_REG_S390_FP12: 77 return "FP12"; 78 case PERF_REG_S390_FP13: 79 return "FP13"; 80 case PERF_REG_S390_FP14: 81 return "FP14"; 82 case PERF_REG_S390_FP15: 83 return "FP15"; 84 case PERF_REG_S390_MASK: 85 return "MASK"; 86 case PERF_REG_S390_PC: 87 return "PC"; 88 default: 89 return NULL; 90 } 91 92 return NULL; 93 } 94 95 #endif /* ARCH_PERF_REGS_H */ 96