aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/pr62695.f9027
-rw-r--r--gcc/tree-ssa-structalias.c1
4 files changed, 39 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f8aa0f3..10561c9 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2014-09-02 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/62695
+ * tree-ssa-structalias.c (find_func_clobbers): Add missing
+ vector truncate.
+
2014-09-01 Oleg Endo <olegendo@gcc.gnu.org>
PR target/62312
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 7dcb6e7..6825ea1 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2014-09-02 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/62695
+ * gfortran.dg/pr62695.f90: New testcase.
+
2014-09-01 Oleg Endo <olegendo@gcc.gnu.org>
PR target/62312
diff --git a/gcc/testsuite/gfortran.dg/pr62695.f90 b/gcc/testsuite/gfortran.dg/pr62695.f90
new file mode 100644
index 0000000..7d80a85
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/pr62695.f90
@@ -0,0 +1,27 @@
+! { dg-do compile }
+! { dg-options "-O -fipa-pta" }
+
+MODULE dbcsr_dist_operations
+ TYPE dbcsr_mp_obj
+ END TYPE dbcsr_mp_obj
+ INTERFACE
+ SUBROUTINE dbcsr_mp_new(mp_env, pgrid, mp_group, mynode, numnodes, myprow,&
+ mypcol)
+ IMPORT
+ TYPE(dbcsr_mp_obj), INTENT(OUT) :: mp_env
+ INTEGER, DIMENSION(0:, 0:), INTENT(IN) :: pgrid
+ END SUBROUTINE dbcsr_mp_new
+ END INTERFACE
+CONTAINS
+ SUBROUTINE dbcsr_mp_make_env (mp_env, mp_group, &
+ nprocs, pgrid_dims, error)
+ TYPE(dbcsr_mp_obj), INTENT(OUT) :: mp_env
+ OPTIONAL :: pgrid_dims
+ INTEGER :: error_handle, group, mynode, &
+ numnodes, pcol, prow
+ INTEGER, ALLOCATABLE, DIMENSION(:, :) :: pgrid
+ INTEGER, DIMENSION(2) :: coord, myploc, npdims
+ CALL dbcsr_mp_new (mp_env, pgrid, group, mynode, numnodes,&
+ myprow=myploc(1), mypcol=myploc(2))
+ END SUBROUTINE dbcsr_mp_make_env
+END MODULE dbcsr_dist_operations
diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c
index 0ce71bd..0169087 100644
--- a/gcc/tree-ssa-structalias.c
+++ b/gcc/tree-ssa-structalias.c
@@ -5042,6 +5042,7 @@ find_func_clobbers (struct function *fn, gimple origt)
get_constraint_for_address_of (arg, &rhsc);
FOR_EACH_VEC_ELT (rhsc, j, rhsp)
process_constraint (new_constraint (lhs, *rhsp));
+ rhsc.truncate (0);
}
/* Build constraints for propagating clobbers/uses along the