18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * arch/alpha/lib/clear_page.S
48c2ecf20Sopenharmony_ci *
58c2ecf20Sopenharmony_ci * Zero an entire page.
68c2ecf20Sopenharmony_ci */
78c2ecf20Sopenharmony_ci#include <asm/export.h>
88c2ecf20Sopenharmony_ci	.text
98c2ecf20Sopenharmony_ci	.align 4
108c2ecf20Sopenharmony_ci	.global clear_page
118c2ecf20Sopenharmony_ci	.ent clear_page
128c2ecf20Sopenharmony_ciclear_page:
138c2ecf20Sopenharmony_ci	.prologue 0
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ci	lda	$0,128
168c2ecf20Sopenharmony_ci	nop
178c2ecf20Sopenharmony_ci	unop
188c2ecf20Sopenharmony_ci	nop
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ci1:	stq	$31,0($16)
218c2ecf20Sopenharmony_ci	stq	$31,8($16)
228c2ecf20Sopenharmony_ci	stq	$31,16($16)
238c2ecf20Sopenharmony_ci	stq	$31,24($16)
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ci	stq	$31,32($16)
268c2ecf20Sopenharmony_ci	stq	$31,40($16)
278c2ecf20Sopenharmony_ci	stq	$31,48($16)
288c2ecf20Sopenharmony_ci	subq	$0,1,$0
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ci	stq	$31,56($16)
318c2ecf20Sopenharmony_ci	addq	$16,64,$16
328c2ecf20Sopenharmony_ci	unop
338c2ecf20Sopenharmony_ci	bne	$0,1b
348c2ecf20Sopenharmony_ci
358c2ecf20Sopenharmony_ci	ret
368c2ecf20Sopenharmony_ci	nop
378c2ecf20Sopenharmony_ci	unop
388c2ecf20Sopenharmony_ci	nop
398c2ecf20Sopenharmony_ci
408c2ecf20Sopenharmony_ci	.end clear_page
418c2ecf20Sopenharmony_ci	EXPORT_SYMBOL(clear_page)
42