repo.or.cz
/
official-gcc.git
/
blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
log
|
graphiclog1
|
graphiclog2
|
commit
|
commitdiff
|
tree
|
refs
|
edit
|
fork
blame
|
history
|
raw
|
HEAD
libstdc++: Update C++20 and C++23 status docs
[official-gcc.git]
/
libgcc
/
memmove.c
blob
13b340af6a01171d21a17f04482cfcc814080e97
1
/* Public domain. */
2
#include <stddef.h>
3
4
void
*
5
memmove
(
void
*
dest
,
const void
*
src
,
size_t
len
)
6
{
7
char
*
d
=
dest
;
8
const char
*
s
=
src
;
9
if
(
d
<
s
)
10
while
(
len
--)
11
*
d
++ = *
s
++;
12
else
13
{
14
char
*
lasts
=
s
+ (
len
-
1
);
15
char
*
lastd
=
d
+ (
len
-
1
);
16
while
(
len
--)
17
*
lastd
-- = *
lasts
--;
18
}
19
return
dest
;
20
}