Landing: 8d0676db179a
Project / Subsystem
gcc / s390
Date
2026-08-07
Author
Jakub Jelinek
Commit
8d0676db179aa31207bc4dd29e1c310823988f4b
Source
github
Perf win
No
Breaking
No
All attributes
- project
- gcc
- subsystem
- s390
- patch_id
- —
- commit_hash
- 8d0676db179aa31207bc4dd29e1c310823988f4b
- source_type
- github
- headline
- s390: Fix ICE with usubc5 pattern by forcing operands to registers.
- tldr
- An internal compiler error (ICE) on s390x involving the `usubc5` pattern is fixed by ensuring operands are in registers.
- author
- Jakub Jelinek
- outcome
- committed
- performance_win
- false
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • s390
- • compiler-bug
- • backend
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-08-07T00:00:00.000Z
An ICE was occurring on the s390x architecture due to how the usubc5 pattern interacted with immediate operands. The pattern, intended for use with general operands, was sometimes being applied to immediate values in a way that conflicted with the xor instruction’s requirements. This fix forces the problematic operand into a register before it’s used in the xor instruction, allowing subsequent optimizations like CSE or combine to simplify it correctly.