aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorMichal Simek <monstr@monstr.eu>2009-11-16 03:55:08 -0500
committerMichal Simek <monstr@monstr.eu>2009-12-14 02:40:10 -0500
commit6d9e60ce30a1be35491c74df00aaa25d869f8a02 (patch)
tree6b7a709de5e9c46318d7b32ce0dc1205707de65f /arch
parent2fd7c761a24c28e83d7194b4b4a099451126a503 (diff)
microblaze: ftrace: enable HAVE_FUNCTION_TRACE_MCOUNT_TEST
Implement MCOUNT_TEST in asm code - it is faster than use generic code Signed-off-by: Michal Simek <monstr@monstr.eu>
Diffstat (limited to 'arch')
-rw-r--r--arch/microblaze/Kconfig1
-rw-r--r--arch/microblaze/kernel/mcount.S5
2 files changed, 6 insertions, 0 deletions
diff --git a/arch/microblaze/Kconfig b/arch/microblaze/Kconfig
index 18003ca08196..cccf3adfae50 100644
--- a/arch/microblaze/Kconfig
+++ b/arch/microblaze/Kconfig
@@ -7,6 +7,7 @@ config MICROBLAZE
7 def_bool y 7 def_bool y
8 select HAVE_LMB 8 select HAVE_LMB
9 select HAVE_FUNCTION_TRACER 9 select HAVE_FUNCTION_TRACER
10 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
10 select USB_ARCH_HAS_EHCI 11 select USB_ARCH_HAS_EHCI
11 select ARCH_WANT_OPTIONAL_GPIOLIB 12 select ARCH_WANT_OPTIONAL_GPIOLIB
12 13
diff --git a/arch/microblaze/kernel/mcount.S b/arch/microblaze/kernel/mcount.S
index a257a1b75ed2..97eef3eea944 100644
--- a/arch/microblaze/kernel/mcount.S
+++ b/arch/microblaze/kernel/mcount.S
@@ -85,6 +85,11 @@ ENTRY(ftrace_stub)
85ENTRY(_mcount) 85ENTRY(_mcount)
86 SAVE_REGS 86 SAVE_REGS
87 swi r15, r1, 0; 87 swi r15, r1, 0;
88 /* MS: HAVE_FUNCTION_TRACE_MCOUNT_TEST begin of checking */
89 lwi r5, r0, function_trace_stop;
90 bneid r5, end;
91 nop;
92 /* MS: HAVE_FUNCTION_TRACE_MCOUNT_TEST end of checking */
88 /* MS: test function trace if is taken or not */ 93 /* MS: test function trace if is taken or not */
89 lwi r20, r0, ftrace_trace_function; 94 lwi r20, r0, ftrace_trace_function;
90 addik r6, r0, ftrace_stub; 95 addik r6, r0, ftrace_stub;