gcc的dump file.c.135r.jump中的静态方法在哪里

时间:2010-03-06 16:39:45

标签: c++ c gcc compiler-construction

当我使用参数-fdump-rtl-jump运行gcc时,我得到一个名为file.c.135r.jump的转储文件,在那里我可以读取有关我的C或C ++文件中方法的中间表示的一些信息。

我刚刚发现,此转储文件中缺少项目的静态方法。你知道吗,为什么他们在那个表示中缺失,如果有可能在这个文件中包含静态方法呢。

更新(一些其他信息):
我在这里使用的测试程序是Hybrid OpenMP MPI Benchmark

UPDATE2:
我刚刚用串行应用程序重现了这个问题,所以它与并行部分无关。

2 个答案:

答案 0 :(得分:4)

我的猜测是静态方法是内联的,因为它们是静态的,所以一切都知道它们的调用,不会发出它们的外部代码。确认或拒绝此方法的一种方法是添加-fkeep-inline-functions gcc选项,然后它们应出现在转储中。

答案 1 :(得分:2)

它们没有丢失,这与类方法无关。我相信你只是不打电话给他们。