TianoCore EDK2 master
Loading...
Searching...
No Matches
memset_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)
11typedef unsigned __int64 size_t;
12#else
13typedef unsigned __int32 size_t;
14#endif
15
16void *
17memset (
18 void *,
19 int,
20 size_t
21 );
22
23#pragma intrinsic(memset)
24#pragma function(memset)
25void *
26memset (
27 void *s,
28 int c,
29 size_t n
30 )
31{
32 unsigned char *d;
33
34 d = s;
35
36 while (n-- != 0) {
37 *d++ = (unsigned char)c;
38 }
39
40 return s;
41}