如果链接时优化 (LTO) 与clang,代码是否可以跨 C 和 C++ 语言边界进行优化?
例如,C 函数可以内联到 C++ 调用程序中,反之亦然吗?
AFAIK,是的,因为 Clang 生成 LLVM 中间表示,并且 LTO 发生在该 LLVM 字节码上。
顺便说一句,任何一种链接时间优化发生在一些人身上中间的(编译代码的)表示,而不仅仅是机器码 with 搬迁,如保留在每个目标文件。 LTO,无论使用什么表示形式(GCC 中的 GIMPLE,Clang 中的 LLVM)都会添加和使用此类额外信息(这就是目标文件变得更胖的原因)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)