Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 /*
0003  * arch/alpha/lib/ev6-clear_page.S
0004  *
0005  * Zero an entire page.
0006  */
0007 #include <asm/export.h>
0008         .text
0009         .align 4
0010         .global clear_page
0011         .ent clear_page
0012 clear_page:
0013         .prologue 0
0014 
0015     lda $0,128
0016     lda $1,125
0017     addq    $16,64,$2
0018     addq    $16,128,$3
0019 
0020     addq    $16,192,$17
0021     wh64    ($16)
0022     wh64    ($2)
0023     wh64    ($3)
0024 
0025 1:  wh64    ($17)
0026     stq $31,0($16)
0027     subq    $0,1,$0
0028     subq    $1,1,$1
0029 
0030     stq $31,8($16)
0031     stq $31,16($16)
0032     addq    $17,64,$2
0033     nop
0034 
0035     stq $31,24($16)
0036     stq $31,32($16)
0037     cmovgt  $1,$2,$17
0038     nop
0039 
0040     stq $31,40($16)
0041     stq $31,48($16)
0042     nop
0043     nop
0044 
0045     stq $31,56($16)
0046     addq    $16,64,$16
0047     nop
0048     bne $0,1b
0049 
0050     ret
0051     nop
0052     nop
0053     nop
0054 
0055     .end clear_page
0056     EXPORT_SYMBOL(clear_page)