summaryrefslogtreecommitdiff
path: root/arch/csky/include/asm/perf_event.h
blob: 572093e110017156b7052cd2a5e6c80615f2b79b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/* SPDX-License-Identifier: GPL-2.0 */
// Copyright (C) 2018 Hangzhou C-SKY Microsystems co.,ltd.

#ifndef __ASM_CSKY_PERF_EVENT_H
#define __ASM_CSKY_PERF_EVENT_H

#include <abi/regdef.h>

#define perf_arch_fetch_caller_regs(regs, __ip) { \
	(regs)->pc = (__ip); \
	regs_fp(regs) = (unsigned long) __builtin_frame_address(0); \
	asm volatile("mov %0, sp\n":"=r"((regs)->usp)); \
}

#endif /* __ASM_PERF_EVENT_ELF_H */