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