Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6
[pandora-kernel.git] / arch / alpha / lib / dbg_stackkill.S
1 /*
2  * arch/alpha/lib/dbg_stackkill.S
3  * Contributed by Richard Henderson (rth@cygnus.com)
4  *
5  * Clobber the balance of the kernel stack, hoping to catch
6  * uninitialized local variables in the act.
7  */
8
9 #include <asm/asm-offsets.h>
10
11         .text
12         .set noat
13
14         .align 5
15         .globl _mcount
16         .ent _mcount
17 _mcount:
18         .frame $30, 0, $28, 0
19         .prologue 0
20
21         ldi     $0, 0xdeadbeef
22         lda     $2, -STACK_SIZE
23         sll     $0, 32, $1
24         and     $30, $2, $2
25         or      $0, $1, $0
26         lda     $2, TASK_SIZE($2)
27         cmpult  $2, $30, $1
28         beq     $1, 2f
29 1:      stq     $0, 0($2)
30         addq    $2, 8, $2
31         cmpult  $2, $30, $1
32         bne     $1, 1b
33 2:      ret     ($28)
34
35         .end _mcount