This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r278438 - in /branches/gcc-9-branch/gcc: Change...
- From: jakub at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Tue, 19 Nov 2019 09:26:23 -0000
- Subject: r278438 - in /branches/gcc-9-branch/gcc: Change...
Author: jakub
Date: Tue Nov 19 09:26:23 2019
New Revision: 278438
URL: https://gcc.gnu.org/viewcvs?rev=278438&root=gcc&view=rev
Log:
PR middle-end/91450
* internal-fn.c (expand_mul_overflow): For s1 * s2 -> ur, if one
operand is negative and one non-negative, compare the non-negative
one against 0 rather than comparing s1 & s2 against 0. Otherwise,
don't compare (s1 & s2) == 0, but compare separately both s1 == 0
and s2 == 0, unless one of them is known to be negative. Remove
tem2 variable, use tem where tem2 has been used before.
* gcc.c-torture/execute/pr91450-1.c: New test.
* gcc.c-torture/execute/pr91450-2.c: New test.
Added:
branches/gcc-9-branch/gcc/testsuite/gcc.c-torture/execute/pr91450-1.c
branches/gcc-9-branch/gcc/testsuite/gcc.c-torture/execute/pr91450-2.c
Modified:
branches/gcc-9-branch/gcc/ChangeLog
branches/gcc-9-branch/gcc/internal-fn.c
branches/gcc-9-branch/gcc/testsuite/ChangeLog