首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检查LTO是否被执行?

如何检查LTO是否被执行?
EN

Stack Overflow用户
提问于 2018-06-26 17:21:16
回答 2查看 1.5K关注 0票数 4

对于gcc来说,这个answer告诉我们如何验证链路时间优化是如何执行的.对于clang,我看不到任何类似于.gnu.lto的条目。

更具体地说,我有一个二进制文件,我确信LTO应该有很大的好处,但我什么也没看到。我想知道cmake是否真的做了正确的事情。

有没有办法通过查看二进制文件或*.o文件来判断clang是否执行了LTO?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-06-29 14:06:27

一个选项是尝试在您的一个llvm-dis文件上运行.o。如果实际执行了LTO,则.o文件包含llvm,而llvm-dis将生成包含humain可读的llvm的.ll文件。否则,它将产生错误消息" error :无效的bitcode签名“。

票数 3
EN

Stack Overflow用户

发布于 2019-03-08 03:36:59

file实用程序将报告该文件为"LLVM“。LLVM/clang的LTO工具不生成"fat“对象文件,它只是IR。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51048414

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档