Commit d089622b authored by Youling Tang's avatar Youling Tang Committed by Andrew Morton

checkstack: add loongarch support for scripts/checkstack.pl

scripts/checkstack.pl lacks support for the loongarch architecture.  Add
support to detect "addi.{w,d} $sp, $sp, -FRAME_SIZE" stack frame
generation instruction.

Link: https://lkml.kernel.org/r/MW4PR84MB314514273F0B7DBCC5E35A978192A@MW4PR84MB3145.NAMPRD84.PROD.OUTLOOK.COMSigned-off-by: default avatarYouling Tang <tangyouling@kylinos.cn>
Acked-by: default avatarHuacai Chen <chenhuacai@loongson.cn>
Cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent d738bced
...@@ -16,6 +16,7 @@ ...@@ -16,6 +16,7 @@
# sparc port by Martin Habets <errandir_news@mph.eclipse.co.uk> # sparc port by Martin Habets <errandir_news@mph.eclipse.co.uk>
# ppc64le port by Breno Leitao <leitao@debian.org> # ppc64le port by Breno Leitao <leitao@debian.org>
# riscv port by Wadim Mueller <wafgo01@gmail.com> # riscv port by Wadim Mueller <wafgo01@gmail.com>
# loongarch port by Youling Tang <tangyouling@kylinos.cn>
# #
# Usage: # Usage:
# objdump -d vmlinux | scripts/checkstack.pl [arch] # objdump -d vmlinux | scripts/checkstack.pl [arch]
...@@ -104,6 +105,9 @@ my (@stack, $re, $dre, $sub, $x, $xs, $funcre, $min_stack); ...@@ -104,6 +105,9 @@ my (@stack, $re, $dre, $sub, $x, $xs, $funcre, $min_stack);
} elsif ($arch =~ /^riscv(64)?$/) { } elsif ($arch =~ /^riscv(64)?$/) {
#ffffffff8036e868: c2010113 addi sp,sp,-992 #ffffffff8036e868: c2010113 addi sp,sp,-992
$re = qr/.*addi.*sp,sp,-(([0-9]{2}|[3-9])[0-9]{2})/o; $re = qr/.*addi.*sp,sp,-(([0-9]{2}|[3-9])[0-9]{2})/o;
} elsif ($arch =~ /^loongarch(32|64)?$/) {
#9000000000224708: 02ff4063 addi.d $sp, $sp, -48(0xfd0)
$re = qr/.*addi\..*sp, .*sp, -([0-9]{1,8}).*/o;
} else { } else {
print("wrong or unknown architecture \"$arch\"\n"); print("wrong or unknown architecture \"$arch\"\n");
exit exit
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment