所以我正在用clang 3.8编译一个大的C ++程序。 我想利用PGO(Profile引导优化)。我想在仪器中使用编译方式来生成配置文件。
目前我正在将-fprofile-instr-generate --coverage
传递给编译器并将--coverage
传递给链接器。
所以现在问题是传递-O0
是否也是最佳的,因此编译器可以在下一次编译期间正确地映射来自二进制的调用。或者这是不必要的?
答案 0 :(得分:1)
没必要。优化代码的覆盖率相同,否则会令人担忧;)
例如,clang coverage bot使用-O3 -fprofile-instr-generate -fcoverage-mapping