fixup BB vectorization constant generation place
authorRichard Biener <rguenther@suse.de>
Fri, 15 May 2020 11:13:38 +0000 (13:13 +0200)
committerRichard Biener <rguenther@suse.de>
Mon, 18 May 2020 13:31:05 +0000 (15:31 +0200)
commitcfaf0edbb123958e84d296354152294f167db9f3
treefda9e5aea4a7ba8d81847189bc58c78362279810
parentd83e28f47f5467b435667122add2aa9730e1a89b
fixup BB vectorization constant generation place

This adjusts the way we compute the stmt insert location for
invariants in BB vectorization context to deal with eventually
sharing invariant SLP nodes for multiple uses.  We can no longer
use a single use stmt location then but there's a simple way out.

2020-05-18  Richard Biener  <rguenther@suse.de>

* tree-vect-slp.c (vect_slp_bb): Start after labels.
(vect_get_constant_vectors): Really place init stmt after scalar defs.
* tree-vect-stmts.c (vect_init_vector_1): Insert before
region begin.
gcc/ChangeLog
gcc/tree-vect-slp.c
gcc/tree-vect-stmts.c