diff options
Diffstat (limited to 'gcc/tree-vect-patterns.c')
-rw-r--r-- | gcc/tree-vect-patterns.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/tree-vect-patterns.c b/gcc/tree-vect-patterns.c index 2f86f9e..baa9a4c 100644 --- a/gcc/tree-vect-patterns.c +++ b/gcc/tree-vect-patterns.c @@ -868,6 +868,8 @@ vect_reassociating_reduction_p (stmt_vec_info stmt_info, tree_code code, *op0_out = gimple_assign_rhs1 (assign); *op1_out = gimple_assign_rhs2 (assign); + if (commutative_tree_code (code) && STMT_VINFO_REDUC_IDX (stmt_info) == 0) + std::swap (*op0_out, *op1_out); return true; } |