Developer Guide and Reference

ID 767251
Date 10/31/2024
Public
Document Table of Contents

finstrument-functions, Qinstrument-functions

Determines whether routine entry and exit points are instrumented.

Syntax

Linux:

-finstrument-functions

-fno-instrument-functions

Windows:

/Qinstrument-functions

/Qinstrument-functions-

Arguments

None

Default

-fno-instrument-functions
or /Qinstrument-functions-

Routine entry and exit points are not instrumented.

Description

This option determines whether routine entry and exit points are instrumented. It may increase execution time.

The following profiling functions are called with the address of the current routine and the address of where the routine was called (its "call site"):

  • This function is called upon routine entry:

    • void __cyg_profile_func_enter (void *this_fn,
      void *call_site);
  • This function is called upon routine exit:

    • void __cyg_profile_func_exit (void *this_fn,
      void *call_site);

These functions can be used to gather more information, such as profiling information or timing information. Note that it is the user's responsibility to provide these profiling functions.

If you specify -finstrument-functions (Linux*) or /Qinstrument-functions (Windows*), routine inlining is disabled. If you specify -fno-instrument-functions or /Qinstrument-functions-, inlining is not disabled.

This option is provided for compatibility with gcc.

IDE Equivalent

None

Alternate Options

None