zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 2f3cd175d3fc74be8318c07d943c8d5d067085b3 (tree)
parent 5a8acc91158e84d1478478cbf6aa510091708b93
Author: Andrew Kelley <andrew@ziglang.org>
Date:   Sun, 13 Jul 2025 12:53:46 -0700

compiler: raise the bar for backend contributions

Diffstat:
Msrc/target.zig | 12+++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/src/target.zig b/src/target.zig @@ -868,10 +868,16 @@ pub inline fn backendSupportsFeature(backend: std.builtin.CompilerBackend, compt else => false, }, .separate_thread => switch (backend) { + // Supports a separate thread but does not support N separate + // threads because they would all just be locking the same mutex to + // protect Builder. .stage2_llvm => false, - .stage2_c, .stage2_wasm, .stage2_x86_64 => true, - // TODO: most self-hosted backends should be able to support this without too much work. - else => false, + // Same problem. Frontend needs to allow this backend to run in the + // linker thread. + .stage2_spirv => false, + // Please do not make any more exceptions. Backends must support + // being run in a separate thread from now on. + else => true, }, }; }