[Bug c++/39480] generated memcpy causes trouble in assignment

2011-12-05 Thread lu_zero at gentoo dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39480 lu_zero at gentoo dot org changed: What|Removed |Added CC||lu_zero at gentoo dot org ---

[Bug c++/39480] generated memcpy causes trouble in assignment

2009-04-13 Thread jason at gcc dot gnu dot org
--- Comment #26 from jason at gcc dot gnu dot org 2009-04-13 20:08 --- I think this actually only comes up at -O0; without optimization we don't try to expand a call to __builtin_memcpy as a block move because we need TER to tell us what the real alignment of the operands is. With

[Bug c++/39480] generated memcpy causes trouble in assignment

2009-04-13 Thread jason at gcc dot gnu dot org
--- Comment #27 from jason at gcc dot gnu dot org 2009-04-13 20:53 --- Subject: Bug 39480 Author: jason Date: Mon Apr 13 20:53:34 2009 New Revision: 146011 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=146011 Log: PR c++/39480 * call.c (build_over_call): Don't

[Bug c++/39480] generated memcpy causes trouble in assignment

2009-04-13 Thread jason at gcc dot gnu dot org
--- Comment #28 from jason at gcc dot gnu dot org 2009-04-13 20:56 --- Subject: Bug 39480 Author: jason Date: Mon Apr 13 20:56:45 2009 New Revision: 146013 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=146013 Log: PR c++/39480 * call.c (build_over_call): Don't

[Bug c++/39480] generated memcpy causes trouble in assignment

2009-04-13 Thread jason at gcc dot gnu dot org
--- Comment #29 from jason at gcc dot gnu dot org 2009-04-14 03:30 --- Subject: Bug 39480 Author: jason Date: Tue Apr 14 03:30:12 2009 New Revision: 146020 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=146020 Log: PR c++/39480 * call.c (build_over_call): Don't

[Bug c++/39480] generated memcpy causes trouble in assignment

2009-04-13 Thread jason at gcc dot gnu dot org
--- Comment #30 from jason at gcc dot gnu dot org 2009-04-14 03:31 --- Fixed for 4.3, 4.4 and 4.5. -- jason at gcc dot gnu dot org changed: What|Removed |Added

[Bug c++/39480] generated memcpy causes trouble in assignment

2009-04-09 Thread jason at gcc dot gnu dot org
--- Comment #25 from jason at gcc dot gnu dot org 2009-04-09 16:05 --- The C++ front end bit of this needs 22488 to be fixed before we can remove the explicit call to the builtin and go back to using a MODIFY_EXPR. But in the meantime we can test for pointer equality before the call.

[Bug c++/39480] generated memcpy causes trouble in assignment

2009-03-18 Thread falk at debian dot org
--- Comment #19 from falk at debian dot org 2009-03-18 09:06 --- (In reply to comment #18) I can't imagine an implementation of memcpy that would break when the two addresses are the same, it just doesn't work if one is offset but overlapping. So the valgrind warning is

[Bug c++/39480] generated memcpy causes trouble in assignment

2009-03-18 Thread rguenth at gcc dot gnu dot org
--- Comment #21 from rguenth at gcc dot gnu dot org 2009-03-18 09:47 --- For struct A { int i[200]; }; struct A *p1, *p2; void f() { *p1 = *p2; } we are sure that either p1 == p2 or *p1 and *p2 do not overlap because otherwise there would be an alias violation. --

[Bug c++/39480] generated memcpy causes trouble in assignment

2009-03-18 Thread jakub at gcc dot gnu dot org
--- Comment #24 from jakub at gcc dot gnu dot org 2009-03-18 10:11 --- The problem with that is that in most cases you won't be able to prove it and memmove is certainly more expensive than memcpy and usually isn't even expanded inline (unless it is optimized into memcpy by proving

[Bug c++/39480] generated memcpy causes trouble in assignment

2009-03-18 Thread fpbeekhof at gmail dot com
--- Comment #22 from fpbeekhof at gmail dot com 2009-03-18 09:56 --- Subject: Re: generated memcpy causes trouble in assignment jakub at gcc dot gnu dot org wrote: --- Comment #20 from jakub at gcc dot gnu dot org 2009-03-18 09:10 --- So let's use memmove on alpha and

[Bug c++/39480] generated memcpy causes trouble in assignment

2009-03-18 Thread fpbeekhof at gmail dot com
--- Comment #23 from fpbeekhof at gmail dot com 2009-03-18 10:04 --- My last comment (#22) of course does not address issues pointed out by jason in #18. Even if we know that we are sure that either p1 == p2 or *p1 and *p2 do not overlap because otherwise there would be an alias

[Bug c++/39480] generated memcpy causes trouble in assignment

2009-03-17 Thread paolo dot carlini at oracle dot com
--- Comment #17 from paolo dot carlini at oracle dot com 2009-03-17 13:35 --- Jason, could you maybe double check this one too? -- paolo dot carlini at oracle dot com changed: What|Removed |Added

[Bug c++/39480] generated memcpy causes trouble in assignment

2009-03-17 Thread jason at gcc dot gnu dot org
--- Comment #18 from jason at gcc dot gnu dot org 2009-03-18 03:29 --- I can't imagine an implementation of memcpy that would break when the two addresses are the same, it just doesn't work if one is offset but overlapping. So the valgrind warning is pedantically correct, but I think