reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
3187 if (Constant *CLHS = dyn_cast<Constant>(LHS)) { 3192 std::swap(LHS, RHS); 3195 assert(!isa<UndefValue>(LHS) && "Unexpected icmp undef,%X"); 3197 Type *ITy = GetCompareTy(LHS); // The return type. 3207 if (LHS == RHS || isa<UndefValue>(RHS)) 3210 if (Value *V = simplifyICmpOfBools(Pred, LHS, RHS, Q)) 3213 if (Value *V = simplifyICmpWithZero(Pred, LHS, RHS, Q)) 3216 if (Value *V = simplifyICmpWithConstant(Pred, LHS, RHS, Q.IIQ)) 3221 if (isa<Instruction>(RHS) && isa<Instruction>(LHS)) { 3223 auto LHS_Instr = cast<Instruction>(LHS); 3244 if (isa<CastInst>(LHS) && (isa<Constant>(RHS) || isa<CastInst>(RHS))) { 3245 Instruction *LI = cast<CastInst>(LHS); 3269 if (isa<ZExtInst>(LHS)) { 3329 if (isa<SExtInst>(LHS)) { 3404 isKnownNonEqual(LHS, RHS, Q.DL, Q.AC, Q.CxtI, Q.DT, Q.IIQ.UseInstrInfo)) { 3408 if (Value *V = simplifyICmpWithBinOp(Pred, LHS, RHS, Q, MaxRecurse)) 3411 if (Value *V = simplifyICmpWithMinMax(Pred, LHS, RHS, Q, MaxRecurse)) 3416 if (LHS->getType()->isPointerTy()) 3418 Q.IIQ, LHS, RHS)) 3420 if (auto *CLHS = dyn_cast<PtrToIntOperator>(LHS)) 3431 if (GetElementPtrInst *GLHS = dyn_cast<GetElementPtrInst>(LHS)) { 3456 if (isa<SelectInst>(LHS) || isa<SelectInst>(RHS)) 3457 if (Value *V = ThreadCmpOverSelect(Pred, LHS, RHS, Q, MaxRecurse)) 3462 if (isa<PHINode>(LHS) || isa<PHINode>(RHS)) 3463 if (Value *V = ThreadCmpOverPHI(Pred, LHS, RHS, Q, MaxRecurse))