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