Since SPIR-V module has an optional name, this patch
makes a change to pass it to `ModuleOp` during conversion.
Reviewed By: ftynse
Differential Revision: https://reviews.llvm.org/D90904
matchAndRewrite(spirv::ModuleOp spvModuleOp, ArrayRef<Value> operands,
ConversionPatternRewriter &rewriter) const override {
- auto newModuleOp = rewriter.create<ModuleOp>(spvModuleOp.getLoc());
+ auto newModuleOp =
+ rewriter.create<ModuleOp>(spvModuleOp.getLoc(), spvModuleOp.getName());
rewriter.inlineRegionBefore(spvModuleOp.body(), newModuleOp.getBody());
// Remove the terminator block that was automatically added by builder
// CHECK: module
spv.module Logical GLSL450 {}
+// CHECK: module @foo
+spv.module @foo Logical GLSL450 {}
+
// CHECK: module
spv.module Logical GLSL450 requires #spv.vce<v1.0, [Shader], [SPV_KHR_16bit_storage]> {}