xref: /kernel/linux/linux-6.6/arch/alpha/lib/dbg_stackcheck.S
  • Home
  • History
  • Annotate Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
  • only in /kernel/linux/linux-6.6/arch/alpha/lib/
162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * arch/alpha/lib/dbg_stackcheck.S
462306a36Sopenharmony_ci * Contributed by Richard Henderson (rth@tamu.edu)
562306a36Sopenharmony_ci *
662306a36Sopenharmony_ci * Verify that we have not overflowed the stack.  Oops if we have.
762306a36Sopenharmony_ci */
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci#include <asm/asm-offsets.h>
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci	.text
1262306a36Sopenharmony_ci	.set noat
1362306a36Sopenharmony_ci
1462306a36Sopenharmony_ci	.align 3
1562306a36Sopenharmony_ci	.globl _mcount
1662306a36Sopenharmony_ci	.ent _mcount
1762306a36Sopenharmony_ci_mcount:
1862306a36Sopenharmony_ci	.frame $30, 0, $28, 0
1962306a36Sopenharmony_ci	.prologue 0
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ci	lda	$0, TASK_SIZE($8)
2262306a36Sopenharmony_ci	cmpult	$30, $0, $0
2362306a36Sopenharmony_ci	bne	$0, 1f
2462306a36Sopenharmony_ci	ret	($28)
2562306a36Sopenharmony_ci1:	stq	$31, -8($31)	# oops me, damn it.
2662306a36Sopenharmony_ci	br	1b
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ci	.end _mcount
29

Indexes created Thu Nov 07 10:32:03 CST 2024