llvm-capstone/lldb/unittests
Jonas Devlieghere ac25e8628c [lldb] Deal gracefully with concurrency in the API instrumentation.
Prevent lldb from crashing when multiple threads are concurrently
accessing the SB API with reproducer capture enabled.

The API instrumentation records both the input arguments and the return
value, but it cannot block for the duration of the API call. Therefore
we introduce a sequence number that allows to to correlate the function
with its result and add locking to ensure those two parts are emitted
atomically.

Using the sequence number, we can detect situations where the return
value does not succeed the function call, in which case we print an
error saying that concurrency is not (currently) supported. In the
future we might attempt to be smarter and read ahead until we've found
the return value matching the current call.

Differential revision: https://reviews.llvm.org/D92820
2020-12-10 09:37:49 -08:00
..
API [lldb] Get rid of helper CMake variables for Python 2020-08-17 08:47:52 -07:00
Breakpoint [lldb][NFC] Fix all formatting errors in .cpp file headers 2020-01-24 08:52:55 +01:00
Core [lldb/Module] Allow for the creation of memory-only modules 2020-07-14 08:45:44 -07:00
DataFormatter Reland [lldb] Unify type name matching in FormattersContainer II 2020-07-23 18:17:42 +02:00
debugserver [lldb] Fix -Wformat warning in debugserver unit test 2020-12-08 20:57:51 -08:00
Disassembler [lldb/Plugins] Rename lldbPluginDisassemblerLLVM (NFC) 2020-02-17 19:14:01 -08:00
Editline [lldb] Modernize PseudoTerminal::OpenSecondary 2020-10-16 15:22:55 +02:00
Expression [lldb/DWARF] Fix sizes of DW_OP_const[1248][us] and DW_OP_litN results 2020-11-10 16:10:08 +01:00
Host [lldb] Modernize PseudoTerminal::OpenSecondary 2020-10-16 15:22:55 +02:00
Instruction Fix UB in EmulateInstructionARM64.cpp 2020-06-01 18:11:50 -07:00
Interpreter [lldb] Make TestOptionValueFileColonLine work on Windows 2020-07-20 23:15:03 -07:00
Language [lldb] Reactivate Objective-C++ plugin 2020-06-19 19:16:46 +02:00
ObjectFile [lldb/ObjectFileMachO] Fetch shared cache images from our own shared cache 2020-07-16 10:37:37 -07:00
Platform Factor out common code from the iPhone/AppleTV/WatchOS simulator platform plugins. (NFC) 2020-08-06 16:36:58 -07:00
Process [lldb] Treat remote macOS debugging like any other remote darwin platform 2020-12-02 17:03:22 -08:00
ScriptInterpreter [LLDB/Lua] add support for one-liner breakpoint callback 2020-11-30 14:12:26 +00:00
Signals [lldb][NFC] Fix all formatting errors in .cpp file headers 2020-01-24 08:52:55 +01:00
Symbol [lldb] Don't reject empty or unnamed template parameter packs 2020-12-02 10:50:41 +01:00
SymbolFile [lldb] Fix XcodeSDKModuleTests 2020-10-30 23:08:35 -07:00
Target [lldb] Store StackFrameRecognizers in the target instead of a global list 2020-07-17 09:26:27 +02:00
TestingSupport Fix an embarrasing use-after-free from a895a446bc 2020-10-30 16:54:24 +01:00
Thread [lldb/Test] Fix unittest name 2020-06-12 14:01:14 -07:00
tools Make offset field optional in RegisterInfo packet for Arm64 2020-12-02 03:19:43 +05:00
UnwindAssembly Bug where insn-based unwind plans on arm64 could be wrong 2020-04-14 16:57:25 -07:00
Utility [lldb] Deal gracefully with concurrency in the API instrumentation. 2020-12-10 09:37:49 -08:00
CMakeLists.txt Reapply "Try enabling -Wsuggest-override again, using add_compile_options instead of add_compile_definitions for disabling it in unittests/ directories." 2020-07-22 17:50:19 -07:00
gtest_common.h [lldb] Update header guards to be consistent and compliant with LLVM (NFC) 2020-02-17 23:15:40 -08:00