[Bug target/85582] [9 Regression] wrong code at -O1 and above on x86_64-linux-gnu in 32-bit mode
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed May 2 21:56:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85582
--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Wed May 2 21:56:17 2018
New Revision: 259862
URL: https://gcc.gnu.org/viewcvs?rev=259862&root=gcc&view=rev
Log:
PR target/85582
* config/i386/i386.md (*ashl<dwi>3_doubleword_mask,
*ashl<dwi>3_doubleword_mask_1, *<shift_insn><dwi>3_doubleword_mask,
*<shift_insn><dwi>3_doubleword_mask_1): In condition require that
the highest significant bit of the shift count mask is clear. In
check whether and[sq]i3 is needed verify that all significant bits
of the shift count other than the highest are set.
* gcc.c-torture/execute/pr85582-3.c: New test.
Added:
trunk/gcc/testsuite/gcc.c-torture/execute/pr85582-3.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/i386.md
trunk/gcc/testsuite/ChangeLog
More information about the Gcc-bugs
mailing list