Controlling Entry/Exit Hooks¶
The tiarmclang compiler tools do not support entry/exit hooks. However, tiarmclang does support an -finstrument-functions option, which inserts calls to __cyg_profile_func_enter() and __cyg_profile_func_exit() at the entry and exit of each function. This feature has not been adequately tested and may be problematic for C++ applications. For more information, please see “Migrating Entry/Exit Hooks” (future link) in the “Migration User Stories” chapter (future link).
armcl Option | tiarmclang Option |
---|---|
–entry_hook=<func> | -finstrument_functions |
The armcl compiler’s –entry_hook option allows you to specify the name of a function to be called on entry.
The tiarmclang compiler provides the capability to instrument functions via its -finstrument-functions option, inserting a call to __cyg_profile_func_enter() at the entry of each function defined in a compilation unit. While the tiarmclang compiler does not provide an option to allow you to name the entry function, the definition of __cyg_profile_func_enter() can be customized.
armcl Option | tiarmclang Option |
---|---|
–entry_parm=<none|name|address> | not supported |
When using entry hook functions with the armcl compiler, you can pass the name or the address of the calling function as an argument to the entry hook function.
The tiarmclang compiler does not support an analogous capability.
armcl Option | tiarmclang Option |
---|---|
–exit_hook=<func> | -finstrument_functions |
The armcl compiler’s –exit_hook option allows you to specify the name of a function to be called before exiting.
The tiarmclang compiler provides the capability to instrument functions via its -finstrument-functions option, inserting a call to __cyg_profile_func_exit() prior to exiting from each function defined in a compilation unit. While the tiarmclang compiler does not provide an option to allow you to name the entry function, the definition of __cyg_profile_func_exit() can be customized.
armcl Option | tiarmclang Option |
---|---|
–exit_parm=<none|name|address> | not supported |
When using exit hook functions with the armcl compiler, you can pass the name or the address of the calling function as an argument to the exit hook function.
The tiarmclang compiler does not support an analogous capability.
armcl Option | tiarmclang Option |
---|---|
–remove_hooks_when_inlining | not supported |
If the armcl compiler inlines a function, the –remove_hooks_when_inlining option can be used to remove entry/exit hook function calls from the inlined function.
The tiarmclang compiler does not provide an analogous option.