linux/tools/perf/arch/s390/include/dwarf-regs-table.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2#ifndef S390_DWARF_REGS_TABLE_H
   3#define S390_DWARF_REGS_TABLE_H
   4
   5#define REG_DWARFNUM_NAME(reg, idx)     [idx] = "%" #reg
   6
   7/*
   8 * For reference, see DWARF register mapping:
   9 * http://refspecs.linuxfoundation.org/ELF/zSeries/lzsabi0_s390/x1542.html
  10 */
  11static 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),
  64};
  65
  66#ifdef DEFINE_DWARF_REGSTR_TABLE
  67/* This is included in perf/util/dwarf-regs.c */
  68
  69#define s390_regstr_tbl s390_dwarf_regs
  70
  71#endif  /* DEFINE_DWARF_REGSTR_TABLE */
  72#endif  /* S390_DWARF_REGS_TABLE_H */
  73