8.3 代码结构

对 Go 而言,编译器主函数在清除了无效代码之后,便会进行 Inline 操作,入口代码如下:

// file: cmd/compile/internal/gc/main.go

func Main() {
    // 忽略之前代码

    // 内联操作
    if base.Flag.LowerL != 0 {
        inline.InlinePackage()
    }

    // 忽略之后代码
}

如果不想要内联操作,可以通过编译参数 -l 来禁止。Inline 的所有代码都在文件 cmd/compile/internal/inline/inl.go 中。

最后更新于