针对clang的LTO可以跨C和C ++方法进行优化

如果链接时优化(LTO)与clang一起使用 ,是否可以跨C和C ++语言边界优化代码?

例如,C函数可以内联到C ++调用者中,反之亦然吗?

AFAIK,是的,因为Clang生成LLVM中间表示,LTO发生在LLVM字节码上。

BTW任何类型的链接时间优化都发生在(编译代码的)某些中间表示上,而不仅仅发生在具有重定位的 机器代码上,如同在每个目标文件中保存的那样。 LTO,无论使用什么表示(GCC中的GIMPLE,Clang中的LLVM)都在添加和使用这些额外信息(这就是目标文件变得更胖的原因)。