对整个程序代码进行的一种优化,是 LLVM 里在链接时进行跨模块间的优化。
LTO 属于 IPO(interprocedural optimization) 当中的一种优化,根据维基百科的解释,IPO 是优化代码的一系列编译器优化技术的集合,不同于其他的优化技术,IPO 聚焦于分析整个程序代码。
把一些 pass 的优化推迟到链接时再执行,从而使这些 pass 获得跨模块优化的能力。
Nov 04, 20241 min read
对整个程序代码进行的一种优化,是 LLVM 里在链接时进行跨模块间的优化。
LTO 属于 IPO(interprocedural optimization) 当中的一种优化,根据维基百科的解释,IPO 是优化代码的一系列编译器优化技术的集合,不同于其他的优化技术,IPO 聚焦于分析整个程序代码。
把一些 pass 的优化推迟到链接时再执行,从而使这些 pass 获得跨模块优化的能力。