This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r124299 - in /branches/escape-analysis/gcc/java...
- From: pbiggar at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Mon, 30 Apr 2007 16:55:29 -0000
- Subject: r124299 - in /branches/escape-analysis/gcc/java...
Author: pbiggar
Date: Mon Apr 30 17:55:28 2007
New Revision: 124299
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=124299
Log:
Handle null RHSs of statements, and update connection graph with a null node, rather than clearing outgoing edges. This simplifies things a bit.
Merge field node search with normal search in the node hashtable. This means comparing owners.
Propagate escape state immediately upon assigning. It seems incorrect to do it any other way.
Support more allocation calls in the devirtualizer
Add support for cloning (though it isnt treated as a memory allocation. In reality it should be treated as a factory method. Will do them later).
In p.class, which has 7000 basic blocks, too much memory was being used. Instead, merge graphs with the final graph when we determine they could be the final block in the function. Reference count graphs and clean them up after all their predecessors have been created.
Check for and handle infinite loops in the source.
Modified:
branches/escape-analysis/gcc/java/congraph.c
branches/escape-analysis/gcc/java/congraph.h
branches/escape-analysis/gcc/java/ipa-stack-allocate.c
branches/escape-analysis/gcc/java/tree-ssa-devirt.c