csky: basic ftrace supported
When gcc with -pg, it'll add _mcount stub in every function. We need implement the _mcount in kernel and ftrace depends on stackstrace. To do: call-graph, dynamic ftrace Signed-off-by: Guo Ren <ren_guo@c-sky.com>
This commit is contained in:
@@ -8,3 +8,4 @@ obj-y += strcmp.o
|
||||
obj-y += strcpy.o
|
||||
obj-y += strlen.o
|
||||
obj-y += strksyms.o
|
||||
obj-$(CONFIG_FUNCTION_TRACER) += mcount.o
|
||||
|
24
arch/csky/abiv2/mcount.S
Normal file
24
arch/csky/abiv2/mcount.S
Normal file
@@ -0,0 +1,24 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
// Copyright (C) 2018 Hangzhou C-SKY Microsystems co.,ltd.
|
||||
|
||||
#include <linux/linkage.h>
|
||||
|
||||
ENTRY (_mcount)
|
||||
subi sp, 20
|
||||
stw a0, (sp, 0)
|
||||
stw a1, (sp, 4)
|
||||
stw a2, (sp, 8)
|
||||
stw a3, (sp, 12)
|
||||
stw lr, (sp, 16)
|
||||
mov a1, lr
|
||||
ldw a0, (sp, 20)
|
||||
jsri csky_mcount
|
||||
ldw a0, (sp, 0)
|
||||
ldw a1, (sp, 4)
|
||||
ldw a2, (sp, 8)
|
||||
ldw a3, (sp, 12)
|
||||
ldw t1, (sp, 16)
|
||||
ldw lr, (sp, 20)
|
||||
addi sp, 24
|
||||
jmp t1
|
||||
END (_mcount)
|
Reference in New Issue
Block a user