brintos

brintos / linux-shallow public Read only

0
0
Text · 1.5 KiB · 708954a Raw
95 lines · c
1// SPDX-License-Identifier: GPL-2.02 3#include "../perf_regs.h"4#include "../../../arch/x86/include/uapi/asm/perf_regs.h"5 6const char *__perf_reg_name_x86(int id)7{8	switch (id) {9	case PERF_REG_X86_AX:10		return "AX";11	case PERF_REG_X86_BX:12		return "BX";13	case PERF_REG_X86_CX:14		return "CX";15	case PERF_REG_X86_DX:16		return "DX";17	case PERF_REG_X86_SI:18		return "SI";19	case PERF_REG_X86_DI:20		return "DI";21	case PERF_REG_X86_BP:22		return "BP";23	case PERF_REG_X86_SP:24		return "SP";25	case PERF_REG_X86_IP:26		return "IP";27	case PERF_REG_X86_FLAGS:28		return "FLAGS";29	case PERF_REG_X86_CS:30		return "CS";31	case PERF_REG_X86_SS:32		return "SS";33	case PERF_REG_X86_DS:34		return "DS";35	case PERF_REG_X86_ES:36		return "ES";37	case PERF_REG_X86_FS:38		return "FS";39	case PERF_REG_X86_GS:40		return "GS";41	case PERF_REG_X86_R8:42		return "R8";43	case PERF_REG_X86_R9:44		return "R9";45	case PERF_REG_X86_R10:46		return "R10";47	case PERF_REG_X86_R11:48		return "R11";49	case PERF_REG_X86_R12:50		return "R12";51	case PERF_REG_X86_R13:52		return "R13";53	case PERF_REG_X86_R14:54		return "R14";55	case PERF_REG_X86_R15:56		return "R15";57 58#define XMM(x) \59	case PERF_REG_X86_XMM ## x:	\60	case PERF_REG_X86_XMM ## x + 1:	\61		return "XMM" #x;62	XMM(0)63	XMM(1)64	XMM(2)65	XMM(3)66	XMM(4)67	XMM(5)68	XMM(6)69	XMM(7)70	XMM(8)71	XMM(9)72	XMM(10)73	XMM(11)74	XMM(12)75	XMM(13)76	XMM(14)77	XMM(15)78#undef XMM79	default:80		return NULL;81	}82 83	return NULL;84}85 86uint64_t __perf_reg_ip_x86(void)87{88	return PERF_REG_X86_IP;89}90 91uint64_t __perf_reg_sp_x86(void)92{93	return PERF_REG_X86_SP;94}95