[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220713194112.15557-1-wafgo01@gmail.com>
Date: Wed, 13 Jul 2022 21:41:10 +0200
From: Wadim Mueller <wafgo01@...il.com>
To: unlisted-recipients:; (no To-header on input)
Cc: Wadim Mueller <wafgo01@...il.com>,
Paul Walmsley <paul.walmsley@...ive.com>,
Palmer Dabbelt <palmer@...belt.com>,
Albert Ou <aou@...s.berkeley.edu>,
linux-kernel@...r.kernel.org, linux-riscv@...ts.infradead.org
Subject: [PATCH] checkstack: add riscv support for scripts/checkstack.pl
scripts/checkstack.pl lacks support for the riscv architecture. Add
support to detect "addi sp,sp,-FRAME_SIZE" stack frame generation instruction
Signed-off-by: Wadim Mueller <wafgo01@...il.com>
---
scripts/checkstack.pl | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/scripts/checkstack.pl b/scripts/checkstack.pl
index d2c38584ece6..d48dfed6d3db 100755
--- a/scripts/checkstack.pl
+++ b/scripts/checkstack.pl
@@ -16,6 +16,7 @@
# AArch64, PARISC ports by Kyle McMartin
# sparc port by Martin Habets <errandir_news@....eclipse.co.uk>
# ppc64le port by Breno Leitao <leitao@...ian.org>
+# riscv port by Wadim Mueller <wafgo01@...il.com>
#
# Usage:
# objdump -d vmlinux | scripts/checkstack.pl [arch]
@@ -108,6 +109,9 @@ my (@stack, $re, $dre, $sub, $x, $xs, $funcre, $min_stack);
} elsif ($arch eq 'sparc' || $arch eq 'sparc64') {
# f0019d10: 9d e3 bf 90 save %sp, -112, %sp
$re = qr/.*save.*%sp, -(([0-9]{2}|[3-9])[0-9]{2}), %sp/o;
+ } elsif ($arch =~ /^riscv(64)?$/) {
+ #ffffffff8036e868: c2010113 addi sp,sp,-992
+ $re = qr/.*addi.*sp,sp,-(([0-9]{2}|[3-9])[0-9]{2})/o;
} else {
print("wrong or unknown architecture \"$arch\"\n");
exit
--
2.25.1
Powered by blists - more mailing lists