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