1#ifndef _ASM_PARISC_FTRACE_H 2#define _ASM_PARISC_FTRACE_H 3 4#ifndef __ASSEMBLY__ 5extern void mcount(void); 6 7/* 8 * Stack of return addresses for functions of a thread. 9 * Used in struct thread_info 10 */ 11struct ftrace_ret_stack { 12 unsigned long ret; 13 unsigned long func; 14 unsigned long long calltime; 15}; 16 17/* 18 * Primary handler of a function return. 19 * It relays on ftrace_return_to_handler. 20 * Defined in entry.S 21 */ 22extern void return_to_handler(void); 23 24 25extern unsigned long return_address(unsigned int); 26 27#define HAVE_ARCH_CALLER_ADDR 28 29#define CALLER_ADDR0 ((unsigned long)__builtin_return_address(0)) 30#define CALLER_ADDR1 return_address(1) 31#define CALLER_ADDR2 return_address(2) 32#define CALLER_ADDR3 return_address(3) 33#define CALLER_ADDR4 return_address(4) 34#define CALLER_ADDR5 return_address(5) 35#define CALLER_ADDR6 return_address(6) 36 37#endif /* __ASSEMBLY__ */ 38 39#endif /* _ASM_PARISC_FTRACE_H */ 40