Lines Matching refs:Value
220 static Value *Extract(Value *Idx, GetElementPtrInst *GEP,
223 /// it. It returns the numeric value of the extracted constant offset (0 if
225 static int64_t Find(Value *Idx, GetElementPtrInst *GEP,
246 APInt find(Value *V, bool SignExtended, bool ZeroExtended, bool NonNegative);
265 Value *rebuildWithoutConstOffset();
281 Value *distributeExtsAndCloneChain(unsigned ChainIndex);
283 Value *removeConstOffset(unsigned ChainIndex);
284 /// A helper function to apply ExtInsts, a list of s/zext, to value V.
287 Value *applyExts(Value *V);
403 bool hasMoreThanOneUseInLoop(Value *v, Loop *L);
458 Value *LHS = BO->getOperand(0), *RHS = BO->getOperand(1);
530 APInt ConstantOffsetExtractor::find(Value *V, bool SignExtended,
570 Value *ConstantOffsetExtractor::applyExts(Value *V) {
571 Value *Current = V;
589 Value *ConstantOffsetExtractor::rebuildWithoutConstOffset() {
603 Value *
624 Value *TheOther = applyExts(BO->getOperand(1 - OpNo));
625 Value *NextInChain = distributeExtsAndCloneChain(ChainIndex - 1);
638 Value *ConstantOffsetExtractor::removeConstOffset(unsigned ChainIndex) {
652 Value *NextInChain = removeConstOffset(ChainIndex - 1);
653 Value *TheOther = BO->getOperand(1 - OpNo);
690 Value *ConstantOffsetExtractor::Extract(Value *Idx, GetElementPtrInst *GEP,
703 Value *IdxWithoutConstOffset = Extractor.rebuildWithoutConstOffset();
708 int64_t ConstantOffsetExtractor::Find(Value *Idx, GetElementPtrInst *GEP,
775 Value *ResultPtr = Variadic->getOperand(0);
781 Value *FirstResult = nullptr;
791 Value *Idx = Variadic->getOperand(I);
818 Value *Offset = ConstantInt::get(IntPtrTy, AccumulativeByteOffset);
845 Value *ResultPtr = Builder.CreatePtrToInt(Variadic->getOperand(0), IntPtrTy);
852 Value *Idx = Variadic->getOperand(I);
934 Value *OldIdx = GEP->getOperand(I);
936 Value *NewIdx =
1122 Value *LHS = nullptr, *RHS = nullptr;
1194 Value *FirstBase = FirstGEP->getOperand(0);
1195 Value *SecondBase = SecondGEP->getOperand(0);
1196 Value *FirstOffset = FirstGEP->getOperand(1);
1233 bool SeparateConstOffsetFromGEP::hasMoreThanOneUseInLoop(Value *V, Loop *L) {
1246 Value *Offset1 = First->getOperand(1);
1247 Value *Offset2 = Second->getOperand(1);
1256 Value *NewBase =