GCC Newspaper
JULY 29, 2026
Date
/
Architectures
Components
Topics
News & Policy
gcc/tree-optimization

GCC: Remove redundant group_size argument from vectorization APIs

Vectorization APIs now infer group size from statement vector length, simplifying internal data structures.

This commit removes the group_size argument from several internal vectorization helper functions (e.g., vect_build_slp_tree*). This argument was redundant because the statement vector length already implicitly provides this information. The change simplifies the internal data structures used by the vectorizer and improves code clarity.

In Details

The vect_build_slp_tree* family of APIs in tree-vect-slp.cc previously accepted a group_size argument. This commit eliminates it, as the information is derivable from the stmt->get_vector_length(). This refactoring aims to reduce redundancy and potentially simplify the SLP (Straight-Line-Progress) vectorizer's internal state management.

For Context
SLP vectorizer
A compiler optimization pass that identifies sequences of identical operations in straight-line code (no branches) and replaces them with a single instruction that operates on multiple data elements simultaneously (vectorization).
statement vector length
Refers to the number of data elements that a single instruction can operate on in a vectorized loop or basic block.
Filed Under: vectorizationoptimization