From e2ee753bc440d373717b8fd06c062d50f1005268 Mon Sep 17 00:00:00 2001 From: Nick Lewycky Date: Fri, 4 Mar 2011 19:26:08 +0000 Subject: [PATCH] Revert broken srem logic from r126991. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127021 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Analysis/InstructionSimplify.cpp | 15 --------------- test/Transforms/InstSimplify/compare.ll | 9 --------- 2 files changed, 24 deletions(-) diff --git a/lib/Analysis/InstructionSimplify.cpp b/lib/Analysis/InstructionSimplify.cpp index 44b0247e5ae..1076eeff2d8 100644 --- a/lib/Analysis/InstructionSimplify.cpp +++ b/lib/Analysis/InstructionSimplify.cpp @@ -1700,21 +1700,6 @@ static Value *SimplifyICmpInst(unsigned Predicate, Value *LHS, Value *RHS, } } - if (LBO && match(LBO, m_SRem(m_Value(), m_Specific(RHS)))) { - switch (Pred) { - default: - break; - case ICmpInst::ICMP_EQ: - case ICmpInst::ICMP_SGT: - case ICmpInst::ICMP_SGE: - return ConstantInt::getFalse(RHS->getContext()); - case ICmpInst::ICMP_NE: - case ICmpInst::ICMP_SLT: - case ICmpInst::ICMP_SLE: - return ConstantInt::getTrue(RHS->getContext()); - } - } - // If the comparison is with the result of a select instruction, check whether // comparing with either branch of the select always yields the same value. if (isa(LHS) || isa(RHS)) diff --git a/test/Transforms/InstSimplify/compare.ll b/test/Transforms/InstSimplify/compare.ll index 11295b7072b..7b92de156d2 100644 --- a/test/Transforms/InstSimplify/compare.ll +++ b/test/Transforms/InstSimplify/compare.ll @@ -253,15 +253,6 @@ define i1 @srem1(i32 %X) { ; CHECK: ret i1 false } -define i1 @srem2(i32 %X, i32 %Y) { -; CHECK: @srem2 - %neg = sub i32 %Y, 0 - %A = srem i32 %X, %Y - %B = icmp slt i32 %A, %neg - ret i1 %B -; CHECK: ret i1 true -} - define i1 @udiv1(i32 %X) { ; CHECK: @udiv1 %A = udiv i32 %X, 1000000