Landing: 706adfdb4483

Project / Subsystem

gcc / rs6000

Date

2026-09-29

Author

Jeevitha

Commit

706adfdb44835b543cd14d3b7adc976b2816e72a

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
rs6000
patch_id
—
commit_hash
706adfdb44835b543cd14d3b7adc976b2816e72a
source_type
github
headline
rs6000: Fix ICE in __builtin_set_fpscr_drn with variable argument
tldr
Corrects an integer mode mismatch in the rs6000 backend to prevent a compiler crash.
author
Jeevitha
outcome
committed
performance_win
false
breaking_change
false
series_id
—
series_parts
[]
tags
  • • rs6000
  • • compiler bug
  • • powerpc
discussion_id_link
—
bugzilla_pr
—
date
2026-09-29T00:00:00.000Z

The rs6000 backend incorrectly used DImode for an operand in __builtin_set_fpscr_drn, while the builtin argument was SImode. This mismatch caused an Internal Compiler Error (ICE) when the function was called with an integer variable. The fix changes the operand mode to SImode and converts it to DImode as needed, resolving the ICE and adding a new test case.