1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 19:23:23 +01:00
llvm-mirror/tools/dsymutil
Jonas Devlieghere e226b57357 [dsymutil] Prevent non-determinism due to threading.
Before this patch, analyzeContext called getCanonicalDIEOffset(), for
which the result depends on the timings of the setCanonicalDIEOffset()
calls in the cloneLambda. This can lead to slightly different output
between runs due to threading.

To prevent this from happening, we now record the output debug info size
after importing the modules (before any concurrent processing takes
place). This value, named the ModulesEndOffset is used to compare the
canonical DIE offset against. If the value is greater than this offset,
the canonical DIE offset has been updated during cloning, and should
therefore not be considered for pruning.

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

llvm-svn: 341649
2018-09-07 10:29:22 +00:00
..
BinaryHolder.cpp [dsymutil] Rename conflicting declaration 2018-06-29 17:11:34 +00:00
BinaryHolder.h [dsymutil] Rename conflicting declaration 2018-06-29 17:11:34 +00:00
CFBundle.cpp [dsymutil][NFC] Replace calls to CoreFoundation with LLVM equivalent. 2017-12-28 14:05:49 +00:00
CFBundle.h Add header guards to some headers that are missing them 2018-09-03 16:22:05 +00:00
CMakeLists.txt [dsymutil] Move abstractions into separate files (NFC) 2018-06-27 16:13:40 +00:00
CompileUnit.cpp [dsymutil] Move abstractions into separate files (NFC) 2018-06-27 16:13:40 +00:00
CompileUnit.h Add header guards to some headers that are missing them 2018-09-03 16:22:05 +00:00
DebugMap.cpp [dsymutil] Make the CachedBinaryHolder the default 2018-06-29 16:51:52 +00:00
DebugMap.h [dsymutil] Move abstractions into separate files (NFC) 2018-06-27 16:13:40 +00:00
DeclContext.cpp [dsymutil] Move abstractions into separate files (NFC) 2018-06-27 16:13:40 +00:00
DeclContext.h Add header guards to some headers that are missing them 2018-09-03 16:22:05 +00:00
dsymutil.cpp [dsymutil] Simplify temporary file handling. 2018-07-29 14:56:15 +00:00
dsymutil.h [dsymutil] Make the CachedBinaryHolder the default 2018-06-29 16:51:52 +00:00
DwarfLinker.cpp [dsymutil] Prevent non-determinism due to threading. 2018-09-07 10:29:22 +00:00
DwarfLinker.h [dsymutil] Prevent non-determinism due to threading. 2018-09-07 10:29:22 +00:00
DwarfStreamer.cpp [DebugInfo] Reduce debug_str_offsets section size 2018-08-07 09:54:52 +00:00
DwarfStreamer.h Add header guards to some headers that are missing them 2018-09-03 16:22:05 +00:00
LinkUtils.h [dsymutil] Add support for generating DWARF5 accelerator tables. 2018-07-25 23:01:38 +00:00
LLVMBuild.txt [dsymutil] Rename llvm-dsymutil -> dsymutil 2018-03-18 11:38:41 +00:00
MachODebugMapParser.cpp [dsymutil] Make the CachedBinaryHolder the default 2018-06-29 16:51:52 +00:00
MachOUtils.cpp [DebugInfo] Reduce debug_str_offsets section size 2018-08-07 09:54:52 +00:00
MachOUtils.h [dsymutil] Simplify temporary file handling. 2018-07-29 14:56:15 +00:00
NonRelocatableStringpool.cpp [DebugInfo] Reduce debug_str_offsets section size 2018-08-07 09:54:52 +00:00
NonRelocatableStringpool.h [DebugInfo] Reduce debug_str_offsets section size 2018-08-07 09:54:52 +00:00