Commit ace4eb90 by Richard Guenther Committed by Richard Biener

re PR tree-optimization/36078 (gfortran fails to build cpu2006/465.tonto)

2008-04-29  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/36078
	* tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely):
	Update virtual SSA form after cleaning up the CFG.

	* gfortran.fortran-torture/compile/pr36078.f90: New testcase.

From-SVN: r134799
parent 1447bf05
2008-04-29 Richard Guenther <rguenther@suse.de>
PR tree-optimization/36078
* tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely):
Update virtual SSA form after cleaning up the CFG.
2008-04-29 Richard Guenther <rguenther@suse.de>
PR middle-end/15255
* fold-const.c (fold_binary): Fold (A + A) * C to A * 2*C.
......
2008-04-29 Richard Guenther <rguenther@suse.de>
PR tree-optimization/36078
* gfortran.fortran-torture/compile/pr36078.f90: New testcase.
2008-04-29 Richard Guenther <rguenther@suse.de>
PR middle-end/15255
* gcc.dg/fold-plusmult.c: New testcase.
subroutine foo(func,p,eval)
real(kind=kind(1.0d0)), dimension(3,0:4,0:4,0:4) :: p
logical(kind=kind(.true.)), dimension(5,5,5) :: eval
interface
subroutine func(values,pt)
real(kind=kind(1.0d0)), dimension(:), intent(out) :: values
real(kind=kind(1.0d0)), dimension(:,:), intent(in) :: pt
end subroutine
end interface
real(kind=kind(1.0d0)), dimension(125,3) :: pt
integer(kind=kind(1)) :: n_pt
n_pt = 1
pt(1:n_pt,:) = &
reshape( &
pack( &
transpose(reshape(p,(/3,125/))), &
spread(reshape(eval,(/125/)),dim=2,ncopies=3)), &
(/n_pt,3/))
end subroutine
end
......@@ -366,7 +366,8 @@ tree_unroll_loops_completely (bool may_increase_size, bool unroll_outer)
/* This will take care of removing completely unrolled loops
from the loop structures so we can continue unrolling now
innermost loops. */
cleanup_tree_cfg ();
if (cleanup_tree_cfg ())
update_ssa (TODO_update_ssa_only_virtuals);
/* Clean up the information about numbers of iterations, since
complete unrolling might have invalidated it. */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment