[Lldb-commits] [PATCH] D55038: [Reproducers] Change how reproducers are initialized.
Jonas Devlieghere via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Wed Nov 28 17:08:16 PST 2018
JDevlieghere created this revision.
JDevlieghere added reviewers: jingham, aprantl, sgraenitz, labath.
JDevlieghere added a project: LLDB.
Herald added subscribers: teemperor, abidh, mgorny.
This patch changes the way the reproducer is initialized. Rather than making changes at run time we now do everything at initialization time. To make this happen we had to introduce initializer options and their SB variant. This allows us to tell the initializer that we're running in reproducer capture/replay mode.
Because of this change we also had to alter our testing strategy. We cannot reinitialize LLDB when using the dotest infrastructure. Instead we use lit and invoke two instances of the driver.
Another consequence is that we can no longer enable capture or replay through commands. This was bound to go away form the beginning, but I had something in mind where you could enable/disable specific providers. However this seems like it adds very little value right now so I just removed the corresponding commands. This also means you now have to control this through the driver, for which I replaced `--reproducer` with `--capture` and `--replay`.
Repository:
rLLDB LLDB
https://reviews.llvm.org/D55038
Files:
include/lldb/API/SBDebugger.h
include/lldb/API/SBDefines.h
include/lldb/API/SBFileSpec.h
include/lldb/API/SBInitializerOptions.h
include/lldb/Core/Debugger.h
include/lldb/Host/HostInfoBase.h
include/lldb/Initialization/SystemInitializer.h
include/lldb/Initialization/SystemInitializerCommon.h
include/lldb/Initialization/SystemLifetimeManager.h
include/lldb/Utility/Reproducer.h
lit/Reproducer/Inputs/GDBRemoteCapture.in
lit/Reproducer/Inputs/GDBRemoteReplay.in
lit/Reproducer/Inputs/simple.c
lit/Reproducer/TestGDBRemoteRepro.test
packages/Python/lldbsuite/test/functionalities/reproducer/gdb-remote/Makefile
packages/Python/lldbsuite/test/functionalities/reproducer/gdb-remote/TestGdbRemoteReproducer.py
packages/Python/lldbsuite/test/functionalities/reproducer/gdb-remote/main.c
scripts/interface/SBDebugger.i
scripts/interface/SBInitializerOptions.i
scripts/lldb.swig
source/API/CMakeLists.txt
source/API/SBDebugger.cpp
source/API/SBInitializerOptions.cpp
source/API/SystemInitializerFull.cpp
source/API/SystemInitializerFull.h
source/Commands/CommandObjectReproducer.cpp
source/Core/Debugger.cpp
source/Host/common/HostInfoBase.cpp
source/Initialization/SystemInitializerCommon.cpp
source/Initialization/SystemLifetimeManager.cpp
source/Utility/Reproducer.cpp
tools/driver/CMakeLists.txt
tools/driver/Driver.cpp
tools/driver/Options.td
tools/lldb-server/SystemInitializerLLGS.cpp
tools/lldb-server/SystemInitializerLLGS.h
tools/lldb-server/lldb-server.cpp
tools/lldb-test/SystemInitializerTest.cpp
tools/lldb-test/SystemInitializerTest.h
tools/lldb-test/lldb-test.cpp
unittests/Utility/ReproducerTest.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D55038.175792.patch
Type: text/x-patch
Size: 41358 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20181129/e2e1661e/attachment-0001.bin>
More information about the lldb-commits
mailing list