Skip to content

Commit 3c15029

Browse files
committed
demangle the kernel name
1 parent 227a5ed commit 3c15029

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

source/loader/layers/sanitizer/asan_interceptor.cpp

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313

1414
#include "asan_interceptor.hpp"
1515
#include "ur_sanitizer_layer.hpp"
16+
#include <cxxabi.h>
1617

1718
namespace ur_sanitizer_layer {
1819

@@ -281,6 +282,14 @@ void SanitizerInterceptor::postLaunchKernel(ur_kernel_handle_t Kernel,
281282
const char *Func = AH->Func[0] ? AH->Func : "<unknown func>";
282283
auto KernelName = getKernelName(Kernel);
283284

285+
// Try to demangle the kernel name
286+
char *demangled_name =
287+
abi::__cxa_demangle(KernelName.c_str(), nullptr, nullptr, nullptr);
288+
if (demangled_name) {
289+
KernelName = demangled_name;
290+
free(demangled_name);
291+
}
292+
284293
context.logger.always("\n====ERROR: DeviceSanitizer: {} on {}",
285294
DeviceSanitizerFormat(AH->ErrorType),
286295
DeviceSanitizerFormat(AH->MemoryType));

0 commit comments

Comments
 (0)