在指令级别调用(依赖)图

时间:2011-07-22 23:42:40

标签: c profiling

我在想。我是否可以使用(在C程序上)在程序中的指令级别生成调用图的工具,考虑到这种指令对其他指令的依赖性?类似于“依赖图”的东西,但是在程序中的指令级别。我从新Cormen书的第27章中看到了这个想法(例如参见第778页),但如果已有工具,我甚至不会试图破解任何东西。 (如果需要,第27章在线here)。谢谢你的帮助。

2 个答案:

答案 0 :(得分:1)

如果您从Cormen / Rivest书的第778页的图27.2中获取灵感,那么它不是通常意义上的调用图。 它是一个调用树,其中节点是函数的执行实例,而不是函数本身。 它是程序特定执行的调用树,详细说明了每个实例中的变量信息,以及有关并行性的信息。

要获得这样一个完整的调用树,您将必须基本跟踪整个执行。使用不同的参数,您将获得不同的跟踪。

如果您的总体目标更明确,可能会更容易提供帮助。

答案 1 :(得分:1)

C的任何优化编译器都应该进行这种控制流分析。

另一方面,我不知道从中获取图表是多么容易(在独立的工具意义上)