re PR middle-end/86627 (Signed 128-bit division by 2 no longer expanded to RTL)
authorJakub Jelinek <jakub@redhat.com>
Tue, 24 Jul 2018 14:23:18 +0000 (16:23 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Tue, 24 Jul 2018 14:23:18 +0000 (16:23 +0200)
commitebac3c0236c626f80b005af53505de5b79cba99d
tree72d98ce93aebf63b039d8879a807402db7e0c088
parent337dc307549968ed56e0ef7a60331e8a69e25b56
re PR middle-end/86627 (Signed 128-bit division by 2 no longer expanded to RTL)

PR middle-end/86627
* expmed.c (expand_divmod): Punt if d == HOST_WIDE_INT_MIN
and size > HOST_BITS_PER_WIDE_INT.  For size > HOST_BITS_PER_WIDE_INT
and abs_d == d, do the power of two handling if profitable.

* gcc.target/i386/pr86627.c: New test.

From-SVN: r262948
gcc/ChangeLog
gcc/expmed.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr86627.c [new file with mode: 0644]