This is the mail archive of the java-patches@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [tree-ssa] Gimplifying Java


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.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]