^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) * arch/alpha/lib/copy_page.S
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) * Copy an entire page.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) #include <asm/export.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) .text
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) .align 4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) .global copy_page
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) .ent copy_page
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) copy_page:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) .prologue 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) lda $18,128
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) nop
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) unop
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) nop
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) 1: ldq $0,0($17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) ldq $1,8($17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) ldq $2,16($17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) ldq $3,24($17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) ldq $4,32($17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) ldq $5,40($17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) ldq $6,48($17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) ldq $7,56($17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) stq $0,0($16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) subq $18,1,$18
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) stq $1,8($16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) addq $17,64,$17
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) stq $2,16($16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) stq $3,24($16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) stq $4,32($16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) stq $5,40($16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) stq $6,48($16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) stq $7,56($16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) addq $16,64,$16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) bne $18, 1b
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) ret
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) nop
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) unop
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) nop
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) .end copy_page
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) EXPORT_SYMBOL(copy_page)