Commit | Line | Data |
---|---|---|
d2912cb1 | 1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
7ada189f JI |
2 | /* |
3 | * linux/arch/arm/include/asm/perf_event.h | |
4 | * | |
5 | * Copyright (C) 2009 picoChip Designs Ltd, Jamie Iles | |
7ada189f JI |
6 | */ |
7 | ||
8 | #ifndef __ARM_PERF_EVENT_H__ | |
9 | #define __ARM_PERF_EVENT_H__ | |
10 | ||
d39976f0 | 11 | #ifdef CONFIG_PERF_EVENTS |
e50c5418 MZ |
12 | struct pt_regs; |
13 | extern unsigned long perf_instruction_pointer(struct pt_regs *regs); | |
14 | extern unsigned long perf_misc_flags(struct pt_regs *regs); | |
15 | #define perf_misc_flags(regs) perf_misc_flags(regs) | |
c7cc504b | 16 | #endif |
e50c5418 | 17 | |
b3eac026 HP |
18 | #define perf_arch_fetch_caller_regs(regs, __ip) { \ |
19 | (regs)->ARM_pc = (__ip); \ | |
20 | (regs)->ARM_fp = (unsigned long) __builtin_frame_address(0); \ | |
21 | (regs)->ARM_sp = current_stack_pointer; \ | |
22 | (regs)->ARM_cpsr = SVC_MODE; \ | |
23 | } | |
24 | ||
7ada189f | 25 | #endif /* __ARM_PERF_EVENT_H__ */ |