WIP: Add workaround for tsan short lived fiber support.
Tsan does not cope well with rapidely destroyed/created fibers. As it is currently too much effort to fully investigate the tsan issue we work around it by caching the shourt lived fibers based on their stack base address. This allows us to use thread sanitizer for now.
Test
run_tests
compilation terminated.
make[2]: *** [app/invoke_parallel/CMakeFiles/invoke_parallel.dir/main.cpp.o] Error 1
app/invoke_parallel/CMakeFiles/invoke_parallel.dir/build.make:62: recipe for target 'app/invoke_parallel/CMakeFiles/invoke_parallel.dir/main.cpp.o' failed
make[1]: *** [app/invoke_parallel/CMakeFiles/invoke_parallel.dir/all] Error 2
CMakeFiles/Makefile2:450: recipe for target 'app/invoke_parallel/CMakeFiles/invoke_parallel.dir/all' failed
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
./ci_scripts/run_tests.sh: line 9: ./bin/tests: No such file or directory
ERROR: Job failed: exit code 1