re PR tree-optimization/63915 (gomp/pr60823-2.c:31:1: error: dead STMT in EH table)
authorJakub Jelinek <jakub@redhat.com>
Wed, 19 Nov 2014 09:50:58 +0000 (10:50 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Wed, 19 Nov 2014 09:50:58 +0000 (10:50 +0100)
PR tree-optimization/63915
* tree-vect-stmts.c (vectorizable_simd_clone_call): Pass
true instead of false as last argument to gsi_replace.

* c-c++-common/gomp/pr60823-4.c: New test.

From-SVN: r217759

gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/c-c++-common/gomp/pr60823-4.c [new file with mode: 0644]
gcc/tree-vect-stmts.c

index eeae399..ff9fe1e 100644 (file)
@@ -1,5 +1,9 @@
 2014-11-19  Jakub Jelinek  <jakub@redhat.com>
 
+       PR tree-optimization/63915
+       * tree-vect-stmts.c (vectorizable_simd_clone_call): Pass
+       true instead of false as last argument to gsi_replace.
+
        PR sanitizer/63520
        * internal-fn.c (expand_ubsan_result_store): New function.
        (expand_addsub_overflow, expand_neg_overflow, expand_mul_overflow):
index c69393c..08a6c23 100644 (file)
@@ -1,5 +1,8 @@
 2014-11-19  Jakub Jelinek  <jakub@redhat.com>
 
+       PR tree-optimization/63915
+       * c-c++-common/gomp/pr60823-4.c: New test.
+
        PR sanitizer/63520
        * c-c++-common/ubsan/pr63520.c: New test.
 
diff --git a/gcc/testsuite/c-c++-common/gomp/pr60823-4.c b/gcc/testsuite/c-c++-common/gomp/pr60823-4.c
new file mode 100644 (file)
index 0000000..a9bc0fa
--- /dev/null
@@ -0,0 +1,7 @@
+/* PR tree-optimization/63915 */
+/* { dg-do run } */
+/* { dg-require-effective-target vect_simd_clones } */
+/* { dg-options "-O2 -fopenmp-simd" } */
+/* { dg-additional-options "-fpic" { target fpic } } */
+
+#include "pr60823-2.c"
index f877fea..e9859f7 100644 (file)
@@ -3195,7 +3195,7 @@ vectorizable_simd_clone_call (gimple stmt, gimple_stmt_iterator *gsi,
   set_vinfo_for_stmt (new_stmt, stmt_info);
   set_vinfo_for_stmt (stmt, NULL);
   STMT_VINFO_STMT (stmt_info) = new_stmt;
-  gsi_replace (gsi, new_stmt, false);
+  gsi_replace (gsi, new_stmt, true);
   unlink_stmt_vdef (stmt);
 
   return true;