]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
tree-optimization/104114 - avoid diagnosing V1mode lowering
authorRichard Biener <rguenther@suse.de>
Wed, 19 Jan 2022 12:59:21 +0000 (13:59 +0100)
committerRichard Biener <rguenther@suse.de>
Thu, 20 Jan 2022 08:04:20 +0000 (09:04 +0100)
Currently we diagnose vector lowering of V1mode operations that
are not natively supported into V_C_E, scalar op plus CTOR with
-Wvector-operation-performance but that's hardly useful behavior
even though the way we lower things can be improved.

The following disables the diagnostics for the cases the vect.exp
testsuite runs into, on x86 that are vect-cond-11.c and
vect-singleton_1.c.

2022-01-19  Richard Biener  <rguenther@suse.de>

PR tree-optimization/104114
* tree-vect-generic.cc (expand_vector_piecewise): Do not diagnose
single element vector decomposition.

gcc/tree-vect-generic.cc

index 5814a71a5bb650e88f6ae635af6940f23cbaf39a..f4fc7d161190e11f95feb12fe9bf347bd0cf0542 100644 (file)
@@ -317,7 +317,10 @@ expand_vector_piecewise (gimple_stmt_iterator *gsi, elem_op_func f,
   int i;
   location_t loc = gimple_location (gsi_stmt (*gsi));
 
-  if (ret_type || !parallel_p)
+  if (nunits == 1)
+    /* Do not diagnose decomposing single element vectors.  */
+    ;
+  else if (ret_type || !parallel_p)
     warning_at (loc, OPT_Wvector_operation_performance,
                "vector operation will be expanded piecewise");
   else