From 71ac82ecb028605545b67eaa50b34f4e2494de44 Mon Sep 17 00:00:00 2001 From: Robin Voetter Date: Tue, 19 Jan 2021 01:29:01 +0100 Subject: SPIR-V: Make emitting binary more efficient --- src/codegen/spirv.zig | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/codegen/spirv.zig') diff --git a/src/codegen/spirv.zig b/src/codegen/spirv.zig index f0ebd49e1d..7e41913625 100644 --- a/src/codegen/spirv.zig +++ b/src/codegen/spirv.zig @@ -19,4 +19,10 @@ pub const SPIRVModule = struct { pub fn genDecl(self: SPIRVModule, id: u32, code: *std.ArrayList(u32), decl: *Decl) !void { } + + pub fn writeInstruction(code: *std.ArrayList(u32), instr: spec.Opcode, args: []const u32) !void { + const word_count = @intCast(u32, args.len + 1); + try code.append((word_count << 16) | @enumToInt(instr)); + try code.appendSlice(args); + } }; -- cgit v1.2.3