[Sanitizer] Use SpinMutex for Symbolizer initialization (per dvyukov's suggestion)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193697 91177308-0d34-0410-b5e6-96231b3b80d8
[Sanitizer] Update comment in sanitizer_symbolizer.h

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193700 91177308-0d34-0410-b5e6-96231b3b80d8
[msandr] Add check-before-write optimization.

Replace blind store with check-before-store to avoid unnecessary memory stores.

Patch by Qin Zhao.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193703 91177308-0d34-0410-b5e6-96231b3b80d8