Lines Matching refs:DL
29 const DataLayout &DL) {
30 APInt BaseAlign(Offset.getBitWidth(), Base->getPointerAlignment(DL));
36 BaseAlign = DL.getABITypeAlignment(Ty);
45 static bool isAligned(const Value *Base, unsigned Align, const DataLayout &DL) {
48 APInt Offset(DL.getTypeStoreSizeInBits(Ty), 0);
49 return isAligned(Base, Offset, Align, DL);
55 const Value *V, unsigned Align, const APInt &Size, const DataLayout &DL,
64 DL, CtxI, DT, Visited);
68 V->getPointerDereferenceableBytes(DL, CheckForNonNull));
72 return isAligned(V, Align, DL);
79 APInt Offset(DL.getPointerTypeSizeInBits(GEP->getType()), 0);
80 if (!GEP->accumulateConstantOffset(DL, Offset) || Offset.isNegative() ||
91 isDereferenceableAndAlignedPointer(Base, Align, Offset + Size, DL,
98 RelocateInst->getDerivedPtr(), Align, Size, DL, CtxI, DT, Visited);
102 DL, CtxI, DT, Visited);
106 return isDereferenceableAndAlignedPointer(RV, Align, Size, DL, CtxI, DT,
114 const DataLayout &DL,
126 Align = DL.getABITypeAlignment(Ty);
133 V, Align, APInt(DL.getTypeSizeInBits(VTy), DL.getTypeStoreSize(Ty)), DL,
137 bool llvm::isDereferenceablePointer(const Value *V, const DataLayout &DL,
140 return isDereferenceableAndAlignedPointer(V, 1, DL, CtxI, DT);
186 const DataLayout &DL,
191 Align = DL.getABITypeAlignment(V->getType()->getPointerElementType());
196 if (isDereferenceableAndAlignedPointer(V, Align, DL, CtxI, DT))
201 Base = GetPointerBaseWithConstantOffset(V, ByteOffset, DL);
223 uint64_t LoadSize = DL.getTypeStoreSize(AddrTy->getElementType());
231 BaseAlign = DL.getPrefTypeAlignment(BaseType);
235 if (ByteOffset + LoadSize <= DL.getTypeAllocSize(BaseType) &&
278 AccessedAlign = DL.getABITypeAlignment(AccessedTy);
287 LoadSize <= DL.getTypeStoreSize(AccessedTy))
324 const DataLayout &DL = ScanBB->getModule()->getDataLayout();
327 uint64_t AccessSize = DL.getTypeStoreSize(AccessTy);
352 CastInst::isBitOrNoopPointerCastable(LI->getType(), AccessTy, DL)) {
373 AccessTy, DL)) {