Lines Matching refs:LHSC
1271 ConstantInt *LHSC, *RHSC; in foldAndOfICmps() local
1272 if (!match(LHS->getOperand(1), m_ConstantInt(LHSC)) || in foldAndOfICmps()
1276 if (LHSC == RHSC && PredL == PredR) { in foldAndOfICmps()
1280 if ((PredL == ICmpInst::ICMP_ULT && LHSC->getValue().isPowerOf2()) || in foldAndOfICmps()
1281 (PredL == ICmpInst::ICMP_EQ && LHSC->isZero())) { in foldAndOfICmps()
1283 return Builder.CreateICmp(PredL, NewOr, LHSC); in foldAndOfICmps()
1300 BigC = LHSC; in foldAndOfICmps()
1303 SmallC = LHSC; in foldAndOfICmps()
1343 ShouldSwap = LHSC->getValue().sgt(RHSC->getValue()); in foldAndOfICmps()
1345 ShouldSwap = LHSC->getValue().ugt(RHSC->getValue()); in foldAndOfICmps()
1349 std::swap(LHSC, RHSC); in foldAndOfICmps()
1359 assert(LHSC != RHSC && "Compares not folded above?"); in foldAndOfICmps()
1370 if (LHSC->getValue() == (RHSC->getValue() - 1)) in foldAndOfICmps()
1371 return Builder.CreateICmpULT(LHS0, LHSC); in foldAndOfICmps()
1372 if (LHSC->isZero()) // (X != 0 & X u< C) -> X-1 u< C-1 in foldAndOfICmps()
1373 return insertRangeTest(LHS0, LHSC->getValue() + 1, RHSC->getValue(), in foldAndOfICmps()
1378 if (LHSC->getValue() == (RHSC->getValue() - 1)) in foldAndOfICmps()
1379 return Builder.CreateICmpSLT(LHS0, LHSC); in foldAndOfICmps()
1381 if (LHSC->isMinValue(true)) in foldAndOfICmps()
1382 return insertRangeTest(LHS0, LHSC->getValue() + 1, RHSC->getValue(), in foldAndOfICmps()
1396 if (RHSC->getValue() == (LHSC->getValue() + 1)) in foldAndOfICmps()
1400 return insertRangeTest(LHS0, LHSC->getValue() + 1, RHSC->getValue(), in foldAndOfICmps()
1404 return insertRangeTest(LHS0, LHSC->getValue() + 1, RHSC->getValue(), in foldAndOfICmps()
1414 if (RHSC->getValue() == (LHSC->getValue() + 1)) in foldAndOfICmps()
1418 return insertRangeTest(LHS0, LHSC->getValue() + 1, RHSC->getValue(), in foldAndOfICmps()
1422 return insertRangeTest(LHS0, LHSC->getValue() + 1, RHSC->getValue(), true, in foldAndOfICmps()
2377 auto *LHSC = dyn_cast<ConstantInt>(LHS1); in foldOrOfICmps() local
2391 PredL == PredR && LHSC && RHSC && LHS->hasOneUse() && RHS->hasOneUse() && in foldOrOfICmps()
2392 LHSC->getType() == RHSC->getType() && in foldOrOfICmps()
2393 LHSC->getValue() == (RHSC->getValue())) { in foldOrOfICmps()
2399 LAddC->getValue().ugt(LHSC->getValue()) && in foldOrOfICmps()
2400 RAddC->getValue().ugt(LHSC->getValue())) { in foldOrOfICmps()
2411 APInt RRangeHigh = RRangeLow + LHSC->getValue(); in foldOrOfICmps()
2413 APInt LRangeHigh = LRangeLow + LHSC->getValue(); in foldOrOfICmps()
2420 RangeDiff.ugt(LHSC->getValue())) { in foldOrOfICmps()
2425 return Builder.CreateICmp(LHS->getPredicate(), NewAdd, LHSC); in foldOrOfICmps()
2514 if (!LHSC || !RHSC) in foldOrOfICmps()
2522 if (RHSC->getValue() + AddC->getValue() == LHSC->getValue()) in foldOrOfICmps()
2523 return Builder.CreateICmpULE(LHS0, LHSC); in foldOrOfICmps()
2546 ShouldSwap = LHSC->getValue().sgt(RHSC->getValue()); in foldOrOfICmps()
2548 ShouldSwap = LHSC->getValue().ugt(RHSC->getValue()); in foldOrOfICmps()
2552 std::swap(LHSC, RHSC); in foldOrOfICmps()
2562 assert(LHSC != RHSC && "Compares not folded above?"); in foldOrOfICmps()
2576 if (LHSC->isMinValue(false)) in foldOrOfICmps()
2577 return insertRangeTest(LHS0, LHSC->getValue() + 1, RHSC->getValue() + 1, in foldOrOfICmps()
2583 if (LHSC->isMinValue(true)) in foldOrOfICmps()
2584 return insertRangeTest(LHS0, LHSC->getValue() + 1, RHSC->getValue() + 1, in foldOrOfICmps()
2597 return insertRangeTest(LHS0, LHSC->getValue(), RHSC->getValue(), in foldOrOfICmps()
2602 return insertRangeTest(LHS0, LHSC->getValue(), RHSC->getValue() + 1, in foldOrOfICmps()
2613 return insertRangeTest(LHS0, LHSC->getValue(), RHSC->getValue(), in foldOrOfICmps()
2619 return insertRangeTest(LHS0, LHSC->getValue(), RHSC->getValue() + 1, true, in foldOrOfICmps()