Index: llvm/lib/DebugInfo/Symbolize/CMakeLists.txt =================================================================== --- llvm/lib/DebugInfo/Symbolize/CMakeLists.txt +++ llvm/lib/DebugInfo/Symbolize/CMakeLists.txt @@ -9,6 +9,7 @@ LINK_COMPONENTS DebugInfoDWARF DebugInfoPDB + Debuginfod Object Support Demangle Index: llvm/lib/DebugInfo/Symbolize/Symbolize.cpp =================================================================== --- llvm/lib/DebugInfo/Symbolize/Symbolize.cpp +++ llvm/lib/DebugInfo/Symbolize/Symbolize.cpp @@ -20,6 +20,7 @@ #include "llvm/DebugInfo/DWARF/DWARFContext.h" #include "llvm/DebugInfo/PDB/PDB.h" #include "llvm/DebugInfo/PDB/PDBContext.h" +#include "llvm/Debuginfod/Debuginfod.h" #include "llvm/Demangle/Demangle.h" #include "llvm/Object/COFF.h" #include "llvm/Object/MachO.h" @@ -384,7 +385,15 @@ } } } - return false; + // Try debuginfod client cache and known servers. + Expected PathOrErr = + getCachedOrDownloadDebuginfo(buildIDToString(BuildID)); + if (!PathOrErr) { + consumeError(PathOrErr.takeError()); + return false; + } + Result = *PathOrErr; + return true; } } // end anonymous namespace