[OpenMP][libomp] Cleanup version script and exported symbols
authorJonathan Peyton <jonathan.l.peyton@intel.com>
Tue, 6 Dec 2022 14:31:31 +0000 (08:31 -0600)
committerJonathan Peyton <jonathan.l.peyton@intel.com>
Tue, 6 Dec 2022 14:33:31 +0000 (08:33 -0600)
commitfef73b81e9a742c4db61ded747c801e3717dae78
tree19beb7ec32be0c2dc9cd1d3aab76839fe560dd29
parentd3628823c96f2d29ef8cea28f3b1b60ec670f318
[OpenMP][libomp] Cleanup version script and exported symbols

This patch fixes issues seen once https://reviews.llvm.org/D135402 is applied.

The exports_so.txt file attempts to export functions which may not exist
depending on which features are enabled/disabled in the OpenMP
runtime library. There are not many of these so exporting dummy
symbols is feasible.

* Export dummy __kmp_reset_stats() function when stats is disabled.
* Export dummy debugging data when USE_DEBUGGER is disabled
* Export dummy __kmp_itt_[fini|init]_ittlib() functions
   when ITT Notify is disabled
* Export dummy __kmp_reap_monitor() function when KMP_USE_MONITOR
  is disabled
* Remove __kmp_launch_monitor and __kmp_launch_worker from being exported.
  They have been static symbols since library inception.

Fixes: https://github.com/llvm/llvm-project/issues/58858
Differential Revision: https://reviews.llvm.org/D138049
openmp/runtime/src/exports_so.txt
openmp/runtime/src/kmp_runtime.cpp
openmp/runtime/src/z_Linux_util.cpp