Move code that stubs out IFN_MASK_LOADs
authorRichard Sandiford <richard.sandiford@linaro.org>
Wed, 3 Jan 2018 21:46:45 +0000 (21:46 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Wed, 3 Jan 2018 21:46:45 +0000 (21:46 +0000)
commite251d3ec013bc46d58470988fc45566051a9030b
tree590f6ba979027fdb7f511fcb2b1c482643337955
parentb194a722446f51ffa11ea49affe6893a6361cfac
Move code that stubs out IFN_MASK_LOADs

vectorizable_mask_load_store replaces scalar IFN_MASK_LOAD calls with
dummy assignments, so that they never survive vectorisation.  This patch
moves the code to vect_transform_loop instead, so that we only change
the scalar statements once all of them have been vectorised.

This makes it easier to handle other types of functions that need
stubbing out, and also makes it easier to handle groups and patterns.

2018-01-03  Richard Sandiford  <richard.sandiford@linaro.org>

gcc/
* tree-vect-loop.c (vect_transform_loop): Stub out scalar
IFN_MASK_LOAD calls here rather than...
* tree-vect-stmts.c (vectorizable_mask_load_store): ...here.

From-SVN: r256210
gcc/ChangeLog
gcc/tree-vect-loop.c
gcc/tree-vect-stmts.c