Landing: 1ef005a99c1c

Project / Subsystem

gcc / vn

Date

2026-09-08

Author

Andrea Pinski

Commit

1ef005a99c1cda79daf1340677c7d7f01d261216

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
vn
patch_id
—
commit_hash
1ef005a99c1cda79daf1340677c7d7f01d261216
source_type
github
headline
VN: Fix infinite recursion in insert_predicates_for_cond for `a != 0`.
tldr
Fixes infinite recursion in Value Numbering's predicate insertion for `a != 0` comparisons.
author
Andrea Pinski
outcome
committed
performance_win
false
breaking_change
false
series_id
—
series_parts
[]
tags
  • • vn
  • • optimization
  • • value-numbering
  • • recursion
discussion_id_link
github:gcc-mirror/gcc#117859
bugzilla_pr
—
date
2026-09-08T00:00:00.000Z

A fix has been implemented for infinite recursion in the insert_predicates_for_cond function within the Value Numbering (VN) optimization pass. The issue occurred when handling comparisons like a != 0 where the comparison itself was not canonicalized before testing for recursion. This change adds canonicalization before the recursive check, resolving the infinite loop and preventing related issues, particularly for PR127261.