Richard Biener 4b47acfe2b Remove non-SLP vectorization factor determining
The following removes the VF determining step from non-SLP stmts.
For now we keep setting STMT_VINFO_VECTYPE for all stmts, there are
too many places to fix, including some more complicated ones, so
this is defered for a followup.

Along this removes vect_update_vf_for_slp, merging the check for
present hybrid SLP stmts to vect_detect_hybrid_slp and fail analysis
early.  This also removes to essentially duplicate this check in
the stmt walk of vect_analyze_loop_operations.  Getting rid of that,
and performing some other checks earlier is also defered to a followup.

	* tree-vect-loop.cc (vect_determine_vf_for_stmt_1): Rename
	to ...
	(vect_determine_vectype_for_stmt_1): ... this and only set
	STMT_VINFO_VECTYPE.  Fail for single-element vector types.
	(vect_determine_vf_for_stmt): Rename to ...
	(vect_determine_vectype_for_stmt): ... this and only set
	STMT_VINFO_VECTYPE. Fail for single-element vector types.
	(vect_determine_vectorization_factor): Rename to ...
	(vect_set_stmts_vectype): ... this and only set STMT_VINFO_VECTYPE.
	(vect_update_vf_for_slp): Remove.
	(vect_analyze_loop_operations): Remove walk over stmts.
	(vect_analyze_loop_2): Call vect_set_stmts_vectype instead of
	vect_determine_vectorization_factor.  Set vectorization factor
	from LOOP_VINFO_SLP_UNROLLING_FACTOR.  Fail if vect_detect_hybrid_slp
	detects hybrid stmts or when vect_make_slp_decision finds
	nothing to SLP.
	* tree-vect-slp.cc (vect_detect_hybrid_slp): Move check
	whether we have any hybrid stmts here from vect_update_vf_for_slp
	* tree-vect-stmts.cc (vect_analyze_stmt): Remove loop over
	stmts.
	* tree-vectorizer.h (vect_detect_hybrid_slp): Update.
2025-07-10 09:30:30 +02:00
2025-07-09 00:20:02 +00:00
2025-07-10 00:20:18 +00:00
2025-07-10 00:20:18 +00:00
2025-07-10 00:20:18 +00:00
2025-07-10 00:20:18 +00:00

This directory contains the GNU Compiler Collection (GCC).

The GNU Compiler Collection is free software.  See the files whose
names start with COPYING for copying permission.  The manuals, and
some of the runtime libraries, are under different terms; see the
individual source files for details.

The directory INSTALL contains copies of the installation information
as HTML and plain text.  The source of this information is
gcc/doc/install.texi.  The installation information includes details
of what is included in the GCC sources and what files GCC installs.

See the file gcc/doc/gcc.texi (together with other files that it
includes) for usage and porting information.  An online readable
version of the manual is in the files gcc/doc/gcc.info*.

See http://gcc.gnu.org/bugs/ for how to report bugs usefully.

Copyright years on GCC source files may be listed using range
notation, e.g., 1987-2012, indicating that every year in the range,
inclusive, is a copyrightable year that could otherwise be listed
individually.
Description
No description provided
Readme 4 GiB
Languages
C++ 31%
C 30.3%
Ada 14.9%
D 6.2%
Go 5.9%
Other 11.2%