================
@@ -4892,6 +4894,21 @@ void TargetProperties::SetDebugUtilityExpression(bool 
debug) {
   SetPropertyAtIndex(idx, debug);
 }
 
+Args TargetProperties::GetDebugInfoDURLs() const {
+  Args urls;
+  m_collection_sp->GetPropertyAtIndexAsArgs(ePropertyDebugInfoDURLs, urls);
+  return urls;
+}
+
+void TargetProperties::DebugInfoDURLsChangedCallback() {
+  Args urls = GetDebugInfoDURLs();
+  llvm::SmallVector<llvm::StringRef> dbginfod_urls;
+  std::transform(urls.begin(), urls.end(), dbginfod_urls.end(),
+                 [](const auto &obj) { return obj.ref(); });
+  llvm::setDefaultDebuginfodUrls(dbginfod_urls);
----------------
kevinfrei wrote:

All cards on the table: I don't understand enough about that particular part of 
the architecture to know "where" is the right place for this setting to live. I 
added it to Target because that was where @clayborg originally suggested. In 
practice, you're not generally going to want to have completely different 
settings for different targets, as there shouldn't be different sources of 
truth for symbols.

And now that I read what I just typeed, I can very much imagine a scenario 
where there's one symbol server that only supports line info, and a different 
one that supports full type info :/ So, maybe per-target is a good idea?

https://github.com/llvm/llvm-project/pull/70996
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to