OSDN Git Service

[InstCombine] Simplify and inline FoldOrWithConstants/FoldXorWithConstants
authorCraig Topper <craig.topper@intel.com>
Mon, 14 Aug 2017 00:04:21 +0000 (00:04 +0000)
committerCraig Topper <craig.topper@intel.com>
Mon, 14 Aug 2017 00:04:21 +0000 (00:04 +0000)
commit2ebdd445ba06e85786d88a9557b757742942e641
tree54532214bf4da39f5456e227f83d4496770c4c68
parent13a58815239cfab76c77444db174c1209f0ad075
[InstCombine] Simplify and inline FoldOrWithConstants/FoldXorWithConstants

Summary:
These functions were overly complicated. The body of this function was rechecking for an And operation to find the constant, but we already knew we were looking at two Ands ORed together and the pieces are in variables. We already had earlier nearby code that checked for ConstantInts. So just inline the remaining parts into the earlier code.

Next step is to use m_APInt instead of ConstantInt.

Reviewers: spatel, efriedma, davide, majnemer

Reviewed By: spatel

Subscribers: zzheng, llvm-commits

Differential Revision: https://reviews.llvm.org/D36439

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@310806 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/InstCombine/InstCombineAndOrXor.cpp