This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/30375] [4.3 Regression] tree-ssa-dse incorrectly removes struct initialization
- From: "rguenth at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 31 Aug 2007 13:56:25 -0000
- Subject: [Bug tree-optimization/30375] [4.3 Regression] tree-ssa-dse incorrectly removes struct initialization
- References: <bug-30375-3760@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #22 from rguenth at gcc dot gnu dot org 2007-08-31 13:56 -------
We are clearly missing the use of signInfo.d by the call, thus we should
from the bitmap of clobbered parts of signInfo remove the used parts once we
encounter the call. But somehow we never remove bits from this bitmap and
I have no clue how this should work with other intermediate uses, but it
somehow does. And indeed, it also happily removes the whole-aggregate store
for
s signInfo = { sizeof(signInfo), 0 };
signInfo.b = 1;
signInfo.c = 0;
h(signInfo.d);
signInfo.d = 1;
if you disable other optimizations before DSE.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30375