{
if (LocalIDZLoadInstr != NULL) return LocalIDZLoadInstr;
IRBuilder<> builder(&*(entryBB()->getFirstInsertionPt()));
- return LocalIDZLoadInstr =
- builder.CreateLoad
- (entryBB()->getParent()->getParent()->getGlobalVariable(POCL_LOCAL_ID_Z_GLOBAL));
+ Value *Ptr = entryBB()->getParent()->getParent()->getGlobalVariable(POCL_LOCAL_ID_Z_GLOBAL);
+ return LocalIDZLoadInstr = builder.CreateLoad(
+#ifndef LLVM_OLDER_THAN_13_0
+ Ptr->getType()->getPointerElementType(),
+#endif
+ Ptr);
}
/**
{
if (LocalIDYLoadInstr != NULL) return LocalIDYLoadInstr;
IRBuilder<> builder(&*(entryBB()->getFirstInsertionPt()));
- return LocalIDYLoadInstr =
- builder.CreateLoad
- (entryBB()->getParent()->getParent()->getGlobalVariable(POCL_LOCAL_ID_Y_GLOBAL));
+ Value *Ptr = entryBB()->getParent()->getParent()->getGlobalVariable(POCL_LOCAL_ID_Y_GLOBAL);
+ return LocalIDYLoadInstr = builder.CreateLoad(
+#ifndef LLVM_OLDER_THAN_13_0
+ Ptr->getType()->getPointerElementType(),
+#endif
+ Ptr);
}
/**
{
if (LocalIDXLoadInstr != NULL) return LocalIDXLoadInstr;
IRBuilder<> builder(&*(entryBB()->getFirstInsertionPt()));
- return LocalIDXLoadInstr =
- builder.CreateLoad
- (entryBB()->getParent()->getParent()->getGlobalVariable(POCL_LOCAL_ID_X_GLOBAL));
+ Value *Ptr = entryBB()->getParent()->getParent()->getGlobalVariable(POCL_LOCAL_ID_X_GLOBAL);
+ return LocalIDXLoadInstr = builder.CreateLoad(
+#ifndef LLVM_OLDER_THAN_13_0
+ Ptr->getType()->getPointerElementType(),
+#endif
+ Ptr);
}
void
Workgroup::createLoadFromContext(
IRBuilder<> &Builder, int StructFieldIndex, int FieldIndex=-1) {
- Value *GEP;
+ Value *GEP, *Ptr;
Type *ContextType = ContextArg->getType()->getPointerElementType();
GEP = Builder.CreateStructGEP(ContextType, ContextArg, StructFieldIndex);
Type *GEPType = GEP->getType()->getPointerElementType();
llvm::LoadInst *Load = nullptr;
if (SizeTWidth == 64) {
if (FieldIndex == -1)
- Load = Builder.CreateLoad(Builder.CreateConstGEP1_64(
+ Ptr = Builder.CreateConstGEP1_64(
#ifndef LLVM_OLDER_THAN_13_0
GEPType,
#endif
- GEP, 0));
+ GEP, 0);
else
- Load = Builder.CreateLoad(Builder.CreateConstGEP2_64(
+ Ptr = Builder.CreateConstGEP2_64(
#ifndef LLVM_OLDER_THAN_13_0
GEPType,
#endif
- GEP, 0, FieldIndex));
+ GEP, 0, FieldIndex);
} else {
if (FieldIndex == -1)
- Load = Builder.CreateLoad(Builder.CreateConstGEP1_32(
+ Ptr = Builder.CreateConstGEP1_32(
#ifndef LLVM_OLDER_THAN_13_0
GEPType,
#endif
- GEP, 0));
+ GEP, 0);
else
- Load = Builder.CreateLoad(Builder.CreateConstGEP2_32(
+ Ptr = Builder.CreateConstGEP2_32(
GEPType,
- GEP, 0, FieldIndex));
+ GEP, 0, FieldIndex);
}
+ Load = Builder.CreateLoad(
+#ifndef LLVM_OLDER_THAN_13_0
+ Ptr->getType()->getPointerElementType(),
+#endif
+ Ptr);
addRangeMetadataForPCField(Load, StructFieldIndex, FieldIndex);
return Load;
}