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 ca125cf55ac7ad7834dd01eca285f2d4660af823..29641f09e7f4bac54c8c2023ecd9f24f3d06f234 100644 (file)
@@ -1,3 +1,9 @@
+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
index 1da949a7070294ca43c623fcd2916180f8a7e28f..750af2e3dd0175a1f2b4d4c9cb9e8afd9749fcc8 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;