Landing: 987e38794015

Project / Subsystem

gcc / gcc/vect

Date

2026-08-04

Author

Tamar Christina

Commit

987e38794015c2dbb5f16d7641491d3b62680743

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
gcc/vect
patch_id
—
commit_hash
987e38794015c2dbb5f16d7641491d3b62680743
source_type
github
headline
Improve vectorization of complex number operations
tldr
Refine vectorization of complex number operations by correctly matching real and imaginary parts to their defining statements.
author
Tamar Christina
outcome
committed
performance_win
false
breaking_change
false
series_id
—
series_parts
[]
tags
  • • gcc/vect
  • • vectorization
  • • complex numbers
  • • aarch64
discussion_id_link
—
bugzilla_pr
—
date
2026-08-04T00:00:00.000Z

This commit addresses an issue in the vectorizer where the compatible_complex_nodes_p check was too permissive, incorrectly assuming that real and imaginary parts of complex numbers always originated from the same defining statement. The change explicitly checks the defining statements for both real and imaginary parts, ensuring more accurate vectorization of complex arithmetic. A new test case for AArch64 is included to verify the fix.