Home
last modified time | relevance | path

Searched refs:spirv (Results 1 – 25 of 200) sorted by relevance

12345678

/llvm-project-15.0.7/mlir/lib/Dialect/SPIRV/IR/
H A DTargetAndABI.cpp22 spirv::TargetEnv::TargetEnv(spirv::TargetEnvAttr targetAttr) in TargetEnv()
41 spirv::Version spirv::TargetEnv::getVersion() const { in getVersion()
50 spirv::TargetEnv::allows(ArrayRef<spirv::Capability> caps) const { in allows()
59 bool spirv::TargetEnv::allows(spirv::Extension extension) const { in allows()
64 spirv::TargetEnv::allows(ArrayRef<spirv::Extension> exts) const { in allows()
73 spirv::Vendor spirv::TargetEnv::getVendorID() const { in getVendorID()
77 spirv::DeviceType spirv::TargetEnv::getDeviceType() const { in getDeviceType()
179 spirv::TargetEnvAttr spirv::lookupTargetEnv(Operation *op) { in lookupTargetEnv()
203 spirv::getAddressingModel(spirv::TargetEnvAttr targetAttr) { in getAddressingModel()
220 spirv::getExecutionModel(spirv::TargetEnvAttr targetAttr) { in getExecutionModel()
[all …]
H A DSPIRVOps.cpp332 elidedAttrs.push_back(spirv::attributeName<spirv::StorageClass>()); in printMemoryAccessAttribute()
365 elidedAttrs.push_back(spirv::attributeName<spirv::StorageClass>()); in printSourceMemoryAccessAttribute()
405 spirv::ImageOperands::Bias | spirv::ImageOperands::Lod | in verifyImageOperands()
408 spirv::ImageOperands::Sample | spirv::ImageOperands::MinLod | in verifyImageOperands()
900 spirv::Scope scope = static_cast<spirv::Scope>( in verifyGroupNonUniformArithmeticOp()
2254 {spirv::attributeName<spirv::FunctionControl>()}); in print()
2489 spirv::attributeName<spirv::StorageClass>()}; in print()
3226 DenseMap<std::pair<spirv::FuncOp, spirv::ExecutionModel>, spirv::EntryPointOp> in verifyRegions()
3436 spirv::SelectionOp spirv::SelectionOp::createIfThen( in createIfThen()
3632 spirv::attributeName<spirv::StorageClass>()}; in print()
[all …]
H A DSPIRVAttributes.cpp24 namespace spirv { namespace
32 namespace spirv { namespace
187 spirv::VerCapExtAttr spirv::VerCapExtAttr::get( in get()
188 spirv::Version version, ArrayRef<spirv::Capability> capabilities, in get()
207 spirv::VerCapExtAttr spirv::VerCapExtAttr::get(IntegerAttr version, in get()
217 spirv::Version spirv::VerCapExtAttr::getVersion() { in getVersion()
285 spirv::TargetEnvAttr spirv::TargetEnvAttr::get(spirv::VerCapExtAttr triple, in get()
297 spirv::VerCapExtAttr spirv::TargetEnvAttr::getTripleAttr() const { in getTripleAttr()
301 spirv::Version spirv::TargetEnvAttr::getVersion() const { in getVersion()
321 spirv::Vendor spirv::TargetEnvAttr::getVendorID() const { in getVendorID()
[all …]
H A DSPIRVCanonicalization.cpp90 : public OpRewritePattern<spirv::AccessChainOp> {
107 rewriter.replaceOpWithNewOp<spirv::AccessChainOp>( in matchAndRewrite()
115 void spirv::AccessChainOp::getCanonicalizationPatterns( in getCanonicalizationPatterns()
234 void spirv::LogicalNotOp::getCanonicalizationPatterns( in getCanonicalizationPatterns()
293 : public OpRewritePattern<spirv::SelectionOp> {
332 auto selectOp = rewriter.create<spirv::SelectOp>( in matchAndRewrite()
355 isa<spirv::BranchConditionalOp>(block->front()); in onlyContainsBranchConditionalOp()
358 bool isSameAttrList(spirv::StoreOp lhs, spirv::StoreOp rhs) const { in isSameAttrList()
364 auto storeOp = cast<spirv::StoreOp>(block->front()); in getSrcValue()
370 auto storeOp = cast<spirv::StoreOp>(block->front()); in getDstPtr()
[all …]
/llvm-project-15.0.7/mlir/lib/Conversion/MathToSPIRV/
H A DMathToSPIRV.cpp290 spirv::ElementwiseOpPattern<math::AbsOp, spirv::GLFAbsOp>, in populateMathToSPIRVPatterns()
291 spirv::ElementwiseOpPattern<math::CeilOp, spirv::GLCeilOp>, in populateMathToSPIRVPatterns()
292 spirv::ElementwiseOpPattern<math::CosOp, spirv::GLCosOp>, in populateMathToSPIRVPatterns()
293 spirv::ElementwiseOpPattern<math::ExpOp, spirv::GLExpOp>, in populateMathToSPIRVPatterns()
294 spirv::ElementwiseOpPattern<math::FloorOp, spirv::GLFloorOp>, in populateMathToSPIRVPatterns()
295 spirv::ElementwiseOpPattern<math::FmaOp, spirv::GLFmaOp>, in populateMathToSPIRVPatterns()
296 spirv::ElementwiseOpPattern<math::LogOp, spirv::GLLogOp>, in populateMathToSPIRVPatterns()
298 spirv::ElementwiseOpPattern<math::SinOp, spirv::GLSinOp>, in populateMathToSPIRVPatterns()
299 spirv::ElementwiseOpPattern<math::SqrtOp, spirv::GLSqrtOp>, in populateMathToSPIRVPatterns()
300 spirv::ElementwiseOpPattern<math::TanhOp, spirv::GLTanhOp>>( in populateMathToSPIRVPatterns()
[all …]
/llvm-project-15.0.7/mlir/lib/Dialect/SPIRV/Transforms/
H A DLowerABIAttributesPass.cpp26 static spirv::GlobalVariableOp
48 spirv::PointerType::get(spirv::StructType::get(varType), *storageClass); in createGlobalVarForEntryPointArgument()
71 getInterfaceVariables(spirv::FuncOp funcOp, in getInterfaceVariables()
91 case spirv::StorageClass::Input: in getInterfaceVariables()
92 case spirv::StorageClass::Output: in getInterfaceVariables()
127 spirv::TargetEnvAttr targetEnv = spirv::lookupTargetEnv(funcOp); in lowerEntryPointABIAttr()
129 spirv::getExecutionModel(targetEnv); in lowerEntryPointABIAttr()
142 builder.create<spirv::ExecutionModeOp>( in lowerEntryPointABIAttr()
242 spirv::TargetEnv targetEnv(spirv::lookupTargetEnv(module)); in runOnOperation()
260 target.addDynamicallyLegalOp<spirv::FuncOp>([&](spirv::FuncOp op) { in runOnOperation()
[all …]
H A DSPIRVConversion.cpp48 for (spirv::Extension ext : ors) in checkExtensionRequirements()
95 case spirv::StorageClass::Uniform: in needsExplicitLayout()
104 static spirv::PointerType
165 Optional<spirv::StorageClass>
621 static spirv::GlobalVariableOp
644 case spirv::BuiltIn::SubgroupId: in getOrInsertBuiltinVariable()
648 spirv::PointerType::get(integerType, spirv::StorageClass::Input); in getOrInsertBuiltinVariable()
671 spirv::GlobalVariableOp varOp = in getBuiltinVariableValue()
690 return spirv::PointerType::get(structType, spirv::StorageClass::PushConstant); in getPushConstantStorageType()
720 static spirv::GlobalVariableOp
[all …]
H A DUpdateVCEPass.cpp44 Operation *op, const spirv::TargetEnv &targetEnv, in checkAndUpdateExtensionRequirements()
52 for (spirv::Extension ext : ors) in checkAndUpdateExtensionRequirements()
80 for (spirv::Capability cap : ors) in checkAndUpdateCapabilityRequirements()
93 spirv::ModuleOp module = getOperation(); in runOnOperation()
95 spirv::TargetEnvAttr targetAttr = spirv::lookupTargetEnv(module); in runOnOperation()
101 spirv::TargetEnv targetEnv(targetAttr); in runOnOperation()
104 spirv::Version deducedVersion = spirv::Version::V_1_0; in runOnOperation()
105 SetVector<spirv::Extension> deducedExtensions; in runOnOperation()
106 SetVector<spirv::Capability> deducedCapabilities; in runOnOperation()
174 auto triple = spirv::VerCapExtAttr::get( in runOnOperation()
[all …]
H A DUnifyAliasedResourcePass.cpp85 for (spirv::SPIRVType type : types) { in deduceCanonicalResource()
164 spirv::GlobalVariableOp
166 spirv::GlobalVariableOp
170 spirv::SPIRVType getElementType(spirv::GlobalVariableOp varOp) const;
188 DenseMap<spirv::GlobalVariableOp, spirv::SPIRVType> elementTypeMap;
235 spirv::GlobalVariableOp varOp) const { in getCanonicalResource()
242 spirv::SPIRVType
253 SmallVector<spirv::SPIRVType> elementTypes; in recordIfUnifiable()
520 target.addDynamicallyLegalOp<spirv::GlobalVariableOp, spirv::AddressOfOp, in runOnOperation()
521 spirv::AccessChainOp, spirv::LoadOp, in runOnOperation()
[all …]
H A DDecorateCompositeTypeLayoutPass.cpp28 : public OpRewritePattern<spirv::GlobalVariableOp> {
32 LogicalResult matchAndRewrite(spirv::GlobalVariableOp op, in matchAndRewrite()
36 auto ptrType = op.type().cast<spirv::PointerType>(); in matchAndRewrite()
53 rewriter.replaceOpWithNewOp<spirv::GlobalVariableOp>( in matchAndRewrite()
60 : public OpRewritePattern<spirv::AddressOfOp> {
64 LogicalResult matchAndRewrite(spirv::AddressOfOp op, in matchAndRewrite()
70 rewriter.replaceOpWithNewOp<spirv::AddressOfOp>( in matchAndRewrite()
113 target.addLegalDialect<spirv::SPIRVDialect>(); in runOnOperation()
116 [](spirv::GlobalVariableOp op) { in runOnOperation()
121 target.addDynamicallyLegalOp<spirv::AddressOfOp>([](spirv::AddressOfOp op) { in runOnOperation()
[all …]
/llvm-project-15.0.7/mlir/unittests/Dialect/SPIRV/
H A DSerializationTest.cpp56 spirv::Version::V_1_0, ArrayRef<spirv::Capability>(), in initModuleOp()
58 spirv::ModuleOp::build(builder, state); in initModuleOp()
63 spirv::StructType getFloatStructType() { in getFloatStructType()
73 auto ptrType = spirv::PointerType::get(type, spirv::StorageClass::Uniform); in addGlobalVar()
88 auto currOffset = spirv::kHeaderWordCount; in scanInstruction()
95 spirv::Opcode opcode = in scanInstruction()
109 OwningOpRef<spirv::ModuleOp> module;
156 spirv::SerializationOptions options; in TEST_F()
162 return opcode == spirv::Opcode::OpName && in TEST_F()
172 spirv::SerializationOptions options; in TEST_F()
[all …]
H A DDeserializationTest.cpp38 context.getOrLoadDialect<mlir::spirv::SPIRVDialect>(); in DeserializationTest()
47 OwningOpRef<spirv::ModuleOp> deserialize() { in deserialize()
48 return spirv::deserialize(binary, &context); in deserialize()
65 spirv::appendModuleHeader(binary, spirv::Version::V_1_0, /*idBound=*/0); in addHeader()
77 addInstruction(spirv::Opcode::OpTypeVoid, {id}); in addVoidType()
92 addInstruction(spirv::Opcode::OpTypeStruct, words); in addStructType()
108 addInstruction(spirv::Opcode::OpFunction, in addFunction()
191 (void)spirv::encodeStringLiteralInto(operands1, "i1"); in TEST_F()
192 addInstruction(spirv::Opcode::OpMemberName, operands1); in TEST_F()
195 (void)spirv::encodeStringLiteralInto(operands2, "i2"); in TEST_F()
[all …]
/llvm-project-15.0.7/mlir/lib/Target/SPIRV/Deserialization/
H A DDeserializeOps.cpp76 spirv::Deserializer::sliceInstruction(spirv::Opcode &opcode, in sliceInstruction()
137 case spirv::Opcode::OpLine: in processInstruction()
139 case spirv::Opcode::OpNoLine: in processInstruction()
142 case spirv::Opcode::OpName: in processInstruction()
144 case spirv::Opcode::OpString: in processInstruction()
147 case spirv::Opcode::OpSource: in processInstruction()
196 case spirv::Opcode::OpLabel: in processInstruction()
198 case spirv::Opcode::OpBranch: in processInstruction()
206 case spirv::Opcode::OpPhi: in processInstruction()
208 case spirv::Opcode::OpUndef: in processInstruction()
[all …]
H A DDeserializer.cpp72 spirv::Opcode opcode = spirv::Opcode::OpNop; in deserialize()
101 OwningOpRef<spirv::ModuleOp> spirv::Deserializer::collect() { in collect()
109 OwningOpRef<spirv::ModuleOp> spirv::Deserializer::createModuleOp() { in createModuleOp()
269 case spirv::Decoration::Block: in processDecoration()
271 case spirv::Decoration::Flat: in processDecoration()
397 spirv::Opcode opcode = spirv::Opcode::OpNop; in processFunction()
435 spirv::Opcode opcode = spirv::Opcode::OpNop; in processFunction()
533 spirv::SpecConstantOp
648 LogicalResult spirv::Deserializer::processType(spirv::Opcode opcode, in processType()
1323 spirv::Opcode enclosedOpcode = static_cast<spirv::Opcode>(operands[2]); in processSpecConstantOperation()
[all …]
H A DDeserializer.h26 namespace spirv {
85 spirv::StructType deferredStructType;
101 spirv::Opcode enclodesOpcode;
129 OwningOpRef<spirv::ModuleOp> collect();
137 OwningOpRef<spirv::ModuleOp> createModuleOp();
211 spirv::SpecConstantOp getSpecConstant(uint32_t id) { in getSpecConstant()
494 OwningOpRef<spirv::ModuleOp> module;
497 Optional<spirv::FuncOp> curFunction;
504 spirv::Version version = spirv::Version::V_1_0;
510 llvm::SmallSetVector<spirv::Extension, 2> extensions;
[all …]
/llvm-project-15.0.7/mlir/lib/Conversion/GPUToSPIRV/
H A DGPUToSPIRV.cpp30 template <typename SourceOp, spirv::BuiltIn builtin>
42 template <typename SourceOp, spirv::BuiltIn builtin>
172 rewriter.replaceOpWithNewOp<spirv::ConstantOp>( in matchAndRewrite()
182 static spirv::FuncOp
244 spirv::TargetEnvAttr targetEnv = spirv::lookupTargetEnvOrDefault(funcOp); in getDefaultABIAttrs()
254 Optional<spirv::StorageClass> sc; in getDefaultABIAttrs()
256 sc = spirv::StorageClass::StorageBuffer; in getDefaultABIAttrs()
307 spirv::TargetEnvAttr targetEnv = spirv::lookupTargetEnvOrDefault(moduleOp); in matchAndRewrite()
308 spirv::AddressingModel addressingModel = spirv::getAddressingModel(targetEnv); in matchAndRewrite()
309 FailureOr<spirv::MemoryModel> memoryModel = spirv::getMemoryModel(targetEnv); in matchAndRewrite()
[all …]
/llvm-project-15.0.7/mlir/lib/Conversion/ArithmeticToSPIRV/
H A DArithmeticToSPIRV.cpp859 spirv::ElementwiseOpPattern<arith::AddIOp, spirv::IAddOp>, in populateArithmeticToSPIRVPatterns()
860 spirv::ElementwiseOpPattern<arith::SubIOp, spirv::ISubOp>, in populateArithmeticToSPIRVPatterns()
861 spirv::ElementwiseOpPattern<arith::MulIOp, spirv::IMulOp>, in populateArithmeticToSPIRVPatterns()
862 spirv::ElementwiseOpPattern<arith::DivUIOp, spirv::UDivOp>, in populateArithmeticToSPIRVPatterns()
863 spirv::ElementwiseOpPattern<arith::DivSIOp, spirv::SDivOp>, in populateArithmeticToSPIRVPatterns()
864 spirv::ElementwiseOpPattern<arith::RemUIOp, spirv::UModOp>, in populateArithmeticToSPIRVPatterns()
873 spirv::ElementwiseOpPattern<arith::AddFOp, spirv::FAddOp>, in populateArithmeticToSPIRVPatterns()
874 spirv::ElementwiseOpPattern<arith::SubFOp, spirv::FSubOp>, in populateArithmeticToSPIRVPatterns()
875 spirv::ElementwiseOpPattern<arith::MulFOp, spirv::FMulOp>, in populateArithmeticToSPIRVPatterns()
876 spirv::ElementwiseOpPattern<arith::DivFOp, spirv::FDivOp>, in populateArithmeticToSPIRVPatterns()
[all …]
/llvm-project-15.0.7/mlir/lib/Conversion/SPIRVToLLVM/
H A DSPIRVToLLVM.cpp234 auto storeOp = cast<spirv::StoreOp>(op); in replaceWithLoadOrStore()
235 spirv::StoreOpAdaptor adaptor(operands); in replaceWithLoadOrStore()
737 case spirv::StorageClass::Input: in matchAndRewrite()
738 case spirv::StorageClass::Private: in matchAndRewrite()
739 case spirv::StorageClass::Output: in matchAndRewrite()
906 case spirv::MemoryAccess::Aligned: in matchAndRewrite()
907 case spirv::MemoryAccess::None: in matchAndRewrite()
1469 NotPattern<spirv::NotOp>, in populateSPIRVToLLVMConversionPatterns()
1512 ErasePattern<spirv::MergeOp>, in populateSPIRVToLLVMConversionPatterns()
1537 NotPattern<spirv::LogicalNotOp>, in populateSPIRVToLLVMConversionPatterns()
[all …]
/llvm-project-15.0.7/mlir/lib/Target/SPIRV/Serialization/
H A DSerializer.cpp71 namespace spirv { namespace
189 spirv::encodeStringLiteralInto(extName, spirv::stringifyExtension(ext)); in processExtension()
214 case spirv::Decoration::Binding: in processDecoration()
222 case spirv::Decoration::BuiltIn: in processDecoration()
234 case spirv::Decoration::Flat: in processDecoration()
695 spirv::Opcode opcode = spirv::Opcode::OpConstantComposite; in prepareArrayConstant()
740 spirv::Opcode opcode = spirv::Opcode::OpConstantComposite; in prepareDenseElementsConstant()
811 isSpec ? spirv::Opcode::OpSpecConstant : spirv::Opcode::OpConstant; in prepareConstantInt()
882 isSpec ? spirv::Opcode::OpSpecConstant : spirv::Opcode::OpConstant; in prepareConstantFp()
959 return isa<spirv::LoopOp, spirv::SelectionOp>(op); in processBlock()
[all …]
H A DSerializeOps.cpp58 namespace spirv { namespace
278 auto attr = op->getAttr(spirv::attributeName<spirv::StorageClass>()); in processVariableOp()
283 elidedAttrs.push_back(spirv::attributeName<spirv::StorageClass>()); in processVariableOp()
453 functionBody, spirv::Opcode::OpLoopMerge, in processLoopOp()
484 spirv::BranchConditionalOp condBranchOp) { in processBranchConditionalOp()
536 Serializer::processOp<spirv::EntryPointOp>(spirv::EntryPointOp op) { in processOp()
570 Serializer::processOp<spirv::ControlBarrierOp>(spirv::ControlBarrierOp op) { in processOp()
591 Serializer::processOp<spirv::ExecutionModeOp>(spirv::ExecutionModeOp op) { in processOp()
620 Serializer::processOp<spirv::MemoryBarrierOp>(spirv::MemoryBarrierOp op) { in processOp()
639 Serializer::processOp<spirv::FunctionCallOp>(spirv::FunctionCallOp op) { in processOp()
[all …]
/llvm-project-15.0.7/mlir/lib/Conversion/MemRefToSPIRV/
H A DMemRefToSPIRV.cpp119 Optional<spirv::StorageClass> storageClass = in getAtomicOpScope()
125 case spirv::StorageClass::StorageBuffer: in getAtomicOpScope()
126 return spirv::Scope::Device; in getAtomicOpScope()
127 case spirv::StorageClass::Workgroup: in getAtomicOpScope()
128 return spirv::Scope::Workgroup; in getAtomicOpScope()
280 spirv::GlobalVariableOp varOp; in matchAndRewrite()
326 spirv::AccessChainOp accessChainOp = in matchAndRewrite()
370 spirv::attributeName<spirv::MemoryAccess>()), in matchAndRewrite()
419 auto loadPtr = spirv::getElementPtr( in matchAndRewrite()
439 spirv::AccessChainOp accessChainOp = in matchAndRewrite()
[all …]
/llvm-project-15.0.7/mlir/lib/Dialect/SPIRV/Utils/
H A DLayoutUtils.cpp20 spirv::StructType
27 spirv::StructType
28 VulkanLayoutUtils::decorateType(spirv::StructType structType, in decorateType()
36 SmallVector<spirv::StructType::OffsetInfo, 4> offsetInfo; in decorateType()
82 if (type.isa<spirv::ScalarType>()) { in decorateType()
90 if (auto arrayType = type.dyn_cast<spirv::ArrayType>()) in decorateType()
160 auto ptrType = type.dyn_cast<spirv::PointerType>(); in isLegalType()
172 case spirv::StorageClass::Uniform: in isLegalType()
173 case spirv::StorageClass::StorageBuffer: in isLegalType()
174 case spirv::StorageClass::PushConstant: in isLegalType()
[all …]
/llvm-project-15.0.7/mlir/test/lib/Dialect/SPIRV/
H A DTestAvailability.cpp53 os << spirv::stringifyVersion(*minVersion) << "\n"; in runOnOperation()
62 os << spirv::stringifyVersion(*maxVersion) << "\n"; in runOnOperation()
72 os << spirv::stringifyExtension(ext); in runOnOperation()
84 os << spirv::stringifyCapability(cap); in runOnOperation()
156 .cast<spirv::TargetEnvAttr>(); in runOnOperation()
187 op, value.getType(), ptr, spirv::Scope::Workgroup, in matchAndRewrite()
188 spirv::MemorySemantics::AcquireRelease | in matchAndRewrite()
189 spirv::MemorySemantics::AtomicCounterMemory, in matchAndRewrite()
203 rewriter.replaceOpWithNewOp<spirv::BitReverseOp>( in matchAndRewrite()
228 rewriter.replaceOpWithNewOp<spirv::ModuleOp>( in matchAndRewrite()
[all …]
/llvm-project-15.0.7/mlir/include/mlir/Dialect/SPIRV/Transforms/
H A DPasses.td15 : Pass<"decorate-spirv-composite-type-layout", "ModuleOp"> {
17 let constructor = "mlir::spirv::createDecorateSPIRVCompositeTypeLayoutPass()";
20 def SPIRVCanonicalizeGL : Pass<"spirv-canonicalize-gl", ""> {
22 let constructor = "mlir::spirv::createCanonicalizeGLPass()";
25 def SPIRVLowerABIAttributes : Pass<"spirv-lower-abi-attrs", "spirv::ModuleOp"> {
27 let constructor = "mlir::spirv::createLowerABIAttributesPass()";
30 def SPIRVRewriteInsertsPass : Pass<"spirv-rewrite-inserts", "spirv::ModuleOp"> {
33 let constructor = "mlir::spirv::createRewriteInsertsPass()";
37 : Pass<"spirv-unify-aliased-resource", "spirv::ModuleOp"> {
40 let constructor = "mlir::spirv::createUnifyAliasedResourcePass()";
[all …]
/llvm-project-15.0.7/mlir/lib/Conversion/SCFToSPIRV/
H A DSCFToSPIRV.cpp140 spirv::PointerType::get(convertedType, spirv::StorageClass::Function); in replaceSCFOutputValue()
142 auto alloc = rewriter.create<spirv::VariableOp>( in replaceSCFOutputValue()
170 auto loopOp = rewriter.create<spirv::LoopOp>(loc, spirv::LoopControl::None); in matchAndRewrite()
212 auto cmpOp = rewriter.create<spirv::SLessThanOp>( in matchAndRewrite()
215 rewriter.create<spirv::BranchConditionalOp>( in matchAndRewrite()
253 rewriter.create<spirv::SelectionOp>(loc, spirv::SelectionControl::None); in matchAndRewrite()
256 rewriter.create<spirv::MergeOp>(loc); in matchAndRewrite()
266 rewriter.create<spirv::BranchOp>(loc, mergeBlock); in matchAndRewrite()
342 auto loopOp = rewriter.create<spirv::LoopOp>(loc, spirv::LoopControl::None); in matchAndRewrite()
395 spirv::PointerType::get(res.getType(), spirv::StorageClass::Function); in matchAndRewrite()
[all …]

12345678