xref: /openbmc/linux/arch/sparc/include/asm/ftrace.h (revision ee65728e)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _ASM_SPARC64_FTRACE
3 #define _ASM_SPARC64_FTRACE
4 
5 #ifdef CONFIG_MCOUNT
6 #define MCOUNT_ADDR		((unsigned long)(_mcount))
7 #define MCOUNT_INSN_SIZE	4 /* sizeof mcount call */
8 
9 #ifndef __ASSEMBLY__
10 void _mcount(void);
11 #endif
12 
13 #endif /* CONFIG_MCOUNT */
14 
15 #if defined(CONFIG_SPARC64) && !defined(CC_USE_FENTRY)
16 #define HAVE_FUNCTION_GRAPH_FP_TEST
17 #endif
18 
19 #ifdef CONFIG_DYNAMIC_FTRACE
20 /* relocation of mcount call site is the same as the address */
21 static inline unsigned long ftrace_call_adjust(unsigned long addr)
22 {
23 	return addr;
24 }
25 
26 struct dyn_arch_ftrace {
27 };
28 #endif /*  CONFIG_DYNAMIC_FTRACE */
29 
30 unsigned long prepare_ftrace_return(unsigned long parent,
31 				    unsigned long self_addr,
32 				    unsigned long frame_pointer);
33 
34 #endif /* _ASM_SPARC64_FTRACE */
35