GCC Newspaper
OCTOBER 6, 2026
Date
/
Architectures
Components
Topics
News & Policy
Other
tree-optimization

SLP schedule failure state caching improved.

GCC's SLP vectorization now correctly uses cached failure states for previously analyzed entries.

This commit ensures that GCC’s SLP (Superword Level Parallelism) vectorization pass properly utilizes cached failure information. When an entry has already been analyzed and determined to be unvectorizable, its failure state is now correctly reused, preventing redundant analysis and ensuring that previously identified unvectorizable code patterns are consistently handled.

In Details

The vect_schedule_slp function in tree-vect-slp.cc has been updated to properly leverage cached failure states. If scc_info (Scalar or Superword Code information) is already present for an entry, indicating a prior analysis, the function now consults its failure field. This prevents re-evaluation of code segments previously determined to be unsuitable for SLP vectorization, improving efficiency and consistency.

For Context
SLP (Superword Level Parallelism)
A compiler optimization technique that identifies and vectorizes sequences of identical operations that operate on different data elements within a single instruction stream.
vectorization
The process of transforming code to use SIMD (Single Instruction, Multiple Data) instructions, allowing a single instruction to operate on multiple data elements simultaneously.
tree-optimization
A phase in GCC's compilation pipeline where optimizations are performed on the GCC's intermediate representation (GIMPLE).
scc_info
Information related to Scalar or Superword Code, often used in vectorization passes to track analysis results.
Filed Under: optimizationvectorizationtree-optimizationslp