Making LLVM happy: memmove() in the kernel
Roman Divacky
rdivacky at freebsd.org
Sat Feb 28 01:58:31 PST 2009
On Sat, Feb 28, 2009 at 06:43:54PM +1100, Bruce Evans wrote:
> On Fri, 27 Feb 2009, Alexander Kabaev wrote:
>
> >On Fri, 27 Feb 2009 18:05:33 +0200
> >Andriy Gapon <avg at icyb.net.ua> wrote:
> >
> >>on 27/02/2009 15:12 Roman Divacky said the following:
> >>>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
>
> Why would Clang be that broken? Structs cannot overlap, so they can
structs can overlap:
struct foo { double x[100]; };
void T(struct foo *F, struct foo* G) {
*F = *G;
}
when F equals to G
More information about the freebsd-arch
mailing list