re PR middle-end/62695 (internal compiler error: in get_constraint_for_component_ref...
authorRichard Biener <rguenther@suse.de>
Tue, 2 Sep 2014 08:22:33 +0000 (08:22 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Tue, 2 Sep 2014 08:22:33 +0000 (08:22 +0000)
2014-09-02  Richard Biener  <rguenther@suse.de>

PR tree-optimization/62695
* tree-ssa-structalias.c (find_func_clobbers): Add missing
vector truncate.

* gfortran.dg/pr62695.f90: New testcase.

From-SVN: r214810

gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/pr62695.f90 [new file with mode: 0644]
gcc/tree-ssa-structalias.c

index f8aa0f3..10561c9 100644 (file)
@@ -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
index 7dcb6e7..6825ea1 100644 (file)
@@ -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 (file)
index 0000000..7d80a85
--- /dev/null
@@ -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
index 0ce71bd..0169087 100644 (file)
@@ -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