]>
Commit | Line | Data |
---|---|---|
429309e0 | 1 | // ------------------------------------------------------------------------------\r |
a0cf6b8d AB |
2 | //\r |
3 | // Copyright (c) 2016, Linaro Ltd. All rights reserved.<BR>\r | |
53aabb97 | 4 | // Copyright (c) 2021, Arm Limited. All rights reserved.<BR>\r |
a0cf6b8d | 5 | //\r |
4059386c | 6 | // SPDX-License-Identifier: BSD-2-Clause-Patent\r |
a0cf6b8d | 7 | //\r |
429309e0 | 8 | // ------------------------------------------------------------------------------\r |
a0cf6b8d AB |
9 | \r |
10 | typedef __SIZE_TYPE__ size_t;\r | |
11 | \r | |
429309e0 MK |
12 | static void\r |
13 | __memcpy (\r | |
14 | void *dest,\r | |
15 | const void *src,\r | |
16 | size_t n\r | |
17 | )\r | |
a0cf6b8d | 18 | {\r |
429309e0 MK |
19 | unsigned char *d;\r |
20 | unsigned char const *s;\r | |
fb48f1e2 PG |
21 | \r |
22 | d = dest;\r | |
23 | s = src;\r | |
a0cf6b8d | 24 | \r |
53aabb97 | 25 | while (n-- != 0) {\r |
a0cf6b8d | 26 | *d++ = *s++;\r |
53aabb97 | 27 | }\r |
a683ceca | 28 | }\r |
a0cf6b8d | 29 | \r |
429309e0 MK |
30 | void *\r |
31 | memcpy (\r | |
32 | void *dest,\r | |
33 | const void *src,\r | |
34 | size_t n\r | |
35 | )\r | |
a683ceca | 36 | {\r |
429309e0 | 37 | __memcpy (dest, src, n);\r |
a0cf6b8d AB |
38 | return dest;\r |
39 | }\r | |
40 | \r | |
a0cf6b8d AB |
41 | #ifdef __arm__\r |
42 | \r | |
429309e0 MK |
43 | __attribute__ ((__alias__ ("__memcpy")))\r |
44 | void\r | |
45 | __aeabi_memcpy (\r | |
46 | void *dest,\r | |
47 | const void *src,\r | |
48 | size_t n\r | |
49 | );\r | |
a0cf6b8d | 50 | \r |
429309e0 MK |
51 | __attribute__ ((__alias__ ("__memcpy")))\r |
52 | void\r | |
53 | __aeabi_memcpy4 (\r | |
54 | void *dest,\r | |
55 | const void *src,\r | |
56 | size_t n\r | |
57 | );\r | |
a0cf6b8d | 58 | \r |
429309e0 MK |
59 | __attribute__ ((__alias__ ("__memcpy")))\r |
60 | void\r | |
61 | __aeabi_memcpy8 (\r | |
62 | void *dest,\r | |
63 | const void *src,\r | |
64 | size_t n\r | |
65 | );\r | |
a0cf6b8d AB |
66 | \r |
67 | #endif\r |