source: umon/apps/common/cygprof.c @ 87db514

Last change on this file since 87db514 was 87db514, checked in by Amar Takhar <amar@…>, on 04/16/15 at 19:26:21

Initial commit of the umon repository.

Prior to this three changes were made:

  • Remove umon_ prefix from parent directories.
  • Collapse main/target/ into main/
  • Remove ports/template/flashtest.scr.ucon script.
  • Property mode set to 100644
File size: 808 bytes
Line 
1/* This file supports the GCC  option '-finstrument-functions' to
2 * insert per-function entry and exit calls...
3 * Every function that is recompiled with that option on will call
4 * __cyg_profile_func_enter() at the entrypoint and __cyg_profile_func_exit()
5 * at the exitpoint.
6 * This can be an extremely powerful capability for diagnosing various
7 * problems with system because it provides a trace of all functions
8 * executed.  The disadvantage is time and space (minor detail)!
9 */
10int cyg_prof_on;
11
12void
13__cyg_profile_func_enter (void *this_fn, void *call_site)
14{
15    if (cyg_prof_on) {
16        mon_memtrace("IN:  %x %x\n", this_fn, call_site);
17    }
18}
19
20void
21__cyg_profile_func_exit (void *this_fn, void *call_site)
22{
23    if (cyg_prof_on) {
24                mon_memtrace("OUT: %x %x\n", this_fn, call_site);
25    }
26}
Note: See TracBrowser for help on using the repository browser.