]> git.proxmox.com Git - mirror_edk2.git/blob - ArmPkg/Library/CompilerIntrinsicsLib/memcpy_ms.c
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / ArmPkg / Library / CompilerIntrinsicsLib / memcpy_ms.c
1 // ------------------------------------------------------------------------------
2 //
3 // Copyright (c) 2017, Pete Batard. All rights reserved.<BR>
4 // Copyright (c) 2021, Arm Limited. All rights reserved.<BR>
5 //
6 // SPDX-License-Identifier: BSD-2-Clause-Patent
7 //
8 // ------------------------------------------------------------------------------
9
10 #if defined (_M_ARM64)
11 typedef unsigned __int64 size_t;
12 #else
13 typedef unsigned __int32 size_t;
14 #endif
15
16 void *
17 memcpy (
18 void *,
19 const void *,
20 size_t
21 );
22
23 #pragma intrinsic(memcpy)
24 #pragma function(memcpy)
25 void *
26 memcpy (
27 void *dest,
28 const void *src,
29 size_t n
30 )
31 {
32 unsigned char *d;
33 unsigned char const *s;
34
35 d = dest;
36 s = src;
37
38 while (n-- != 0) {
39 *d++ = *s++;
40 }
41
42 return dest;
43 }