I am trying to find the exact number of function calls to one of my implemented C function inside my code. The project includes several C files. What is the easiest solution to figure out how many times a function is called during the execution of the program? Specifically, I am interested to know how many times a specific function calls another function. For instance I have a C file like:
//file1.c
int main(){
foo1();
return 0;
}
and other C files like:
//file2.c
void  foo1(){
    foo2();
    ...
    foo2();
}
and
//file3.c
void foo2(){
    foo3();
    foo3();
    foo3();
}
Now I have my final executable a.out and want to know how many times foo3() is called inside foo1(). 
  BTW, I am compiling and running my project on Linux.
 
     
     
     
     
    