diff options
author | ed <ed@FreeBSD.org> | 2009-02-28 16:21:25 +0000 |
---|---|---|
committer | ed <ed@FreeBSD.org> | 2009-02-28 16:21:25 +0000 |
commit | 322413c46c002718cc357647800a58347e6a7535 (patch) | |
tree | d48f20a6281397e8e474df818dbfe4b4795b419e /sys/xdr | |
parent | 1c22aa10afa2d0933dda4f1fd7bbae1cc4429bf6 (diff) | |
download | FreeBSD-src-322413c46c002718cc357647800a58347e6a7535.zip FreeBSD-src-322413c46c002718cc357647800a58347e6a7535.tar.gz |
Add memmove() to the kernel, making the kernel compile with Clang.
When copying big structures, LLVM generates calls to memmove(), because
it may not be able to figure out whether structures overlap. This caused
linker errors to occur. memmove() is now implemented using bcopy().
Ideally it would be the other way around, but that can be solved in the
future. On ARM we don't do add anything, because it already has
memmove().
Discussed on: arch@
Reviewed by: rdivacky
Diffstat (limited to 'sys/xdr')
-rw-r--r-- | sys/xdr/xdr_mem.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/sys/xdr/xdr_mem.c b/sys/xdr/xdr_mem.c index 121d5d8..2dd5b73 100644 --- a/sys/xdr/xdr_mem.c +++ b/sys/xdr/xdr_mem.c @@ -54,8 +54,6 @@ __FBSDID("$FreeBSD$"); #include <rpc/types.h> #include <rpc/xdr.h> -#define memmove(dst, src, len) bcopy(src, dst, len) - static void xdrmem_destroy(XDR *); static bool_t xdrmem_getlong_aligned(XDR *, long *); static bool_t xdrmem_putlong_aligned(XDR *, const long *); |