From 820970cb48c5fa0c4cedfdeb24d631947e04dfc5 Mon Sep 17 00:00:00 2001 From: "Zwolski, Antoni" Date: Mon, 2 Dec 2024 11:57:50 +0100 Subject: [PATCH 1/3] [CMPLRLLVM-63532] Remove deprecated getPointerTo --- llvm/lib/SYCLLowerIR/ESIMD/LowerESIMD.cpp | 5 +++-- llvm/lib/SYCLLowerIR/GlobalOffset.cpp | 9 ++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/llvm/lib/SYCLLowerIR/ESIMD/LowerESIMD.cpp b/llvm/lib/SYCLLowerIR/ESIMD/LowerESIMD.cpp index b0354ff6fdb64..63f1cdc1c6b93 100644 --- a/llvm/lib/SYCLLowerIR/ESIMD/LowerESIMD.cpp +++ b/llvm/lib/SYCLLowerIR/ESIMD/LowerESIMD.cpp @@ -1575,8 +1575,9 @@ static void translateESIMDIntrinsicCall(CallInst &CI) { IRBuilder<> Builder(&CI); NewInst = Builder.CreateStore( - NewCI, Builder.CreateBitCast(CastInstruction->getPointerOperand(), - NewCI->getType()->getPointerTo())); + NewCI, + Builder.CreateBitCast(CastInstruction->getPointerOperand(), + llvm::PointerType::getUnqual(CI.getContext()))); } else { NewInst = addCastInstIfNeeded(&CI, NewCI); } diff --git a/llvm/lib/SYCLLowerIR/GlobalOffset.cpp b/llvm/lib/SYCLLowerIR/GlobalOffset.cpp index 3873b2f8837e5..36d949c0f19a7 100644 --- a/llvm/lib/SYCLLowerIR/GlobalOffset.cpp +++ b/llvm/lib/SYCLLowerIR/GlobalOffset.cpp @@ -118,7 +118,7 @@ PreservedAnalyses GlobalOffsetPass::run(Module &M, ModuleAnalysisManager &) { KernelImplicitArgumentType = ArrayType::get(Type::getInt32Ty(M.getContext()), 3); ImplicitOffsetPtrType = - Type::getInt32Ty(M.getContext())->getPointerTo(TargetAS); + PointerType::get(Type::getInt32Ty(M.getContext()), TargetAS); assert( (ImplicitOffsetIntrinsic->getReturnType() == ImplicitOffsetPtrType) && "Implicit offset intrinsic does not return the expected type"); @@ -179,7 +179,7 @@ void GlobalOffsetPass::processKernelEntryPoint( // Add the new argument to all other kernel entry points, despite not // using the global offset. auto *NewFunc = addOffsetArgumentToFunction( - M, Func, KernelImplicitArgumentType->getPointerTo(), + M, Func, PointerType::getUnqual(Func->getContext()), /*KeepOriginal=*/true, /*IsKernel=*/true) .first; @@ -343,7 +343,7 @@ std::pair GlobalOffsetPass::addOffsetArgumentToFunction( // addrspace(4), cast implicit offset arg to constant memory so the // memcpy is issued into a correct address space. auto *OrigImplicitOffsetAS4 = Builder.CreateAddrSpaceCast( - OrigImplicitOffset, Type::getInt8Ty(M.getContext())->getPointerTo(4)); + OrigImplicitOffset, llvm::PointerType::get(M.getContext(), 4)); Builder.CreateMemCpy( ImplicitOffsetAlloca, ImplicitOffsetAlloca->getAlign(), OrigImplicitOffsetAS4, OrigImplicitOffsetAS4->getPointerAlignment(DL), @@ -390,8 +390,7 @@ std::pair GlobalOffsetPass::addOffsetArgumentToFunction( : EntryBlock->getFirstInsertionPt(); IRBuilder<> Builder(EntryBlock, InsertionPt); ImplicitOffset = Builder.CreateBitCast( - ImplicitOffset, - Type::getInt32Ty(M.getContext())->getPointerTo(TargetAS)); + ImplicitOffset, llvm::PointerType::get(M.getContext(), TargetAS)); } ProcessedFunctions[Func] = ImplicitOffset; From 07406531b16a23c05f9ba50d7b52440cd0badabd Mon Sep 17 00:00:00 2001 From: "Zwolski, Antoni" Date: Mon, 16 Dec 2024 15:27:22 +0100 Subject: [PATCH 2/3] [CMPLRLLVM-63532] Fix context usage in pointer type casting for ESIMD intrinsic calls --- llvm/lib/SYCLLowerIR/ESIMD/LowerESIMD.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/llvm/lib/SYCLLowerIR/ESIMD/LowerESIMD.cpp b/llvm/lib/SYCLLowerIR/ESIMD/LowerESIMD.cpp index 63f1cdc1c6b93..88d3c99240037 100644 --- a/llvm/lib/SYCLLowerIR/ESIMD/LowerESIMD.cpp +++ b/llvm/lib/SYCLLowerIR/ESIMD/LowerESIMD.cpp @@ -1577,7 +1577,7 @@ static void translateESIMDIntrinsicCall(CallInst &CI) { NewInst = Builder.CreateStore( NewCI, Builder.CreateBitCast(CastInstruction->getPointerOperand(), - llvm::PointerType::getUnqual(CI.getContext()))); + llvm::PointerType::getUnqual(NewCI->getContext()))); } else { NewInst = addCastInstIfNeeded(&CI, NewCI); } From d63c9241d8b10591b6680b3bdf415f0134d87401 Mon Sep 17 00:00:00 2001 From: "Zwolski, Antoni" Date: Tue, 17 Dec 2024 10:12:09 +0100 Subject: [PATCH 3/3] [CMPLRLLVM-63532] Refactor formatting in translateESIMDIntrinsicCall for improved readability --- llvm/lib/SYCLLowerIR/ESIMD/LowerESIMD.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/llvm/lib/SYCLLowerIR/ESIMD/LowerESIMD.cpp b/llvm/lib/SYCLLowerIR/ESIMD/LowerESIMD.cpp index 88d3c99240037..02b08543ba2e6 100644 --- a/llvm/lib/SYCLLowerIR/ESIMD/LowerESIMD.cpp +++ b/llvm/lib/SYCLLowerIR/ESIMD/LowerESIMD.cpp @@ -1575,9 +1575,9 @@ static void translateESIMDIntrinsicCall(CallInst &CI) { IRBuilder<> Builder(&CI); NewInst = Builder.CreateStore( - NewCI, - Builder.CreateBitCast(CastInstruction->getPointerOperand(), - llvm::PointerType::getUnqual(NewCI->getContext()))); + NewCI, Builder.CreateBitCast( + CastInstruction->getPointerOperand(), + llvm::PointerType::getUnqual(NewCI->getContext()))); } else { NewInst = addCastInstIfNeeded(&CI, NewCI); }