This patch allows ThreadSanitizer (Tsan) to verify OpenMP programs. It means that no false positive will be reported by Tsan when verifying an OpenMP programs.
This patch introduces annotations within the OpenMP runtime module to provide information about thread synchronization to the Tsan runtime.
In order to enable the Tsan support when building the runtime, you must enable the TSAN_SUPPORT option with the following environment variable:
-DLIBOMP_TSAN_SUPPORT=TRUE
The building will generate a library called libomp_tsan.so.
I guess this is not something that we want, so probably it should be removed, but I will leave it for the first review.