NG4clear_page.S (682B)
1/* SPDX-License-Identifier: GPL-2.0 */ 2/* NG4copy_page.S: Niagara-4 optimized clear page. 3 * 4 * Copyright (C) 2012 (davem@davemloft.net) 5 */ 6 7#include <asm/asi.h> 8#include <asm/page.h> 9 10 .text 11 12 .register %g3, #scratch 13 14 .align 32 15 .globl NG4clear_page 16 .globl NG4clear_user_page 17NG4clear_page: /* %o0=dest */ 18NG4clear_user_page: /* %o0=dest, %o1=vaddr */ 19 set PAGE_SIZE, %g7 20 mov 0x20, %g3 211: stxa %g0, [%o0 + %g0] ASI_ST_BLKINIT_MRU_P 22 subcc %g7, 0x40, %g7 23 stxa %g0, [%o0 + %g3] ASI_ST_BLKINIT_MRU_P 24 bne,pt %xcc, 1b 25 add %o0, 0x40, %o0 26 membar #StoreLoad|#StoreStore 27 retl 28 nop 29 .size NG4clear_page,.-NG4clear_page 30 .size NG4clear_user_page,.-NG4clear_user_page