Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | /* |
| 2 | * arch/alpha/lib/stackcheck.S |
| 3 | * Contributed by Richard Henderson (rth@tamu.edu) |
| 4 | * |
| 5 | * Verify that we have not overflowed the stack. Oops if we have. |
| 6 | */ |
| 7 | |
Sam Ravnborg | e2d5df9 | 2005-09-09 21:28:48 +0200 | [diff] [blame] | 8 | #include <asm/asm-offsets.h> |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 9 | |
| 10 | .text |
| 11 | .set noat |
| 12 | |
| 13 | .align 3 |
| 14 | .globl _mcount |
| 15 | .ent _mcount |
| 16 | _mcount: |
| 17 | .frame $30, 0, $28, 0 |
| 18 | .prologue 0 |
| 19 | |
| 20 | lda $0, TASK_SIZE($8) |
| 21 | cmpult $30, $0, $0 |
| 22 | bne $0, 1f |
| 23 | ret ($28) |
| 24 | 1: stq $31, -8($31) # oops me, damn it. |
| 25 | br 1b |
| 26 | |
| 27 | .end _mcount |