1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2 | /* |
3 | * arch/alpha/lib/clear_page.S |
4 | * |
5 | * Zero an entire page. |
6 | */ |
7 | #include <linux/export.h> |
8 | .text |
9 | .align 4 |
10 | .global clear_page |
11 | .ent clear_page |
12 | clear_page: |
13 | .prologue 0 |
14 | |
15 | lda $0,128 |
16 | nop |
17 | unop |
18 | nop |
19 | |
20 | 1: stq $31,0($16) |
21 | stq $31,8($16) |
22 | stq $31,16($16) |
23 | stq $31,24($16) |
24 | |
25 | stq $31,32($16) |
26 | stq $31,40($16) |
27 | stq $31,48($16) |
28 | subq $0,1,$0 |
29 | |
30 | stq $31,56($16) |
31 | addq $16,64,$16 |
32 | unop |
33 | bne $0,1b |
34 | |
35 | ret |
36 | nop |
37 | unop |
38 | nop |
39 | |
40 | .end clear_page |
41 | EXPORT_SYMBOL(clear_page) |
42 | |