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: "rguenther at suse dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 5 Sep 2007 14:17:17 -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 #6 from rguenther at suse dot de 2007-09-05 14:17 -------
Subject: Re: dead-store not eliminated
On Wed, 5 Sep 2007, rakdver at gcc dot gnu dot org wrote:
> (In reply to comment #4)
> > Ah, I only found add_noreturn_fake_exit_edges which obviously didn't help.
> > connect_infinite_loops_to_exit does. Thx.
>
> dominance.c contains code (probably buggy) that adds such edges implicitly, so
> this should not be needed.
Maybe, but then domwalk.c is buggy as walk_dominator_tree does
while (true)
{
/* Don't worry about unreachable blocks. */
if (EDGE_COUNT (bb->preds) > 0 || bb == ENTRY_BLOCK_PTR)
{
and obviously in my case bb (the exit block) has no preds. Maybe
simply special-casing EXIT_BLOCK_PTR as well helps.
Richard.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33302