Skip to content

Commit 14b42c8

Browse files
authored
[NFC][SYCL] Fix warnings in LowerWGScope.cpp and ESIMD passes. (#3556)
Signed-off-by: Konstantin S Bobrovsky <[email protected]>
1 parent f16c4a0 commit 14b42c8

File tree

3 files changed

+8
-4
lines changed

3 files changed

+8
-4
lines changed

llvm/lib/SYCLLowerIR/LowerESIMD.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -730,7 +730,8 @@ static bool translateVLoad(CallInst &CI, SmallPtrSet<Type *, 4> &GVTS) {
730730
if (GVTS.find(CI.getType()) != GVTS.end())
731731
return false;
732732
IRBuilder<> Builder(&CI);
733-
auto LI = Builder.CreateLoad(CI.getArgOperand(0), CI.getName());
733+
auto *ElemT = CI.getArgOperand(0)->getType()->getPointerElementType();
734+
auto LI = Builder.CreateLoad(ElemT, CI.getArgOperand(0), CI.getName());
734735
LI->setDebugLoc(CI.getDebugLoc());
735736
CI.replaceAllUsesWith(LI);
736737
return true;

llvm/lib/SYCLLowerIR/LowerESIMDVLoadVStore.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,8 @@ PreservedAnalyses ESIMDLowerLoadStorePass::run(Function &F,
8989
if (GenXIntrinsic::isVStore(&Inst))
9090
Builder.CreateStore(Inst.getOperand(0), Inst.getOperand(1));
9191
else {
92-
auto LI = Builder.CreateLoad(Inst.getOperand(0), Inst.getName());
92+
auto *ElemT = Inst.getOperand(0)->getType()->getPointerElementType();
93+
auto LI = Builder.CreateLoad(ElemT, Inst.getOperand(0), Inst.getName());
9394
LI->setDebugLoc(Inst.getDebugLoc());
9495
Inst.replaceAllUsesWith(LI);
9596
}

llvm/lib/SYCLLowerIR/LowerWGScope.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,8 @@ shareOutputViaLocalMem(Instruction &I, BasicBlock &BBa, BasicBlock &BBb,
303303
Bld.CreateStore(&I, WGLocal);
304304
// 3) Generate a load in the "worker" BB of the value stored by the leader
305305
Bld.SetInsertPoint(&BBb.front());
306-
auto *WGVal = Bld.CreateLoad(WGLocal, "wg_val_" + Twine(I.getName()));
306+
auto *WGValT = WGLocal->getType()->getPointerElementType();
307+
auto *WGVal = Bld.CreateLoad(WGValT, WGLocal, "wg_val_" + Twine(I.getName()));
307308
// 4) Finally, replace usages of I outside the scope
308309
for (auto *U : Users)
309310
U->replaceUsesOfWith(&I, WGVal);
@@ -416,7 +417,8 @@ static void copyBetweenPrivateAndShadow(Value *L, GlobalVariable *Shadow,
416417

417418
if (!Loc2Shadow)
418419
std::swap(Src, Dst);
419-
Value *LocalVal = Builder.CreateLoad(Src, "mat_ld");
420+
auto *SrcT = Src->getType()->getPointerElementType();
421+
Value *LocalVal = Builder.CreateLoad(SrcT, Src, "mat_ld");
420422
Builder.CreateStore(LocalVal, Dst);
421423
}
422424
}

0 commit comments

Comments
 (0)