[Bug target/120604] runtime error in ix86_expand_int_movcc i386/i386-expand.cc:3612:
cvs-commit at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Jun 12 14:09:34 GMT 2025
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120604
--- Comment #14 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Uros Bizjak <uros@gcc.gnu.org>:
https://gcc.gnu.org/g:03e87c78d399e7fd9510a7db3025a9ed1393e874
commit r16-1483-g03e87c78d399e7fd9510a7db3025a9ed1393e874
Author: Uros Bizjak <ubizjak@gmail.com>
Date: Thu Jun 12 14:03:50 2025 +0200
i386: Fix signed integer overflow in ix86_expand_int_movcc, part 2
[PR120604]
Make sure we can represent the difference between two 64-bit DImode
immediate
values in 64-bit HOST_WIDE_INT and return false if this is not the case.
ix86_expand_int_movcc is used in mov<mode>cc expaner. Expander will FAIL
when the function returns false and middle-end will retry expansion with
values forced to registers.
PR target/120604
gcc/ChangeLog:
* config/i386/i386-expand.cc (ix86_expand_int_movcc): Make sure
we can represent the difference between two 64-bit DImode
immediate values in 64-bit HOST_WIDE_INT.
More information about the Gcc-bugs
mailing list