diff options
author | Kuba Brecka <kuba.brecka@gmail.com> | 2016-05-06 10:23:10 +0000 |
---|---|---|
committer | Kuba Brecka <kuba.brecka@gmail.com> | 2016-05-06 10:23:10 +0000 |
commit | 451f260af27a6c67c21942f8c0b3ab025b797ad7 (patch) | |
tree | 1c57eaeaf83b73ebc7554840109a7ca102148b59 /lib | |
parent | ef6211fc976514001c798402868fdd8b7723d4e3 (diff) |
Revert r268716. This has caused test failures in MSan on Linux.
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@268723 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc | 26 |
1 files changed, 10 insertions, 16 deletions
diff --git a/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc b/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc index 2272f61a9..de1a979bc 100644 --- a/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc +++ b/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc @@ -63,20 +63,6 @@ const char *DemangleCXXABI(const char *name) { return name; } -// As of now, there are no headers for the Swift runtime. Once they are -// present, we will weakly link since we do not require Swift runtime to be -// linked. -typedef char *(*swift_demangle_ft)(const char *mangledName, - size_t mangledNameLength, char *outputBuffer, - size_t *outputBufferSize, uint32_t flags); -static swift_demangle_ft swift_demangle_f; - -// This must not happen lazily, because dlsym uses thread-local storage, which -// is not a good thing to do during symbolication. -static void InitializeSwiftDemangler() { - swift_demangle_f = (swift_demangle_ft)dlsym(RTLD_DEFAULT, "swift_demangle"); -} - // Attempts to demangle a Swift name. The demangler will return nullptr /// if a non-Swift name is passed in. const char *DemangleSwift(const char *name) { @@ -86,6 +72,16 @@ const char *DemangleSwift(const char *name) { return nullptr; } + // As of now, there are no headers for the Swift runtime. Once they are + // present, we will weakly link since we do not require Swift runtime to be + // linked. + typedef char *(*swift_demangle_ft)(const char *mangledName, + size_t mangledNameLength, + char *outputBuffer, + size_t *outputBufferSize, + uint32_t flags); + swift_demangle_ft swift_demangle_f = + (swift_demangle_ft) dlsym(RTLD_DEFAULT, "swift_demangle"); if (swift_demangle_f) return swift_demangle_f(name, internal_strlen(name), 0, 0, 0); @@ -483,8 +479,6 @@ static void ChooseSymbolizerTools(IntrusiveList<SymbolizerTool> *list, } Symbolizer *Symbolizer::PlatformInit() { - InitializeSwiftDemangler(); - IntrusiveList<SymbolizerTool> list; list.clear(); ChooseSymbolizerTools(&list, &symbolizer_allocator_); |