[PATCH] D144494: [SPIR-V] Support TargetExtType for SPIR-V builtin types

Joshua Cranmer via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 1 10:26:19 PST 2023


jcranmer-intel added inline comments.


================
Comment at: llvm/lib/IR/Type.cpp:865
   StringRef Name = Ty->getName();
-  if (Name.startswith("spirv.")) {
+  if (Name.startswith("spirv.") || Name.startswith("opencl.")) {
     return TargetTypeInfo(Type::getInt8PtrTy(C, 0), TargetExtType::HasZeroInit,
----------------
Why do you need to support both spirv.* and opencl.* opaque types?


================
Comment at: llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp:1978
+
+  // Parametrized SPIR-V builtins names follow this format:
+  // e.g. %spirv.Image._void_1_0_0_0_0_0_0, %spirv.Pipe._0
----------------
Nit: "Parameterized"


================
Comment at: llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp:1988
+  SmallVector<Type *, 1> TypeParameters;
+  bool HasTypeParamter = !isDigit(Parameters[0][0]);
+  if (HasTypeParamter)
----------------
Nit: HasTypeParameter.


================
Comment at: llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp:2009
 
-static SPIRVType *getNonParametrizedType(const StructType *OpaqueType,
-                                         const SPIRV::DemangledType *TypeRecord,
+static SPIRVType *getNonParametrizedType(const TargetExtType *ExtensionType,
+                                         const SPIRV::BuiltinType *TypeRecord,
----------------
Nit: getNonParameterizedType.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D144494/new/

https://reviews.llvm.org/D144494



More information about the llvm-commits mailing list