[Lldb-commits] [PATCH] D61360: Initialization: remove ObjectContainer from Common

Saleem Abdulrasool via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Tue Apr 30 19:00:49 PDT 2019


compnerd created this revision.
compnerd added reviewers: davide, aprantl, clayborg.
Herald added subscribers: abidh, mgorny.
Herald added a project: LLDB.

This restructures the initialization path to move the ObjectContainer
initialization into the *full* initialization path.  This is not needed
for the lldb-server initialization path.  This helps strip off ~1MiB
from the binary.


Repository:
  rLLDB LLDB

https://reviews.llvm.org/D61360

Files:
  source/API/CMakeLists.txt
  source/API/SystemInitializerFull.cpp
  source/Initialization/CMakeLists.txt
  source/Initialization/SystemInitializerCommon.cpp


Index: source/Initialization/SystemInitializerCommon.cpp
===================================================================
--- source/Initialization/SystemInitializerCommon.cpp
+++ source/Initialization/SystemInitializerCommon.cpp
@@ -102,15 +102,10 @@
   process_gdb_remote::ProcessGDBRemoteLog::Initialize();
 
   // Initialize plug-ins
-  ObjectContainerBSDArchive::Initialize();
-
   EmulateInstructionARM::Initialize();
   EmulateInstructionMIPS::Initialize();
   EmulateInstructionMIPS64::Initialize();
 
-  // Apple/Darwin hosted plugins
-  ObjectContainerUniversalMachO::Initialize();
-
 #if defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)
   ProcessPOSIXLog::Initialize();
 #endif
@@ -124,14 +119,11 @@
 void SystemInitializerCommon::Terminate() {
   static Timer::Category func_cat(LLVM_PRETTY_FUNCTION);
   Timer scoped_timer(func_cat, LLVM_PRETTY_FUNCTION);
-  ObjectContainerBSDArchive::Terminate();
 
   EmulateInstructionARM::Terminate();
   EmulateInstructionMIPS::Terminate();
   EmulateInstructionMIPS64::Terminate();
 
-  ObjectContainerUniversalMachO::Terminate();
-
 #if defined(_MSC_VER)
   ProcessWindowsLog::Terminate();
 #endif
Index: source/Initialization/CMakeLists.txt
===================================================================
--- source/Initialization/CMakeLists.txt
+++ source/Initialization/CMakeLists.txt
@@ -17,8 +17,6 @@
     lldbPluginInstructionARM
     lldbPluginInstructionMIPS
     lldbPluginInstructionMIPS64
-    lldbPluginObjectContainerBSDArchive
-    lldbPluginObjectContainerMachOArchive
     lldbPluginProcessGDBRemote
     ${EXTRA_PLUGINS}
     ${LLDB_SYSTEM_LIBS}
Index: source/API/SystemInitializerFull.cpp
===================================================================
--- source/API/SystemInitializerFull.cpp
+++ source/API/SystemInitializerFull.cpp
@@ -129,6 +129,9 @@
   ObjectFileMachO::Initialize();
   ObjectFilePECOFF::Initialize();
 
+  ObjectContainerBSDArchive::Initialize();
+  ObjectContainerUniversalMachO::Initialize();
+
   ScriptInterpreterNone::Initialize();
 
 #ifndef LLDB_DISABLE_PYTHON
@@ -355,6 +358,9 @@
   PlatformDarwinKernel::Terminate();
 #endif
 
+  ObjectContainerBSDArchive::Terminate();
+  ObjectContainerUniversalMachO::Terminate();
+
   breakpad::ObjectFileBreakpad::Terminate();
   ObjectFileELF::Terminate();
   ObjectFileMachO::Terminate();
Index: source/API/CMakeLists.txt
===================================================================
--- source/API/CMakeLists.txt
+++ source/API/CMakeLists.txt
@@ -96,6 +96,8 @@
     lldbSymbol
     lldbTarget
     lldbUtility
+    lldbPluginObjectContainerBSDArchive
+    lldbPluginObjectContainerMachOArchive
     ${LLDB_ALL_PLUGINS}
   LINK_COMPONENTS
     Support


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D61360.197499.patch
Type: text/x-patch
Size: 2731 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20190501/51c7c5f1/attachment.bin>


More information about the lldb-commits mailing list