diff options
| author | Med Ismail Bennani <ismail@bennani.ma> | 2024-07-23 16:04:48 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-07-23 16:04:48 -0700 |
| commit | 39c23a31d2ab9a6068fcaa22ed9b1e10101db5ff (patch) | |
| tree | 00c03bd8c6bf3918d3120d6d90b1c698dffe2f22 /lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface | |
| parent | 25f0381ba128e012e494701286450a374bf366a8 (diff) | |
Revert "[lldb/Commands] Add `scripting template list` command with auto discovery" (#100273)
Reverts llvm/llvm-project#97273 since it broke the windows bot:
https://lab.llvm.org/buildbot/#/builders/141/builds/1025/steps/4/logs/stdio
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface')
3 files changed, 0 insertions, 176 deletions
diff --git a/lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/CMakeLists.txt b/lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/CMakeLists.txt deleted file mode 100644 index a0264962ec0b..000000000000 --- a/lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/CMakeLists.txt +++ /dev/null @@ -1,15 +0,0 @@ -add_lldb_library(lldbPluginOperatingSystemPythonInterface PLUGIN - - OperatingSystemPythonInterface.cpp - - LINK_LIBS - lldbCore - lldbHost - lldbInterpreter - lldbTarget - ${Python3_LIBRARIES} - ${LLDB_LIBEDIT_LIBS} - - LINK_COMPONENTS - Support - ) diff --git a/lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.cpp b/lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.cpp deleted file mode 100644 index 34a2021601e8..000000000000 --- a/lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.cpp +++ /dev/null @@ -1,101 +0,0 @@ -//===-- ScriptedThreadPythonInterface.cpp ---------------------------------===// -// -// 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 -// -//===----------------------------------------------------------------------===// - -#include "lldb/Core/PluginManager.h" -#include "lldb/Host/Config.h" -#include "lldb/Target/ExecutionContext.h" -#include "lldb/Utility/Log.h" -#include "lldb/lldb-enumerations.h" - -#if LLDB_ENABLE_PYTHON - -// clang-format off -// LLDB Python header must be included first -#include "../../lldb-python.h" -//clang-format on - -#include "../../SWIGPythonBridge.h" -#include "../../ScriptInterpreterPythonImpl.h" -#include "OperatingSystemPythonInterface.h" - -using namespace lldb; -using namespace lldb_private; -using namespace lldb_private::python; -using Locker = ScriptInterpreterPythonImpl::Locker; - -LLDB_PLUGIN_DEFINE(OperatingSystemPythonInterface) - -OperatingSystemPythonInterface::OperatingSystemPythonInterface( - ScriptInterpreterPythonImpl &interpreter) - : OperatingSystemInterface(), ScriptedThreadPythonInterface(interpreter) {} - -llvm::Expected<StructuredData::GenericSP> -OperatingSystemPythonInterface::CreatePluginObject( - llvm::StringRef class_name, ExecutionContext &exe_ctx, - StructuredData::DictionarySP args_sp, StructuredData::Generic *script_obj) { - return ScriptedPythonInterface::CreatePluginObject(class_name, nullptr, - exe_ctx.GetProcessSP()); -} - -StructuredData::DictionarySP -OperatingSystemPythonInterface::CreateThread(lldb::tid_t tid, - lldb::addr_t context) { - Status error; - StructuredData::DictionarySP dict = Dispatch<StructuredData::DictionarySP>( - "create_thread", error, tid, context); - - if (!ScriptedInterface::CheckStructuredDataObject(LLVM_PRETTY_FUNCTION, dict, - error)) - return {}; - - return dict; -} - -StructuredData::ArraySP OperatingSystemPythonInterface::GetThreadInfo() { - Status error; - StructuredData::ArraySP arr = - Dispatch<StructuredData::ArraySP>("get_thread_info", error); - - if (!ScriptedInterface::CheckStructuredDataObject(LLVM_PRETTY_FUNCTION, arr, - error)) - return {}; - - return arr; -} - -StructuredData::DictionarySP OperatingSystemPythonInterface::GetRegisterInfo() { - return ScriptedThreadPythonInterface::GetRegisterInfo(); -} - -std::optional<std::string> -OperatingSystemPythonInterface::GetRegisterContextForTID(lldb::tid_t tid) { - Status error; - StructuredData::ObjectSP obj = Dispatch("get_register_data", error, tid); - - if (!ScriptedInterface::CheckStructuredDataObject(LLVM_PRETTY_FUNCTION, obj, - error)) - return {}; - - return obj->GetAsString()->GetValue().str(); -} - -void OperatingSystemPythonInterface::Initialize() { - const std::vector<llvm::StringRef> ci_usages = { - "settings set target.process.python-os-plugin-path <script-path>", - "settings set process.experimental.os-plugin-reports-all-threads [0/1]"}; - const std::vector<llvm::StringRef> api_usages = {}; - PluginManager::RegisterPlugin( - GetPluginNameStatic(), llvm::StringRef("Mock thread state"), - CreateInstance, eScriptLanguagePython, {ci_usages, api_usages}); -} - -void OperatingSystemPythonInterface::Terminate() { - PluginManager::UnregisterPlugin(CreateInstance); -} - -#endif diff --git a/lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.h b/lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.h deleted file mode 100644 index 6d60f8b437d1..000000000000 --- a/lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.h +++ /dev/null @@ -1,60 +0,0 @@ -//===-- OperatingSystemPythonInterface.h ------------------------*- 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 -// -//===----------------------------------------------------------------------===// - -#ifndef LLDB_PLUGINS_SCRIPTINTERPRETER_PYTHON_INTERFACES_OPERATINGSYSTEMPYTHONINTERFACE_H -#define LLDB_PLUGINS_SCRIPTINTERPRETER_PYTHON_INTERFACES_OPERATINGSYSTEMPYTHONINTERFACE_H - -#include "lldb/Host/Config.h" -#include "lldb/Interpreter/Interfaces/OperatingSystemInterface.h" - -#if LLDB_ENABLE_PYTHON - -#include "../ScriptedThreadPythonInterface.h" - -#include <optional> - -namespace lldb_private { -class OperatingSystemPythonInterface - : virtual public OperatingSystemInterface, - virtual public ScriptedThreadPythonInterface, - public PluginInterface { -public: - OperatingSystemPythonInterface(ScriptInterpreterPythonImpl &interpreter); - - llvm::Expected<StructuredData::GenericSP> - CreatePluginObject(llvm::StringRef class_name, ExecutionContext &exe_ctx, - StructuredData::DictionarySP args_sp, - StructuredData::Generic *script_obj = nullptr) override; - - llvm::SmallVector<llvm::StringLiteral> GetAbstractMethods() const override { - return llvm::SmallVector<llvm::StringLiteral>({"get_thread_info"}); - } - - StructuredData::DictionarySP CreateThread(lldb::tid_t tid, - lldb::addr_t context) override; - - StructuredData::ArraySP GetThreadInfo() override; - - StructuredData::DictionarySP GetRegisterInfo() override; - - std::optional<std::string> GetRegisterContextForTID(lldb::tid_t tid) override; - - static void Initialize(); - - static void Terminate(); - - static llvm::StringRef GetPluginNameStatic() { - return "OperatingSystemPythonInterface"; - } - - llvm::StringRef GetPluginName() override { return GetPluginNameStatic(); } -}; -} // namespace lldb_private - -#endif // LLDB_ENABLE_PYTHON -#endif // LLDB_PLUGINS_SCRIPTINTERPRETER_PYTHON_INTERFACES_OPERATINGSYSTEMPYTHONINTERFACE_H |
