From 8f786b4618cff89880a3fb752fe8fb849f7ecba4 Mon Sep 17 00:00:00 2001 From: Sanjay Patel Date: Fri, 29 Oct 2021 14:47:36 -0400 Subject: [PATCH] [InstCombine] fix comments to match code; NFC --- llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp index e959005..56b6f7d 100644 --- a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp +++ b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp @@ -2704,22 +2704,23 @@ Instruction *InstCombinerImpl::visitOr(BinaryOperator &I) { if (match(Op0, m_And(m_Value(A), m_Value(C))) && match(Op1, m_And(m_Value(B), m_Value(D)))) { + // (A & MaskC0) | (B & MaskC1) const APInt *MaskC0, *MaskC1; if (match(C, m_APInt(MaskC0)) && match(D, m_APInt(MaskC1)) && *MaskC0 == ~*MaskC1) { Value *X; - // ((X | B) & C1) | (B & C2) -> (X & C1) | B iff C1 == ~C2 + // ((X | B) & MaskC) | (B & ~MaskC) -> (X & MaskC) | B if (match(A, m_c_Or(m_Value(X), m_Specific(B)))) return BinaryOperator::CreateOr(Builder.CreateAnd(X, *MaskC0), B); - // (A & C2) | ((X | A) & C1) -> (X & C2) | A iff C1 == ~C2 + // (A & MaskC) | ((X | A) & ~MaskC) -> (X & ~MaskC) | A if (match(B, m_c_Or(m_Specific(A), m_Value(X)))) return BinaryOperator::CreateOr(Builder.CreateAnd(X, *MaskC1), A); - // ((X ^ B) & C1) | (B & C2) -> (X & C1) ^ B iff C1 == ~C2 + // ((X ^ B) & MaskC) | (B & ~MaskC) -> (X & MaskC) ^ B if (match(A, m_c_Xor(m_Value(X), m_Specific(B)))) return BinaryOperator::CreateXor(Builder.CreateAnd(X, *MaskC0), B); - // (A & C2) | ((X ^ A) & C1) -> (X & C2) ^ A iff C1 == ~C2 + // (A & MaskC) | ((X ^ A) & ~MaskC) -> (X & ~MaskC) ^ A if (match(B, m_c_Xor(m_Specific(A), m_Value(X)))) return BinaryOperator::CreateXor(Builder.CreateAnd(X, *MaskC1), A); } -- 2.7.4