[Lldb-commits] [PATCH] D29909: Break some more dependencies in lldbUtility

Zachary Turner via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Mon Feb 13 13:30:29 PST 2017


zturner created this revision.
Herald added a subscriber: mgorny.

This completely removes the dependency from `lldbUtility` -> `lldbCore` and `lldbTarget`.  This was done with the following restructure:

1. `ProcessStructReader`: `Utility` -> `Target`
2. `ModuleCache`: `Utility` -> `Target`
3. `RegisterNumber`: `Utility` -> `Target`

4. `Endian`: `Host` -> `Utility`
5. `Flags`: `Core` -> `Utility`

This is enforced in the CMake by removing `lldbCore` and `lldbUtility` as linker inputs to both the `lldbUtility` target as well as the `UtilityTests` gtest target.

Unfortunately we are still requiring the dependency on `lldbHost`, which in turn depends on everything else, so for now we are still linking against `Core` and `Utility` transitively.  After the dependency on `Host` is broken, this effort will be complete.  But that is the only remaining step.


https://reviews.llvm.org/D29909

Files:
  lldb/include/lldb/Core/Flags.h
  lldb/include/lldb/Host/Endian.h
  lldb/include/lldb/Target/ModuleCache.h
  lldb/include/lldb/Target/ProcessStructReader.h
  lldb/include/lldb/Target/RegisterNumber.h
  lldb/include/lldb/Utility/Endian.h
  lldb/include/lldb/Utility/Flags.h
  lldb/include/lldb/Utility/ProcessStructReader.h
  lldb/include/lldb/Utility/PseudoTerminal.h
  lldb/include/lldb/Utility/RegisterNumber.h
  lldb/include/lldb/Utility/Stream.h
  lldb/source/Target/CMakeLists.txt
  lldb/source/Target/ModuleCache.cpp
  lldb/source/Target/Platform.cpp
  lldb/source/Target/RegisterContext.cpp
  lldb/source/Target/RegisterNumber.cpp
  lldb/source/Utility/CMakeLists.txt
  lldb/source/Utility/ModuleCache.cpp
  lldb/source/Utility/ModuleCache.h
  lldb/source/Utility/RegisterNumber.cpp
  lldb/unittests/CMakeLists.txt
  lldb/unittests/Target/CMakeLists.txt
  lldb/unittests/Target/Inputs/TestModule.c
  lldb/unittests/Target/ModuleCacheTest.cpp
  lldb/unittests/Utility/CMakeLists.txt
  lldb/unittests/Utility/Inputs/TestModule.c
  lldb/unittests/Utility/Inputs/TestModule.so
  lldb/unittests/Utility/ModuleCacheTest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D29909.88251.patch
Type: text/x-patch
Size: 83924 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20170213/ba144ea2/attachment-0001.bin>


More information about the lldb-commits mailing list