1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef S390_DWARF_REGS_TABLE_H 3 #define S390_DWARF_REGS_TABLE_H 4 5 #undef REG_DWARFNUM_NAME 6 #define REG_DWARFNUM_NAME(reg, idx) [idx] = "%" #reg 7 8 /* 9 * For reference, see DWARF register mapping: 10 * http://refspecs.linuxfoundation.org/ELF/zSeries/lzsabi0_s390/x1542.html 11 */ 12 static const char * const s390_dwarf_regs[] = { 13 "%r0", "%r1", "%r2", "%r3", "%r4", "%r5", "%r6", "%r7", 14 "%r8", "%r9", "%r10", "%r11", "%r12", "%r13", "%r14", "%r15", 15 REG_DWARFNUM_NAME(f0, 16), 16 REG_DWARFNUM_NAME(f1, 20), 17 REG_DWARFNUM_NAME(f2, 17), 18 REG_DWARFNUM_NAME(f3, 21), 19 REG_DWARFNUM_NAME(f4, 18), 20 REG_DWARFNUM_NAME(f5, 22), 21 REG_DWARFNUM_NAME(f6, 19), 22 REG_DWARFNUM_NAME(f7, 23), 23 REG_DWARFNUM_NAME(f8, 24), 24 REG_DWARFNUM_NAME(f9, 28), 25 REG_DWARFNUM_NAME(f10, 25), 26 REG_DWARFNUM_NAME(f11, 29), 27 REG_DWARFNUM_NAME(f12, 26), 28 REG_DWARFNUM_NAME(f13, 30), 29 REG_DWARFNUM_NAME(f14, 27), 30 REG_DWARFNUM_NAME(f15, 31), 31 REG_DWARFNUM_NAME(c0, 32), 32 REG_DWARFNUM_NAME(c1, 33), 33 REG_DWARFNUM_NAME(c2, 34), 34 REG_DWARFNUM_NAME(c3, 35), 35 REG_DWARFNUM_NAME(c4, 36), 36 REG_DWARFNUM_NAME(c5, 37), 37 REG_DWARFNUM_NAME(c6, 38), 38 REG_DWARFNUM_NAME(c7, 39), 39 REG_DWARFNUM_NAME(c8, 40), 40 REG_DWARFNUM_NAME(c9, 41), 41 REG_DWARFNUM_NAME(c10, 42), 42 REG_DWARFNUM_NAME(c11, 43), 43 REG_DWARFNUM_NAME(c12, 44), 44 REG_DWARFNUM_NAME(c13, 45), 45 REG_DWARFNUM_NAME(c14, 46), 46 REG_DWARFNUM_NAME(c15, 47), 47 REG_DWARFNUM_NAME(a0, 48), 48 REG_DWARFNUM_NAME(a1, 49), 49 REG_DWARFNUM_NAME(a2, 50), 50 REG_DWARFNUM_NAME(a3, 51), 51 REG_DWARFNUM_NAME(a4, 52), 52 REG_DWARFNUM_NAME(a5, 53), 53 REG_DWARFNUM_NAME(a6, 54), 54 REG_DWARFNUM_NAME(a7, 55), 55 REG_DWARFNUM_NAME(a8, 56), 56 REG_DWARFNUM_NAME(a9, 57), 57 REG_DWARFNUM_NAME(a10, 58), 58 REG_DWARFNUM_NAME(a11, 59), 59 REG_DWARFNUM_NAME(a12, 60), 60 REG_DWARFNUM_NAME(a13, 61), 61 REG_DWARFNUM_NAME(a14, 62), 62 REG_DWARFNUM_NAME(a15, 63), 63 REG_DWARFNUM_NAME(pswm, 64), 64 REG_DWARFNUM_NAME(pswa, 65), 65 }; 66 67 #ifdef DEFINE_DWARF_REGSTR_TABLE 68 /* This is included in perf/util/dwarf-regs.c */ 69 70 #define s390_regstr_tbl s390_dwarf_regs 71 72 #endif /* DEFINE_DWARF_REGSTR_TABLE */ 73 #endif /* S390_DWARF_REGS_TABLE_H */ 74