92 lines
1.9 KiB
C
92 lines
1.9 KiB
C
// SPDX-License-Identifier: GPL-2.0
|
|
|
|
#ifdef HAVE_PERF_REGS_SUPPORT
|
|
|
|
#include "../perf_regs.h"
|
|
#include "../../../arch/loongarch/include/uapi/asm/perf_regs.h"
|
|
|
|
const char *__perf_reg_name_loongarch(int id)
|
|
{
|
|
switch (id) {
|
|
case PERF_REG_LOONGARCH_PC:
|
|
return "PC";
|
|
case PERF_REG_LOONGARCH_R1:
|
|
return "%r1";
|
|
case PERF_REG_LOONGARCH_R2:
|
|
return "%r2";
|
|
case PERF_REG_LOONGARCH_R3:
|
|
return "%r3";
|
|
case PERF_REG_LOONGARCH_R4:
|
|
return "%r4";
|
|
case PERF_REG_LOONGARCH_R5:
|
|
return "%r5";
|
|
case PERF_REG_LOONGARCH_R6:
|
|
return "%r6";
|
|
case PERF_REG_LOONGARCH_R7:
|
|
return "%r7";
|
|
case PERF_REG_LOONGARCH_R8:
|
|
return "%r8";
|
|
case PERF_REG_LOONGARCH_R9:
|
|
return "%r9";
|
|
case PERF_REG_LOONGARCH_R10:
|
|
return "%r10";
|
|
case PERF_REG_LOONGARCH_R11:
|
|
return "%r11";
|
|
case PERF_REG_LOONGARCH_R12:
|
|
return "%r12";
|
|
case PERF_REG_LOONGARCH_R13:
|
|
return "%r13";
|
|
case PERF_REG_LOONGARCH_R14:
|
|
return "%r14";
|
|
case PERF_REG_LOONGARCH_R15:
|
|
return "%r15";
|
|
case PERF_REG_LOONGARCH_R16:
|
|
return "%r16";
|
|
case PERF_REG_LOONGARCH_R17:
|
|
return "%r17";
|
|
case PERF_REG_LOONGARCH_R18:
|
|
return "%r18";
|
|
case PERF_REG_LOONGARCH_R19:
|
|
return "%r19";
|
|
case PERF_REG_LOONGARCH_R20:
|
|
return "%r20";
|
|
case PERF_REG_LOONGARCH_R21:
|
|
return "%r21";
|
|
case PERF_REG_LOONGARCH_R22:
|
|
return "%r22";
|
|
case PERF_REG_LOONGARCH_R23:
|
|
return "%r23";
|
|
case PERF_REG_LOONGARCH_R24:
|
|
return "%r24";
|
|
case PERF_REG_LOONGARCH_R25:
|
|
return "%r25";
|
|
case PERF_REG_LOONGARCH_R26:
|
|
return "%r26";
|
|
case PERF_REG_LOONGARCH_R27:
|
|
return "%r27";
|
|
case PERF_REG_LOONGARCH_R28:
|
|
return "%r28";
|
|
case PERF_REG_LOONGARCH_R29:
|
|
return "%r29";
|
|
case PERF_REG_LOONGARCH_R30:
|
|
return "%r30";
|
|
case PERF_REG_LOONGARCH_R31:
|
|
return "%r31";
|
|
default:
|
|
break;
|
|
}
|
|
return NULL;
|
|
}
|
|
|
|
uint64_t __perf_reg_ip_loongarch(void)
|
|
{
|
|
return PERF_REG_LOONGARCH_PC;
|
|
}
|
|
|
|
uint64_t __perf_reg_sp_loongarch(void)
|
|
{
|
|
return PERF_REG_LOONGARCH_R3;
|
|
}
|
|
|
|
#endif
|