root/tools/perf/arch/arm/util/unwind-libunwind.c

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

DEFINITIONS

This source file includes following definitions.
  1. libunwind__arch_reg_id

   1 // SPDX-License-Identifier: GPL-2.0
   2 
   3 #include <errno.h>
   4 #include <libunwind.h>
   5 #include "perf_regs.h"
   6 #include "../../util/unwind.h"
   7 #include "../../util/debug.h"
   8 
   9 int libunwind__arch_reg_id(int regnum)
  10 {
  11         switch (regnum) {
  12         case UNW_ARM_R0:
  13                 return PERF_REG_ARM_R0;
  14         case UNW_ARM_R1:
  15                 return PERF_REG_ARM_R1;
  16         case UNW_ARM_R2:
  17                 return PERF_REG_ARM_R2;
  18         case UNW_ARM_R3:
  19                 return PERF_REG_ARM_R3;
  20         case UNW_ARM_R4:
  21                 return PERF_REG_ARM_R4;
  22         case UNW_ARM_R5:
  23                 return PERF_REG_ARM_R5;
  24         case UNW_ARM_R6:
  25                 return PERF_REG_ARM_R6;
  26         case UNW_ARM_R7:
  27                 return PERF_REG_ARM_R7;
  28         case UNW_ARM_R8:
  29                 return PERF_REG_ARM_R8;
  30         case UNW_ARM_R9:
  31                 return PERF_REG_ARM_R9;
  32         case UNW_ARM_R10:
  33                 return PERF_REG_ARM_R10;
  34         case UNW_ARM_R11:
  35                 return PERF_REG_ARM_FP;
  36         case UNW_ARM_R12:
  37                 return PERF_REG_ARM_IP;
  38         case UNW_ARM_R13:
  39                 return PERF_REG_ARM_SP;
  40         case UNW_ARM_R14:
  41                 return PERF_REG_ARM_LR;
  42         case UNW_ARM_R15:
  43                 return PERF_REG_ARM_PC;
  44         default:
  45                 pr_err("unwind: invalid reg id %d\n", regnum);
  46                 return -EINVAL;
  47         }
  48 
  49         return -EINVAL;
  50 }

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