arch/arm64/include/uapi/asm/perf_regs.h

Source file repositories/reference/linux-study-clean/arch/arm64/include/uapi/asm/perf_regs.h

File Facts

System
Linux kernel
Corpus path
arch/arm64/include/uapi/asm/perf_regs.h
Extension
.h
Size
1070 bytes
Lines
49
Domain
Architecture Layer
Bucket
arch/arm64
Inferred role
Architecture Layer: implementation source
Status
source implementation candidate

Why This File Exists

CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.

Dependency Surface

Detected Declarations

Annotated Snippet

#ifndef _ASM_ARM64_PERF_REGS_H
#define _ASM_ARM64_PERF_REGS_H

enum perf_event_arm_regs {
	PERF_REG_ARM64_X0,
	PERF_REG_ARM64_X1,
	PERF_REG_ARM64_X2,
	PERF_REG_ARM64_X3,
	PERF_REG_ARM64_X4,
	PERF_REG_ARM64_X5,
	PERF_REG_ARM64_X6,
	PERF_REG_ARM64_X7,
	PERF_REG_ARM64_X8,
	PERF_REG_ARM64_X9,
	PERF_REG_ARM64_X10,
	PERF_REG_ARM64_X11,
	PERF_REG_ARM64_X12,
	PERF_REG_ARM64_X13,
	PERF_REG_ARM64_X14,
	PERF_REG_ARM64_X15,
	PERF_REG_ARM64_X16,
	PERF_REG_ARM64_X17,
	PERF_REG_ARM64_X18,
	PERF_REG_ARM64_X19,
	PERF_REG_ARM64_X20,
	PERF_REG_ARM64_X21,
	PERF_REG_ARM64_X22,
	PERF_REG_ARM64_X23,
	PERF_REG_ARM64_X24,
	PERF_REG_ARM64_X25,
	PERF_REG_ARM64_X26,
	PERF_REG_ARM64_X27,
	PERF_REG_ARM64_X28,
	PERF_REG_ARM64_X29,
	PERF_REG_ARM64_LR,
	PERF_REG_ARM64_SP,
	PERF_REG_ARM64_PC,
	PERF_REG_ARM64_MAX,

	/* Extended/pseudo registers */
	PERF_REG_ARM64_VG = 46,				/* SVE Vector Granule */
	PERF_REG_ARM64_EXTENDED_MAX
};

#define PERF_REG_EXTENDED_MASK	(1ULL << PERF_REG_ARM64_VG)

#endif /* _ASM_ARM64_PERF_REGS_H */

Annotation

Implementation Notes