Nikita Popov
766cf7f32e
[InstSimplify] Fold division by zero to poison
...
Div/rem by zero is immediate undefined behavior and anything goes.
Currently we fold it to undef, this patch changes it to fold to
poison instead, which is slightly stronger.
Differential Revision: https://reviews.llvm.org/D93995
2021-01-03 20:52:45 +01:00
Eric Christopher
cee313d288
Revert "Temporarily Revert "Add basic loop fusion pass.""
...
The reversion apparently deleted the test/Transforms directory.
Will be re-reverting again.
llvm-svn: 358552
2019-04-17 04:52:47 +00:00
Eric Christopher
a863435128
Temporarily Revert "Add basic loop fusion pass."
...
As it's causing some bot failures (and per request from kbarton).
This reverts commit r358543/ab70da07286e618016e78247e4a24fcb84077fda.
llvm-svn: 358546
2019-04-17 02:12:23 +00:00
Simon Pilgrim
9620f4b746
[InstCombine] Add constant vector support for X udiv C, where C >= signbit
...
llvm-svn: 324728
2018-02-09 10:43:59 +00:00
Simon Pilgrim
f30656add3
[InstCombine] Add vector udiv tests
...
Tests for X udiv C, where C >= signbit
llvm-svn: 324635
2018-02-08 18:58:00 +00:00
Simon Pilgrim
2a90acd17a
[InstCombine] Fix issue with X udiv (POW2_C1 << N) for non-splat constant vectors
...
foldUDivShl was assuming that the input was a scalar or a splat constant
llvm-svn: 324613
2018-02-08 15:19:38 +00:00
Simon Pilgrim
94cc89d5f2
[InstCombine] Fix issue with X udiv 2^C -> X >> C for non-splat constant vectors
...
foldUDivPow2Cst was assuming that the input was a scalar or a splat constant
llvm-svn: 324608
2018-02-08 14:46:10 +00:00