Home | History | Annotate | Download | only in Scalar

Lines Matching defs:ElementSize

174   // A helper function that scales Idx with ElementSize before invoking
177 Value *S, uint64_t ElementSize,
189 void factorArrayIndex(Value *ArrayIdx, const SCEV *Base, uint64_t ElementSize,
435 const SCEV *B, ConstantInt *Idx, Value *S, uint64_t ElementSize,
437 // I = B + sext(Idx *nsw S) * ElementSize
438 // = B + (sext(Idx) * sext(S)) * ElementSize
439 // = B + (sext(Idx) * ElementSize) * sext(S)
443 IntPtrTy, Idx->getSExtValue() * (int64_t)ElementSize, true);
449 uint64_t ElementSize,
454 ArrayIdx, ElementSize, GEP);
470 // GEP = Base + sext(LHS *nsw RHS) * ElementSize
471 allocateCandidatesAndFindBasisForGEP(Base, RHS, LHS, ElementSize, GEP);
473 // GEP = Base + sext(LHS <<nsw RHS) * ElementSize
474 // = Base + sext(LHS *nsw (1 << RHS)) * ElementSize
478 allocateCandidatesAndFindBasisForGEP(Base, PowerOf2, LHS, ElementSize, GEP);
506 uint64_t ElementSize = DL->getTypeAllocSize(*GTI);
511 factorArrayIndex(ArrayIdx, BaseExpr, ElementSize, GEP);
522 factorArrayIndex(TruncatedArrayIdx, BaseExpr, ElementSize, GEP);
548 APInt ElementSize(
553 APInt::sdivrem(IndexOffset, ElementSize, Q, R);