aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Basic/Module.cpp
diff options
context:
space:
mode:
authorSanjay Patel <spatel@rotateright.com>2021-10-10 10:58:58 -0400
committerSanjay Patel <spatel@rotateright.com>2021-10-10 11:06:49 -0400
commitda210f5d3425e8877ceabaf6ed3483d52cbd7448 (patch)
treec4063454652411d6080beba8f01e9fa4e4c5b408 /clang/lib/Basic/Module.cpp
parentc00cab878aa523e20a5dbd618e9852e191504cfe (diff)
downloadllvm-da210f5d3425e8877ceabaf6ed3483d52cbd7448.zip
llvm-da210f5d3425e8877ceabaf6ed3483d52cbd7448.tar.gz
llvm-da210f5d3425e8877ceabaf6ed3483d52cbd7448.tar.bz2
[InstCombine] canonicalize "(C2 - Y) > C" as (Y + ~C2) < ~C
The test diffs show that we have better analysis/folds for 'add' (although we should at least have the simplifications independently, so we don't have the one-use restriction). This is related to solving regressions that would appear in transforms related to D111410, and that is part of a series of enhancements that may eventually helpi solve PR34047. https://alive2.llvm.org/ce/z/3tB9KG define i1 @src(i8 %x, i8 %C, i8 %C2) { %sub = sub nuw i8 %C2, %x %r = icmp slt i8 %sub, %C ret i1 %r } define i1 @tgt(i8 %x, i8 %C, i8 %C2) { %Cnot = xor i8 %C, -1 %C2not = xor i8 %C2, -1 %add = add nuw i8 %x, %C2not %r = icmp sgt i8 %add, %Cnot ret i1 %r }
Diffstat (limited to 'clang/lib/Basic/Module.cpp')
0 files changed, 0 insertions, 0 deletions