diff options
author | Ard Biesheuvel <[email protected]> | 2021-12-08 08:42:03 +0100 |
---|---|---|
committer | Ard Biesheuvel <[email protected]> | 2022-02-09 09:12:32 +0100 |
commit | ad1c2f39fda0acb51b5a93604c5e1a703b849a7d (patch) | |
tree | 47f173a82e141c35d4afee2953ccc29497bec46f /tools/perf/scripts/python/Perf-Trace-Util/lib/Perf/Trace/EventClass.py | |
parent | dd88b03ff0c84f4bcbe1419b93a4bed429fed3be (diff) |
ARM: ftrace: use ADD not POP to counter PUSH at entry
The compiler emitted hook used for ftrace consists of a PUSH {LR} to
preserve the link register, followed by a branch-and-link (BL) to
__gnu_mount_nc. Dynamic ftrace patches away the latter to turn the
combined sequence into a NOP, using a POP {LR} instruction.
This is not necessary, since the link register does not get clobbered in
this case, and simply adding #4 to the stack pointer is sufficient, and
avoids a memory access that may take a few cycles to resolve depending
on the micro-architecture.
Signed-off-by: Ard Biesheuvel <[email protected]>
Reviewed-by: Nick Desaulniers <[email protected]>
Reviewed-by: Linus Walleij <[email protected]>
Reviewed-by: Steven Rostedt (Google) <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/Perf-Trace-Util/lib/Perf/Trace/EventClass.py')
0 files changed, 0 insertions, 0 deletions