]> git.ipfire.org Git - thirdparty/gcc.git/commit
Correctly handle store IFNs in vect_get_vector_types_for_stmt
authorRichard Biener <rguenther@suse.de>
Mon, 2 Sep 2024 09:16:12 +0000 (11:16 +0200)
committerRichard Biener <rguenth@gcc.gnu.org>
Tue, 3 Sep 2024 06:36:18 +0000 (08:36 +0200)
commit340ca7437ceb05d61797dbf3b522a495176c5a5e
tree23069305573486f49dca29621ea67eee16a10c86
parent62df24e50039ae04aa3b940e680cffd9041ef5bf
Correctly handle store IFNs in vect_get_vector_types_for_stmt

Currently vect_get_vector_types_for_stmt only special-cases
IFN_MASK_STORE but there are now very many variants and simply
passing analysis without setting *VECTYPE will ICE duing SLP
discovery (noticed with IFN_SCATTER_STORE).  The following
properly uses internal_store_fn_p.  I also noticed we're
unnecessarily handing those again to determine the scalar type
but there should always be a data reference for them.

* tree-vect-stmts.cc (vect_get_vector_types_for_stmt):
Handle all internal_store_fn_p the same.  Remove special-casing
for the scalar_type of IFN_MASK_STORE.
gcc/tree-vect-stmts.cc