This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/18694] [4.0 regression] loop miscompilation at -O1 (-ftree-ch)
- From: "kazu at cs dot umass dot edu" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 10 Dec 2004 18:53:01 -0000
- Subject: [Bug tree-optimization/18694] [4.0 regression] loop miscompilation at -O1 (-ftree-ch)
- References: <20041127224610.18694.falk@debian.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From kazu at cs dot umass dot edu 2004-12-10 18:53 -------
Subject: Re: [4.0 regression] loop
miscompilation at -O1 (-ftree-ch)
Hi Zdenek,
> > > or simply use dominated_by_p, which is not too expensive -
> > > only a couple of "if" statements, assuming the dominator infomatino is
> > > available.
> > EDGE_DFS_BACK would have been more efficient. But I don't think it's
> > 100% safe right now.
>
> not that much. Since you do not change cfg in the progress of dominator
> optimizations, you should have fast query structure for dominators
> up-to-date; i.e. testing whether a basic block dominates other takes only
> two comparisons of integers.
Right. If we have dominator information available,
mark_dfs_back_edges does nothing but duplicates a part of what the
dominator information has to offer. (It's not that
mark_dfs_back_edges is very flow, but ....)
Kazu Hirata
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18694