perf_event.h 850 B

123456789101112131415161718192021222324252627282930
  1. /*
  2. * linux/arch/arm/include/asm/perf_event.h
  3. *
  4. * Copyright (C) 2009 picoChip Designs Ltd, Jamie Iles
  5. *
  6. * This program is free software; you can redistribute it and/or modify
  7. * it under the terms of the GNU General Public License version 2 as
  8. * published by the Free Software Foundation.
  9. *
  10. */
  11. #ifndef __ARM_PERF_EVENT_H__
  12. #define __ARM_PERF_EVENT_H__
  13. #ifdef CONFIG_PERF_EVENTS
  14. struct pt_regs;
  15. extern unsigned long perf_instruction_pointer(struct pt_regs *regs);
  16. extern unsigned long perf_misc_flags(struct pt_regs *regs);
  17. #define perf_misc_flags(regs) perf_misc_flags(regs)
  18. #endif
  19. #define perf_arch_fetch_caller_regs(regs, __ip) { \
  20. (regs)->ARM_pc = (__ip); \
  21. (regs)->ARM_fp = (unsigned long) __builtin_frame_address(0); \
  22. (regs)->ARM_sp = current_stack_pointer; \
  23. (regs)->ARM_cpsr = SVC_MODE; \
  24. }
  25. #endif /* __ARM_PERF_EVENT_H__ */