reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
2660 if (V->getType()->isPointerTy()) 2661 if (AllocaInst *AI = dyn_cast<AllocaInst>(V->stripInBoundsOffsets())) 2664 if (SliceSize < DL.getTypeStoreSize(V->getType())) { 2666 assert(V->getType()->isIntegerTy() && 2668 assert(DL.typeSizeEqualsStoreSize(V->getType()) && 2671 V = extractInteger(DL, IRB, V, NarrowTy, NewBeginOffset - BeginOffset, 2671 V = extractInteger(DL, IRB, V, NarrowTy, NewBeginOffset - BeginOffset, 2676 return rewriteVectorizedStoreInst(V, SI, OldOp, AATags); 2677 if (IntTy && V->getType()->isIntegerTy()) 2678 return rewriteIntegerStore(V, SI, AATags); 2680 const bool IsStorePastEnd = DL.getTypeStoreSize(V->getType()) > SliceSize; 2684 (canConvertValue(DL, V->getType(), NewAllocaTy) || 2686 V->getType()->isIntegerTy()))) { 2690 if (auto *VITy = dyn_cast<IntegerType>(V->getType())) 2694 V = IRB.CreateLShr(V, VITy->getBitWidth() - AITy->getBitWidth(), 2694 V = IRB.CreateLShr(V, VITy->getBitWidth() - AITy->getBitWidth(), 2696 V = IRB.CreateTrunc(V, AITy, "load.trunc"); 2696 V = IRB.CreateTrunc(V, AITy, "load.trunc"); 2699 V = convertValue(DL, IRB, V, NewAllocaTy); 2699 V = convertValue(DL, IRB, V, NewAllocaTy); 2700 NewSI = IRB.CreateAlignedStore(V, &NewAI, NewAI.getAlignment(), 2704 Value *NewPtr = getNewAllocaSlicePtr(IRB, V->getType()->getPointerTo(AS)); 2705 NewSI = IRB.CreateAlignedStore(V, NewPtr, getSliceAlign(V->getType()), 2705 NewSI = IRB.CreateAlignedStore(V, NewPtr, getSliceAlign(V->getType()),