diff options
author | Francis Ricci <francisjricci@gmail.com> | 2017-09-29 20:55:06 +0000 |
---|---|---|
committer | Francis Ricci <francisjricci@gmail.com> | 2017-09-29 20:55:06 +0000 |
commit | c9b5e685aed2bf2bd2faa0566b90196f6e9eb7ba (patch) | |
tree | 7a718284bce733bc36670e7d3359dcd3caa3d11b /lib/sanitizer_common/sanitizer_linux_libcdep.cc | |
parent | faf993b377cb1212143ea0659c178f0408582351 (diff) |
Move LoadedModule list to a NoCtor vector and initialize on demand.
Unreverting this patch because llvm-clang-lld-x86_64-debian-fast started
passing again before the revert hit. Must've been just a flake.
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@314556 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/sanitizer_common/sanitizer_linux_libcdep.cc')
-rw-r--r-- | lib/sanitizer_common/sanitizer_linux_libcdep.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/sanitizer_common/sanitizer_linux_libcdep.cc b/lib/sanitizer_common/sanitizer_linux_libcdep.cc index da715dc6c..0f420875d 100644 --- a/lib/sanitizer_common/sanitizer_linux_libcdep.cc +++ b/lib/sanitizer_common/sanitizer_linux_libcdep.cc @@ -424,7 +424,7 @@ typedef ElfW(Phdr) Elf_Phdr; # endif struct DlIteratePhdrData { - InternalMmapVector<LoadedModule> *modules; + InternalMmapVectorNoCtor<LoadedModule> *modules; bool first; }; @@ -473,13 +473,13 @@ static bool requiresProcmaps() { #endif } -static void procmapsInit(InternalMmapVector<LoadedModule> *modules) { +static void procmapsInit(InternalMmapVectorNoCtor<LoadedModule> *modules) { MemoryMappingLayout memory_mapping(false); memory_mapping.DumpListOfModules(modules); } void ListOfModules::init() { - clear(); + clearOrInit(); if (requiresProcmaps()) { procmapsInit(&modules_); } else { |