diff --git a/clang/lib/CodeGen/CGNonTrivialStruct.cpp b/clang/lib/CodeGen/CGNonTrivialStruct.cpp --- a/clang/lib/CodeGen/CGNonTrivialStruct.cpp +++ b/clang/lib/CodeGen/CGNonTrivialStruct.cpp @@ -326,9 +326,9 @@ std::array Alignments, FunctionArgList Args, CodeGenFunction *CGF) { - return std::array{{Address::deprecated( - CGF->Builder.CreateLoad(CGF->GetAddrOfLocalVar(Args[Ints])), - Alignments[Ints])...}}; + return std::array{ + {Address(CGF->Builder.CreateLoad(CGF->GetAddrOfLocalVar(Args[Ints])), + CGF->VoidPtrTy, Alignments[Ints])...}}; } // Template classes that are used as bases for classes that emit special diff --git a/clang/lib/CodeGen/CGObjC.cpp b/clang/lib/CodeGen/CGObjC.cpp --- a/clang/lib/CodeGen/CGObjC.cpp +++ b/clang/lib/CodeGen/CGObjC.cpp @@ -3849,7 +3849,7 @@ getContext().getTypeAlignInChars(TheCXXConstructExpr->getType()); EmitAggExpr(TheCXXConstructExpr, AggValueSlot::forAddr( - Address::deprecated(DV.getScalarVal(), Alignment), + Address(DV.getScalarVal(), ConvertTypeForMem(Ty), Alignment), Qualifiers(), AggValueSlot::IsDestructed, AggValueSlot::DoesNotNeedGCBarriers, AggValueSlot::IsNotAliased, AggValueSlot::DoesNotOverlap)); diff --git a/clang/lib/CodeGen/CGObjCGNU.cpp b/clang/lib/CodeGen/CGObjCGNU.cpp --- a/clang/lib/CodeGen/CGObjCGNU.cpp +++ b/clang/lib/CodeGen/CGObjCGNU.cpp @@ -1265,7 +1265,7 @@ const std::string &Name, bool isWeak) override { return CGF.Builder.CreateLoad( - Address::deprecated(GetClassVar(Name, isWeak), CGM.getPointerAlign())); + Address(GetClassVar(Name, isWeak), IdTy, CGM.getPointerAlign())); } int32_t FlagsForOwnership(Qualifiers::ObjCLifetime Ownership) { // typedef enum { diff --git a/clang/lib/CodeGen/CGObjCMac.cpp b/clang/lib/CodeGen/CGObjCMac.cpp --- a/clang/lib/CodeGen/CGObjCMac.cpp +++ b/clang/lib/CodeGen/CGObjCMac.cpp @@ -5272,7 +5272,7 @@ Entry->setExternallyInitialized(true); } - return Address::deprecated(Entry, Align); + return Address(Entry, ObjCTypes.SelectorPtrTy, Align); } llvm::Constant *CGObjCCommonMac::GetClassName(StringRef RuntimeName) { @@ -7643,7 +7643,7 @@ CGM.addCompilerUsedGlobal(Entry); } - return Address::deprecated(Entry, Align); + return Address(Entry, ObjCTypes.SelectorPtrTy, Align); } /// EmitObjCIvarAssign - Code gen for assigning to a __strong object. diff --git a/clang/lib/CodeGen/CGObjCRuntime.cpp b/clang/lib/CodeGen/CGObjCRuntime.cpp --- a/clang/lib/CodeGen/CGObjCRuntime.cpp +++ b/clang/lib/CodeGen/CGObjCRuntime.cpp @@ -106,7 +106,7 @@ CGF.CGM.getContext().toBits(StorageSize), CharUnits::fromQuantity(0))); - Address Addr = Address::deprecated(V, Alignment); + Address Addr = Address(V, CGF.Int8Ty, Alignment); Addr = CGF.Builder.CreateElementBitCast(Addr, llvm::Type::getIntNTy(CGF.getLLVMContext(), Info->StorageSize));