Clang:在编译PGO的覆盖范围时,我是否必须传递-O0

时间:2016-10-09 11:19:23

标签: clang llvm profiler pgo

所以我正在用clang 3.8编译一个大的C ++程序。 我想利用PGO(Profile引导优化)。我想在仪器中使用编译方式来生成配置文件。

目前我正在将-fprofile-instr-generate --coverage传递给编译器并将--coverage传递给链接器。

所以现在问题是传递-O0是否也是最佳的,因此编译器可以在下一次编译期间正确地映射来自二进制的调用。或者这是不必要的?

1 个答案:

答案 0 :(得分:1)

没必要。优化代码的覆盖率相同,否则会令人担忧;)

例如,clang coverage bot使用-O3 -fprofile-instr-generate -fcoverage-mapping

构建