如何在callgrind中收集用户功能的信息?

时间:2019-01-07 20:09:25

标签: valgrind callgrind

我使用以下程序main.c

int f2(int i) { return i + 2; }
int f1(int i) { return f2(2) + i + 1; }
int f0(int i) { return f1(1) + f2(2); }
int pointed(int i) { return i; }
int not_called(int i) { return 0; }

int main(int argc, char **argv) {
  f0(1);
  f1(1);
  int (*f)(int);
  f = pointed;
  if (argc == 1)
    f(1);
  if (argc == 2)
    not_called(1);
  return 0;
}

当我检查结果时,没有得到f0的用户定义功能的信息。如何使callgrind生成用户定义函数的信息。

$ gcc -g -Wall -pedantic -o main.exe main.c
$ valgrind --tool=callgrind --callgrind-out-file=/dev/stdout ./main.exe | gprof2dot -n0 -e0 -f callgrind

0 个答案:

没有答案