[Bug tree-optimization/39612] [4.4/4.5 Regression] Incorrect warning issued Re variable *is* used uninitialized in this function
rguenth at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Thu Apr 2 09:44:00 GMT 2009
------- Comment #2 from rguenth at gcc dot gnu dot org 2009-04-02 09:43 -------
Confirmed. store motion transforms a loop
for (;;)
a[0] = 1;
to
lsmtmp = a[0];
for (;;)
lsmtmp = 1;
a[0] = lsmtmp;
introducing a load from uninitialized memory. We don't seem to DCE/DSE this
for the tree element array but only the two element one.
The fix is to avoid the load part of load-store-motion of course. The
warning about unused aggregates is new in 4.4 which makes this a regression.
On the a-i branch we remove the stores later.
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |rguenth at gcc dot gnu dot
| |org, rakdver at gcc dot gnu
| |dot org
Status|UNCONFIRMED |NEW
Component|c |tree-optimization
Ever Confirmed|0 |1
Keywords| |missed-optimization
Last reconfirmed|0000-00-00 00:00:00 |2009-04-02 09:43:52
date| |
Summary|Incorrect warning issued Re |[4.4/4.5 Regression]
|variable *is* used |Incorrect warning issued Re
|uninitialized in this |variable *is* used
|function |uninitialized in this
| |function
Target Milestone|--- |4.4.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39612
More information about the Gcc-bugs
mailing list