Threaded applications

The T/tstart and T/tstop functions respectively start and stop the counters independently on each thread. If two distinct threads use the same instID parameter, the output indicates multiple calls. However, the counts are accumulated.

The instID parameter is always a constant variable or integer. It cannot be an expression because the declarations in the libhpm.h, f_hpm.h, and f_hpm_i8.h header files that contain #define statements are evaluated during the compiler pre-processing phase, which permits the collection of line numbers and source file names.