diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2017-12-18 20:12:36 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2017-12-18 20:12:36 +0000 |
commit | ef5d0b5e97ec8e6fa395d377b09aa7755e345b4f (patch) | |
tree | 27916256fdeeb57d10d2f3d6948be5d71a703215 /include/lldb/Core/PluginManager.h | |
parent | 76e0736e7fcfeb179779e49c05604464b1ccd704 (diff) |
Notes
Diffstat (limited to 'include/lldb/Core/PluginManager.h')
-rw-r--r-- | include/lldb/Core/PluginManager.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/include/lldb/Core/PluginManager.h b/include/lldb/Core/PluginManager.h index d9851e5ecfc1..68e6ca20b266 100644 --- a/include/lldb/Core/PluginManager.h +++ b/include/lldb/Core/PluginManager.h @@ -10,6 +10,7 @@ #ifndef liblldb_PluginManager_h_ #define liblldb_PluginManager_h_ +#include "lldb/Core/Architecture.h" #include "lldb/Utility/FileSpec.h" #include "lldb/Utility/Status.h" // for Status #include "lldb/lldb-enumerations.h" // for ScriptLanguage @@ -54,6 +55,21 @@ public: GetABICreateCallbackForPluginName(const ConstString &name); //------------------------------------------------------------------ + // Architecture + //------------------------------------------------------------------ + using ArchitectureCreateInstance = + std::unique_ptr<Architecture> (*)(const ArchSpec &); + + static void RegisterPlugin(const ConstString &name, + llvm::StringRef description, + ArchitectureCreateInstance create_callback); + + static void UnregisterPlugin(ArchitectureCreateInstance create_callback); + + static std::unique_ptr<Architecture> + CreateArchitectureInstance(const ArchSpec &arch); + + //------------------------------------------------------------------ // Disassembler //------------------------------------------------------------------ static bool RegisterPlugin(const ConstString &name, const char *description, |