Making LLVM happy: memmove() in the kernel

Roman Divacky rdivacky at freebsd.org
Fri Feb 27 05:33:48 PST 2009


On Fri, Feb 27, 2009 at 02:11:55PM +0100, Ed Schouten wrote:
> Hi all,
> 
> The FreeBSD+LLVM folks* noticed Clang generates calls to memmove() by
> itself. I have yet to confirm this, but I assume this is done when
> performing copies of structs greater than a certain size. In our kernel,
> we don't have a memmove() function, but we do have a bcopy().

also.. quoting from
(http://gcc.gnu.org/onlinedocs/gcc-4.2.1/gcc/Standards.html): 

Most of the compiler support routines used by GCC are present in libgcc,
but there are a few exceptions. GCC requires the freestanding environment
provide memcpy, memmove, memset and memcmp.

we were just lucky to not run into this
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-arch/attachments/20090227/0bc0b051/attachment.pgp


More information about the freebsd-arch mailing list