llvm.org GIT mirror llvm / e4a5390
Revert a part of r223583, for now. It seems causing different emission between stage2(gcc-clang) and stage3 clang. Investigating. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@223624 91177308-0d34-0410-b5e6-96231b3b80d8 NAKAMURA Takumi 4 years ago
2 changed file(s) with 0 addition(s) and 14 deletion(s). Raw diff Collapse all Expand all
14741474 return getTrue(UnsignedICmp->getType());
14751475 return UnsignedICmp;
14761476 }
1477
1478 // X < Y && Y == 0 --> false
1479 if (UnsignedPred == ICmpInst::ICMP_ULT && EqPred == ICmpInst::ICMP_EQ &&
1480 IsAnd)
1481 return getFalse(UnsignedICmp->getType());
14821477
14831478 return nullptr;
14841479 }
165165 ; CHECK: %[[cmp:.*]] = icmp ult i32 %x, %y
166166 ; CHECK: ret i1 %[[cmp]]
167167
168 define i1 @and_icmp2(i32 %x, i32 %y) {
169 %1 = icmp ult i32 %x, %y
170 %2 = icmp eq i32 %y, 0
171 %3 = and i1 %1, %2
172 ret i1 %3
173 }
174 ; CHECK-LABEL: @and_icmp2(
175 ; CHECK: ret i1 false
176
177168 define i1 @or_icmp1(i32 %x, i32 %y) {
178169 %1 = icmp ult i32 %x, %y
179170 %2 = icmp ne i32 %y, 0