@@ -72,8 +72,14 @@ json::Value ModuleStats::ToJSON() const {
7272 debug_info_had_incomplete_types);
7373 module .try_emplace (" symbolTableStripped" , symtab_stripped);
7474 module .try_emplace (" symbolLocateTime" , symbol_locate_time);
75- if (!symfile_path.empty ())
76- module .try_emplace (" symbolFilePath" , symfile_path);
75+ if (!symfile_path.empty ()) {
76+ json::Array symbolfile_path;
77+ for (std::string const &path : symfile_path)
78+ if (!path.empty ())
79+ symbolfile_path.emplace_back (path);
80+ if (!symbolfile_path.empty ())
81+ module .try_emplace (" symbolFilePaths" , std::move (symbolfile_path));
82+ }
7783
7884 if (!symfile_modules.empty ()) {
7985 json::Array symfile_ids;
@@ -330,9 +336,9 @@ llvm::json::Value DebuggerStats::ReportStatistics(
330336 SymbolFile *sym_file = module ->GetSymbolFile (/* can_create=*/ false );
331337 if (sym_file) {
332338 if (!summary_only) {
333- if (sym_file-> GetObjectFile () != module -> GetObjectFile ())
334- module_stat.symfile_path =
335- sym_file-> GetObjectFile ()-> GetFileSpec ().GetPath ();
339+ for (ObjectFile *sym_objfile : sym_file-> GetAllObjectFiles ())
340+ module_stat.symfile_path . push_back (
341+ sym_objfile-> GetFileSpec ().GetPath () );
336342 ModuleList symbol_modules = sym_file->GetDebugInfoModules ();
337343 for (const auto &symbol_module : symbol_modules.Modules ())
338344 module_stat.symfile_modules .push_back ((intptr_t )symbol_module.get ());
0 commit comments