| #ifndef _ASM_PARISC_FTRACE_H | |
| #define _ASM_PARISC_FTRACE_H | |
| #ifndef __ASSEMBLY__ | |
| extern void mcount(void); | |
| /* | |
| * Stack of return addresses for functions of a thread. | |
| * Used in struct thread_info | |
| */ | |
| struct ftrace_ret_stack { | |
| unsigned long ret; | |
| unsigned long func; | |
| unsigned long long calltime; | |
| }; | |
| /* | |
| * Primary handler of a function return. | |
| * It relays on ftrace_return_to_handler. | |
| * Defined in entry.S | |
| */ | |
| extern void return_to_handler(void); | |
| extern unsigned long return_address(unsigned int); | |
| #define HAVE_ARCH_CALLER_ADDR | |
| #define CALLER_ADDR0 ((unsigned long)__builtin_return_address(0)) | |
| #define CALLER_ADDR1 return_address(1) | |
| #define CALLER_ADDR2 return_address(2) | |
| #define CALLER_ADDR3 return_address(3) | |
| #define CALLER_ADDR4 return_address(4) | |
| #define CALLER_ADDR5 return_address(5) | |
| #define CALLER_ADDR6 return_address(6) | |
| #endif /* __ASSEMBLY__ */ | |
| #endif /* _ASM_PARISC_FTRACE_H */ |