Ignore ignored operands in vect_get_and_check_slp_defs
authorRichard Biener <rguenther@suse.de>
Wed, 28 Oct 2020 14:07:02 +0000 (15:07 +0100)
committerRichard Biener <rguenther@suse.de>
Wed, 28 Oct 2020 15:00:34 +0000 (16:00 +0100)
commit6f62d8dd338a43653e1ee195b9b7bf1779e4abeb
treee0b714ec85b7b12088a9dae5c789867118f38095
parenta4b9620d56601cfaeb73476b4542a287ec861771
Ignore ignored operands in vect_get_and_check_slp_defs

This passes down skip_args to vect_get_and_check_slp_defs to skip
ignored ops there, too and not fail SLP discovery.  This fixes
gcc.target/aarch64/sve/reduc_strict_5.c

2020-10-28  Richard Biener  <rguenther@suse.de>

* tree-vect-slp.c (vect_get_and_check_slp_defs): For skipped
args just push NULLs and vect_uninitialized_def.
(vect_build_slp_tree_2): Allocate skip_args for all ops
and pass it down to vect_get_and_check_slp_defs.
gcc/tree-vect-slp.c