指定标志时 gcc 是否定义了某种宏-fprofile-generate
?基本上,我想在分析时禁用多线程——它似乎有一种破坏 .gcda 文件的方法。
问问题
472 次
1 回答
3
这个未回答的问题已经很老了,但是我遇到了类似的问题,所以我希望这对某人有用。
-fprofile-correction
在使用多线程应用程序生成的配置文件信息时,您应该尝试启用GCC 编译器标志。根据与此标志相关的GCC 文档:
由于错过了计数器更新,使用多线程程序的检测二进制文件收集的配置文件可能不一致。当指定此选项时,GCC 使用启发式方法来纠正或消除这种不一致。默认情况下,当检测到不一致的配置文件时,GCC 会发出错误消息。
通过更正由于多线程导致的不一致的配置文件值,它将消除指示 .gcda 文件已损坏的错误。
于 2016-07-12T16:35:39.633 回答