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