James Hogan | 086e9dc | 2012-10-05 17:02:09 +0100 | [diff] [blame] | 1 | ! Copyright 2007,2008 Imagination Technologies Ltd. |
2 | |||||
3 | #include <asm/page.h> | ||||
4 | |||||
5 | .text | ||||
6 | .global _copy_page | ||||
7 | .type _copy_page,function | ||||
8 | !! D1Ar1 - to | ||||
9 | !! D0Ar2 - from | ||||
10 | _copy_page: | ||||
11 | MOV D0FrT,#PAGE_SIZE | ||||
12 | $Lcopy_page_loop: | ||||
13 | GETL D0Re0,D1Re0,[D0Ar2++] | ||||
14 | GETL D0Ar6,D1Ar5,[D0Ar2++] | ||||
15 | SETL [D1Ar1++],D0Re0,D1Re0 | ||||
16 | SETL [D1Ar1++],D0Ar6,D1Ar5 | ||||
17 | SUBS D0FrT,D0FrT,#16 | ||||
18 | BNZ $Lcopy_page_loop | ||||
19 | MOV PC,D1RtP | ||||
20 | .size _copy_page,.-_copy_page |