OSDN Git Service

gcc/ChangeLog:
authoraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 8 Sep 2009 17:42:11 +0000 (17:42 +0000)
committeraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 8 Sep 2009 17:42:11 +0000 (17:42 +0000)
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151521 138bc75d-0d04-0410-961f-82ee72b054a4

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

index 4d18f17..cc86721 100644 (file)
@@ -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.
index 66b454d..e9d6446 100644 (file)
@@ -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 (file)
index 0000000..9f6e566
--- /dev/null
@@ -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
index b5b6afe..9015d19 100644 (file)
@@ -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);
            }