xref: /freebsd/contrib/arm-optimized-routines/string/aarch64/memmove-mops.S (revision 24e4dcf4ba5e9dedcf89efd358ea3e1fe5867020)
1/*
2 * memmove using MOPS extension.
3 *
4 * Copyright (c) 2023, Arm Limited.
5 * SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception
6 */
7
8#include "asmdefs.h"
9
10ENTRY (__memmove_aarch64_mops)
11	mov	x3, x0
12	.inst	0x1d010443	/* cpyp    [x3]!, [x1]!, x2!  */
13	.inst	0x1d410443	/* cpym    [x3]!, [x1]!, x2!  */
14	.inst	0x1d810443	/* cpye    [x3]!, [x1]!, x2!  */
15	ret
16
17END (__memmove_aarch64_mops)
18