reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Analysis/InstructionSimplify.cpp
 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))