Searched refs:GEP2 (Results 1 – 4 of 4) sorted by relevance
1800 GEPOperator *GEP1 = nullptr, *GEP2 = nullptr; in OptimizePointerDifference() local1817 GEP2 = RHSGEP; in OptimizePointerDifference()1825 if (GEP2) { in OptimizePointerDifference()1838 unsigned NumNonConstantIndices2 = GEP2->countNonConstantIndices(); in OptimizePointerDifference()1841 (NumNonConstantIndices2 > 0 && !GEP2->hasOneUse()))) { in OptimizePointerDifference()1852 if (IsNUW && !GEP2 && !Swapped && GEP1->isInBounds() && in OptimizePointerDifference()1858 if (GEP2) { in OptimizePointerDifference()1859 Value *Offset = EmitGEPOffset(GEP2); in OptimizePointerDifference()1861 GEP1->isInBounds() && GEP2->isInBounds()); in OptimizePointerDifference()
1951 static bool isMergedGEPInBounds(GEPOperator &GEP1, GEPOperator &GEP2) { in isMergedGEPInBounds() argument1953 if (!GEP1.isInBounds() && !GEP2.isInBounds()) in isMergedGEPInBounds()1957 (GEP2.isInBounds() || GEP2.hasAllZeroIndices()); in isMergedGEPInBounds()
7512 const GEPOperator *GEP2 = dyn_cast<GEPOperator>(Ptr2); in isPointerOffset() local7519 if (!GEP1 || !GEP2 || GEP1->getOperand(0) != GEP2->getOperand(0) || in isPointerOffset()7520 GEP1->getSourceElementType() != GEP2->getSourceElementType()) in isPointerOffset()7525 for (; Idx != GEP1->getNumOperands() && Idx != GEP2->getNumOperands(); ++Idx) in isPointerOffset()7526 if (GEP1->getOperand(Idx) != GEP2->getOperand(Idx)) in isPointerOffset()7530 auto IOffset2 = getOffsetFromIndex(GEP2, Idx, DL); in isPointerOffset()
3690 auto *GEP2 = dyn_cast<GetElementPtrInst>(Ptr2); in arePointersCompatible() local3691 if (!GEP2) in arePointersCompatible()3693 return GEP1->getNumOperands() == 2 && GEP2->getNumOperands() == 2 && in arePointersCompatible()3695 isConstant(GEP2->getOperand(1))) || in arePointersCompatible()3697 getSameOpcode({GEP1->getOperand(1), GEP2->getOperand(1)}, TLI) in arePointersCompatible()