aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Object/ELFObjectFile.cpp
diff options
context:
space:
mode:
authorSanjay Patel <spatel@rotateright.com>2020-11-08 09:49:31 -0500
committerSanjay Patel <spatel@rotateright.com>2020-11-08 09:52:05 -0500
commit00808e321c724bd9f2a822bce87fe7fe87376371 (patch)
tree4c6a7c07c0e121f6033a552ed3ecbedbca765758 /llvm/lib/Object/ELFObjectFile.cpp
parent73a5f0b614fcd4d3732bc4ffba54b6c4dce5b4ed (diff)
downloadllvm-00808e321c724bd9f2a822bce87fe7fe87376371.zip
llvm-00808e321c724bd9f2a822bce87fe7fe87376371.tar.gz
llvm-00808e321c724bd9f2a822bce87fe7fe87376371.tar.bz2
[InstSimplify] allow vector folds for (Pow2C << X) == NonPow2C
Existing pre-conditions seem to be correct: https://rise4fun.com/Alive/lCLB Name: non-zero C1 Pre: !isPowerOf2(C1) && isPowerOf2(C2) && C1 != 0 %sub = shl i8 C2, %X %cmp = icmp eq i8 %sub, C1 => %cmp = false Name: one == C2 Pre: !isPowerOf2(C1) && isPowerOf2(C2) && C2 == 1 %sub = shl i8 C2, %X %cmp = icmp eq i8 %sub, C1 => %cmp = false Name: nuw Pre: !isPowerOf2(C1) && isPowerOf2(C2) %sub = shl nuw i8 C2, %X %cmp = icmp eq i8 %sub, C1 => %cmp = false Name: nsw Pre: !isPowerOf2(C1) && isPowerOf2(C2) %sub = shl nsw i8 C2, %X %cmp = icmp eq i8 %sub, C1 => %cmp = false
Diffstat (limited to 'llvm/lib/Object/ELFObjectFile.cpp')
0 files changed, 0 insertions, 0 deletions