https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125373
--- Comment #5 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Jakub Jelinek <[email protected]>: https://gcc.gnu.org/g:568d439f1d1f65eabed55a54da812a865dc5c946 commit r17-619-g568d439f1d1f65eabed55a54da812a865dc5c946 Author: Jakub Jelinek <[email protected]> Date: Wed May 20 09:18:15 2026 +0200 i386: Fix up peephole2s with const359_operand [PR125373] The following testcase ICEs, because the const359_operand peephole2s optimize multiplication of %rsp by 5 (or could by 3 or 9) into a lea. Which is not valid, because sp is not a valid index register. The following patch makes sure to use index_reg_operand predicate instead so that it won't match for the stack pointer. 2026-05-20 Jakub Jelinek <[email protected]> PR target/125373 * config/i386/i386.md (Convert imul by three, five and nine into lea define_peephole2s): Use index_reg_operand instead of register_operand. * gcc.c-torture/compile/pr125373.c: New test. Reviewed-by: Uros Bizjak <[email protected]>
