On 5/8/2026 11:09 AM, Boudewijn van der Heide wrote:
In combine_simplify_rtx, CLOBBER can be returned, which is propagated to
make_compound_operation.
When make_compound_operation_int then calls simplify_subreg, it triggers a
gcc_assert, because the mode is neither inner, nor void. This results in
an ICE.
We fix this by checking if we got CLOBBER before calling simplify_subreg
from make_compound_operation and bail out; we return NULL_RTX.
Testcase from the bug report by Zhendong Su.
Bootstrapped and tested on x86_64-linux-gnu.
PR rtl-optimization/125209
2026-05-08 Boudewijn van der Heide <[email protected]>
gcc/
* combine.cc (make_compound_operation_int): Return NULL_RTX if we got
CLOBBER.
gcc/testsuite/
* gcc.dg/pr125209.c: New test.
THanks. I've pushed this to the trunk.
jeff