From: Kenn H. <ke...@us...> - 2005-07-24 21:36:58
|
Update of /cvsroot/linux-vax/kernel-2.5/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25021/scripts Modified Files: checkstack.pl Log Message: Merge with 2.6.12 Index: checkstack.pl =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.5/scripts/checkstack.pl,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- checkstack.pl 21 Mar 2005 23:44:19 -0000 1.3 +++ checkstack.pl 24 Jul 2005 21:36:49 -0000 1.4 @@ -9,6 +9,7 @@ # Mips port by Juan Quintela <qui...@ma...> # IA64 port via Andreas Dilger # Arm port by Holger Schurig +# sh64 port by Paul Mundt # Random bits by Matt Mackall <mp...@se...> # M68k port by Geert Uytterhoeven and Andreas Schwab # VAX port by Jan-Benedict Glaw <jb...@lu...> @@ -69,6 +70,12 @@ } elsif ($arch =~ /^s390x?$/) { # 11160: a7 fb ff 60 aghi %r15,-160 $re = qr/.*ag?hi.*\%r15,-(([0-9]{2}|[3-9])[0-9]{2})/o; + } elsif ($arch =~ /^sh64$/) { + #XXX: we only check for the immediate case presently, + # though we will want to check for the movi/sub + # pair for larger users. -- PFM. + #a00048e0: d4fc40f0 addi.l r15,-240,r15 + $re = qr/.*addi\.l.*r15,-(([0-9]{2}|[3-9])[0-9]{2}),r15/o; } else { print("wrong or unknown architecture\n"); exit @@ -77,8 +84,8 @@ sub bysize($) { my ($asize, $bsize); - ($asize = $a) =~ s/.* +(.*)$/$1/; - ($bsize = $b) =~ s/.* +(.*)$/$1/; + ($asize = $a) =~ s/.*: *(.*)$/$1/; + ($bsize = $b) =~ s/.*: *(.*)$/$1/; $bsize <=> $asize } @@ -95,11 +102,12 @@ my $size = $1; $size = hex($size) if ($size =~ /^0x/); - if ($size > 0x80000000) { + if ($size > 0xf0000000) { $size = - $size; $size += 0x80000000; $size += 0x80000000; } + next if ($size > 0x10000000); next if $line !~ m/^($xs*)/; my $addr = $1; |