File Index
Files and directories
Sign in
FILE

perf_regs_x86.c

File preview with syntax highlighting.

linux-6.19.14/tools/perf/util/perf-regs-arch/perf_regs_x86.c C
 1// SPDX-License-Identifier: GPL-2.0
 2
 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 XMM
79	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}
~/ Read-only file preview.