[Lldb-commits] [PATCH] D73018: [lldb] Add SystemInitializerAllPlugins and delete copy-pasted Init code in SystemInitializerFull and SystemInitializerTest

Raphael Isemann via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Mon Jan 20 01:03:00 PST 2020


teemperor created this revision.
teemperor added reviewers: labath, JDevlieghere.
Herald added subscribers: lldb-commits, s.egerton, abidh, simoncook, fedor.sergeev, aheejin, krytarowski, mgorny, dschuff.
Herald added a project: LLDB.
teemperor edited the summary of this revision.

SystemInitializerFull and SystemInitializerTest currently have copy-pasted content that is constantly going out of sync as people
only update one of them when they add a new subsystem.

This adds a SystemInitializerAllPlugins that initialises all the plugin subsystems which is the shared code between these
two initialisers (The "full" initializer also initialises the interpreters and JIT on top of that). This gets rid of all the copy-pasted
code.

The "AllPlugins" is a bit of a misnomer at the moment as we still initialise the Debugger which isn't technically a plugin.

I had to restructure the CMake code in the Initializer subfolder into two subfolders as we would otherwise have to work around
LLVM's 'unknown source file' CMake check.


Repository:
  rLLDB LLDB

https://reviews.llvm.org/D73018

Files:
  lldb/include/lldb/Initialization/SystemInitializerAllPlugins.h
  lldb/source/API/CMakeLists.txt
  lldb/source/API/SystemInitializerFull.cpp
  lldb/source/API/SystemInitializerFull.h
  lldb/source/Initialization/AllPlugins/CMakeLists.txt
  lldb/source/Initialization/AllPlugins/SystemInitializerAllPlugins.cpp
  lldb/source/Initialization/CMakeLists.txt
  lldb/source/Initialization/Common/CMakeLists.txt
  lldb/source/Initialization/Common/SystemInitializer.cpp
  lldb/source/Initialization/Common/SystemInitializerCommon.cpp
  lldb/source/Initialization/Common/SystemLifetimeManager.cpp
  lldb/source/Initialization/SystemInitializer.cpp
  lldb/source/Initialization/SystemInitializerCommon.cpp
  lldb/source/Initialization/SystemLifetimeManager.cpp
  lldb/tools/lldb-test/CMakeLists.txt
  lldb/tools/lldb-test/SystemInitializerTest.cpp
  lldb/tools/lldb-test/SystemInitializerTest.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D73018.239032.patch
Type: text/x-patch
Size: 52715 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20200120/6c3a3b7e/attachment-0001.bin>


More information about the lldb-commits mailing list