From: Alexey Samsonov Date: Tue, 26 Feb 2013 13:40:51 +0000 (+0000) Subject: [Sanitizer] Don't die if external symbolizer is used on Mac, where it's not implement... X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=086b940b1e51dc51da99e242f3bb28eba1c2bbc6;p=platform%2Fupstream%2Fllvm.git [Sanitizer] Don't die if external symbolizer is used on Mac, where it's not implemented yet llvm-svn: 176091 --- diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer.cc b/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer.cc index 02dfbc4..5609e91 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer.cc +++ b/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer.cc @@ -324,8 +324,8 @@ class Symbolizer { private: char *SendCommand(bool is_data, const char *module_name, uptr module_offset) { // First, try to use internal symbolizer. - if (internal_symbolizer_ == 0) { - internal_symbolizer_ = InternalSymbolizer::get(); + if (!IsSymbolizerAvailable()) { + return 0; } if (internal_symbolizer_) { return internal_symbolizer_->SendCommand(is_data, module_name, @@ -360,7 +360,8 @@ class Symbolizer { kMaxNumberOfModuleContexts * sizeof(LoadedModule))); CHECK(modules_); n_modules_ = GetListOfModules(modules_, kMaxNumberOfModuleContexts); - CHECK_GT(n_modules_, 0); + // FIXME: Return this check when GetListOfModules is implemented on Mac. + // CHECK_GT(n_modules_, 0); CHECK_LT(n_modules_, kMaxNumberOfModuleContexts); } for (uptr i = 0; i < n_modules_; i++) { diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_mac.cc b/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_mac.cc index 2399360..cd0d004 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_mac.cc +++ b/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_mac.cc @@ -23,7 +23,8 @@ bool StartSymbolizerSubprocess(const char *path_to_symbolizer, } uptr GetListOfModules(LoadedModule *modules, uptr max_modules) { - UNIMPLEMENTED(); + // FIXME: Actually implement this on Mac. + return 0; } } // namespace __sanitizer