aboutsummaryrefslogtreecommitdiff
path: root/src/link/SpirV.zig
diff options
context:
space:
mode:
authorAli Cheraghi <alichraghi@proton.me>2025-08-09 13:27:04 +0330
committerAli Cheraghi <alichraghi@proton.me>2025-08-09 13:27:04 +0330
commitbed99e1ecd6c919f4c8a974e598302773db10b8a (patch)
treecec6a70f9b8ad74b0fa0eda5409e32093c460909 /src/link/SpirV.zig
parent0d0f09fb0ee60b5fa42f51732bde2a4db43453a8 (diff)
downloadzig-bed99e1ecd6c919f4c8a974e598302773db10b8a.tar.gz
zig-bed99e1ecd6c919f4c8a974e598302773db10b8a.zip
spirv: remove prune_unused ISel
Diffstat (limited to 'src/link/SpirV.zig')
-rw-r--r--src/link/SpirV.zig15
1 files changed, 4 insertions, 11 deletions
diff --git a/src/link/SpirV.zig b/src/link/SpirV.zig
index 8c42d75954..45adf96cbc 100644
--- a/src/link/SpirV.zig
+++ b/src/link/SpirV.zig
@@ -10,10 +10,11 @@ const Compilation = @import("../Compilation.zig");
const link = @import("../link.zig");
const Air = @import("../Air.zig");
const Type = @import("../Type.zig");
-const BinaryModule = @import("SpirV/BinaryModule.zig");
const CodeGen = @import("../codegen/spirv/CodeGen.zig");
const Module = @import("../codegen/spirv/Module.zig");
const trace = @import("../tracy.zig").trace;
+const BinaryModule = @import("SpirV/BinaryModule.zig");
+const lower_invocation_globals = @import("SpirV/lower_invocation_globals.zig");
const spec = @import("../codegen/spirv/spec.zig");
const Id = spec.Id;
@@ -279,7 +280,7 @@ pub fn flush(
const module = try linker.module.finalize(arena);
errdefer arena.free(module);
- const linked_module = linker.linkModule(arena, module, sub_prog_node) catch |err| switch (err) {
+ const linked_module = linkModule(arena, module, sub_prog_node) catch |err| switch (err) {
error.OutOfMemory => return error.OutOfMemory,
else => |other| return diags.fail("error while linking: {s}", .{@errorName(other)}),
};
@@ -288,18 +289,10 @@ pub fn flush(
return diags.fail("failed to write: {s}", .{@errorName(err)});
}
-fn linkModule(linker: *Linker, arena: Allocator, module: []Word, progress: std.Progress.Node) ![]Word {
- _ = linker;
-
- const lower_invocation_globals = @import("SpirV/lower_invocation_globals.zig");
- const prune_unused = @import("SpirV/prune_unused.zig");
-
+fn linkModule(arena: Allocator, module: []Word, progress: std.Progress.Node) ![]Word {
var parser = try BinaryModule.Parser.init(arena);
defer parser.deinit();
var binary = try parser.parse(module);
-
try lower_invocation_globals.run(&parser, &binary, progress);
- try prune_unused.run(&parser, &binary, progress);
-
return binary.finalize(arena);
}