From e8ad92063afe8ca609275ae4efbc35d7b5bac6e9 Mon Sep 17 00:00:00 2001 From: Antonio Frighetto Date: Wed, 20 Nov 2024 12:03:23 +0100 Subject: [PATCH] Undo `icmp eq/ne (and (add/sub/xor A, P2), P2), 0/P2` fold --- llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp b/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp index d602a907e72bc..1379d531a67a4 100644 --- a/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp +++ b/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp @@ -5905,6 +5905,7 @@ Instruction *InstCombinerImpl::foldICmpEquality(ICmpInst &I) { m_CombineAnd(m_Value(B), m_Unless(m_ImmConstant()))))) return new ICmpInst(Pred, Builder.CreateXor(A, B), Cst); +#if 0 { // (icmp eq/ne (and (add/sub/xor X, P2), P2), P2) auto m_Matcher = @@ -5929,6 +5930,7 @@ Instruction *InstCombinerImpl::foldICmpEquality(ICmpInst &I) { *IsZero ? A : ConstantInt::getNullValue(A->getType())); } +#endif return nullptr; }