Landing: adc20f13b60f

Project / Subsystem

gcc / tree-optimization

Date

2026-08-03

Author

Richard Biener

Commit

adc20f13b60f90c6a55d46fc6be37dfb9f4b86a0

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
tree-optimization
patch_id
—
commit_hash
adc20f13b60f90c6a55d46fc6be37dfb9f4b86a0
source_type
github
headline
SLP subgraph merging handles overlapping vector parts
tldr
SLP vectorization now merges subgraphs that overlap in low/high parts or use VEC_PERM, fixing SSA verification failures.
author
Richard Biener
outcome
committed
performance_win
false
breaking_change
false
series_id
—
series_parts
[]
tags
  • • vectorization
  • • optimization
  • • SLP
discussion_id_link
—
bugzilla_pr
—
date
2026-08-03T00:00:00.000Z

This commit enhances SLP (Superword Level Parallelism) vectorization by enabling the merging of subgraphs that overlap in their low or high parts, or through full vector copies using VEC_PERM nodes. It introduces mechanisms to build reverse mappings for scalar statements to SLP nodes and checks for containment within candidate subgraphs. This resolves issues in testcases like PR126053 and PR126099, preventing SSA verification failures by correctly handling overlapping vector data. New testcases are added to verify these improvements.