re PR tree-optimization/92460 (ICE: verify_ssa failed (error: definition in block...
authorRichard Biener <rguenther@suse.de>
Tue, 12 Nov 2019 12:12:18 +0000 (12:12 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Tue, 12 Nov 2019 12:12:18 +0000 (12:12 +0000)
2019-11-12  Richard Biener  <rguenther@suse.de>

PR tree-optimization/92460
* tree-vect-stmts.c (vectorizable_simd_clone_call): Unshare
expression before gimplifying.

From-SVN: r278094

gcc/ChangeLog
gcc/tree-vect-stmts.c

index ca125cf..29641f0 100644 (file)
@@ -1,5 +1,11 @@
 2019-11-12  Richard Biener  <rguenther@suse.de>
 
+       PR tree-optimization/92460
+       * tree-vect-stmts.c (vectorizable_simd_clone_call): Unshare
+       expression before gimplifying.
+
+2019-11-12  Richard Biener  <rguenther@suse.de>
+
        PR tree-optimization/92461
        * tree-vect-loop.c (vect_create_epilog_for_reduction): Update
        stmt after propagation.
index 1da949a..750af2e 100644 (file)
@@ -4246,8 +4246,8 @@ vectorizable_simd_clone_call (stmt_vec_info stmt_info,
                {
                  gimple_seq stmts;
                  arginfo[i].op
-                   = force_gimple_operand (arginfo[i].op, &stmts, true,
-                                           NULL_TREE);
+                   = force_gimple_operand (unshare_expr (arginfo[i].op),
+                                           &stmts, true, NULL_TREE);
                  if (stmts != NULL)
                    {
                      basic_block new_bb;