bulbazord added a comment.

I'm supportive of this idea but I would like to find a way to do it without 
introducing dependencies on plugins in non-plugin code if possible.



================
Comment at: lldb/include/lldb/Core/DumpRegisterValue.h:12
 
+#include "Plugins/TypeSystem/Clang/TypeSystemClang.h"
 #include "lldb/lldb-enumerations.h"
----------------
JDevlieghere wrote:
> Core components (not just the Core libraries but basically everything that's 
> not a plugin) shouldn't depend on plugins. There's still places in LLDB where 
> this is the case but @bulbazord has been hard at work to clean those up. This 
> would introduce a new one. Can we avoid this?
+1 Let's find a way to avoid this if possible. Perhaps we can use just 
`TypeSystem`?


================
Comment at: lldb/source/Commands/CommandObjectRegister.cpp:212-213
       } else {
+        TypeSystemClangSP type_system =
+            ScratchTypeSystemClang::GetForTarget(m_exe_ctx.GetTargetRef());
+        assert(type_system);
----------------
Instead of being specific to clang, it would be better if we could use 
`Target::GetScratchTypeSystemForLanguage(eLanguageTypeC)` or something to this 
effect.


================
Comment at: lldb/source/Core/DumpRegisterValue.cpp:136-137
+  // See if we have made this type before and can reuse it.
+  CompilerType fields_type = ast->GetTypeForIdentifier<clang::CXXRecordDecl>(
+      ConstString(register_type_name.c_str()));
+
----------------
This seems highly specific to C++... Let's try to find another way to do this, 
ideally with `TypeSystem` instead of `TypeSystemClang` and 
`clang::CXXRecordDecl`.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D145580/new/

https://reviews.llvm.org/D145580

_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to