root/tools/perf/arch/csky/include/perf_regs.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


DEFINITIONS

This source file includes following definitions.
  1. perf_reg_name

   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 // Copyright (C) 2019 Hangzhou C-SKY Microsystems co.,ltd.
   3 
   4 #ifndef ARCH_PERF_REGS_H
   5 #define ARCH_PERF_REGS_H
   6 
   7 #include <stdlib.h>
   8 #include <linux/types.h>
   9 #include <asm/perf_regs.h>
  10 
  11 #define PERF_REGS_MASK  ((1ULL << PERF_REG_CSKY_MAX) - 1)
  12 #define PERF_REGS_MAX   PERF_REG_CSKY_MAX
  13 #define PERF_SAMPLE_REGS_ABI    PERF_SAMPLE_REGS_ABI_32
  14 
  15 #define PERF_REG_IP     PERF_REG_CSKY_PC
  16 #define PERF_REG_SP     PERF_REG_CSKY_SP
  17 
  18 static inline const char *perf_reg_name(int id)
  19 {
  20         switch (id) {
  21         case PERF_REG_CSKY_A0:
  22                 return "a0";
  23         case PERF_REG_CSKY_A1:
  24                 return "a1";
  25         case PERF_REG_CSKY_A2:
  26                 return "a2";
  27         case PERF_REG_CSKY_A3:
  28                 return "a3";
  29         case PERF_REG_CSKY_REGS0:
  30                 return "regs0";
  31         case PERF_REG_CSKY_REGS1:
  32                 return "regs1";
  33         case PERF_REG_CSKY_REGS2:
  34                 return "regs2";
  35         case PERF_REG_CSKY_REGS3:
  36                 return "regs3";
  37         case PERF_REG_CSKY_REGS4:
  38                 return "regs4";
  39         case PERF_REG_CSKY_REGS5:
  40                 return "regs5";
  41         case PERF_REG_CSKY_REGS6:
  42                 return "regs6";
  43         case PERF_REG_CSKY_REGS7:
  44                 return "regs7";
  45         case PERF_REG_CSKY_REGS8:
  46                 return "regs8";
  47         case PERF_REG_CSKY_REGS9:
  48                 return "regs9";
  49         case PERF_REG_CSKY_SP:
  50                 return "sp";
  51         case PERF_REG_CSKY_LR:
  52                 return "lr";
  53         case PERF_REG_CSKY_PC:
  54                 return "pc";
  55 #if defined(__CSKYABIV2__)
  56         case PERF_REG_CSKY_EXREGS0:
  57                 return "exregs0";
  58         case PERF_REG_CSKY_EXREGS1:
  59                 return "exregs1";
  60         case PERF_REG_CSKY_EXREGS2:
  61                 return "exregs2";
  62         case PERF_REG_CSKY_EXREGS3:
  63                 return "exregs3";
  64         case PERF_REG_CSKY_EXREGS4:
  65                 return "exregs4";
  66         case PERF_REG_CSKY_EXREGS5:
  67                 return "exregs5";
  68         case PERF_REG_CSKY_EXREGS6:
  69                 return "exregs6";
  70         case PERF_REG_CSKY_EXREGS7:
  71                 return "exregs7";
  72         case PERF_REG_CSKY_EXREGS8:
  73                 return "exregs8";
  74         case PERF_REG_CSKY_EXREGS9:
  75                 return "exregs9";
  76         case PERF_REG_CSKY_EXREGS10:
  77                 return "exregs10";
  78         case PERF_REG_CSKY_EXREGS11:
  79                 return "exregs11";
  80         case PERF_REG_CSKY_EXREGS12:
  81                 return "exregs12";
  82         case PERF_REG_CSKY_EXREGS13:
  83                 return "exregs13";
  84         case PERF_REG_CSKY_EXREGS14:
  85                 return "exregs14";
  86         case PERF_REG_CSKY_TLS:
  87                 return "tls";
  88         case PERF_REG_CSKY_HI:
  89                 return "hi";
  90         case PERF_REG_CSKY_LO:
  91                 return "lo";
  92 #endif
  93         default:
  94                 return NULL;
  95         }
  96 
  97         return NULL;
  98 }
  99 
 100 #endif /* ARCH_PERF_REGS_H */

/* [<][>][^][v][top][bottom][index][help] */