From d6c9bd509eafe6e087a3a58a727c021c6406f3e4 Mon Sep 17 00:00:00 2001 From: Robert Flack Date: Wed, 11 Mar 2015 20:35:05 +0000 Subject: [PATCH] Reduce the number of components initialized for LLGS further. In http://reviews.llvm.org/D7880 the initialization for LLGS was separated out so that LLGS could initialize only the components it needs to. This further reduces the set of components initialized for LLGS. Differential Revision: http://reviews.llvm.org/D8112 llvm-svn: 231964 --- lldb/source/lldb.cpp | 53 ++++++++++++++++++++++---------------------- 1 file changed, 27 insertions(+), 26 deletions(-) diff --git a/lldb/source/lldb.cpp b/lldb/source/lldb.cpp index af77902031fdd..8d822867c02d3 100644 --- a/lldb/source/lldb.cpp +++ b/lldb/source/lldb.cpp @@ -150,13 +150,6 @@ lldb_private::InitializeForLLGS () ObjectContainerBSDArchive::Initialize(); ObjectFileELF::Initialize(); - SymbolVendorELF::Initialize(); - SymbolFileDWARF::Initialize(); - SymbolFileSymtab::Initialize(); - UnwindAssemblyInstEmulation::Initialize(); - UnwindAssembly_x86::Initialize(); - EmulateInstructionARM::Initialize(); - EmulateInstructionARM64::Initialize(); ObjectFilePECOFF::Initialize(); DynamicLoaderPOSIXDYLD::Initialize(); PlatformFreeBSD::Initialize(); @@ -164,24 +157,18 @@ lldb_private::InitializeForLLGS () PlatformWindows::Initialize(); PlatformKalimba::Initialize(); PlatformAndroid::Initialize(); - SymbolFileDWARFDebugMap::Initialize(); - ItaniumABILanguageRuntime::Initialize(); //---------------------------------------------------------------------- // Apple/Darwin hosted plugins //---------------------------------------------------------------------- DynamicLoaderMacOSXDYLD::Initialize(); - AppleObjCRuntimeV2::Initialize(); - AppleObjCRuntimeV1::Initialize(); ObjectContainerUniversalMachO::Initialize(); PlatformRemoteiOS::Initialize(); PlatformMacOSX::Initialize(); PlatformiOSSimulator::Initialize(); - SystemRuntimeMacOSX::Initialize(); #if defined (__APPLE__) - SymbolVendorMacOSX::Initialize(); DynamicLoaderDarwinKernel::Initialize(); PlatformDarwinKernel::Initialize(); ObjectFileMachO::Initialize(); @@ -225,6 +212,19 @@ lldb_private::Initialize () MemoryHistoryASan::Initialize(); AddressSanitizerRuntime::Initialize(); + SymbolVendorELF::Initialize(); + SymbolFileDWARF::Initialize(); + SymbolFileSymtab::Initialize(); + UnwindAssemblyInstEmulation::Initialize(); + UnwindAssembly_x86::Initialize(); + EmulateInstructionARM::Initialize(); + EmulateInstructionARM64::Initialize(); + SymbolFileDWARFDebugMap::Initialize(); + ItaniumABILanguageRuntime::Initialize(); + AppleObjCRuntimeV2::Initialize(); + AppleObjCRuntimeV1::Initialize(); + SystemRuntimeMacOSX::Initialize(); + #if defined (__linux__) //---------------------------------------------------------------------- // Linux hosted plugins @@ -239,6 +239,7 @@ lldb_private::Initialize () ProcessFreeBSD::Initialize(); #endif #if defined (__APPLE__) + SymbolVendorMacOSX::Initialize(); ProcessKDP::Initialize(); ProcessMachCore::Initialize(); #endif @@ -277,13 +278,6 @@ lldb_private::TerminateLLGS () Timer scoped_timer (__PRETTY_FUNCTION__, __PRETTY_FUNCTION__); ObjectContainerBSDArchive::Terminate(); ObjectFileELF::Terminate(); - SymbolVendorELF::Terminate(); - SymbolFileDWARF::Terminate(); - SymbolFileSymtab::Terminate(); - UnwindAssembly_x86::Terminate(); - UnwindAssemblyInstEmulation::Terminate(); - EmulateInstructionARM::Terminate (); - EmulateInstructionARM64::Terminate (); ObjectFilePECOFF::Terminate (); DynamicLoaderPOSIXDYLD::Terminate (); PlatformFreeBSD::Terminate(); @@ -291,22 +285,16 @@ lldb_private::TerminateLLGS () PlatformWindows::Terminate(); PlatformKalimba::Terminate(); PlatformAndroid::Terminate(); - SymbolFileDWARFDebugMap::Terminate(); - ItaniumABILanguageRuntime::Terminate(); DynamicLoaderMacOSXDYLD::Terminate(); - AppleObjCRuntimeV2::Terminate(); - AppleObjCRuntimeV1::Terminate(); ObjectContainerUniversalMachO::Terminate(); PlatformMacOSX::Terminate(); PlatformRemoteiOS::Terminate(); PlatformiOSSimulator::Terminate(); - SystemRuntimeMacOSX::Terminate(); #if defined (__APPLE__) DynamicLoaderDarwinKernel::Terminate(); ObjectFileMachO::Terminate(); PlatformDarwinKernel::Terminate(); - SymbolVendorMacOSX::Terminate(); #endif #ifndef LLDB_DISABLE_PYTHON @@ -339,10 +327,23 @@ lldb_private::Terminate () ProcessElfCore::Terminate(); MemoryHistoryASan::Terminate(); AddressSanitizerRuntime::Terminate(); + SymbolVendorELF::Terminate(); + SymbolFileDWARF::Terminate(); + SymbolFileSymtab::Terminate(); + UnwindAssembly_x86::Terminate(); + UnwindAssemblyInstEmulation::Terminate(); + EmulateInstructionARM::Terminate(); + EmulateInstructionARM64::Terminate(); + SymbolFileDWARFDebugMap::Terminate(); + ItaniumABILanguageRuntime::Terminate(); + AppleObjCRuntimeV2::Terminate(); + AppleObjCRuntimeV1::Terminate(); + SystemRuntimeMacOSX::Terminate(); #if defined (__APPLE__) ProcessMachCore::Terminate(); ProcessKDP::Terminate(); + SymbolVendorMacOSX::Terminate(); #endif #if defined(_MSC_VER) DynamicLoaderWindows::Terminate();