我想产生一个全面的调用图(完整的低级别调用到Linux,运行时,不少)。
我有静态编译“-fdump-RTL-展开”我的源文件并创建了RTL文件,这是我传给叫埃及PERL脚本(我相信是的Graphviz /点),并生成调用图的PDF文件。 这工作完全没有问题的。
除此之外,也有被制作成被越来越显示为内置的一些库调用。 我一直在寻找,看看是否有是调用图不被打印为,而是制作成库的实际调用的方法吗?
请让我知道,如果这个问题还不清楚。
http://i.imgur.com/sp58v.jpg
基本上,我试图避免产生调用图<内置>
有没有办法做到这一点 ?
-------- --------- CODE
#include <cilk/cilk.h>
#include <stdio.h>
#include <stdlib.h>
unsigned long int t0, t5;
unsigned int NOSPAWN_THRESHOLD = 32;
int fib_nospawn(int n)
{
if (n < 2)
return n;
else
{
int x = fib_nospawn(n-1);
int y = fib_nospawn(n-2);
return x + y;
}
}
// spawning fibonacci function
int fib(long int n)
{
long int x, y;
if (n < 2)
return n;
else if (n <= NOSPAWN_THRESHOLD)
{
x = fib_nospawn(n-1);
y = fib_nospawn(n-2);
return x + y;
}
else
{
x = cilk_spawn fib(n-1);
y = cilk_spawn fib(n-2);
cilk_sync;
return x + y;
}
}
int main(int argc, char *argv[])
{
int n;
long int result;
long int exec_time;
n = atoi(argv[1]);
NOSPAWN_THRESHOLD = atoi(argv[2]);
result = fib(n);
printf("%ld\n", result);
return 0;
}
我从源代码编译的Cilk的图书馆。