This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] Remove LOOP_EXPR
Hello,
> They're being generated by stmt.c:expand_start_loop. I am quite lost
> around this code :) So, could I ask one of you folks to take a look?
>
> The test case I was looking at is
> gfortran.fortran-torture/compile/ambig.f90
the problem is that fortran frontend does not call gimplification at all.
I am not really sure whether this is intentional (is it trying to
produce gimple directly?). Anyway, this patch fixes the problem.
Zdenek
* tree-optimize.c (tree_rest_of_compilation): Call
gimplification.
Index: tree-optimize.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/tree-optimize.c,v
retrieving revision 1.1.4.45
diff -c -3 -p -r1.1.4.45 tree-optimize.c
*** tree-optimize.c 4 Sep 2003 13:52:38 -0000 1.1.4.45
--- tree-optimize.c 6 Sep 2003 20:10:02 -0000
*************** tree_rest_of_compilation (tree fndecl)
*** 219,226 ****
/* Gimplify the function. Don't try to optimize the function if
gimplification failed. */
if (!flag_disable_gimple
! && (keep_function_tree_in_gimple_form (fndecl)
! || gimplify_function_tree (fndecl)))
{
/* Debugging dump after gimplification. */
dump_function (TDI_gimple, fndecl);
--- 220,227 ----
/* Gimplify the function. Don't try to optimize the function if
gimplification failed. */
if (!flag_disable_gimple
! && keep_function_tree_in_gimple_form (fndecl)
! && gimplify_function_tree (fndecl))
{
/* Debugging dump after gimplification. */
dump_function (TDI_gimple, fndecl);