aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-if-conv.cc
diff options
context:
space:
mode:
authorkonglin1 <lingling.kong@intel.com>2022-09-01 14:40:42 +0800
committerkonglin1 <lingling.kong@intel.com>2022-09-01 14:40:48 +0800
commitca8f4e8af148694ae2fd444a0cdcf713910d23fd (patch)
treec180e113f9efd219391861d2c2ad517ad17c248c /gcc/tree-if-conv.cc
parent023c5b36e476976cb3b45ff32c7c64990c5a6d45 (diff)
downloadgcc-ca8f4e8af148694ae2fd444a0cdcf713910d23fd.zip
gcc-ca8f4e8af148694ae2fd444a0cdcf713910d23fd.tar.gz
gcc-ca8f4e8af148694ae2fd444a0cdcf713910d23fd.tar.bz2
middle-end: Add MULT_EXPR recognition for cond scalar reduction
gcc/ChangeLog: * tree-if-conv.cc (is_cond_scalar_reduction): Add MULT_EXPR recognition. gcc/testsuite/ChangeLog: * gcc.dg/tree-ssa/gen-vect-34.c: New test. * gcc.dg/vect/vect-ifcvt-18.c: New test.
Diffstat (limited to 'gcc/tree-if-conv.cc')
-rw-r--r--gcc/tree-if-conv.cc1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/tree-if-conv.cc b/gcc/tree-if-conv.cc
index 1c8e1a4..bac29fb 100644
--- a/gcc/tree-if-conv.cc
+++ b/gcc/tree-if-conv.cc
@@ -1739,6 +1739,7 @@ is_cond_scalar_reduction (gimple *phi, gimple **reduc, tree arg_0, tree arg_1,
if (reduction_op != PLUS_EXPR
&& reduction_op != MINUS_EXPR
+ && reduction_op != MULT_EXPR
&& reduction_op != BIT_IOR_EXPR
&& reduction_op != BIT_XOR_EXPR
&& reduction_op != BIT_AND_EXPR)