diff options
Diffstat (limited to 'arch/alpha/lib/dbg_stackcheck.S')
-rw-r--r-- | arch/alpha/lib/dbg_stackcheck.S | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/arch/alpha/lib/dbg_stackcheck.S b/arch/alpha/lib/dbg_stackcheck.S new file mode 100644 index 000000000..b3b6fc94f --- /dev/null +++ b/arch/alpha/lib/dbg_stackcheck.S @@ -0,0 +1,28 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * arch/alpha/lib/dbg_stackcheck.S + * Contributed by Richard Henderson (rth@tamu.edu) + * + * Verify that we have not overflowed the stack. Oops if we have. + */ + +#include <asm/asm-offsets.h> + + .text + .set noat + + .align 3 + .globl _mcount + .ent _mcount +_mcount: + .frame $30, 0, $28, 0 + .prologue 0 + + lda $0, TASK_SIZE($8) + cmpult $30, $0, $0 + bne $0, 1f + ret ($28) +1: stq $31, -8($31) # oops me, damn it. + br 1b + + .end _mcount |