This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
Re: [tree-ssa] Gimplifying Java
- From: Diego Novillo <dnovillo at redhat dot com>
- To: Jeff Sturm <jsturm at one-point dot com>
- Cc: java-patches at gcc dot gnu dot org, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Date: 11 Jun 2003 20:47:04 -0400
- Subject: Re: [tree-ssa] Gimplifying Java
- Organization: Red Hat Canada
- References: <Pine.LNX.4.44.0306111928540.10620-100000@ops2.one-point.com>
On Wed, 2003-06-11 at 20:13, Jeff Sturm wrote:
> Following is my first attempt to merge the gcj source frontend with the
> tree-ssa infrastructure.
>
Cool! Thanks Jeff. In principle I would encourage you to commit the
patch to the branch, but I'd rather let Jason have the final say, as
most of it is right up his alley.
> I can probably fix the first failure drawing upon several good ideas from
> the mailing list. The out of SSA pass is still beyond my comprehension,
> though I wonder if this isn't related to one of the known shortcomings,
> such as live range overlapping. (I do have a test case.)
>
Live range overlapping is enabled now. Could you post the test case?
> Most of the conversion is handled in java_simplify_expr, however there are
> other changes due to certain trees that are not acceptable to gimplify
> even though they are accepted by the RTL expanders. For example,
> LOOP_EXPR nodes with trailing empty statements cause an incorrect CFG to
> be constructed, breaking copy/constant propogation.
>
Do you have a test case for this? It sounds vaguely familiar.
> * java-simplify.c: New file.
>
> * java-tree.h (java_simplify_expr): Declare.
>
Could you s/simplify/gimplify/ and s/simple/gimple/? We are overdue for
changing that in the C and C++ FEs. Since this is new code, it'd be
better if we use the right term.
Also, can gimplification be disabled with -fdisable-simple? (yes, we
need to change that flag's name) I've found this to be very useful when
fixing bugs and/or figuring out performance regressions. The idea is to
have this switch completely bypass both gimplification and tree
optimization, and go directly to RTL.
Thanks again. Diego.