summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNAKAMURA Takumi <geek4civic@gmail.com>2014-12-08 02:07:22 +0000
committerNAKAMURA Takumi <geek4civic@gmail.com>2014-12-08 02:07:22 +0000
commit2b6e66267283215c7c5078d1df997df1380084f7 (patch)
tree58eb9a928579ab0a8af796b3becd2660a73186e6
parent687787f018a782c9b030f8786ceb0cf06eb7221b (diff)
downloadbcm5719-llvm-2b6e66267283215c7c5078d1df997df1380084f7.tar.gz
bcm5719-llvm-2b6e66267283215c7c5078d1df997df1380084f7.zip
Revert a part of r223583, for now. It seems causing different emission between stage2(gcc-clang) and stage3 clang. Investigating.
llvm-svn: 223624
-rw-r--r--llvm/lib/Analysis/InstructionSimplify.cpp5
-rw-r--r--llvm/test/Transforms/InstSimplify/AndOrXor.ll9
2 files changed, 0 insertions, 14 deletions
diff --git a/llvm/lib/Analysis/InstructionSimplify.cpp b/llvm/lib/Analysis/InstructionSimplify.cpp
index e58998897c2..5c536aa79c4 100644
--- a/llvm/lib/Analysis/InstructionSimplify.cpp
+++ b/llvm/lib/Analysis/InstructionSimplify.cpp
@@ -1476,11 +1476,6 @@ static Value *simplifyUnsignedRangeCheck(ICmpInst *ZeroICmp,
return UnsignedICmp;
}
- // X < Y && Y == 0 --> false
- if (UnsignedPred == ICmpInst::ICMP_ULT && EqPred == ICmpInst::ICMP_EQ &&
- IsAnd)
- return getFalse(UnsignedICmp->getType());
-
return nullptr;
}
diff --git a/llvm/test/Transforms/InstSimplify/AndOrXor.ll b/llvm/test/Transforms/InstSimplify/AndOrXor.ll
index ce3c2aa6af2..c01c53ec4e1 100644
--- a/llvm/test/Transforms/InstSimplify/AndOrXor.ll
+++ b/llvm/test/Transforms/InstSimplify/AndOrXor.ll
@@ -166,15 +166,6 @@ define i1 @and_icmp1(i32 %x, i32 %y) {
; CHECK: %[[cmp:.*]] = icmp ult i32 %x, %y
; CHECK: ret i1 %[[cmp]]
-define i1 @and_icmp2(i32 %x, i32 %y) {
- %1 = icmp ult i32 %x, %y
- %2 = icmp eq i32 %y, 0
- %3 = and i1 %1, %2
- ret i1 %3
-}
-; CHECK-LABEL: @and_icmp2(
-; CHECK: ret i1 false
-
define i1 @or_icmp1(i32 %x, i32 %y) {
%1 = icmp ult i32 %x, %y
%2 = icmp ne i32 %y, 0
OpenPOWER on IntegriCloud