summaryrefslogtreecommitdiff
path: root/packages/linux/linux-2.6.18/avr32-checkstack.patch
diff options
context:
space:
mode:
Diffstat (limited to 'packages/linux/linux-2.6.18/avr32-checkstack.patch')
-rw-r--r--packages/linux/linux-2.6.18/avr32-checkstack.patch35
1 files changed, 35 insertions, 0 deletions
diff --git a/packages/linux/linux-2.6.18/avr32-checkstack.patch b/packages/linux/linux-2.6.18/avr32-checkstack.patch
new file mode 100644
index 0000000000..31d24340c5
--- /dev/null
+++ b/packages/linux/linux-2.6.18/avr32-checkstack.patch
@@ -0,0 +1,35 @@
+From nobody Mon Sep 17 00:00:00 2001
+From: HÃ¥vard Skinnemoen <hskinnemoen@atmel.com>
+Date: Wed Jan 4 16:58:49 2006 +0100
+Subject: [PATCH] AVR32 checkstack port
+
+Add regexes to recognize stack frame adjustments in AVR32 code.
+
+---
+
+ scripts/checkstack.pl | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+Index: linux-2.6.16-avr32/scripts/checkstack.pl
+===================================================================
+--- linux-2.6.16-avr32.orig/scripts/checkstack.pl 2006-03-20 06:53:29.000000000 +0100
++++ linux-2.6.16-avr32/scripts/checkstack.pl 2006-04-03 18:57:19.000000000 +0200
+@@ -12,6 +12,7 @@
+ # sh64 port by Paul Mundt
+ # Random bits by Matt Mackall <mpm@selenic.com>
+ # M68k port by Geert Uytterhoeven and Andreas Schwab
++# AVR32 port by Haavard Skinnemoen <hskinnemoen@atmel.com>
+ #
+ # Usage:
+ # objdump -d vmlinux | stackcheck.pl [arch]
+@@ -37,6 +38,10 @@ my (@stack, $re, $x, $xs);
+ if ($arch eq 'arm') {
+ #c0008ffc: e24dd064 sub sp, sp, #100 ; 0x64
+ $re = qr/.*sub.*sp, sp, #(([0-9]{2}|[3-9])[0-9]{2})/o;
++ } elsif ($arch eq 'avr32') {
++ #8000008a: 20 1d sub sp,4
++ #80000ca8: fa cd 05 b0 sub sp,sp,1456
++ $re = qr/^.*sub.*sp.*,([0-9]{1,8})/o;
+ } elsif ($arch =~ /^i[3456]86$/) {
+ #c0105234: 81 ec ac 05 00 00 sub $0x5ac,%esp
+ $re = qr/^.*[as][du][db] \$(0x$x{1,8}),\%esp$/o;