Lines Matching refs:Addr
71 llvm::LoadInst *CreateLoad(Address Addr, const llvm::Twine &Name = "") {
72 return CreateAlignedLoad(Addr.getElementType(), Addr.getPointer(),
73 Addr.getAlignment().getAsAlign(), Name);
75 llvm::LoadInst *CreateLoad(Address Addr, const char *Name) { in CreateLoad() argument
78 return CreateAlignedLoad(Addr.getElementType(), Addr.getPointer(), in CreateLoad()
79 Addr.getAlignment().getAsAlign(), Name); in CreateLoad()
81 llvm::LoadInst *CreateLoad(Address Addr, bool IsVolatile,
83 return CreateAlignedLoad(Addr.getElementType(), Addr.getPointer(),
84 Addr.getAlignment().getAsAlign(), IsVolatile,
89 llvm::LoadInst *CreateAlignedLoad(llvm::Type *Ty, llvm::Value *Addr,
92 assert(llvm::cast<llvm::PointerType>(Addr->getType())
94 return CreateAlignedLoad(Ty, Addr, Align.getAsAlign(), Name);
99 llvm::StoreInst *CreateStore(llvm::Value *Val, Address Addr,
101 return CreateAlignedStore(Val, Addr.getPointer(),
102 Addr.getAlignment().getAsAlign(), IsVolatile);
106 llvm::StoreInst *CreateAlignedStore(llvm::Value *Val, llvm::Value *Addr,
109 return CreateAlignedStore(Val, Addr, Align.getAsAlign(), IsVolatile);
115 llvm::Value *Addr,
117 return CGBuilderBaseTy::CreateStore(Val, Addr, IsVolatile);
121 llvm::LoadInst *CreateFlagLoad(llvm::Value *Addr,
123 assert(llvm::cast<llvm::PointerType>(Addr->getType())
125 return CreateAlignedLoad(getInt1Ty(), Addr, CharUnits::One(), Name);
129 llvm::StoreInst *CreateFlagStore(bool Value, llvm::Value *Addr) { in CreateFlagStore() argument
130 assert(llvm::cast<llvm::PointerType>(Addr->getType()) in CreateFlagStore()
132 return CreateAlignedStore(getInt1(Value), Addr, CharUnits::One()); in CreateFlagStore()
158 Address CreateAddrSpaceCast(Address Addr, llvm::Type *Ty,
161 Addr.getElementType()) &&
163 return Addr.withPointer(CreateAddrSpaceCast(Addr.getPointer(), Ty, Name));
168 Address CreateElementBitCast(Address Addr, llvm::Type *Ty,
170 auto *PtrTy = Ty->getPointerTo(Addr.getAddressSpace());
171 return Address(CreateBitCast(Addr.getPointer(), PtrTy, Name), Ty,
172 Addr.getAlignment());
176 Address CreatePointerBitCastOrAddrSpaceCast(Address Addr, llvm::Type *Ty,
180 CreatePointerBitCastOrAddrSpaceCast(Addr.getPointer(), Ty, Name);
181 return Address(Ptr, ElementTy, Addr.getAlignment());
192 Address CreateStructGEP(Address Addr, unsigned Index,
194 llvm::StructType *ElTy = cast<llvm::StructType>(Addr.getElementType());
200 CreateStructGEP(Addr.getElementType(), Addr.getPointer(), Index, Name),
202 Addr.getAlignment().alignmentAtOffset(Offset));
213 Address CreateConstArrayGEP(Address Addr, uint64_t Index,
215 llvm::ArrayType *ElTy = cast<llvm::ArrayType>(Addr.getElementType());
221 CreateInBoundsGEP(Addr.getElementType(), Addr.getPointer(),
224 Addr.getAlignment().alignmentAtOffset(Index * EltSize));
232 Address CreateConstInBoundsGEP(Address Addr, uint64_t Index,
234 llvm::Type *ElTy = Addr.getElementType();
238 return Address(CreateInBoundsGEP(Addr.getElementType(), Addr.getPointer(),
241 Addr.getAlignment().alignmentAtOffset(Index * EltSize));
249 Address CreateConstGEP(Address Addr, uint64_t Index,
253 CharUnits::fromQuantity(DL.getTypeAllocSize(Addr.getElementType()));
255 return Address(CreateGEP(Addr.getElementType(), Addr.getPointer(),
257 Addr.getElementType(),
258 Addr.getAlignment().alignmentAtOffset(Index * EltSize));
264 Address CreateGEP(Address Addr, llvm::Value *Index,
268 CharUnits::fromQuantity(DL.getTypeAllocSize(Addr.getElementType()));
271 CreateGEP(Addr.getElementType(), Addr.getPointer(), Index, Name),
272 Addr.getElementType(),
273 Addr.getAlignment().alignmentOfArrayElement(EltSize));
277 Address CreateConstInBoundsByteGEP(Address Addr, CharUnits Offset,
279 assert(Addr.getElementType() == TypeCache.Int8Ty);
280 return Address(CreateInBoundsGEP(Addr.getElementType(), Addr.getPointer(),
282 Addr.getElementType(),
283 Addr.getAlignment().alignmentAtOffset(Offset));
285 Address CreateConstByteGEP(Address Addr, CharUnits Offset,
287 assert(Addr.getElementType() == TypeCache.Int8Ty);
288 return Address(CreateGEP(Addr.getElementType(), Addr.getPointer(),
290 Addr.getElementType(),
291 Addr.getAlignment().alignmentAtOffset(Offset));
295 Address CreateConstInBoundsGEP2_32(Address Addr, unsigned Idx0, unsigned Idx1,
300 Addr.getElementType(), Addr.getPointer(), Idx0, Idx1, Name));
302 DL.getIndexSizeInBits(Addr.getType()->getPointerAddressSpace()), 0,
307 Addr.getAlignment().alignmentAtOffset(
356 Address CreatePreserveStructAccessIndex(Address Addr, unsigned Index, in CreatePreserveStructAccessIndex() argument
359 llvm::StructType *ElTy = cast<llvm::StructType>(Addr.getElementType()); in CreatePreserveStructAccessIndex()
364 return Address(CreatePreserveStructAccessIndex(ElTy, Addr.getPointer(), in CreatePreserveStructAccessIndex()
367 Addr.getAlignment().alignmentAtOffset(Offset)); in CreatePreserveStructAccessIndex()
371 Address CreateLaunderInvariantGroup(Address Addr) { in CreateLaunderInvariantGroup() argument
372 return Addr.withPointer(CreateLaunderInvariantGroup(Addr.getPointer())); in CreateLaunderInvariantGroup()