aboutsummaryrefslogtreecommitdiff
path: root/scripts/checkstack.pl
diff options
context:
space:
mode:
authorBen Dooks <ben-linux@fluff.org>2008-10-27 12:32:29 +0000
committerBen Dooks <ben-linux@fluff.org>2008-10-27 12:32:29 +0000
commitb99053eefce89c5c8500517f5f065c85b57d98ee (patch)
tree2e99059d55e32db39a2ada348c39f71bb473c0c1 /scripts/checkstack.pl
parent761e0ee0f0beecee7c2528588b043609b880de58 (diff)
parentf8d56f1771e4867acc461146764b4feeb5245669 (diff)
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into s3c64xx
Conflicts: arch/arm/mm/Kconfig
Diffstat (limited to 'scripts/checkstack.pl')
-rwxr-xr-xscripts/checkstack.pl4
1 files changed, 4 insertions, 0 deletions
diff --git a/scripts/checkstack.pl b/scripts/checkstack.pl
index f7e8e93ff30..14ee68e991d 100755
--- a/scripts/checkstack.pl
+++ b/scripts/checkstack.pl
@@ -14,6 +14,7 @@
# M68k port by Geert Uytterhoeven and Andreas Schwab
# AVR32 port by Haavard Skinnemoen <hskinnemoen@atmel.com>
# PARISC port by Kyle McMartin <kyle@parisc-linux.org>
+# sparc port by Martin Habets <errandir_news@mph.eclipse.co.uk>
#
# Usage:
# objdump -d vmlinux | scripts/checkstack.pl [arch]
@@ -94,6 +95,9 @@ my (@stack, $re, $dre, $x, $xs);
} elsif ($arch =~ /^blackfin$/) {
# 0: 00 e8 38 01 LINK 0x4e0;
$re = qr/.*[[:space:]]LINK[[:space:]]*(0x$x{1,8})/o;
+ } 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;
} else {
print("wrong or unknown architecture \"$arch\"\n");
exit