Landing: d9d078c21615
Project / Subsystem
gcc / gcc/bitintlower
Date
2026-09-18
Author
Jakub Jelinek
Commit
d9d078c216150bbe0397ded72f035c35b476e88e
Source
github
Perf win
No
Breaking
No
All attributes
- project
- gcc
- subsystem
- gcc/bitintlower
- patch_id
- —
- commit_hash
- d9d078c216150bbe0397ded72f035c35b476e88e
- source_type
- github
- headline
- Fix big-endian separate_ext loop condition for bit integers
- tldr
- Corrects loop bounds for sign extension of bit integers on big-endian systems.
- author
- Jakub Jelinek
- outcome
- committed
- performance_win
- false
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • compiler bug
- • bit-integer
- • endianness
- • powerpc
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-09-18T00:00:00.000Z
This commit fixes an issue in GCC’s bit-integer lowering pass where the loop condition for sign extension on big-endian architectures was incorrect. The problem, observed on powerpc64-linux, caused the loop to iterate over the wrong set of limbs, leading to incorrect code generation. The fix adjusts the loop’s starting point and increment logic to match the expected behavior for big-endian byte order.