aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/ReachingDefAnalysis.cpp
diff options
context:
space:
mode:
authorDávid Bolvanský <david.bolvansky@gmail.com>2020-12-31 15:04:32 +0100
committerDávid Bolvanský <david.bolvansky@gmail.com>2020-12-31 15:04:32 +0100
commitae69fa9b9f65f59cc0ca8c47f23748a53c8dbdc5 (patch)
tree3da849b22a4e47e48d439aa8d52d12babc35afb8 /llvm/lib/CodeGen/ReachingDefAnalysis.cpp
parentc1937c2af2a03f0b5fda3bbf99e2971ffa04ff0c (diff)
downloadllvm-ae69fa9b9f65f59cc0ca8c47f23748a53c8dbdc5.zip
llvm-ae69fa9b9f65f59cc0ca8c47f23748a53c8dbdc5.tar.gz
llvm-ae69fa9b9f65f59cc0ca8c47f23748a53c8dbdc5.tar.bz2
[InstCombine] Transform (A + B) - (A & B) to A | B (PR48604)
define i32 @src(i32 %x, i32 %y) { %0: %a = add i32 %x, %y %o = and i32 %x, %y %r = sub i32 %a, %o ret i32 %r } => define i32 @tgt(i32 %x, i32 %y) { %0: %b = or i32 %x, %y ret i32 %b } Transformation seems to be correct! https://alive2.llvm.org/ce/z/2fhW6r
Diffstat (limited to 'llvm/lib/CodeGen/ReachingDefAnalysis.cpp')
0 files changed, 0 insertions, 0 deletions