llvm-project/lldb/source/Symbol
Sean Callanan afc70ab3e2 [TypeSystem] Guard the global `ASTSourceMap` with a mutex
s_source_map in ClangExternalASTSourceCommon.cpp is unguarded 
and therefore can break in multithreaded conditions. This can 
cause crashes in particular if multiple targets are being set
up at once.

This patch wraps s_source_map in a function that ensures 
exclusivity, and makes every user of it use that function
instead.

<rdar://problem/33429774> lldb crashes after "resume_off"

Differential Revision: https://reviews.llvm.org/D35083

llvm-svn: 308993
2017-07-25 17:33:37 +00:00
..
ArmUnwindInfo.cpp Remove dependencies from Utility to Core and Target. 2017-02-14 19:06:07 +00:00
Block.cpp Move Log from Core -> Utility. 2017-03-03 20:56:28 +00:00
CMakeLists.txt Remove dead include from GoASTContext.cpp. 2017-03-22 19:24:17 +00:00
ClangASTContext.cpp [TypeSystem] Handle Clang AttributedTypes 2017-06-02 01:24:18 +00:00
ClangASTImporter.cpp Move Log from Core -> Utility. 2017-03-03 20:56:28 +00:00
ClangExternalASTSourceCallbacks.cpp Move Log from Core -> Utility. 2017-03-03 20:56:28 +00:00
ClangExternalASTSourceCommon.cpp [TypeSystem] Guard the global `ASTSourceMap` with a mutex 2017-07-25 17:33:37 +00:00
ClangUtil.cpp *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
CompactUnwindInfo.cpp Rename Error -> Status. 2017-05-12 04:51:55 +00:00
CompileUnit.cpp *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
CompilerDecl.cpp *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
CompilerDeclContext.cpp *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
CompilerType.cpp Rename Error -> Status. 2017-05-12 04:51:55 +00:00
DWARFCallFrameInfo.cpp Move Timer and TraceOptions from Core to Utility 2017-06-29 14:32:17 +00:00
DebugMacros.cpp *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
Declaration.cpp Move classes from Core -> Utility. 2017-02-02 21:39:50 +00:00
FuncUnwinders.cpp Add debug_frame section support 2017-06-27 11:16:26 +00:00
Function.cpp Fix the lldb_private::Function::GetDescription to print out the name and mangled name correctly. Previously this was getting the function type's name which was not correct. 2017-02-10 23:32:06 +00:00
GoASTContext.cpp Change UniqueCStringMap to use ConstString as the key 2017-05-02 10:17:30 +00:00
JavaASTContext.cpp Rename Error -> Status. 2017-05-12 04:51:55 +00:00
LineEntry.cpp *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
LineTable.cpp Fix a problem with line tables & .o files that start with code with no line table entries. 2017-03-20 19:19:03 +00:00
OCamlASTContext.cpp Isolate Target-specific functionality of DataExtractor. 2017-03-03 20:57:05 +00:00
ObjectFile.cpp Move Timer and TraceOptions from Core to Utility 2017-06-29 14:32:17 +00:00
Symbol.cpp Move classes from Core -> Utility. 2017-02-02 21:39:50 +00:00
SymbolContext.cpp [Expression parser] Look up module symbols before hunting globally 2017-05-16 23:46:13 +00:00
SymbolFile.cpp Provide a mechanism to do some pre-loading of symbols up front. 2017-04-28 00:51:06 +00:00
SymbolVendor.cpp Move classes from Core -> Utility. 2017-02-02 21:39:50 +00:00
Symtab.cpp Move Timer and TraceOptions from Core to Utility 2017-06-29 14:32:17 +00:00
Type.cpp Rename Error -> Status. 2017-05-12 04:51:55 +00:00
TypeList.cpp Improve Type::GetTypeScopeAndBasenameHelper and add unit tests 2017-01-10 11:13:59 +00:00
TypeMap.cpp Improve Type::GetTypeScopeAndBasenameHelper and add unit tests 2017-01-10 11:13:59 +00:00
TypeSystem.cpp [lldb] Fix typos in file headers 2016-11-26 05:23:44 +00:00
UnwindPlan.cpp Move Log from Core -> Utility. 2017-03-03 20:56:28 +00:00
UnwindTable.cpp [DWARFCallFrameInfo] Add Type enum to differentiate eh/debug_frame sections 2017-06-28 09:09:19 +00:00
Variable.cpp Change the ABI class to have a weak pointer to its Process; 2017-06-29 02:57:03 +00:00
VariableList.cpp Move classes from Core -> Utility. 2017-02-02 21:39:50 +00:00
VerifyDecl.cpp *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00