[Bug middle-end/35204] [4.3 Regression] crash by too deep recursion in DFS tree-ssa-sccvn.c:1898

dberlin at dberlin dot org gcc-bugzilla@gcc.gnu.org
Sat Feb 16 14:57:00 GMT 2008



------- Comment #20 from dberlin at gcc dot gnu dot org  2008-02-16 14:56 -------
Subject: Re:  [4.3 Regression] crash by too deep recursion in DFS
tree-ssa-sccvn.c:1898

So, there are better SCC algorithms.
In particular, Nuutilla's algorithm will avoid placing a bunch of
nodes on the stack (pearce's is a modification of this).
This is what structalias uses.

You can also certainly make the algorithm non-recursive, but it is a
bunch of work.

See http://www.cise.ufl.edu/research/sparse/btf/BTF/Source/btf_strongcomp.c
for an example of a non-recursive SCC finder.
In essence, you have to keep stacks for each variable.


On 16 Feb 2008 12:51:44 -0000, rguenth at gcc dot gnu dot org
<gcc-bugzilla@gcc.gnu.org> wrote:
>
>
> ------- Comment #19 from rguenth at gcc dot gnu dot org  2008-02-16 12:51 -------
> Note that while it definitely improves stack usage, the total memory usage is
> likely to go up (vectors allocate some extra heap, the iters are now
> addressable
> and thus consume full memory) and as the ssa_op_iter is now pinned to memory
> it is likely the algorithm is slower as well.
>
>
> --
>
>
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35204
>
> ------- You are receiving this mail because: -------
> You are on the CC list for the bug, or are watching someone who is.
>


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35204



More information about the Gcc-bugs mailing list