Fix for PAPI_library_init, to correct problem with ordering init_components() vs. _papi_hwi_init_global_threads().
Branch: Tony_ICL/papi-fix-thread-init-for-tls:master
Branch: icl/papi:master
Merged
Merged pull request
Merged in master (pull request #131)
Description
This modifies PAPI_library_init() to initialize components in two classes, separated by the initialization of the papi thread structure. The first class is those that need no thread structure, currently everything but perf_event and perf_event_uncore. Following the init of the threading structure, we init the second class (perf_event and perf_event_uncore) that DOES need the thread structure to successfully init_component(). This required a change to _papi_hwi_init_global(), to add an argument to distinguish which class it should initialize.