aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2009-09-08 17:42:11 +0000
committerAlexandre Oliva <aoliva@gcc.gnu.org>2009-09-08 17:42:11 +0000
commit91642126f3ad04c2a1a11af82765a652bcba110c (patch)
tree1d96b041ab37454787414c08900ab7ee8c2bb6f5
parentae0a44495fa7e8ef142c4ae1f98608238d40a5dc (diff)
downloadgcc-91642126f3ad04c2a1a11af82765a652bcba110c.zip
gcc-91642126f3ad04c2a1a11af82765a652bcba110c.tar.gz
gcc-91642126f3ad04c2a1a11af82765a652bcba110c.tar.bz2
re PR debug/41229 (VTA: internal compiler error: verify_ssa failed)
gcc/ChangeLog: PR debug/41229 PR debug/41291 PR debug/41300 * tree-ssa.c (execute_update_addresses_taken): Update debug insns. gcc/testsuite/ChangeLog: PR debug/41229 PR debug/41291 PR debug/41300 * gfortran.dg/pr41229.f90: New. From-SVN: r151521
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/testsuite/ChangeLog7
-rw-r--r--gcc/testsuite/gfortran.dg/pr41229.f9010
-rw-r--r--gcc/tree-ssa.c3
4 files changed, 26 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 4d18f17..cc86721 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,12 @@
2009-09-08 Alexandre Oliva <aoliva@redhat.com>
+ PR debug/41229
+ PR debug/41291
+ PR debug/41300
+ * tree-ssa.c (execute_update_addresses_taken): Update debug insns.
+
+2009-09-08 Alexandre Oliva <aoliva@redhat.com>
+
* tree-ssa-loop-ivopts.c (get_phi_with_result): Remove.
(remove_statement): Likewise.
(rewrite_use_nonlinear_expr): Adjust.
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 66b454d..e9d6446 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,5 +1,12 @@
2009-09-08 Alexandre Oliva <aoliva@redhat.com>
+ PR debug/41229
+ PR debug/41291
+ PR debug/41300
+ * gfortran.dg/pr41229.f90: New.
+
+2009-09-08 Alexandre Oliva <aoliva@redhat.com>
+
PR debug/41232
* gcc.dg/pr41232.c: New.
diff --git a/gcc/testsuite/gfortran.dg/pr41229.f90 b/gcc/testsuite/gfortran.dg/pr41229.f90
new file mode 100644
index 0000000..9f6e566
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/pr41229.f90
@@ -0,0 +1,10 @@
+! { dg-do compile }
+! { dg-options "-O2 -g" }
+SUBROUTINE cp_fm_triangular_multiply()
+ INTEGER, PARAMETER :: dp=KIND(0.0D0)
+ REAL(dp), ALLOCATABLE, DIMENSION(:) :: tau, work
+ REAL(KIND=dp), DIMENSION(:, :), POINTER :: a
+ ndim = SIZE(a,2)
+ ALLOCATE(tau(ndim),STAT=istat)
+ ALLOCATE(work(2*ndim),STAT=istat)
+END SUBROUTINE
diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c
index b5b6afe..9015d19 100644
--- a/gcc/tree-ssa.c
+++ b/gcc/tree-ssa.c
@@ -1963,7 +1963,8 @@ execute_update_addresses_taken (bool do_optimize)
{
gimple stmt = gsi_stmt (gsi);
- if (gimple_references_memory_p (stmt))
+ if (gimple_references_memory_p (stmt)
+ || is_gimple_debug (stmt))
update_stmt (stmt);
}