/* SPDX-License-Identifier: GPL-2.0 */ /* * arch/sw/lib/copy_page.S * * Copy an entire page. */ #include .text .align 4 .global copy_page .ent copy_page copy_page: .prologue 0 ldi $18, 64 /* Optimize by GUOY from SOC 2013-06-04 */ 1: ldl $0, 0($17) ldl $1, 8($17) ldl $2, 16($17) ldl $3, 24($17) stl_nc $0, 0($16) stl_nc $1, 8($16) stl_nc $2, 16($16) stl_nc $3, 24($16) ldl $4, 32($17) ldl $5, 40($17) ldl $6, 48($17) ldl $7, 56($17) stl_nc $4, 32($16) stl_nc $5, 40($16) stl_nc $6, 48($16) stl_nc $7, 56($16) ldl $0, 64($17) ldl $1, 72($17) ldl $2, 80($17) ldl $3, 88($17) stl_nc $0, 64($16) stl_nc $1, 72($16) stl_nc $2, 80($16) stl_nc $3, 88($16) ldl $4, 96($17) ldl $5, 104($17) ldl $6, 112($17) ldl $7, 120($17) stl_nc $4, 96($16) stl_nc $5, 104($16) stl_nc $6, 112($16) stl_nc $7, 120($16) ldwe $f31, 3 * 0x80($17) subl $18, 1, $18 addl $17, 128, $17 addl $16, 128, $16 bne $18, 1b memb ret .end copy_page EXPORT_SYMBOL(copy_page)