Fix mask type choice in vectorizable_call (PR 89535)
authorRichard Sandiford <richard.sandiford@arm.com>
Fri, 1 Mar 2019 13:05:40 +0000 (13:05 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Fri, 1 Mar 2019 13:05:40 +0000 (13:05 +0000)
commitf2d040abea60db10675e0a5c2f91b7991541df90
tree1eed7a55e632776e08f89a84c693a4194a3ff426
parent22fe0312b3782144a26aa1ca3769e0af883069a0
Fix mask type choice in vectorizable_call (PR 89535)

This is another case in which we were failing to pass the expected
mask vector type to vect_get_vec_def_for_operand.

2019-02-28  Richard Sandiford  <richard.sandiford@arm.com>

gcc/
PR tree-optimization/89535
* tree-vect-stmts.c (vectorizable_call): Record the vector types
for each operand.  Calculate the fallback choice for mask operands
and pass it to vect_get_vec_def_for_operand.

gcc/testsuite/
PR tree-optimization/89535
* gfortran.dg/vect/pr89535.f90: New test.

From-SVN: r269308
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/vect/pr89535.f90 [new file with mode: 0644]
gcc/tree-vect-stmts.c