1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
llvm-mirror/tools/dsymutil
Jonas Devlieghere b92270b149 [dsymutil] Force mmap'ing of binaries
After the recent refactoring that introduced parallel handling of
different object, the binary holder became unique per object file. This
defeats its optimization of caching archives, leading to an archive
being opened for every binary it contains. This is obviously unfortunate
and will need to be refactored soon.

Luckily in practice, the impact of this is limited as most files are
mmap'ed instead of memcopy'd. There's a caveat however: when the memory
buffer requires a null terminator and it's a multiple of the page size,
we allocate instead of mmap'ing. If this happens for a static archive,
we end up with N copies of it in memory, where N is the number of
objects in the archive, leading to exuberant memory usage. This provided
a stopgap solution to ensure that all the files it loads are mmap in
memory by removing the requirement for a terminating null byte.

Differential revision: https://reviews.llvm.org/D48397

llvm-svn: 335293
2018-06-21 21:37:53 +00:00
..
BinaryHolder.cpp [dsymutil] Force mmap'ing of binaries 2018-06-21 21:37:53 +00:00
BinaryHolder.h [dsymutil] Remove \brief from comments. NFC 2018-02-22 11:43:43 +00:00
CFBundle.cpp [dsymutil][NFC] Replace calls to CoreFoundation with LLVM equivalent. 2017-12-28 14:05:49 +00:00
CFBundle.h [dsymutil] Upstream getBundleInfo implementation 2017-11-30 10:25:28 +00:00
CMakeLists.txt Remove LLVM_INSTALL_CCTOOLS_SYMLINKS 2018-04-24 15:41:02 +00:00
DebugMap.cpp [Support] Add convenience functions to WithColor. NFC. 2018-04-14 21:36:42 +00:00
DebugMap.h [dsymutil] Upstream emitting of papertrail warnings. 2018-04-02 10:40:43 +00:00
dsymutil.cpp [ADT] Make escaping fn conform to coding guidelines 2018-05-31 17:01:42 +00:00
dsymutil.h [dsymutil] Apply recursion workaround for threading 2018-04-03 18:01:18 +00:00
DwarfLinker.cpp [DWARF] Improved error reporting for range lists. 2018-06-20 22:56:37 +00:00
LLVMBuild.txt [dsymutil] Rename llvm-dsymutil -> dsymutil 2018-03-18 11:38:41 +00:00
MachODebugMapParser.cpp [Support] Add convenience functions to WithColor. NFC. 2018-04-14 21:36:42 +00:00
MachOUtils.cpp Refactor ExecuteAndWait to take StringRefs. 2018-06-12 17:43:52 +00:00
MachOUtils.h [dsymutil] Fix typos and formatting. NFC. 2018-02-22 11:32:51 +00:00
NonRelocatableStringpool.cpp [tools] Change std::sort to llvm::sort in response to r327219 2018-04-01 21:24:53 +00:00
NonRelocatableStringpool.h [dsymutil] Move string pool into its own implementatino file. NFC. 2018-03-01 10:05:54 +00:00