/*===- lldb/source/Plugin/Plugins.def ---------------------------*- C++ -*-===*\
|*                                                                            *|
|* Part of the LLVM Project, under the Apache License v2.0 with LLVM          *|
|* Exceptions.                                                                *|
|* See https://llvm.org/LICENSE.txt for license information.                  *|
|* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception                    *|
|*                                                                            *|
|*===----------------------------------------------------------------------===*|
|*                                                                            *|
|* This file enumerates all of the plugins supported by this build of LLDB.   *|
|* Clients of this file should define the LLDB_PLUGIN macro to be a           *|
|* function-like macro with a single parameter (the name of the plugin)       *|
|* including this file will then enumerate all of the plugins. Script         *|
|* interpreter plugins can be enumerated separately by defining               *|
|* LLDB_SCRIPT_PLUGIN in which case they are not part of LLDB_PLUGIN.         *|
|*                                                                            *|
|*                                                                            *|
|* The set of plugins supported by LLDB is generated at configuration         *|
|* time, at which point this header is generated. Do not modify this          *|
|* header directly.                                                           *|
|*                                                                            *|
\*===----------------------------------------------------------------------===*/

#ifndef LLDB_PLUGIN
#  error Please define the macro LLDB_PLUGIN(PluginName)
#endif

#ifndef LLDB_SCRIPT_PLUGIN
#define LLDB_SCRIPT_PLUGIN(p) LLDB_PLUGIN(p)
#endif

LLDB_PLUGIN(ABIAArch64)
LLDB_PLUGIN(ABIARM)
LLDB_PLUGIN(ABIHexagon)
LLDB_PLUGIN(ABILoongArch)
LLDB_PLUGIN(ABIMips)
LLDB_PLUGIN(ABIMSP430)
LLDB_PLUGIN(ABIPowerPC)
LLDB_PLUGIN(ABIRISCV)
LLDB_PLUGIN(ABISystemZ)
LLDB_PLUGIN(ABIX86)
LLDB_PLUGIN(ArchitectureArm)
LLDB_PLUGIN(ArchitectureMips)
LLDB_PLUGIN(ArchitecturePPC64)
LLDB_PLUGIN(ArchitectureAArch64)
LLDB_PLUGIN(DisassemblerLLVMC)
LLDB_PLUGIN(DynamicLoaderDarwinKernel)
LLDB_PLUGIN(DynamicLoaderFreeBSDKernel)
LLDB_PLUGIN(DynamicLoaderMacOSXDYLD)
LLDB_PLUGIN(DynamicLoaderPosixDYLD)
LLDB_PLUGIN(DynamicLoaderStatic)
LLDB_PLUGIN(DynamicLoaderHexagonDYLD)
LLDB_PLUGIN(DynamicLoaderWindowsDYLD)
LLDB_PLUGIN(DynamicLoaderWasmDYLD)
LLDB_PLUGIN(InstructionARM)
LLDB_PLUGIN(InstructionARM64)
LLDB_PLUGIN(InstructionLoongArch)
LLDB_PLUGIN(InstructionMIPS)
LLDB_PLUGIN(InstructionMIPS64)
LLDB_PLUGIN(InstructionPPC64)
LLDB_PLUGIN(InstructionRISCV)
LLDB_PLUGIN(InstrumentationRuntimeASan)
LLDB_PLUGIN(InstrumentationRuntimeASanLibsanitizers)
LLDB_PLUGIN(InstrumentationRuntimeBoundsSafety)
LLDB_PLUGIN(InstrumentationRuntimeMainThreadChecker)
LLDB_PLUGIN(InstrumentationRuntimeTSan)
LLDB_PLUGIN(InstrumentationRuntimeUBSan)
LLDB_PLUGIN(JITLoaderGDB)
LLDB_PLUGIN(CPlusPlusLanguage)
LLDB_PLUGIN(ObjCLanguage)
LLDB_PLUGIN(ObjCPlusPlusLanguage)
LLDB_PLUGIN(CXXItaniumABI)
LLDB_PLUGIN(AppleObjCRuntime)
LLDB_PLUGIN(GNUstepObjCRuntime)
LLDB_PLUGIN(MemoryHistoryASan)
LLDB_PLUGIN(ObjectContainerBSDArchive)
LLDB_PLUGIN(ObjectContainerBigArchive)
LLDB_PLUGIN(ObjectContainerMachOArchive)
LLDB_PLUGIN(ObjectContainerMachOFileset)
LLDB_PLUGIN(ObjectFileBreakpad)
LLDB_PLUGIN(ObjectFileCOFF)
LLDB_PLUGIN(ObjectFileELF)
LLDB_PLUGIN(ObjectFileJSON)
LLDB_PLUGIN(ObjectFileMachO)
LLDB_PLUGIN(ObjectFileMinidump)
LLDB_PLUGIN(ObjectFilePDB)
LLDB_PLUGIN(ObjectFilePECOFF)
LLDB_PLUGIN(ObjectFileXCOFF)
LLDB_PLUGIN(ObjectFilePlaceholder)
LLDB_PLUGIN(ObjectFileWasm)
LLDB_PLUGIN(OperatingSystemPython)
LLDB_PLUGIN(PlatformAIX)
LLDB_PLUGIN(PlatformAndroid)
LLDB_PLUGIN(PlatformFreeBSD)
LLDB_PLUGIN(PlatformGDB)
LLDB_PLUGIN(PlatformLinux)
LLDB_PLUGIN(PlatformMacOSX)
LLDB_PLUGIN(PlatformNetBSD)
LLDB_PLUGIN(PlatformOpenBSD)
LLDB_PLUGIN(PlatformQemuUser)
LLDB_PLUGIN(PlatformWasm)
LLDB_PLUGIN(PlatformWindows)
LLDB_PLUGIN(ScriptedProcess)
LLDB_PLUGIN(ProcessElfCore)
LLDB_PLUGIN(ProcessMachCore)
LLDB_PLUGIN(ProcessMinidump)
LLDB_PLUGIN(ProcessWasm)
LLDB_PLUGIN(ClangREPL)
LLDB_PLUGIN(RegisterTypeBuilderClang)
LLDB_SCRIPT_PLUGIN(ScriptInterpreterNone)
LLDB_SCRIPT_PLUGIN(ScriptInterpreterPythonInterfaces)
LLDB_SCRIPT_PLUGIN(ScriptInterpreterPython)
LLDB_PLUGIN(StructuredDataDarwinLog)
LLDB_PLUGIN(SymbolFileBreakpad)
LLDB_PLUGIN(SymbolFileCTF)
LLDB_PLUGIN(SymbolFileDWARF)
LLDB_PLUGIN(SymbolFileJSON)
LLDB_PLUGIN(SymbolFilePDB)
LLDB_PLUGIN(SymbolFileSymtab)
LLDB_PLUGIN(SystemRuntimeMacOSX)
LLDB_PLUGIN(SymbolLocatorDebuginfod)
LLDB_PLUGIN(SymbolLocatorDefault)
LLDB_PLUGIN(SymbolVendorELF)
LLDB_PLUGIN(SymbolVendorPECOFF)
LLDB_PLUGIN(SymbolVendorWasm)
LLDB_PLUGIN(ScriptedFrameProvider)
LLDB_PLUGIN(TraceExporterCTF)
LLDB_PLUGIN(TypeSystemClang)
LLDB_PLUGIN(UnwindAssemblyInstEmulation)
LLDB_PLUGIN(UnwindAssemblyX86)
LLDB_PLUGIN(ProtocolServerMCP)


LLDB_PLUGIN(ProcessGDBRemote)


#undef LLDB_PLUGIN
#undef LLDB_SCRIPT_PLUGIN
