perf_event.h 708 B

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