This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/33302] dead-store not eliminated
- 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: 5 Sep 2007 11:33:31 -0000
- Subject: [Bug tree-optimization/33302] dead-store not eliminated
- References: <bug-33302-8535@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #1 from rguenth at gcc dot gnu dot org 2007-09-05 11:33 -------
While RTL dse eliminates the redundant store to this->D.2013.a, tree-level DSE
does not do so. (RTL dse also fails with -O3 -fforce-addr -ftracer)
<bb 4>:
# VUSE <tab_54, SMT.9_56>
D.2089_34 = this_2(D)->D.2013.a;
D.2090_35 = (unsigned int) D.2089_34;
D.2091_36 = D.2090_35 + 2;
D.2092_37 = (int) D.2091_36;
# tab_62 = VDEF <tab_54>
# SMT.9_63 = VDEF <SMT.9_56>
this_2(D)->D.2013.a = D.2092_37;
D.2095_40 = D.2091_36 + 2;
D.2096_41 = (int) D.2095_40;
# tab_64 = VDEF <tab_62>
# SMT.9_65 = VDEF <SMT.9_63>
this_2(D)->D.2013.a = D.2096_41;
# VUSE <tab_64, SMT.9_65>
D.2087_42 = this_2(D)->addr;
D.2097_43 = (long unsigned int) D.2087_42;
D.2098_44 = D.2097_43 & 255;
D.2099_45 = p_33 + D.2098_44;
# VUSE <tab_64, SMT.9_65>
b_46 = *D.2099_45;
goto <bb 6>;
clearly there is no reason for DSE not to discard the store.
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |rguenth at gcc dot gnu dot
| |org
Severity|normal |enhancement
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
Keywords| |missed-optimization, TREE
Last reconfirmed|0000-00-00 00:00:00 |2007-09-05 11:33:31
date| |
Summary|follow-up on bug 33291 |dead-store not eliminated
|dead-store not eliminated |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33302