OSDN Git Service

scripts/checkstack.pl: add arm push handling for stack usage
authorManinder Singh <maninder1.s@samsung.com>
Fri, 8 May 2020 11:03:16 +0000 (16:33 +0530)
committerMasahiro Yamada <masahiroy@kernel.org>
Mon, 25 May 2020 15:03:16 +0000 (00:03 +0900)
commit3311eeebae94b37a21b37af4410bb5e2fe3dc0c0
tree957757dfdcf9cbf404dc15ce73546806c5897e9a
parent572220aad525bd3650f796d7e29cc06d41df4235
scripts/checkstack.pl: add arm push handling for stack usage

To count stack usage of push {*, fp, ip, lr, pc} instruction in ARM,
if FRAME POINTER is enabled.
e.g. c01f0d48e92ddff0 push {r4, r5, r6, r7, r8, r9, sl, fp, ip, lr, pc}

c01f0d50 <Y>:
c01f0d44:       e1a0c00d        mov     ip, sp
c01f0d48:       e92ddff0        push    {r4, r5, r6, r7, r8, r9, sl, fp, ip, lr, pc}
c01f0d4c:       e24cb004        sub     fp, ip, #4
c01f0d50:       e24dd094        sub     sp, sp, #448    ; 0x1C0

$ cat dump | scripts/checkstack.pl arm
0xc01f0d50 Y []:                                        448

added subroutine frame work for this.
After change:
0xc01f0d500 Y []:                                       492

Co-developed-by: Vaneet Narang <v.narang@samsung.com>
Signed-off-by: Vaneet Narang <v.narang@samsung.com>
Signed-off-by: Maninder Singh <maninder1.s@samsung.com>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
scripts/checkstack.pl