Author: Michał Górny Date: 2021-10-05T12:40:55+02:00 New Revision: 214054f78a4e40656b17838300dff2f136032172
URL: https://github.com/llvm/llvm-project/commit/214054f78a4e40656b17838300dff2f136032172 DIFF: https://github.com/llvm/llvm-project/commit/214054f78a4e40656b17838300dff2f136032172.diff LOG: [lldb] Move DynamicRegisterInfo to public Target library Move DynamicRegisterInfo from the internal lldbPluginProcessUtility library to the public lldbTarget library. This is a prerequisite towards ABI plugin changes that are going to pass DynamicRegisterInfo parameters. Differential Revision: https://reviews.llvm.org/D110942 Added: lldb/include/lldb/Target/DynamicRegisterInfo.h lldb/source/Target/DynamicRegisterInfo.cpp lldb/unittests/Target/DynamicRegisterInfoTest.cpp Modified: lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.h lldb/source/Plugins/Process/Utility/CMakeLists.txt lldb/source/Plugins/Process/Utility/RegisterContextMemory.cpp lldb/source/Plugins/Process/Utility/RegisterContextMemory.h lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.h lldb/source/Target/CMakeLists.txt lldb/unittests/Process/Utility/CMakeLists.txt lldb/unittests/Target/CMakeLists.txt Removed: lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.h lldb/unittests/Process/Utility/DynamicRegisterInfoTest.cpp ################################################################################ diff --git a/lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.h b/lldb/include/lldb/Target/DynamicRegisterInfo.h similarity index 95% rename from lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.h rename to lldb/include/lldb/Target/DynamicRegisterInfo.h index 286c8bc1020d7..ac8d6a7781c3f 100644 --- a/lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.h +++ b/lldb/include/lldb/Target/DynamicRegisterInfo.h @@ -6,8 +6,8 @@ // //===----------------------------------------------------------------------===// -#ifndef LLDB_SOURCE_PLUGINS_PROCESS_UTILITY_DYNAMICREGISTERINFO_H -#define LLDB_SOURCE_PLUGINS_PROCESS_UTILITY_DYNAMICREGISTERINFO_H +#ifndef LLDB_TARGET_DYNAMICREGISTERINFO_H +#define LLDB_TARGET_DYNAMICREGISTERINFO_H #include <map> #include <vector> @@ -16,6 +16,8 @@ #include "lldb/Utility/StructuredData.h" #include "lldb/lldb-private.h" +namespace lldb_private { + class DynamicRegisterInfo { protected: DynamicRegisterInfo(DynamicRegisterInfo &) = default; @@ -113,4 +115,6 @@ class DynamicRegisterInfo { bool m_is_reconfigurable = false; }; -#endif // LLDB_SOURCE_PLUGINS_PROCESS_UTILITY_DYNAMICREGISTERINFO_H +} // namespace lldb_private + +#endif // LLDB_TARGET_DYNAMICREGISTERINFO_H diff --git a/lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp b/lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp index 8c9e31dadff5e..40cf1d9816789 100644 --- a/lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp +++ b/lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp @@ -12,7 +12,6 @@ #include "OperatingSystemPython.h" -#include "Plugins/Process/Utility/DynamicRegisterInfo.h" #include "Plugins/Process/Utility/RegisterContextDummy.h" #include "Plugins/Process/Utility/RegisterContextMemory.h" #include "Plugins/Process/Utility/ThreadMemory.h" diff --git a/lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.h b/lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.h index 4bdd38fc81007..743fb545e3403 100644 --- a/lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.h +++ b/lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.h @@ -13,11 +13,10 @@ #if LLDB_ENABLE_PYTHON +#include "lldb/Target/DynamicRegisterInfo.h" #include "lldb/Target/OperatingSystem.h" #include "lldb/Utility/StructuredData.h" -class DynamicRegisterInfo; - namespace lldb_private { class ScriptInterpreter; } @@ -72,14 +71,14 @@ class OperatingSystemPython : public lldb_private::OperatingSystem { lldb_private::ThreadList &old_thread_list, std::vector<bool> &core_used_map, bool *did_create_ptr); - DynamicRegisterInfo *GetDynamicRegisterInfo(); + lldb_private::DynamicRegisterInfo *GetDynamicRegisterInfo(); lldb::ValueObjectSP m_thread_list_valobj_sp; - std::unique_ptr<DynamicRegisterInfo> m_register_info_up; + std::unique_ptr<lldb_private::DynamicRegisterInfo> m_register_info_up; lldb_private::ScriptInterpreter *m_interpreter; lldb_private::StructuredData::ObjectSP m_python_object_sp; }; -#endif +#endif // LLDB_ENABLE_PYTHON #endif // liblldb_OperatingSystemPython_h_ diff --git a/lldb/source/Plugins/Process/Utility/CMakeLists.txt b/lldb/source/Plugins/Process/Utility/CMakeLists.txt index 14318763f6a06..2a06af008dcec 100644 --- a/lldb/source/Plugins/Process/Utility/CMakeLists.txt +++ b/lldb/source/Plugins/Process/Utility/CMakeLists.txt @@ -1,6 +1,5 @@ add_lldb_library(lldbPluginProcessUtility AuxVector.cpp - DynamicRegisterInfo.cpp FreeBSDSignals.cpp GDBRemoteSignals.cpp HistoryThread.cpp diff --git a/lldb/source/Plugins/Process/Utility/RegisterContextMemory.cpp b/lldb/source/Plugins/Process/Utility/RegisterContextMemory.cpp index c55ffebb03e75..49a4c86690220 100644 --- a/lldb/source/Plugins/Process/Utility/RegisterContextMemory.cpp +++ b/lldb/source/Plugins/Process/Utility/RegisterContextMemory.cpp @@ -8,7 +8,6 @@ #include "RegisterContextMemory.h" -#include "DynamicRegisterInfo.h" #include "lldb/Target/Process.h" #include "lldb/Target/Thread.h" #include "lldb/Utility/DataBufferHeap.h" diff --git a/lldb/source/Plugins/Process/Utility/RegisterContextMemory.h b/lldb/source/Plugins/Process/Utility/RegisterContextMemory.h index 764ee9b972117..c3b9ec72ca227 100644 --- a/lldb/source/Plugins/Process/Utility/RegisterContextMemory.h +++ b/lldb/source/Plugins/Process/Utility/RegisterContextMemory.h @@ -11,17 +11,16 @@ #include <vector> +#include "lldb/Target/DynamicRegisterInfo.h" #include "lldb/Target/RegisterContext.h" #include "lldb/Utility/DataExtractor.h" #include "lldb/lldb-private.h" -class DynamicRegisterInfo; - class RegisterContextMemory : public lldb_private::RegisterContext { public: RegisterContextMemory(lldb_private::Thread &thread, uint32_t concrete_frame_idx, - DynamicRegisterInfo ®_info, + lldb_private::DynamicRegisterInfo ®_info, lldb::addr_t reg_data_addr); ~RegisterContextMemory() override; @@ -60,7 +59,7 @@ class RegisterContextMemory : public lldb_private::RegisterContext { protected: void SetAllRegisterValid(bool b); - DynamicRegisterInfo &m_reg_infos; + lldb_private::DynamicRegisterInfo &m_reg_infos; std::vector<bool> m_reg_valid; lldb_private::DataExtractor m_reg_data; lldb::addr_t m_reg_data_addr; // If this is valid, then we have a register diff --git a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.h b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.h index 7aef414465126..648bcbaa8bc7f 100644 --- a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.h +++ b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.h @@ -11,7 +11,7 @@ #include <vector> -#include "Plugins/Process/Utility/DynamicRegisterInfo.h" +#include "lldb/Target/DynamicRegisterInfo.h" #include "lldb/Target/RegisterContext.h" #include "lldb/Utility/ConstString.h" #include "lldb/Utility/DataExtractor.h" diff --git a/lldb/source/Target/CMakeLists.txt b/lldb/source/Target/CMakeLists.txt index 2405258bc4166..f80dab69282b3 100644 --- a/lldb/source/Target/CMakeLists.txt +++ b/lldb/source/Target/CMakeLists.txt @@ -9,6 +9,7 @@ lldb_tablegen(TargetPropertiesEnum.inc -gen-lldb-property-enum-defs add_lldb_library(lldbTarget ABI.cpp AssertFrameRecognizer.cpp + DynamicRegisterInfo.cpp ExecutionContext.cpp InstrumentationRuntime.cpp InstrumentationRuntimeStopInfo.cpp diff --git a/lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp b/lldb/source/Target/DynamicRegisterInfo.cpp similarity index 99% rename from lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp rename to lldb/source/Target/DynamicRegisterInfo.cpp index a5f4b8c7d7f3e..2dbaa7d56c03f 100644 --- a/lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp +++ b/lldb/source/Target/DynamicRegisterInfo.cpp @@ -6,8 +6,7 @@ // //===----------------------------------------------------------------------===// -#include "DynamicRegisterInfo.h" - +#include "lldb/Target/DynamicRegisterInfo.h" #include "lldb/Core/StreamFile.h" #include "lldb/DataFormatters/FormatManager.h" #include "lldb/Interpreter/OptionArgParser.h" diff --git a/lldb/unittests/Process/Utility/CMakeLists.txt b/lldb/unittests/Process/Utility/CMakeLists.txt index 47abc10f5aa00..651f871621fdf 100644 --- a/lldb/unittests/Process/Utility/CMakeLists.txt +++ b/lldb/unittests/Process/Utility/CMakeLists.txt @@ -15,7 +15,6 @@ set(LLVM_OPTIONAL_SOURCES ${NETBSD_SOURCES}) add_lldb_unittest(ProcessUtilityTests - DynamicRegisterInfoTest.cpp LinuxProcMapsTest.cpp MemoryTagManagerAArch64MTETest.cpp RegisterContextTest.cpp diff --git a/lldb/unittests/Target/CMakeLists.txt b/lldb/unittests/Target/CMakeLists.txt index 2c3ba699b0ebe..c126597c79daf 100644 --- a/lldb/unittests/Target/CMakeLists.txt +++ b/lldb/unittests/Target/CMakeLists.txt @@ -1,5 +1,6 @@ add_lldb_unittest(TargetTests ABITest.cpp + DynamicRegisterInfoTest.cpp ExecutionContextTest.cpp MemoryRegionInfoTest.cpp ModuleCacheTest.cpp diff --git a/lldb/unittests/Process/Utility/DynamicRegisterInfoTest.cpp b/lldb/unittests/Target/DynamicRegisterInfoTest.cpp similarity index 98% rename from lldb/unittests/Process/Utility/DynamicRegisterInfoTest.cpp rename to lldb/unittests/Target/DynamicRegisterInfoTest.cpp index 53b53a0d5777d..14a34dde28344 100644 --- a/lldb/unittests/Process/Utility/DynamicRegisterInfoTest.cpp +++ b/lldb/unittests/Target/DynamicRegisterInfoTest.cpp @@ -9,8 +9,7 @@ #include "gmock/gmock.h" #include "gtest/gtest.h" -#include "Plugins/Process/Utility/DynamicRegisterInfo.h" - +#include "lldb/Target/DynamicRegisterInfo.h" #include "lldb/Utility/ArchSpec.h" using namespace lldb_private; _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits