Landing: 20a4465989b7

Project / Subsystem

gcc / i386

Date

2026-06-15

Author

Dimitar Dimitrov

Commit

20a4465989b7de0e44491d59f10b29812f2bb88c

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
i386
patch_id
—
commit_hash
20a4465989b7de0e44491d59f10b29812f2bb88c
source_type
github
headline
i386: Reject 16-bit modes for SSE registers without SSE2
tldr
Compiler now rejects invalid 16-bit SSE register modes when SSE2 is not enabled, preventing ICEs.
author
Dimitar Dimitrov
outcome
committed
performance_win
false
breaking_change
false
series_id
—
series_parts
[]
tags
  • • i386
  • • sse
  • • compiler
discussion_id_link
—
bugzilla_pr
—
date
2026-06-15T00:00:00.000Z

This change prevents the GCC compiler from entering an internal compiler error (ICE) when encountering 16-bit modes for SSE registers in conjunction with SSE1 without SSE2. Previously, the register allocator would attempt to create invalid subregisters, leading to failure. The fix modifies ix86_hard_regno_mode_ok to reject these invalid modes, ensuring correct behavior and stability.