Lines Matching refs:GEPRHS
892 } else if (GEPOperator *GEPRHS = dyn_cast<GEPOperator>(RHS)) { in foldGEPICmp() local
895 if (PtrBase != GEPRHS->getOperand(0)) { in foldGEPICmp()
896 bool IndicesTheSame = GEPLHS->getNumOperands()==GEPRHS->getNumOperands(); in foldGEPICmp()
898 GEPRHS->getOperand(0)->getType(); in foldGEPICmp()
901 if (GEPLHS->getOperand(i) != GEPRHS->getOperand(i)) { in foldGEPICmp()
909 return new ICmpInst(Cond, GEPLHS->getOperand(0), GEPRHS->getOperand(0)); in foldGEPICmp()
915 if (GEPLHS->isInBounds() && GEPRHS->isInBounds() && in foldGEPICmp()
917 (GEPRHS->hasAllConstantIndices() || GEPRHS->hasOneUse()) && in foldGEPICmp()
919 GEPRHS->getOperand(0)->stripPointerCasts() && in foldGEPICmp()
922 Value *ROffset = EmitGEPOffset(GEPRHS); in foldGEPICmp()
951 return foldGEPICmp(GEPRHS, GEPLHS->getOperand(0), in foldGEPICmp()
956 if (!GEPRHS->getType()->isVectorTy() && GEPRHS->hasAllZeroIndices()) in foldGEPICmp()
957 return foldGEPICmp(GEPLHS, GEPRHS->getOperand(0), Cond, I); in foldGEPICmp()
959 bool GEPsInBounds = GEPLHS->isInBounds() && GEPRHS->isInBounds(); in foldGEPICmp()
960 if (GEPLHS->getNumOperands() == GEPRHS->getNumOperands()) { in foldGEPICmp()
964 for (unsigned i = 1, e = GEPRHS->getNumOperands(); i != e; ++i) in foldGEPICmp()
965 if (GEPLHS->getOperand(i) != GEPRHS->getOperand(i)) { in foldGEPICmp()
967 Type *RHSType = GEPRHS->getOperand(i)->getType(); in foldGEPICmp()
988 Value *RHSV = GEPRHS->getOperand(DiffOperand); in foldGEPICmp()
997 (isa<ConstantExpr>(GEPRHS) || GEPRHS->hasOneUse())) { in foldGEPICmp()
1000 Value *R = EmitGEPOffset(GEPRHS); in foldGEPICmp()