commit 0e9bc3bf9b7c840a441b0d707ea06abefd0b5282 (tree)
parent 4da900cbb88bb5bb53246dc96a550d16f52b3481
Author: Motiejus Jakštys <motiejus@jakstys.lt>
Date: Tue, 3 Mar 2026 09:04:18 +0000
zig0_airgen_options: restrict what can be configured
1. `dev == .bootstrap` does not include wasm backend, no use.
2. different optimize modes _of the compiler_ (_not_ target) _should_
not emit a different AIR. Thus if we want to `zig build test-zig0
-Doptimize=ReleaseFast`, we most often mean to compile the test
executable under this mode, but not `air_gen`, which will only emit
the AIR for comparison.
Diffstat:
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/build.zig b/build.zig
@@ -733,7 +733,7 @@ pub fn build(b: *std.Build) !void {
zig0_airgen_options.addOption(bool, "llvm_has_arc", false);
zig0_airgen_options.addOption(bool, "llvm_has_xtensa", false);
zig0_airgen_options.addOption(bool, "debug_gpa", debug_gpa);
- zig0_airgen_options.addOption(DevEnv, "dev", dev_mode);
+ zig0_airgen_options.addOption(DevEnv, "dev", .full);
zig0_airgen_options.addOption(ValueInterpretMode, "value_interpret_mode", value_interpret_mode);
zig0_airgen_options.addOption([:0]const u8, "version", try b.allocator.dupeZ(u8, "0.15.2-zig0-dev"));
zig0_airgen_options.addOption(std.SemanticVersion, "semver", try std.SemanticVersion.parse("0.15.2-zig0-dev"));
@@ -746,7 +746,9 @@ pub fn build(b: *std.Build) !void {
zig0_airgen_options.addOption(u32, "tracy_callstack_depth", tracy_callstack_depth);
zig0_airgen_options.addOption(bool, "value_tracing", value_tracing);
- const air_gen_result = addAirGen(b, zig0_airgen_options, optimize);
+ // ReleaseFast, because we trust compiler will emit the correct AIR
+ // under all modes.
+ const air_gen_result = addAirGen(b, zig0_airgen_options, .ReleaseFast);
const prepare_zig0 = b.step("prepare-zig0", "Generate pre-computed AIR files for zig0 tests");
prepare_zig0.dependOn(air_gen_result.step);