diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2024-07-04 23:13:22 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-07-04 23:13:22 -0400 |
| commit | 0f8561d099e4d08be0a6e547dd88f21026504490 (patch) | |
| tree | 69bdcb7800608daed4a8908406623f3bab38f0e4 /src/codegen/spirv.zig | |
| parent | 790b8428a26457e7ed9ea20485b9d3085011b989 (diff) | |
| parent | 74346b0f79ca4bf67d61008030c7cc3565bff3f9 (diff) | |
| download | zig-0f8561d099e4d08be0a6e547dd88f21026504490.tar.gz zig-0f8561d099e4d08be0a6e547dd88f21026504490.zip | |
Merge pull request #20487 from ziglang/incremental-serialization
Zcu: extract serializable state from File
Diffstat (limited to 'src/codegen/spirv.zig')
| -rw-r--r-- | src/codegen/spirv.zig | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/src/codegen/spirv.zig b/src/codegen/spirv.zig index c56a5a799e..2fbe9097d6 100644 --- a/src/codegen/spirv.zig +++ b/src/codegen/spirv.zig @@ -188,19 +188,20 @@ pub const Object = struct { fn genDecl( self: *Object, - mod: *Module, + zcu: *Zcu, decl_index: InternPool.DeclIndex, air: Air, liveness: Liveness, ) !void { - const decl = mod.declPtr(decl_index); - const namespace = mod.namespacePtr(decl.src_namespace); - const structured_cfg = namespace.file_scope.mod.structured_cfg; + const gpa = self.gpa; + const decl = zcu.declPtr(decl_index); + const namespace = zcu.namespacePtr(decl.src_namespace); + const structured_cfg = namespace.fileScope(zcu).mod.structured_cfg; var decl_gen = DeclGen{ - .gpa = self.gpa, + .gpa = gpa, .object = self, - .module = mod, + .module = zcu, .spv = &self.spv, .decl_index = decl_index, .air = air, @@ -212,19 +213,19 @@ pub const Object = struct { false => .{ .unstructured = .{} }, }, .current_block_label = undefined, - .base_line = decl.navSrcLine(mod), + .base_line = decl.navSrcLine(zcu), }; defer decl_gen.deinit(); decl_gen.genDecl() catch |err| switch (err) { error.CodegenFail => { - try mod.failed_analysis.put(mod.gpa, InternPool.AnalUnit.wrap(.{ .decl = decl_index }), decl_gen.error_msg.?); + try zcu.failed_analysis.put(gpa, InternPool.AnalUnit.wrap(.{ .decl = decl_index }), decl_gen.error_msg.?); }, else => |other| { // There might be an error that happened *after* self.error_msg // was already allocated, so be sure to free it. if (decl_gen.error_msg) |error_msg| { - error_msg.deinit(mod.gpa); + error_msg.deinit(gpa); } return other; |
