[all-commits] [llvm/llvm-project] 9b12dc: Re-land "[lldb/CMake] Auto-generate the Initialize...

Jonas Devlieghere via All-commits all-commits at lists.llvm.org
Mon Feb 17 14:44:17 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 9b12dc98fd0821f8d1f7f6304a314b6417d6ae3d
      https://github.com/llvm/llvm-project/commit/9b12dc98fd0821f8d1f7f6304a314b6417d6ae3d
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2020-02-17 (Mon, 17 Feb 2020)

  Changed paths:
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/source/API/SystemInitializerFull.cpp
    M lldb/source/Plugins/ABI/AArch64/ABIMacOSX_arm64.cpp
    M lldb/source/Plugins/ABI/ARC/ABISysV_arc.cpp
    M lldb/source/Plugins/ABI/ARM/ABIMacOSX_arm.cpp
    M lldb/source/Plugins/ABI/Hexagon/ABISysV_hexagon.cpp
    M lldb/source/Plugins/ABI/SystemZ/ABISysV_s390x.cpp
    M lldb/source/Plugins/CMakeLists.txt
    M lldb/source/Plugins/Disassembler/LLVMC/CMakeLists.txt
    M lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp
    M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/CMakeLists.txt
    M lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp
    M lldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.cpp
    M lldb/source/Plugins/Instruction/MIPS/EmulateInstructionMIPS.cpp
    M lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.cpp
    M lldb/source/Plugins/Instruction/PPC64/EmulateInstructionPPC64.cpp
    M lldb/source/Plugins/Language/ClangCommon/CMakeLists.txt
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CMakeLists.txt
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/CMakeLists.txt
    M lldb/source/Plugins/ObjectContainer/Universal-Mach-O/ObjectContainerUniversalMachO.cpp
    M lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.cpp
    M lldb/source/Plugins/OperatingSystem/CMakeLists.txt
    M lldb/source/Plugins/Platform/POSIX/CMakeLists.txt
    M lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp
    A lldb/source/Plugins/Plugins.def.in
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
    M lldb/source/Plugins/Process/Utility/CMakeLists.txt
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
    M lldb/source/Plugins/UnwindAssembly/x86/UnwindAssembly-x86.cpp
    M lldb/tools/lldb-test/CMakeLists.txt
    M lldb/tools/lldb-test/SystemInitializerTest.cpp
    M lldb/unittests/Disassembler/CMakeLists.txt
    M lldb/unittests/UnwindAssembly/ARM64/CMakeLists.txt
    M lldb/unittests/UnwindAssembly/PPC64/CMakeLists.txt

  Log Message:
  -----------
  Re-land "[lldb/CMake] Auto-generate the Initialize and Terminate calls for plugin"

This patch changes the way we initialize and terminate the plugins in
the system initializer. It uses an approach similar to LLVM's
TARGETS_TO_BUILD with a def file that enumerates the plugins.

The previously landed patch got reverted because it was lacking:

 (1) A plugin definition for the Objective-C language runtime,
 (2) The dependency between the Static and WASM dynamic loader,
 (3) Explicit initialization of ScriptInterpreterNone for lldb-test.

All issues have been addressed in this patch.

Differential revision: https://reviews.llvm.org/D73067




More information about the All-commits mailing list