------- Comment #2 from rguenth at gcc dot gnu dot org 2007-09-05 11:48 ------- DSE does a post-dominator walk starting from the exit block. But the exit block has no predecessors because the function does never exit ;)
void foo(int *p)
{
while (1)
{
*p = 0;
*p = 0;
}
}
after DSE:
foo (p)
{
<bb 2>:
<bb 3>:
*p_1(D) = 0;
*p_1(D) = 0;
goto <bb 3>;
}
I suppose more post-dom walk optimizations are affected by this "bug".
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33302
