在GCC的矢量化报告中获取符号化声明

时间:2018-09-22 21:38:59

标签: c++ gcc vectorization

我在编译过程中使用以下标志从g++获取矢量化报告:

-O3 -march=native -mtune=native -g -fopt-info-vec-all=<filename>

该报告帮助我在代码中加快了很多地方,但是现在我一直试图查找GCC认为可能是指针别名的语句。

生成的文件中的消息通常如下所示:

my_file.h:78:35: note: versioning for alias required: can't determine dependence between MEM[(const struct lookup_table *)this_61(D) + 512B].x0_ and MEM[(double &)_219]
 93709 consider run-time aliasing test between MEM[(const struct lookup_table *)this_61(D) + 512B].x0_ and MEM[(double &)_219]
...
my_file.h:78:35: note: bad data dependence.

虽然我知道lookup_table::x0_是什么,但是我正在努力在代码中找到_219。如果有一种方法可以对这样的名称进行拆解(或符号化),则将很有帮助。或者找到范围,在该范围内,GCC无法断言两个内存位置的独立性。

这可能吗?

0 个答案:

没有答案