aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Analysis/BasicAliasAnalysis.cpp
diff options
context:
space:
mode:
authorHans Wennborg <hans@chromium.org>2022-01-28 12:10:26 +0100
committerHans Wennborg <hans@chromium.org>2022-01-28 12:16:03 +0100
commitfabaca10b86f77f7d2d34db91fa6b284da924395 (patch)
treea86f63771012f953f32676adc925e389fc3e3107 /llvm/lib/Analysis/BasicAliasAnalysis.cpp
parentf7d2afbac904d3605b984b5b34cfd3aec8616e63 (diff)
downloadllvm-fabaca10b86f77f7d2d34db91fa6b284da924395.zip
llvm-fabaca10b86f77f7d2d34db91fa6b284da924395.tar.gz
llvm-fabaca10b86f77f7d2d34db91fa6b284da924395.tar.bz2
Revert "[InstCombine] Fold and-reduce idiom"
It causes builds to fail with llvm/include/llvm/Support/Casting.h:269: typename llvm::cast_retty<X, Y*>::ret_type llvm::cast(Y*) [with X = llvm::IntegerType; Y = const llvm::Type; typename llvm::cast_retty<X, Y*>::ret_type = const llvm::IntegerType*]: Assertion `isa<X>(Val) && "cast<Ty>() argument of incompatible type!"' failed. See the code review for link to a reproducer. > This patch introduces folding of and-reduce idiom and generates code > that is easier to read and which is lest costly in terms of icmp operations. > The folding is > ``` > icmp eq (bitcast(icmp ne (lhs, rhs)), 0) > ``` > into > ``` > icmp eq(bitcast(lhs), bitcast(rhs)) > ``` > > See PR53419. > > Differential Revision: https://reviews.llvm.org/D118317 > Reviewed By: lebedev.ri, spatel This reverts commit 8599bb0f26738ed88aae62aba57d82f7cf326cf9. This also revertes the dependent change: "[Test] Add 'ne' tests for and-reduce pattern folding" This reverts commit a4aaa5995308ac2ba1bf180c9ce9c321cdb9f28a.
Diffstat (limited to 'llvm/lib/Analysis/BasicAliasAnalysis.cpp')
0 files changed, 0 insertions, 0 deletions