From 98dd4f7847c0d50c3367a3bf12a80d5bf7b1fed2 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sun, 24 Dec 2023 21:51:11 -0700 Subject: [PATCH] frontend: skip astgen for builtin.zig since it's already done ahead of time and always unchanging --- src/Compilation.zig | 7 +++---- src/Module.zig | 2 ++ 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Compilation.zig b/src/Compilation.zig index c248685601..00d6ec3193 100644 --- a/src/Compilation.zig +++ b/src/Compilation.zig @@ -2131,11 +2131,10 @@ pub fn update(comp: *Compilation, main_progress_node: *std.Progress.Node) !void // Put a work item in for every known source file to detect if // it changed, and, if so, re-compute ZIR and then queue the job // to update it. - // We still want AstGen work items for stage1 so that we expose compile errors - // that are implemented in stage2 but not stage1. try comp.astgen_work_queue.ensureUnusedCapacity(module.import_table.count()); - for (module.import_table.values()) |value| { - comp.astgen_work_queue.writeItemAssumeCapacity(value); + for (module.import_table.values()) |file| { + if (file.mod.isBuiltin()) continue; + comp.astgen_work_queue.writeItemAssumeCapacity(file); } // Put a work item in for checking if any files used with `@embedFile` changed. diff --git a/src/Module.zig b/src/Module.zig index bf278fb9b5..9d5f4a69d2 100644 --- a/src/Module.zig +++ b/src/Module.zig @@ -2637,6 +2637,8 @@ comptime { } pub fn astGenFile(mod: *Module, file: *File) !void { + assert(!file.mod.isBuiltin()); + const tracy = trace(@src()); defer tracy.end();