[英]Compiler design frontend calculation in the main function for Clang and Zig
主 zig 编译器从Compilation.performAllTheWork执行。 这个 function 循环遍历所有编译项并编译它们。 ( main() → buildOutputType → updateModule → Compilation.update → Compilation.performAllTheWork)
当从Compilation.updateStage1Module的工作队列中找到 stage1_module 项时,将调用 Stage1(zig 0.8.0 中的默认编译器,用 C++ 编写)。 大部分编译发生在codegen_build_object (从zig_stage1_build_object调用)
Stage2(用 Zig 编写的工作中更快的编译器)更紧密地集成到工作队列中,因为它支持增量编译并在工作队列切换的这些分支中调用。
Clang 从某个地方开始,可能在clang.lib.frontend.CompilerInvocation中?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.