Path: blob/master/tools/perf/arch/powerpc/util/unwind-libunwind.c
29274 views
// SPDX-License-Identifier: GPL-2.0-or-later1/*2* Copyright 2016 Chandan Kumar, IBM Corporation.3*/45#include <errno.h>6#include <libunwind.h>7#include <asm/perf_regs.h>8#include "../../util/unwind.h"9#include "../../util/debug.h"1011int libunwind__arch_reg_id(int regnum)12{13switch (regnum) {14case UNW_PPC64_R0:15return PERF_REG_POWERPC_R0;16case UNW_PPC64_R1:17return PERF_REG_POWERPC_R1;18case UNW_PPC64_R2:19return PERF_REG_POWERPC_R2;20case UNW_PPC64_R3:21return PERF_REG_POWERPC_R3;22case UNW_PPC64_R4:23return PERF_REG_POWERPC_R4;24case UNW_PPC64_R5:25return PERF_REG_POWERPC_R5;26case UNW_PPC64_R6:27return PERF_REG_POWERPC_R6;28case UNW_PPC64_R7:29return PERF_REG_POWERPC_R7;30case UNW_PPC64_R8:31return PERF_REG_POWERPC_R8;32case UNW_PPC64_R9:33return PERF_REG_POWERPC_R9;34case UNW_PPC64_R10:35return PERF_REG_POWERPC_R10;36case UNW_PPC64_R11:37return PERF_REG_POWERPC_R11;38case UNW_PPC64_R12:39return PERF_REG_POWERPC_R12;40case UNW_PPC64_R13:41return PERF_REG_POWERPC_R13;42case UNW_PPC64_R14:43return PERF_REG_POWERPC_R14;44case UNW_PPC64_R15:45return PERF_REG_POWERPC_R15;46case UNW_PPC64_R16:47return PERF_REG_POWERPC_R16;48case UNW_PPC64_R17:49return PERF_REG_POWERPC_R17;50case UNW_PPC64_R18:51return PERF_REG_POWERPC_R18;52case UNW_PPC64_R19:53return PERF_REG_POWERPC_R19;54case UNW_PPC64_R20:55return PERF_REG_POWERPC_R20;56case UNW_PPC64_R21:57return PERF_REG_POWERPC_R21;58case UNW_PPC64_R22:59return PERF_REG_POWERPC_R22;60case UNW_PPC64_R23:61return PERF_REG_POWERPC_R23;62case UNW_PPC64_R24:63return PERF_REG_POWERPC_R24;64case UNW_PPC64_R25:65return PERF_REG_POWERPC_R25;66case UNW_PPC64_R26:67return PERF_REG_POWERPC_R26;68case UNW_PPC64_R27:69return PERF_REG_POWERPC_R27;70case UNW_PPC64_R28:71return PERF_REG_POWERPC_R28;72case UNW_PPC64_R29:73return PERF_REG_POWERPC_R29;74case UNW_PPC64_R30:75return PERF_REG_POWERPC_R30;76case UNW_PPC64_R31:77return PERF_REG_POWERPC_R31;78case UNW_PPC64_LR:79return PERF_REG_POWERPC_LINK;80case UNW_PPC64_CTR:81return PERF_REG_POWERPC_CTR;82case UNW_PPC64_XER:83return PERF_REG_POWERPC_XER;84case UNW_PPC64_NIP:85return PERF_REG_POWERPC_NIP;86default:87pr_err("unwind: invalid reg id %d\n", regnum);88return -EINVAL;89}90return -EINVAL;91}929394