aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
diff options
context:
space:
mode:
authorJuneyoung Lee <aqjune@gmail.com>2020-12-28 05:36:26 +0900
committerJuneyoung Lee <aqjune@gmail.com>2020-12-28 05:36:26 +0900
commitd3f1f7b6bca585b76d40422e8076d59113e3bb80 (patch)
treedfbd1e977e9d7c90cadc3d6eaf9037a339f700cb /llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
parentf1d648b973d32ab0e70ef20efb0f146240e50f58 (diff)
downloadllvm-d3f1f7b6bca585b76d40422e8076d59113e3bb80.zip
llvm-d3f1f7b6bca585b76d40422e8076d59113e3bb80.tar.gz
llvm-d3f1f7b6bca585b76d40422e8076d59113e3bb80.tar.bz2
[EarlyCSE] Use m_LogicalAnd/Or matchers to handle branch conditions
EarlyCSE's handleBranchCondition says: ``` // If the condition is AND operation, we can propagate its operands into the // true branch. If it is OR operation, we can propagate them into the false // branch. ``` This holds for the corresponding select patterns as well. This is a part of an ongoing work for disabling buggy select->and/or transformations. See llvm.org/pr48353 and D93065 for more context Proof: and: https://alive2.llvm.org/ce/z/MQWodU or: https://alive2.llvm.org/ce/z/9GLbB_ Reviewed By: nikic Differential Revision: https://reviews.llvm.org/D93842
Diffstat (limited to 'llvm/lib/Transforms/Utils/BasicBlockUtils.cpp')
0 files changed, 0 insertions, 0 deletions