Я использую следующую программу 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