Landing: 896c822afed0

Project / Subsystem

gcc / i386

Date

2026-05-28

Author

Jakub Jelinek

Commit

896c822afed0aad4c0ca761777cdc5f0085bbce0

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
i386
patch_id
commit_hash
896c822afed0aad4c0ca761777cdc5f0085bbce0
source_type
github
headline
i386: Emit 'lea' instruction directly to avoid ICE.
tldr
The i386 backend now directly emits a 'lea' instruction in certain cases to avoid an internal compiler error.
author
Jakub Jelinek
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • i386
  • codegen
  • bugfix
discussion_id_link
bugzilla_pr
date
2026-05-28T00:00:00.000Z

The i386 backend could encounter an internal compiler error (ICE) when combining certain address calculations, especially involving subregisters. This commit fixes the ICE by directly emitting a ‘lea’ instruction, ensuring the address calculation is handled correctly. This resolves a codegen issue that could lead to incorrect or non-compiling code.