https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125209
--- Comment #4 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Jeff Law <[email protected]>: https://gcc.gnu.org/g:a33f80c6ed06037bd1d31680ae3152e362931f51 commit r17-435-ga33f80c6ed06037bd1d31680ae3152e362931f51 Author: Boudewijn van der Heide <[email protected]> Date: Sun May 10 21:46:48 2026 -0600 [PATCH] combine: Check against CLOBBER in make_compound_operation_int [PR125209] 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 gcc/ * combine.cc (make_compound_operation_int): Return NULL_RTX if we got CLOBBER. gcc/testsuite/ * gcc.dg/pr125209.c: New test. Signed-off-by: Boudewijn van der Heide <[email protected]>
