https://github.com/bulbazord created https://github.com/llvm/llvm-project/pull/206861
I'm doing this so that I can move RegisterInfo from `lldb-private-types.h` to lldbUtility. It currently has a `RegisterFlags *` field, so having it sit in lldb-private-types.h masks the actual layering of our data types. I considered moving RegisterInfo into Target, but RegisterValue (in lldbUtility) uses RegisterInfo directly. Because RegisterFlags has no internal dependencies, it seemed better to sink that instead. >From eb9f57739586d401d3f9d7565669bf2297780ae9 Mon Sep 17 00:00:00 2001 From: Alex Langford <[email protected]> Date: Tue, 30 Jun 2026 16:47:18 -0700 Subject: [PATCH] [lldb] Sink RegisterFlags from Target to Utility I'm doing this so that I can move RegisterInfo from `lldb-private-types.h` to lldbUtility. It currently has a `RegisterFlags *` field, so having it sit in lldb-private-types.h masks the actual layering of our data types. I considered moving RegisterInfo into Target, but RegisterValue (in lldbUtility) uses RegisterInfo directly. Because RegisterFlags has no internal dependencies, it seemed better to sink that instead. --- lldb/include/lldb/Target/DynamicRegisterInfo.h | 2 +- lldb/include/lldb/{Target => Utility}/RegisterFlags.h | 6 +++--- lldb/source/Core/DumpRegisterInfo.cpp | 2 +- lldb/source/Core/DumpRegisterValue.cpp | 2 +- .../Plugins/Process/Utility/RegisterFlagsDetector_arm64.h | 2 +- lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp | 2 +- .../RegisterTypeBuilder/RegisterTypeBuilderClang.cpp | 2 +- lldb/source/Target/CMakeLists.txt | 1 - lldb/source/Utility/CMakeLists.txt | 1 + lldb/source/{Target => Utility}/RegisterFlags.cpp | 4 ++-- lldb/unittests/Core/DumpRegisterInfoTest.cpp | 2 +- lldb/unittests/Target/RegisterFlagsTest.cpp | 4 ++-- 12 files changed, 15 insertions(+), 15 deletions(-) rename lldb/include/lldb/{Target => Utility}/RegisterFlags.h (98%) rename lldb/source/{Target => Utility}/RegisterFlags.cpp (99%) diff --git a/lldb/include/lldb/Target/DynamicRegisterInfo.h b/lldb/include/lldb/Target/DynamicRegisterInfo.h index 558adefe2e151..ab476bffde45a 100644 --- a/lldb/include/lldb/Target/DynamicRegisterInfo.h +++ b/lldb/include/lldb/Target/DynamicRegisterInfo.h @@ -12,8 +12,8 @@ #include <map> #include <vector> -#include "lldb/Target/RegisterFlags.h" #include "lldb/Utility/ConstString.h" +#include "lldb/Utility/RegisterFlags.h" #include "lldb/Utility/StructuredData.h" #include "lldb/lldb-private.h" diff --git a/lldb/include/lldb/Target/RegisterFlags.h b/lldb/include/lldb/Utility/RegisterFlags.h similarity index 98% rename from lldb/include/lldb/Target/RegisterFlags.h rename to lldb/include/lldb/Utility/RegisterFlags.h index 1250fd0330958..1fa9794e80365 100644 --- a/lldb/include/lldb/Target/RegisterFlags.h +++ b/lldb/include/lldb/Utility/RegisterFlags.h @@ -6,8 +6,8 @@ // //===----------------------------------------------------------------------===// -#ifndef LLDB_TARGET_REGISTERFLAGS_H -#define LLDB_TARGET_REGISTERFLAGS_H +#ifndef LLDB_UTILITY_REGISTERFLAGS_H +#define LLDB_UTILITY_REGISTERFLAGS_H #include <stdint.h> #include <string> @@ -195,4 +195,4 @@ class RegisterFlags { } // namespace lldb_private -#endif // LLDB_TARGET_REGISTERFLAGS_H +#endif // LLDB_UTILITY_REGISTERFLAGS_H diff --git a/lldb/source/Core/DumpRegisterInfo.cpp b/lldb/source/Core/DumpRegisterInfo.cpp index eccc6784cd497..23946cf5428ba 100644 --- a/lldb/source/Core/DumpRegisterInfo.cpp +++ b/lldb/source/Core/DumpRegisterInfo.cpp @@ -8,7 +8,7 @@ #include "lldb/Core/DumpRegisterInfo.h" #include "lldb/Target/RegisterContext.h" -#include "lldb/Target/RegisterFlags.h" +#include "lldb/Utility/RegisterFlags.h" #include "lldb/Utility/Stream.h" using namespace lldb; diff --git a/lldb/source/Core/DumpRegisterValue.cpp b/lldb/source/Core/DumpRegisterValue.cpp index aff4d2c621d7e..0a834bcd89960 100644 --- a/lldb/source/Core/DumpRegisterValue.cpp +++ b/lldb/source/Core/DumpRegisterValue.cpp @@ -9,9 +9,9 @@ #include "lldb/Core/DumpRegisterValue.h" #include "lldb/Core/DumpDataExtractor.h" #include "lldb/DataFormatters/DumpValueObjectOptions.h" -#include "lldb/Target/RegisterFlags.h" #include "lldb/Utility/DataExtractor.h" #include "lldb/Utility/Endian.h" +#include "lldb/Utility/RegisterFlags.h" #include "lldb/Utility/RegisterValue.h" #include "lldb/Utility/StreamString.h" #include "lldb/ValueObject/ValueObject.h" diff --git a/lldb/source/Plugins/Process/Utility/RegisterFlagsDetector_arm64.h b/lldb/source/Plugins/Process/Utility/RegisterFlagsDetector_arm64.h index 496c395de48a4..ff69c94e0a7af 100644 --- a/lldb/source/Plugins/Process/Utility/RegisterFlagsDetector_arm64.h +++ b/lldb/source/Plugins/Process/Utility/RegisterFlagsDetector_arm64.h @@ -9,7 +9,7 @@ #ifndef LLDB_SOURCE_PLUGINS_PROCESS_UTILITY_REGISTERFLAGSDETECTOR_ARM64_H #define LLDB_SOURCE_PLUGINS_PROCESS_UTILITY_REGISTERFLAGSDETECTOR_ARM64_H -#include "lldb/Target/RegisterFlags.h" +#include "lldb/Utility/RegisterFlags.h" #include "llvm/ADT/StringRef.h" #include <functional> diff --git a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp index 257eed8c78f93..aeafeb057819f 100644 --- a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp +++ b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp @@ -65,7 +65,6 @@ #include "lldb/Target/DynamicLoader.h" #include "lldb/Target/MemoryRegionInfo.h" #include "lldb/Target/ProcessIOHandler.h" -#include "lldb/Target/RegisterFlags.h" #include "lldb/Target/SystemRuntime.h" #include "lldb/Target/Target.h" #include "lldb/Target/TargetList.h" @@ -75,6 +74,7 @@ #include "lldb/Utility/FileSpec.h" #include "lldb/Utility/FileSpecList.h" #include "lldb/Utility/LLDBLog.h" +#include "lldb/Utility/RegisterFlags.h" #include "lldb/Utility/State.h" #include "lldb/Utility/StreamString.h" #include "lldb/Utility/Timer.h" diff --git a/lldb/source/Plugins/RegisterTypeBuilder/RegisterTypeBuilderClang.cpp b/lldb/source/Plugins/RegisterTypeBuilder/RegisterTypeBuilderClang.cpp index 80d5289178ed0..5e08254d07a45 100644 --- a/lldb/source/Plugins/RegisterTypeBuilder/RegisterTypeBuilderClang.cpp +++ b/lldb/source/Plugins/RegisterTypeBuilder/RegisterTypeBuilderClang.cpp @@ -11,7 +11,7 @@ #include "Plugins/TypeSystem/Clang/TypeSystemClang.h" #include "RegisterTypeBuilderClang.h" #include "lldb/Core/PluginManager.h" -#include "lldb/Target/RegisterFlags.h" +#include "lldb/Utility/RegisterFlags.h" #include "lldb/lldb-enumerations.h" using namespace lldb_private; diff --git a/lldb/source/Target/CMakeLists.txt b/lldb/source/Target/CMakeLists.txt index 8e603f9a4df82..90fe6fc3ad973 100644 --- a/lldb/source/Target/CMakeLists.txt +++ b/lldb/source/Target/CMakeLists.txt @@ -40,7 +40,6 @@ add_lldb_library(lldbTarget QueueList.cpp RegisterContext.cpp RegisterContextUnwind.cpp - RegisterFlags.cpp RegisterNumber.cpp RemoteAwarePlatform.cpp ScriptedThreadPlan.cpp diff --git a/lldb/source/Utility/CMakeLists.txt b/lldb/source/Utility/CMakeLists.txt index e6d918c1ce9c7..c0d0a42367b26 100644 --- a/lldb/source/Utility/CMakeLists.txt +++ b/lldb/source/Utility/CMakeLists.txt @@ -53,6 +53,7 @@ add_lldb_library(lldbUtility NO_INTERNAL_DEPENDENCIES Policy.cpp ProcessInfo.cpp RealpathPrefixes.cpp + RegisterFlags.cpp RegisterValue.cpp RegularExpression.cpp Instrumentation.cpp diff --git a/lldb/source/Target/RegisterFlags.cpp b/lldb/source/Utility/RegisterFlags.cpp similarity index 99% rename from lldb/source/Target/RegisterFlags.cpp rename to lldb/source/Utility/RegisterFlags.cpp index 976e03870ad9e..b465d2251a6f1 100644 --- a/lldb/source/Target/RegisterFlags.cpp +++ b/lldb/source/Utility/RegisterFlags.cpp @@ -6,7 +6,7 @@ // //===----------------------------------------------------------------------===// -#include "lldb/Target/RegisterFlags.h" +#include "lldb/Utility/RegisterFlags.h" #include "lldb/Utility/Log.h" #include "lldb/Utility/StreamString.h" @@ -426,4 +426,4 @@ FieldEnum::FieldEnum(std::string id, const Enumerators &enumerators) UNUSED_IF_ASSERT_DISABLED(enumerator); assert(enumerator.m_name.size() && "Enumerator name cannot be empty"); } -} \ No newline at end of file +} diff --git a/lldb/unittests/Core/DumpRegisterInfoTest.cpp b/lldb/unittests/Core/DumpRegisterInfoTest.cpp index 593170c2822ab..df5518ec6b092 100644 --- a/lldb/unittests/Core/DumpRegisterInfoTest.cpp +++ b/lldb/unittests/Core/DumpRegisterInfoTest.cpp @@ -7,7 +7,7 @@ //===----------------------------------------------------------------------===// #include "lldb/Core/DumpRegisterInfo.h" -#include "lldb/Target/RegisterFlags.h" +#include "lldb/Utility/RegisterFlags.h" #include "lldb/Utility/StreamString.h" #include "gtest/gtest.h" diff --git a/lldb/unittests/Target/RegisterFlagsTest.cpp b/lldb/unittests/Target/RegisterFlagsTest.cpp index ecffdd0fe44e6..ad86cab478843 100644 --- a/lldb/unittests/Target/RegisterFlagsTest.cpp +++ b/lldb/unittests/Target/RegisterFlagsTest.cpp @@ -6,7 +6,7 @@ // //===----------------------------------------------------------------------===// -#include "lldb/Target/RegisterFlags.h" +#include "lldb/Utility/RegisterFlags.h" #include "lldb/Utility/StreamString.h" #include "gmock/gmock.h" #include "gtest/gtest.h" @@ -480,4 +480,4 @@ TEST(RegisterFlagsTest, EnumsToXML) { "<enum id=\"enum_b\" size=\"4\">\n" " <evalue name=\"one\" value=\"1\"/>\n" "</enum>\n"); -} \ No newline at end of file +} _______________________________________________ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
