Skip to content

Commit 3c4b8af

Browse files
committed
Move type deduction for getpointer into CallInst case.
1 parent 639ac4c commit 3c4b8af

File tree

1 file changed

+2
-9
lines changed

1 file changed

+2
-9
lines changed

llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -731,14 +731,6 @@ Type *SPIRVEmitIntrinsics::deduceElementTypeHelper(
731731
if (Ty)
732732
break;
733733
}
734-
} else if (auto *II = dyn_cast<IntrinsicInst>(I)) {
735-
if (II->getIntrinsicID() == Intrinsic::spv_resource_getpointer) {
736-
auto *ImageType = cast<TargetExtType>(II->getOperand(0)->getType());
737-
assert(ImageType->getTargetExtName() == "spirv.Image");
738-
Ty = ImageType->getTypeParameter(0);
739-
// TODO: Need to look at the use to see if it needs to be a vector of the
740-
// type.
741-
}
742734
} else if (auto *CI = dyn_cast<CallInst>(I)) {
743735
static StringMap<unsigned> ResTypeByArg = {
744736
{"to_global", 0},
@@ -749,7 +741,8 @@ Type *SPIRVEmitIntrinsics::deduceElementTypeHelper(
749741
{"__spirv_GenericCastToPtr_ToPrivate", 0},
750742
{"__spirv_GenericCastToPtrExplicit_ToGlobal", 0},
751743
{"__spirv_GenericCastToPtrExplicit_ToLocal", 0},
752-
{"__spirv_GenericCastToPtrExplicit_ToPrivate", 0}};
744+
{"__spirv_GenericCastToPtrExplicit_ToPrivate", 0},
745+
{"llvm.spv.resource.getpointer", 0}};
753746
// TODO: maybe improve performance by caching demangled names
754747

755748
auto *II = dyn_cast<IntrinsicInst>(I);

0 commit comments

Comments
 (0)