[asan] symbolize when possible, even if ASAN_SYMBOLIZER_PATH is not provided. On Linux this will use dl_iterate_phdr instead of /proc/self/maps, even if the symbolizer is not installed

llvm-svn: 182005
This commit is contained in:
Kostya Serebryany 2013-05-16 13:04:29 +00:00
parent 87c6ec7cfe
commit aaf7275677
2 changed files with 2 additions and 2 deletions

View File

@ -129,7 +129,7 @@ static void ParseFlagsFromString(Flags *f, const char *str) {
void InitializeFlags(Flags *f, const char *env) { void InitializeFlags(Flags *f, const char *env) {
CommonFlags *cf = common_flags(); CommonFlags *cf = common_flags();
cf->external_symbolizer_path = GetEnv("ASAN_SYMBOLIZER_PATH"); cf->external_symbolizer_path = GetEnv("ASAN_SYMBOLIZER_PATH");
cf->symbolize = (cf->external_symbolizer_path != 0); cf->symbolize = true;
cf->malloc_context_size = kDefaultMallocContextSize; cf->malloc_context_size = kDefaultMallocContextSize;
cf->fast_unwind_on_fatal = false; cf->fast_unwind_on_fatal = false;
cf->fast_unwind_on_malloc = true; cf->fast_unwind_on_malloc = true;

View File

@ -126,7 +126,7 @@ bool StartSymbolizerSubprocess(const char *path_to_symbolizer,
#if SANITIZER_ANDROID #if SANITIZER_ANDROID
uptr GetListOfModules(LoadedModule *modules, uptr max_modules, uptr GetListOfModules(LoadedModule *modules, uptr max_modules,
string_predicate_t filter) { string_predicate_t filter) {
UNIMPLEMENTED(); return 0;
} }
#else // SANITIZER_ANDROID #else // SANITIZER_ANDROID
typedef ElfW(Phdr) Elf_Phdr; typedef ElfW(Phdr) Elf_Phdr;