diff options
author | Craig Topper <craig.topper@gmail.com> | 2017-04-10 06:53:28 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@gmail.com> | 2017-04-10 06:53:28 +0000 |
commit | d8840d7b101d6958e1746183b8e7d09e16e07c55 (patch) | |
tree | 47b70eaeed35e66fd3b2d6f573b83424c5043623 /llvm/lib | |
parent | 7260e2f159f392391e130fe9a446502769abc25f (diff) | |
download | bcm5719-llvm-d8840d7b101d6958e1746183b8e7d09e16e07c55.tar.gz bcm5719-llvm-d8840d7b101d6958e1746183b8e7d09e16e07c55.zip |
[InstCombine] use m_c_And and m_c_Xor to handle commuted versions of a transform.
llvm-svn: 299837
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp index 71a7c92ec06..fa2631c9535 100644 --- a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp +++ b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp @@ -2600,11 +2600,11 @@ Instruction *InstCombiner::visitXor(BinaryOperator &I) { } // (A & B) ^ (A ^ B) -> (A | B) if (match(Op0, m_And(m_Value(A), m_Value(B))) && - match(Op1, m_Xor(m_Specific(A), m_Specific(B)))) + match(Op1, m_c_Xor(m_Specific(A), m_Specific(B)))) return BinaryOperator::CreateOr(A, B); // (A ^ B) ^ (A & B) -> (A | B) if (match(Op0, m_Xor(m_Value(A), m_Value(B))) && - match(Op1, m_And(m_Specific(A), m_Specific(B)))) + match(Op1, m_c_And(m_Specific(A), m_Specific(B)))) return BinaryOperator::CreateOr(A, B); } |