linux/arch/alpha/lib/dbg_stackkill.S
<<
>>
Prefs
   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
  291:      stq     $0, 0($2)
  30        addq    $2, 8, $2
  31        cmpult  $2, $30, $1
  32        bne     $1, 1b
  332:      ret     ($28)
  34
  35        .end _mcount
  36