gcc有薄lto吗?
Posted
技术标签:
【中文标题】gcc有薄lto吗?【英文标题】:Does gcc have thin lto? 【发布时间】:2020-11-22 13:10:58 【问题描述】:Clang 允许使用瘦 lto 来加快编译时间,同时仍然保留使用带有选项 -flto=thin
的 lto 的大部分优点。 gcc 有相当于 clang 的瘦 lto 吗?
【问题讨论】:
【参考方案1】:GCC 有一个相当于 Thin LTO:WHOle Program optimizeR (WHOPR)
WHOPR 是 GCC 的 LTO 功能的扩展。您可以使用 -fwhopr
启用它(添加到标准 LTO 选项中)。
这两个阶段是
WPA:执行一些全局优化和分区 IR 的串行部分 LTRANS:并行后端在每个分区中进行优化现在,在实践中,GCC WHOPR 需要比 Clang Thin LTO 更多的内存和时间,但最近这个数字一直在提高。
【讨论】:
我使用的是 gcc 11.2,我认为它不支持-fwhopr
确实,它已经不存在了。似乎-flto=n
应该非常相似,但并不完全确定。以上是关于gcc有薄lto吗?的主要内容,如果未能解决你的问题,请参考以下文章
24 GCC LTO - Link Time Optimization