25 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2#ifndef ARCH_PERF_REGS_H3#define ARCH_PERF_REGS_H4 5#include <stdlib.h>6#include <linux/types.h>7#include <asm/perf_regs.h>8 9void perf_regs_load(u64 *regs);10 11#define PERF_REGS_MAX PERF_REG_X86_XMM_MAX12#ifndef HAVE_ARCH_X86_64_SUPPORT13#define PERF_REGS_MASK ((1ULL << PERF_REG_X86_32_MAX) - 1)14#define PERF_SAMPLE_REGS_ABI PERF_SAMPLE_REGS_ABI_3215#else16#define REG_NOSUPPORT ((1ULL << PERF_REG_X86_DS) | \17 (1ULL << PERF_REG_X86_ES) | \18 (1ULL << PERF_REG_X86_FS) | \19 (1ULL << PERF_REG_X86_GS))20#define PERF_REGS_MASK (((1ULL << PERF_REG_X86_64_MAX) - 1) & ~REG_NOSUPPORT)21#define PERF_SAMPLE_REGS_ABI PERF_SAMPLE_REGS_ABI_6422#endif23 24#endif /* ARCH_PERF_REGS_H */25