diff options
author | Sanjay Patel <spatel@rotateright.com> | 2018-06-25 18:51:21 +0000 |
---|---|---|
committer | Sanjay Patel <spatel@rotateright.com> | 2018-06-25 18:51:21 +0000 |
commit | 1e911fa746ab00b50a70756288455ee8499aadf0 (patch) | |
tree | b5536f376e4a30ec782d2f699e6b4976b5b98f86 /llvm/lib/Analysis/ScalarEvolutionExpander.cpp | |
parent | a8448ad09823e3ea38dc4a50e815ebd46cdc2cd9 (diff) | |
download | bcm5719-llvm-1e911fa746ab00b50a70756288455ee8499aadf0.tar.gz bcm5719-llvm-1e911fa746ab00b50a70756288455ee8499aadf0.zip |
[InstSimplify] fold div/rem of zexted bool
I was looking at an unrelated fold and noticed that
we don't have this simplification (because the other
fold would break existing tests).
Name: zext udiv
%z = zext i1 %x to i32
%r = udiv i32 %y, %z
=>
%r = %y
Name: zext urem
%z = zext i1 %x to i32
%r = urem i32 %y, %z
=>
%r = 0
Name: zext sdiv
%z = zext i1 %x to i32
%r = sdiv i32 %y, %z
=>
%r = %y
Name: zext srem
%z = zext i1 %x to i32
%r = srem i32 %y, %z
=>
%r = 0
https://rise4fun.com/Alive/LZ9
llvm-svn: 335512
Diffstat (limited to 'llvm/lib/Analysis/ScalarEvolutionExpander.cpp')
0 files changed, 0 insertions, 0 deletions