aboutsummaryrefslogtreecommitdiff
path: root/libiberty/memmove.c
blob: 30801f2d1c44db8c54bc45d6d2fdf37fad2b63e6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/* Wrapper to implement ANSI C's memmove using BSD's bcopy. */
/* This function is in the public domain.  --Per Bothner. */

/*

@deftypefn Supplemental void* memmove (void *@var{from}, const void *@var{to}, size_t @var{count})

Copies @var{count} bytes from memory area @var{from} to memory area
@var{to}, returning a pointer to @var{to}.

@end deftypefn

*/

#include <ansidecl.h>
#ifdef ANSI_PROTOTYPES
#include <stddef.h>
#else
#define size_t unsigned long
#endif

void bcopy (const void*, void*, size_t);

PTR
memmove (PTR s1, const PTR s2, size_t n)
{
  bcopy (s2, s1, n);
  return s1;
}