diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-10-09 18:06:43 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-10-09 18:06:43 +0100 |
commit | 4e4ee9865a958b6a854f9bca96637244c628d525 (patch) | |
tree | 824d75c3a55f71fc978cdd1fca5cb03ff439e59c /dev-libs/rocm-comgr/files/rocm-comgr-5.7.0-symbolizer.patch | |
parent | c65def1225a421dd57ac582acefc5987c9d67e0d (diff) |
gentoo auto-resync : 09:10:2023 - 18:06:43
Diffstat (limited to 'dev-libs/rocm-comgr/files/rocm-comgr-5.7.0-symbolizer.patch')
-rw-r--r-- | dev-libs/rocm-comgr/files/rocm-comgr-5.7.0-symbolizer.patch | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/dev-libs/rocm-comgr/files/rocm-comgr-5.7.0-symbolizer.patch b/dev-libs/rocm-comgr/files/rocm-comgr-5.7.0-symbolizer.patch new file mode 100644 index 000000000000..9c8079042bab --- /dev/null +++ b/dev-libs/rocm-comgr/files/rocm-comgr-5.7.0-symbolizer.patch @@ -0,0 +1,39 @@ + +commit 13dfb8f01ded137f634b8b6aa8a5ce2bc3e65daf +Author: Ron Lieberman <ron.lieberman@amd.com> +Date: Sun Apr 23 07:12:23 2023 -0500 + + [symbolizer] API evolution for ErrorHandler + + Change-Id: I438358dc79195444aed0658942b23869eda8117e + +diff --git a/src/comgr-symbolizer.cpp b/src/comgr-symbolizer.cpp +index cfdeee8..36643cf 100644 +--- a/src/comgr-symbolizer.cpp ++++ b/src/comgr-symbolizer.cpp +@@ -57,6 +57,16 @@ static llvm::symbolize::PrinterConfig getDefaultPrinterConfig() { + return Config; + } + ++static llvm::symbolize::ErrorHandler symbolize_error_handler( ++ llvm::raw_string_ostream &OS) { ++ return ++ [&](const llvm::ErrorInfoBase &ErrorInfo, llvm::StringRef ErrorBanner) { ++ OS << ErrorBanner; ++ ErrorInfo.log(OS); ++ OS << '\n'; ++ }; ++} ++ + Symbolizer::Symbolizer(std::unique_ptr<ObjectFile> &&CodeObject, + PrintSymbolCallback PrintSymbol) + : CodeObject(std::move(CodeObject)), PrintSymbol(PrintSymbol) {} +@@ -93,7 +103,7 @@ amd_comgr_status_t Symbolizer::symbolize(uint64_t Address, bool IsCode, + llvm::raw_string_ostream OS(Result); + llvm::symbolize::PrinterConfig Config = getDefaultPrinterConfig(); + llvm::symbolize::Request Request{"", Address}; +- auto Printer = std::make_unique<llvm::symbolize::LLVMPrinter>(OS, OS, Config); ++ auto Printer = std::make_unique<llvm::symbolize::LLVMPrinter>(OS, symbolize_error_handler(OS), Config); + + if (IsCode) { + auto ResOrErr = SymbolizerImpl.symbolizeInlinedCode( |