aboutsummaryrefslogtreecommitdiff
path: root/src/codegen/spirv/Module.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/codegen/spirv/Module.zig')
-rw-r--r--src/codegen/spirv/Module.zig9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/codegen/spirv/Module.zig b/src/codegen/spirv/Module.zig
index 803276d78c..ff7ae29993 100644
--- a/src/codegen/spirv/Module.zig
+++ b/src/codegen/spirv/Module.zig
@@ -556,9 +556,16 @@ fn decorateStruct(self: *Module, target: IdRef, info: *const Type.Payload.Struct
}
}
+pub fn changePtrStorageClass(self: *Module, ptr_ty_ref: Type.Ref, new_storage_class: spec.StorageClass) !Type.Ref {
+ const payload = try self.arena.create(Type.Payload.Pointer);
+ payload.* = self.typeRefType(ptr_ty_ref).payload(.pointer).*;
+ payload.storage_class = new_storage_class;
+ return try self.resolveType(Type.initPayload(&payload.base));
+}
+
pub fn emitConstant(
self: *Module,
- ty_id: spec.IdRef,
+ ty_id: IdRef,
result_id: IdRef,
value: spec.LiteralContextDependentNumber,
) !void {