provide an implementation for memcpy()
This commit is contained in:
parent
75491dd36b
commit
313b86fdc7
10
src/mem.h
10
src/mem.h
@ -1,9 +1,15 @@
|
|||||||
#ifndef MEM_H
|
#ifndef MEM_H
|
||||||
#define MEM_H
|
#define MEM_H
|
||||||
|
|
||||||
static inline void * memcpy(void * dest, const void * src, size_t n)
|
static inline void memcpy(void * dest, const void * src, size_t n)
|
||||||
{
|
{
|
||||||
return __builtin_memcpy(dest, src, n);
|
uint32_t r0, r1, r2;
|
||||||
|
__asm__ __volatile__ (
|
||||||
|
"cld\n\t"
|
||||||
|
"rep movsb"
|
||||||
|
: "=&c" (r0), "=&S" (r1), "=&D" (r2)
|
||||||
|
: "2" (dest), "1" (src), "0" (n)
|
||||||
|
: "memory");
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void * memmove(void * dest, const void * src, size_t count)
|
static inline void * memmove(void * dest, const void * src, size_t count)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user