From dbfa87aa8704d7cb2ce147966f27bdf70ce7596c Mon Sep 17 00:00:00 2001 From: Yuri Rumyantsev Date: Tue, 11 Aug 2015 13:52:17 +0000 Subject: tree-vect-stmts.c (vectorizable_shift): Add missed test on vect_induction_def. gcc/ * tree-vect-stmts.c (vectorizable_shift): Add missed test on vect_induction_def. gcc/testsuite: * gcc.target/i386/avx2-vect-shift.c: New test. From-SVN: r226781 --- gcc/tree-vect-stmts.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'gcc/tree-vect-stmts.c') diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c index 33a7e0c..2ddd434 100644 --- a/gcc/tree-vect-stmts.c +++ b/gcc/tree-vect-stmts.c @@ -4461,7 +4461,9 @@ vectorizable_shift (gimple stmt, gimple_stmt_iterator *gsi, /* Determine whether the shift amount is a vector, or scalar. If the shift/rotate amount is a vector, use the vector/vector shift optabs. */ - if (dt[1] == vect_internal_def && !slp_node) + if ((dt[1] == vect_internal_def + || dt[1] == vect_induction_def) + && !slp_node) scalar_shift_arg = false; else if (dt[1] == vect_constant_def || dt[1] == vect_external_def -- cgit v1.1