diff options
author | Guo Ren <ren_guo@c-sky.com> | 2019-03-01 08:50:36 +0800 |
---|---|---|
committer | Guo Ren <ren_guo@c-sky.com> | 2019-04-22 13:44:57 +0800 |
commit | 28bb030f93334495ddc64ade0bff18721bf7023d (patch) | |
tree | d0a4e4eaa36575adf490165f63d2bd6160653124 /.gitignore | |
parent | 3dfc242f11d792535db774613c6fd1df565c2137 (diff) | |
download | linux-28bb030f93334495ddc64ade0bff18721bf7023d.tar.gz |
csky/ftrace: Add dynamic function tracer (include graph tracer)
Support dynamic ftrace including dynamic graph tracer. Gcc-csky with -pg will produce call site in every function prologue and we can use these call site to hook trace function. gcc with -pg origin call site: push lr jbsr _mcount nop32 nop32 If the (callee - caller)'s offset is in range of bsr instruction, we'll modify code with: push lr bsr _mcount nop32 nop32 Else if the (callee - caller)'s offset is out of bsr instrunction, we'll modify code with: push lr movih r26, ... ori r26, ... jsr r26 (r26 is reserved for jsr link reg in csky abiv2 spec.) Signed-off-by: Guo Ren <ren_guo@c-sky.com>
Diffstat (limited to '.gitignore')
0 files changed, 0 insertions, 0 deletions