Segfault in llvm::TargetPassConfig::addPass called via COMGR::InProcessDriver::execute when executing clinfo
devurandom opened this issue · comments
System information
❯ inxi -GSC -xx
System: Host: ernie Kernel: 5.7.7 x86_64 bits: 64 compiler: gcc v: 10.1.0 Desktop: N/A wm: kwin_x11 dm: SDDM
Distro: Gentoo Base System release 2.7
CPU: Topology: Quad Core model: AMD Ryzen 5 2400G with Radeon Vega Graphics bits: 64 type: MT MCP arch: Zen
L2 cache: 2048 KiB
flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm bogomips: 57518
Speed: 1352 MHz min/max: 1600/3600 MHz Core speeds (MHz): 1: 1352 2: 1352 3: 2973 4: 1351 5: 1352 6: 1352 7: 2974
8: 1352
Graphics: Device-1: Advanced Micro Devices [AMD/ATI] Baffin [Radeon RX 550 640SP / RX 560/560X] vendor: ASUSTeK
driver: amdgpu v: kernel bus ID: 01:00.0 chip ID: 1002:67ff
Device-2: AMD Raven Ridge [Radeon Vega Series / Radeon Vega Mobile Series] vendor: ASUSTeK driver: amdgpu v: kernel
bus ID: 0a:00.0 chip ID: 1002:15dd
Display: server: X.Org 1.20.8 driver: amdgpu compositor: kwin_x11 resolution: 2560x1080~60Hz
OpenGL: renderer: AMD RAVEN (DRM 3.37.0 5.7.7 LLVM 10.0.0) v: 4.6 Mesa 20.1.3 direct render: Yes
clinfo
is https://github.com/Oblomov/clinfo at version: 2.2.18.04.06
Problem
I start gdb clinfo
and type run
. After spawning a couple of threads (and gdb seeing an exception being thrown and caught from Mesa Clover, s.b.) it outputs:
LoadLib(libhsa-ext-image64.so.1) failed: libhsa-ext-image64.so.1: cannot open shared object file: No such file or directory
LoadLib(libhsa-amd-aqlprofile64.so) failed: libhsa-amd-aqlprofile64.so: cannot open shared object file: No such file or directory
LoadLib(libhsa-amd-aqlprofile64.so) failed: libhsa-amd-aqlprofile64.so: cannot open shared object file: No such file or directory
Number of platforms 2
Platform Name Clover
Platform Vendor Mesa
Platform Version OpenCL 1.1 Mesa 20.1.3
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_icd
Platform Extensions function suffix MESA
Platform Name AMD Accelerated Parallel Processing
Platform Vendor Advanced Micro Devices, Inc.
Platform Version OpenCL 2.0 AMD-APP.dbg (3137.0)
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_icd cl_amd_event_callback
Platform Extensions function suffix AMD
Platform Name Clover
Number of devices 2
Device Name Radeon RX 560 Series (POLARIS11, DRM 3.37.0, 5.7.7, LLVM 10.0.0)
Device Vendor AMD
Device Vendor ID 0x1002
Device Version OpenCL 1.1 Mesa 20.1.3
Driver Version 20.1.3
Device OpenCL C Version OpenCL C 1.1
Device Type GPU
Device Profile FULL_PROFILE
Device Available Yes
Compiler Available Yes
Max compute units 16
Max clock frequency 1210MHz
Max work item dimensions 3
Max work item sizes 256x256x256
Max work group size 256
Preferred work group size multiple 64
Preferred / native vector sizes
char 16 / 16
short 8 / 8
int 4 / 4
long 2 / 2
half 0 / 0 (n/a)
float 4 / 4
double 2 / 2 (cl_khr_fp64)
Half-precision Floating-point support (n/a)
Single-precision Floating-point support (core)
Denormals No
Infinity and NANs Yes
Round to nearest Yes
Round to zero No
Round to infinity No
IEEE754-2008 fused multiply-add No
Support is emulated in software No
Correctly-rounded divide and sqrt operations No
Double-precision Floating-point support (cl_khr_fp64)
Denormals Yes
Infinity and NANs Yes
Round to nearest Yes
Round to zero Yes
Round to infinity Yes
IEEE754-2008 fused multiply-add Yes
Support is emulated in software No
Address bits 64, Little-Endian
Global memory size 3221225472 (3GiB)
Error Correction support No
Max memory allocation 1717986918 (1.6GiB)
Unified memory for Host and Device No
Minimum alignment for any data type 128 bytes
Alignment of base address 32768 bits (4096 bytes)
Global Memory cache type None
Image support No
Local memory type Local
Local memory size 32768 (32KiB)
Max number of constant args 16
Max constant buffer size 1717986816 (1.6GiB)
Max size of kernel argument 1024
Queue properties
Out-of-order execution No
Profiling Yes
Profiling timer resolution 0ns
Execution capabilities
Run OpenCL kernels Yes
Run native kernels No
Device Extensions cl_khr_byte_addressable_store cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_fp64
Device Name AMD RAVEN (DRM 3.37.0, 5.7.7, LLVM 10.0.0)
Device Vendor AMD
Device Vendor ID 0x1002
Device Version OpenCL 1.1 Mesa 20.1.3
Driver Version 20.1.3
Device OpenCL C Version OpenCL C 1.1
Device Type GPU
Device Profile FULL_PROFILE
Device Available Yes
Compiler Available Yes
Max compute units 11
Max clock frequency 1250MHz
Max work item dimensions 3
Max work item sizes 256x256x256
Max work group size 256
Preferred work group size multiple 64
Preferred / native vector sizes
char 16 / 16
short 8 / 8
int 4 / 4
long 2 / 2
half 0 / 0 (n/a)
float 4 / 4
double 2 / 2 (cl_khr_fp64)
Half-precision Floating-point support (n/a)
Single-precision Floating-point support (core)
Denormals No
Infinity and NANs Yes
Round to nearest Yes
Round to zero No
Round to infinity No
IEEE754-2008 fused multiply-add No
Support is emulated in software No
Correctly-rounded divide and sqrt operations No
Double-precision Floating-point support (cl_khr_fp64)
Denormals Yes
Infinity and NANs Yes
Round to nearest Yes
Round to zero Yes
Round to infinity Yes
IEEE754-2008 fused multiply-add Yes
Support is emulated in software No
Address bits 64, Little-Endian
Global memory size 3221225472 (3GiB)
Error Correction support No
Max memory allocation 2254857830 (2.1GiB)
Unified memory for Host and Device No
Minimum alignment for any data type 128 bytes
Alignment of base address 32768 bits (4096 bytes)
Global Memory cache type None
Image support No
Local memory type Local
Local memory size 32768 (32KiB)
Max number of constant args 16
Max constant buffer size 2147483392 (2GiB)
Max size of kernel argument 1024
Queue properties
Out-of-order execution No
Profiling Yes
Profiling timer resolution 0ns
Execution capabilities
Run OpenCL kernels Yes
Run native kernels No
Device Extensions cl_khr_byte_addressable_store cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_fp64
Platform Name AMD Accelerated Parallel Processing
Number of devices 1
Device Name gfx902+xnack
Device Vendor Advanced Micro Devices, Inc.
Device Vendor ID 0x1002
Device Version OpenCL 2.0
Driver Version 3137.0 (HSA1.1,LC)
Device OpenCL C Version OpenCL C 2.0
Device Type GPU
Device Board Name (AMD) AMD Ryzen 5 2400G with Radeon Vega Graphics
Device Topology (AMD) PCI-E, 0a:00.0
Device Profile FULL_PROFILE
Device Available Yes
Compiler Available Yes
Linker Available Yes
Max compute units 11
SIMD per compute unit (AMD) 4
SIMD width (AMD) 16
SIMD instruction width (AMD) 1
Max clock frequency 1250MHz
Graphics IP (AMD) 9.2
Device Partition (core)
Max number of sub-devices 11
Supported partition types None
Supported affinity domains (n/a)
Max work item dimensions 3
Max work item sizes 1024x1024x1024
Max work group size 256
Preferred work group size (AMD) 256
Max work group size (AMD) 1024
Then it segfaults with following backtrace:
#0 0x00007fff665b96bd in llvm::TargetPassConfig::addPass(llvm::Pass*, bool, bool) () from /usr/lib/llvm/roc/lib/libLLVMCodeGen.so.11roc
No symbol table info available.
#1 0x00007fff665ba727 in llvm::TargetPassConfig::addRegAssignmentOptimized() () from /usr/lib/llvm/roc/lib/libLLVMCodeGen.so.11roc
No symbol table info available.
#2 0x00007fff665ba575 in llvm::TargetPassConfig::addOptimizedRegAlloc() () from /usr/lib/llvm/roc/lib/libLLVMCodeGen.so.11roc
No symbol table info available.
#3 0x00007fff665ba993 in llvm::TargetPassConfig::addMachinePasses() () from /usr/lib/llvm/roc/lib/libLLVMCodeGen.so.11roc
No symbol table info available.
#4 0x00007fff663885d0 in addPassesToGenerateCode(llvm::LLVMTargetMachine&, llvm::legacy::PassManagerBase&, bool, llvm::MachineModuleInfoWrapperPass&) () from /usr/lib/llvm/roc/lib/libLLVMCodeGen.so.11roc
No symbol table info available.
#5 0x00007fff6638b7ed in llvm::LLVMTargetMachine::addPassesToEmitFile(llvm::legacy::PassManagerBase&, llvm::raw_pwrite_stream&, llvm::raw_pwrite_stream*, llvm::CodeGenFileType, bool, llvm::MachineModuleInfoWrapperPass*) () from /usr/lib/llvm/roc/lib/libLLVMCodeGen.so.11roc
No symbol table info available.
#6 0x00007fff64377478 in (anonymous namespace)::EmitAssemblyHelper::AddEmitPasses(llvm::legacy::PassManager&, clang::BackendAction, llvm::raw_pwrite_stream&, llvm::raw_pwrite_stream*) [clone .constprop.0] () from /usr/lib/llvm/roc/lib/../lib/libclangCodeGen.so.11roc
No symbol table info available.
#7 0x00007fff6437b497 in (anonymous namespace)::EmitAssemblyHelper::EmitAssembly(clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream> >) () from /usr/lib/llvm/roc/lib/../lib/libclangCodeGen.so.11roc
No symbol table info available.
#8 0x00007fff6437ce0b in clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::HeaderSearchOptions const&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::DataLayout const&, llvm::Module*, clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream> >) () from /usr/l
ib/llvm/roc/lib/../lib/libclangCodeGen.so.11roc
No symbol table info available.
#9 0x00007fff6465723e in clang::CodeGenAction::ExecuteAction() [clone .part.0] () from /usr/lib/llvm/roc/lib/../lib/libclangCodeGen.so.11roc
No symbol table info available.
#10 0x00007fff845a93a9 in clang::FrontendAction::Execute() () from /usr/lib/llvm/roc/lib/libclangFrontend.so.11roc
No symbol table info available.
#11 0x00007fff8455f02b in clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) () from /usr/lib/llvm/roc/lib/libclangFrontend.so.11roc No symbol table info available. #12 0x00007ffff7f74353 in clang::ExecuteCompilerInvocation(clang::CompilerInstance*) () from /usr/lib/llvm/roc/lib/libclangFrontendTool.so.11roc No symbol table info available.
#13 0x00007fff66f3d186 in COMGR::InProcessDriver::execute (this=0x7fffffffb370, Args=...) at /tmp/portage/dev-libs/rocm-comgr-3.5.0/work/ROCm-CompilerSupport-rocm-3.5.0/lib/comgr/src/comgr-compiler.cpp:626 Clang = <optimized out>
Arguments = {<llvm::SmallVectorImpl<char const*>> = {<llvm::SmallVectorTemplateBase<char const*, true>> = {<llvm::SmallVectorTemplateCommon<char const*, void>> = {<llvm::SmallVectorBase> = {BeginX = 0x555555862b50, Size = 57, Capacity = 57}, <No data fields>}, <No data fields>}, <No data fields>}, <llvm::SmallVectorStorage<char const*, 16>> = {InlineElts
= {{buffer = "\000\253\377\377\377\177\000"}, {buffer = "\250\250\330e\377\177\000"}, {buffer = "\360\250\377\377\377\177\000"}, {buffer = "\000\000\000\000\200\000\000"}, {buffer = "\340\ntUUU\000"}, {buffer = "\210\251\377\377\377\177\000"}, {buffer = "\204\251\377\377\377\177\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\267V\342e\377\177\000
"}, {buffer = "HJ\340e\377\177\000"}, {buffer = "\310\321\336e\377\177\000"}, {buffer = "\341\235E\354\377\177\000"}, {buffer = "\216/\370\361\000\000\000"}, {buffer = "\276\340\307\003\000\000\000"}, {buffer = "\204\251\377\377\377\177\000"}, {buffer = "\000\000\000\000\062-v4"}}}, <No data fields>}
Argv = {<llvm::SmallVectorImpl<char const*>> = {<llvm::SmallVectorTemplateBase<char const*, true>> = {<llvm::SmallVectorTemplateCommon<char const*, void>> = {<llvm::SmallVectorBase> = {BeginX = 0x7fffffffab00, Size = 58, Capacity = 128}, <No data fields>}, <No data fields>}, <No data fields>}, <llvm::SmallVectorStorage<char const*, 128>> = {InlineElts =
{{buffer = "\000P\370f\377\177\000"}, {buffer = "\202=G\204\377\177\000"}, {buffer = "\314\337F\204\377\177\000"}, {buffer = "@&\234UUU\000"}, {buffer = "q\300F\204\377\177\000"}, {buffer = "ϜF\204\377\177\000"}, {buffer = "\226\211F\204\377\177\000"}, {buffer = "\275\336F\204\377\177\000"}, {buffer = "\240\216\207UUU\000"}, {buffer = "t\272F\204\377\177\000"},
{buffer = "R\365F\204\377\177\000"}, {buffer = "\231\271F\204\377\177\000"}, {buffer = "\314AG\204\377\177\000"}, {buffer = "\207\272F\204\377\177\000"}, {buffer = "ཆUUU\000"}, {buffer = "Z\332F\204\377\177\000"}, {buffer = "\000\251\205UUU\000"}, {buffer = "\207\207F\204\377\177\000"}, {buffer = "\273LF\204\377\177\000"}, {buffer = "'\263F\204\377\177\000"}, {b
uffer = "\320|H\204\377\177\000"}, {buffer = "\311WF\204\377\177\000"}, {buffer = " E\177UUU\000"}, {buffer = "\224\327F\204\377\177\000"}, {buffer = "\264)G\204\377\177\000"}, {buffer = "\224\327F\204\377\177\000"}, {buffer = "\257\070G\204\377\177\000"}, {buffer = "\224\327F\204\377\177\000"}, {buffer = "\337.G\204\377\177\000"}, {buffer = "\224\327F\204\377\1
77\000"}, {buffer = "P\207\313VUU\000"}, {buffer = "\224\327F\204\377\177\000"}, {buffer = "\260\000rVUU\000"}, {buffer = "\224\327F\204\377\177\000"}, {buffer = "\240(\205UUU\000"}, {buffer = "b\247F\204\377\177\000"}, {buffer = "}\312F\204\377\177\000"}, {buffer = "\314\372F\204\377\177\000"}, {buffer = "\203\225F\204\377\177\000"}, {buffer = "P\253\206UUU\000
"}, {buffer = "\200EUVUU\000"}, {buffer = "V\225F\204\377\177\000"}, {buffer = "\200\237xUUU\000"}, {buffer = "\255fF\204\377\177\000"}, {buffer = "\256\"G\204\377\177\000"}, {buffer = "\320v\223UUU\000"}, {buffer = "\260\237)VUU\000"}, {buffer = "\233tF\204\377\177\000"}, {buffer = "١F\204\377\177\000"}, {buffer = "@\231xUUU\000"}, {buffer = "\200\034\201UUU\00
0"}, {buffer = "\271\314F\204\377\177\000"}, {buffer = "\a\252F\204\377\177\000"}, {buffer = "\220\272\377\377\377\177\000"}, {buffer = "rUF\204\377\177\000"}, {buffer = "\247\225F\204\377\177\000"}, {buffer = "\000\272\377\377\377\177\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\340\255\377\377\377\177
\000"}, {buffer = "\000P\370f\377\177\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "Э\377\377\377\177\000"}, {buffer = "\200\270\177UUU\000"}, {buffer = "\300\270\177UUU\000"}, {buffer = "\017\201\065\204\377\177\000"}, {buffer = "\200\271\177UUU\000"}, {buffer = "и\177UUU\000"}, {buffer = "\260\270\177UUU\000"}, {buffer = "`\272\177UUU\000"}, {bu
ffer = "\020\000\000\000\000\000\000"}, {buffer = "\360G\372e\377\177\000"}, {buffer = "\240\255\377\377\377\177\000"}, {buffer = "\020\256\377\377\377\177\000"}, {buffer = "\360\256\377\377\377\177\000"}, {buffer = "\002\000\000\000\000\000\000"}, {buffer = "\004\000\000\000\000\000\000"}, {buffer = "\360G\372e\377\177\000"}, {buffer = "p\256\377\377\377\177\00
0"}, {buffer = "@\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\003\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\242\254\333\367\377\177\000"}, {buffer = "\004\000\000\000UU\000"}, {buffer = "\000I\312UUU\000"}, {buffer = "`\004'VUU\000"}, {buffer = "\001\000\000\000\377\177\000"}, {buffer
= "`\310{UUU\000"}, {buffer = "0\257\377\377\377\177\000"}, {buffer = "\340\255\377\377\377\177\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "`\310{UUU\000"}, {buffer = "\002\000\000\000\000\000\000"}, {buffer = "\240\000\000\000\000\000\000"}, {buffer = "\200nxV
UU\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\245\a}\360\377\177\000"}, {buffer = "`\310{UUU\000"}, {buffer = "\310AF\354\377\177\000"}, {buffer = " oxVUU\000"}, {buffer = "\000\324pGIƯ\f"}, {buffer = "@\000\000\000\000\000\000"}, {buffer = " \320\000\000\000\000\000"}, {buffer = " \000\000\000\000\000\000"}, {buffer = "\032\000\000\000\000\00
0\000"}, {buffer = "\033\000\000\000\000\000\000"}, {buffer = "\327Q\370f\377\177\000"}, {buffer = "\032\000\000\000\000\000\000"}, {buffer = "\000\324pGIƯ\f"}, {buffer = "\340\256\377\377\377\177\000"}, {buffer = "p\263\377\377\377\177\000"}, {buffer = "@\257\377\377\377\177\000"}, {buffer = "\200\270\177UUU\000"}, {buffer = "\360\256\377\377\377\177\000"}, {bu
ffer = "0\271\377\377\377\177\000"}, {buffer = "@\305\377\377\377\177\000"}, {buffer = "\037\340\363f\377\177\000"}, {buffer = "\360\340\206UUU\000"}, {buffer = "\220\263\377\377\377\177\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\220\255\206UUU\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer
= "\023\000\000\000\000\000\000"}, {buffer = "\030\037^VUU\000"}}}, <No data fields>}
IT = <optimized out>
Job = @0x55555626fc60: <incomplete type>
__for_range = @0x555555857208: {Jobs = {<llvm::SmallVectorImpl<std::unique_ptr<clang::driver::Command, std::default_delete<clang::driver::Command> > >> = {<llvm::SmallVectorTemplateBase<std::unique_ptr<clang::driver::Command, std::default_delete<clang::driver::Command> >, false>> = {<llvm::SmallVectorTemplateCommon<std::unique_ptr<clang::driver::Command,
std::default_delete<clang::driver::Command> >, void>> = {<llvm::SmallVectorBase> = {BeginX = 0x555555857218, Size = 1, Capacity = 4}, <No data fields>}, <No data fields>}, <No data fields>}, <llvm::SmallVectorStorage<std::unique_ptr<clang::driver::Command, std::default_delete<clang::driver::Command> >, 4>> = {InlineElts = {{buffer = "`\374&VUU\000"}, {buffer =
"_base_at"}, {buffer = "omics,+c"}, {buffer = "l_khr_in"}}}, <No data fields>}}
__for_begin = <optimized out>
__for_end = <optimized out>
C = std::unique_ptr<clang::driver::Compilation> = {get() = 0x555555857170}
#14 0x00007fff66f3e50c in COMGR::AMDGPUCompiler::processFile (this=0x7fffffffbb60, InputFilePath=0x7fffffffba00 "/tmp/.private/dschridde/comgr-5fc864/input/linked.bc", OutputFilePath=0x7fffffffba90 "/tmp/.private/dschridde/comgr-5fc864/output/linked.bc.o") at /usr/lib/llvm/roc/include/llvm/ADT/SmallVector.h:146
Argv = {<llvm::SmallVectorImpl<char const*>> = {<llvm::SmallVectorTemplateBase<char const*, true>> = {<llvm::SmallVectorTemplateCommon<char const*, void>> = {<llvm::SmallVectorBase> = {BeginX = 0x7fffffffaf70, Size = 18, Capacity = 128}, <No data fields>}, <No data fields>}, <No data fields>}, <llvm::SmallVectorStorage<char const*, 128>> = {InlineElts =
{{buffer = "\000P\370f\377\177\000"}, {buffer = "\254P\370f\377\177\000"}, {buffer = "\220{\035VUU\000"}, {buffer = "\250\273\377\377\377\177\000"}, {buffer = "qP\370f\377\177\000"}, {buffer = "\204P\370f\377\177\000"}, {buffer = "\375Q\370f\377\177\000"}, {buffer = "\200EUVUU\000"}, {buffer = "`\221\233UUU\000"}, {buffer = "\300EUVUU\000"}, {buffer = "\340EUVUU
\000"}, {buffer = "\200\034\201UUU\000"}, {buffer = " FUVUU\000"}, {buffer = "\340\215tVUU\000"}, {buffer = "\000\272\377\377\377\177\000"}, {buffer = "-Q\370f\377\177\000"}, {buffer = "\362Q\370f\377\177\000"}, {buffer = "\220\272\377\377\377\177\000"}, {buffer = "\020\264\377\377\377\177\000"}, {buffer = "\v\260\326e\377\177\000"}, {buffer = "\220\265\377\377\
377\177\000"}, {buffer = "X\322xVUU\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\020\264\377\377\377\177\000"}, {buffer = "p\260\377\377\377\177\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\320ʄUUU\000"}, {buffer = "\305\065\372e\377\177\000"}, {buffer = "\020\261\377\377\377\177\000"}, {buffer = "\220\265\377\377\377\177\000"},
{buffer = "p\260\377\377\377\177\000"}, {buffer = "\000\000\000\000\000\001\000"}, {buffer = "б\377\377\377\177\000"}, {buffer = "\344\364\f\204\377\177\000"}, {buffer = "\300\366\f\204\377\177\000"}, {buffer = "P\261\377\377\377\177\000"}, {buffer = "\200\260\377\377\377\177\000"}, {buffer = "\000\324pGIƯ\f"}, {buffer = "б\377\377\377\177\000"}, {buffer = "\23
2\374\f\204\377\177\000"}, {buffer = "\240\b\312UUU\000"}, {buffer = "\270ɄU\001\000\000"}, {buffer = "\000\000\000\000\000\200\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\200ʄUUU\000"}, {buffer = "\000\324pGIƯ\f"}, {buffer = "\020-\234UUU\000"}, {buffer = "ܗ\
330e\377\177\000"}, {buffer = "c\377]VUU\000"}, {buffer = "\a\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\000\324pGIƯ\f"}, {buffer = "\002\000\000\000\000\000\000"}, {buffer = "c\377]VUU\000"}, {buffer = "\a\000\000\000\000\000\000"}, {buffer = "P\261\377\377\377\177\000"}, {buffer = "\200\261\377\377\377\177\000"}, {buffer
= "\377\245\330e\377\177\000"}, {buffer = "c\377]VUU\000"}, {buffer = "\a\000\000\000\000\000\000"}, {buffer = "c\377]VUU\000"}, {buffer = "\a\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\002\000\000\000\377\177\000"}, {buffer = "c\377]VUU\000"}, {buffer = "\a\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000
"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\a\000\000\000\000\000\000"}, {buffer = "\002\000\000\000\000\000\000"}, {buffer = "`\001\000\000\000\000\000"}, {buffer = "\000\324pGIƯ\f"}, {buffer = "\000\262\377\377\377\177\000"}, {buffer = "\360\263\377\377\377\177\000"}, {buffer = "\002\000\000\000\000\000\000"}, {buffer = " \265\377\377\377\177\00
0"}, {buffer = "\360\263\377\377\377\177\000"}, {buffer = "\250\250\330e\377\177\000"}, {buffer = "\000\262\377\377\377\177\000"}, {buffer = "\000\000\000\000\200\000\000"}, {buffer = "L\000\000\000\000\000\000"}, {buffer = "\b\001\000\000\000\000\000"}, {buffer = " \270\377\377\377\177\000"}, {buffer = "\000\324pGIƯ\f"}, {buffer = "\000\000\000\000\000\000\000"
}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\020\270\377\377\377\177\000"}, {buffer = "0\267\377\377\377\177\000"}, {buffer = "\260\271\377\377\377\177\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\020\264\377\377\377\177\000"}, {buffer = ";'\v\204\377\177\000"}, {buffer = "\020\bUVUU\000"}, {buffer = "\000\000\000\000\202\314\305",
<incomplete sequence \302>}, {buffer = "\365\aUVUU\000"}, {buffer = "\032\000\000\000l-rk"}, {buffer = "\220\262\377\377\377\177\000"}, {buffer = "\000\324pGIƯ\f"}, {buffer = "\000\264\377\377\377\177\000"}, {buffer = "\002\000\000\000\000\000\000"}, {buffer = "\212\357\331e\377\177\000"}, {buffer = "֪\330e\377\177\000"}, {buffer = "\340\ntUUU\000"}, {buffer = "\
001\000\000\000\000\000\000"}, {buffer = "\214\331\343e\377\177\000/"}, {buffer = "\360\263\377\377\377\177\000"}, {buffer = "\300\263\377\377\377\177\000"}, {buffer = "0\263\377\377\377\177\000"}, {buffer = "`\263\377\377\377\177\000"}, {buffer = "\220\263\377\377\377\177\000"}, {buffer = "\213\357\331e\377\177\000"}, {buffer = "\210\263\377\377\377\177\000"},
{buffer = "\360\263\377\377\377\177\000"}, {buffer = "\260\271\377\377\377\177\000"}, {buffer = "\005\001FVUU\000"}, {buffer = "HJ\340e\377\177\000"}, {buffer = "0\263\377\377\377\177\000"}, {buffer = "\000\000\000\000 \000\000"}, {buffer = "-\\R\b\000\000\000"}, {buffer = "pI!\000\000\000\000"}, {buffer = "\204\263\377\377\377\177\000"}, {buffer = "\000\000\000
\000UU\000"}, {buffer = "`\263\377\377\377\177\000"}, {buffer = "\000\000\000\000 \000\000"}, {buffer = "\000\000\000\000\000\200\000"}, {buffer = "\000\000\000\000\000\000\000"}}}, <No data fields>}
TheDriver = {DiagOS = @0x7fffffffc540, DiagOpts = {Obj = 0x555555788e00}, DiagClient = 0x5555559c2cc0, DiagID = {Obj = 0x0}, Diags = {<llvm::RefCountedBase<clang::DiagnosticsEngine>> = {RefCount = 0}, AllExtensionsSilenced = 0 '\000', FatalsAsError = false, SuppressAllDiagnostics = false, ElideType = true, PrintTemplateTree = false, ShowColors = false, S
howOverloads = clang::Ovl_All, ErrorLimit = 0, TemplateBacktraceLimit = 0, ConstexprBacktraceLimit = 0, Diags = {Obj = 0x0}, DiagOpts = {Obj = 0x555555788e00}, Client = 0x5555559c2cc0, Owner = std::unique_ptr<clang::DiagnosticConsumer> = {get() = 0x5555559c2cc0}, SourceMgr = 0x0, DiagStates = std::__cxx11::listPython Exception <class 'AttributeError'> 'NoneType'
object has no attribute 'pointer':
, DiagStatesByLoc = {Files = std::map with 0 elements, FirstDiagState = 0x555556720060, CurDiagState = 0x555556720060, CurDiagStateLoc = {ID = 0}}, DiagStateOnPushStack = std::vector of length 0, capacity 0, ErrorOccurred = false, UncompilableErrorOccurred = false, FatalErrorOccurred = false, UnrecoverableErrorOccurred = false, TrapNumErrorsOccurred = 0, TrapNum
UnrecoverableErrorsOccurred = 0, LastDiagLevel = clang::DiagnosticIDs::Ignored, NumWarnings = 0, NumErrors = 0, ArgToStringCookie = 0x0, ArgToStringFn = 0x7fff66c80650 <DummyArgToStringFn(clang::DiagnosticsEngine::ArgumentKind, long, llvm::StringRef, llvm::StringRef, llvm::ArrayRef<std::pair<clang::DiagnosticsEngine::ArgumentKind, long> >, llvm::SmallVectorImpl<
char>&, void*, llvm::ArrayRef<long>)>, DelayedDiagID = 0, DelayedDiagArg1 = "", DelayedDiagArg2 = "", DelayedDiagArg3 = "", FlagValue = "", CurDiagLoc = {ID = 0}, CurDiagID = 4294967295, NumDiagArgs = 12 '\f', DiagArgumentsKind = "\000\000\000\000\000\000\000\000\000", DiagArgumentsStr = {"", "", "", "", "", "", "", "", "", ""}, DiagArgumentsVal = {1407373524972
56, 140737488337008, 14593315444, 140733193388048, 140737488336608, 140737488336528, 914167267412988928, 8101528430270480384, 140737488336624, 438}, DiagRanges = {<llvm::SmallVectorImpl<clang::CharSourceRange>> = {<llvm::SmallVectorTemplateBase<clang::CharSourceRange, true>> = {<llvm::SmallVectorTemplateCommon<clang::CharSourceRange, void>> = {<llvm::SmallVector
Base> = {BeginX = 0x7fffffffb6b8, Size = 0, Capacity = 8}, <No data fields>}, <No data fields>}, <No data fields>}, <llvm::SmallVectorStorage<clang::CharSourceRange, 8>> = {InlineElts = {{buffer = "\237W\340\367\377\177\000\000\000\000\000"}, {buffer = "\000\000\000\000\340\033\364\367\377\177\000"}, {buffer = "\266\001\000\000\000\000\000\000\000\324pG"}, {buff
er = "IƯ\fP\270\377\377\377\177\000"}, {buffer = "\002\000\000\000\000\000\000\000\212\357\331e"}, {buffer = "\377\177\000\000֪\330e\377\177\000"}, {buffer = "\000\000\000\000\000\000\000\000\350\372\226", <incomplete sequence \360>}, {buffer = "\377\177\000\000\377\377\377\177\376\377\377/"}}}, <No data fields>}, DiagFixItHints = {<llvm::SmallVectorImpl<clang::F
ixItHint>> = {<llvm::SmallVectorTemplateBase<clang::FixItHint, false>> = {<llvm::SmallVectorTemplateCommon<clang::FixItHint, void>> = {<llvm::SmallVectorBase> = {BeginX = 0x7fffffffb728, Size = 0, Capacity = 8}, <No data fields>}, <No data fields>}, <No data fields>}, <llvm::SmallVectorStorage<clang::FixItHint, 8>> = {InlineElts = {{buffer = "\200\267\377\377\37
7\177\000\000\260\267\377\377\377\177\000\000\340\267\377\377\377\177\000\000\213\357\331e\377\177\000\000\377\377\377\377\377\377\377\377@\270\377\377\377\177\000\000\377\377\377\377\377\377\377\377\005\001\377\377\377\377\377\377"}, {buffer = "\377\377\377\377\377\377\377\377\200\267\377\377\377\177\000\000\000\000\000\000 \000\000\000", '\377' <repeats 16 tim
es>, "\000\000\000\000\000\000\000\000\377\000\000\000\000\000\000\000\260\267\377\377\377\177\000"}, {buffer = "\000\000\000\000 \000\000\000\314\030\000\000\000\000\000\000\224\373\346\367\377\177\000\000\001\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\340\267\377\377\377\177\000\000\000\000\000\000 \000\000\000\000\020\000\000\000\000\000"}, {
buffer = "\224\373\346\367\377\177\000\000\000\020\000\000\000\000\000\000\314\b\000\000\000\000\000\000\020\270\377\377\377\177\000\000\000\000\000\000 \000\000\000\314\b\000\000\000\000\000\000\000\324pGIƯ\fp\270\377\377\377\177\000"}, {buffer = "и\377\377\377\177\000\000@\270\377\377\377\177\000\000\001\000\000\000\004\000\000\000\000\246xUUU\000\000\v", '\00
0' <repeats 15 times>, "(\352\363f\377\177\000\000\000\000\000\000\377\177\000"}, {buffer = "\340\372\226\360\377\177\000\000\330@\336e\377\177\000\000p\321xUUU\000\000p\341xUUU\000\000\000\324pGIƯ\f\001\000\000\000\377\377\377\377 \271\377\377\377\177\000\000\340\270\377\377\377\177\000"}, {buffer = "\200\272\377\377\377\177\000\000\200\332hUUU\000\000\220\272\
377\377\377\177\000\000\000\271\377\377\377\177\000\000mK\363f\377\177\000\000/tmp/.pr@\271\377\377\377\177\000\000\000\246xUUU\000"}, {buffer = "comgr-5f\003\001\066\064/input/linked.bc\377\177\000\000tR\324e\377\177\000\000\001\001\377\377\377\177\000\000\000\000\000\000\000\000\000\000\005\001\000\000\000\000\000"}}}, <No data fields>}}, TheDriver = std::uniq
ue_ptr<clang::driver::Driver> = {get() = 0x5555557fb880}, LinkerJobName = "amdgpu::Linker"}
#15 0x00007fff66f3ece3 in COMGR::AMDGPUCompiler::processFiles (this=0x7fffffffbb60, OutputKind=AMD_COMGR_DATA_KIND_RELOCATABLE, OutputSuffix=0x7fff66f85200 ".o") at /usr/lib/llvm/roc/include/llvm/ADT/SmallVector.h:144
Status = <optimized out>
InputFilePath = {<llvm::SmallVector<char, 128>> = {<llvm::SmallVectorImpl<char>> = {<llvm::SmallVectorTemplateBase<char, true>> = {<llvm::SmallVectorTemplateCommon<char, void>> = {<llvm::SmallVectorBase> = {BeginX = 0x7fffffffba00, Size = 52, Capacity = 128}, <No data fields>}, <No data fields>}, <No data fields>}, <llvm::SmallVectorStorage<char, 128>> =
{InlineElts = {{buffer = "/"}, {buffer = "t"}, {buffer = "m"}, {buffer = "p"}, {buffer = "/"}, {buffer = "."}, {buffer = "p"}, {buffer = "r"}, {buffer = "i"}, {buffer = "v"}, {buffer = "a"}, {buffer = "t"}, {buffer = "e"}, {buffer = "/"}, {buffer = "d"}, {buffer = "s"}, {buffer = "c"}, {buffer = "h"}, {buffer = "r"}, {buffer = "i"}, {buffer = "d"}, {buffer = "d
"}, {buffer = "e"}, {buffer = "/"}, {buffer = "c"}, {buffer = "o"}, {buffer = "m"}, {buffer = "g"}, {buffer = "r"}, {buffer = "-"}, {buffer = "5"}, {buffer = "f"}, {buffer = "c"}, {buffer = "8"}, {buffer = "6"}, {buffer = "4"}, {buffer = "/"}, {buffer = "i"}, {buffer = "n"}, {buffer = "p"}, {buffer = "u"}, {buffer = "t"}, {buffer = "/"}, {buffer = "l"}, {buffer
= "i"}, {buffer = "n"}, {buffer = "k"}, {buffer = "e"}, {buffer = "d"}, {buffer = "."}, {buffer = "b"}, {buffer = "c"}, {buffer = ""}, {buffer = "\177"}, {buffer = ""}, {buffer = ""}, {buffer = "\300"}, {buffer = "\272"}, {buffer = "\377"}, {buffer = "\377"}, {buffer = "\377"}, {buffer = "\177"}, {buffer = ""}, {buffer = ""}, {buffer = "P"}, {buffer = <incomplet
e sequence \303>}, {buffer = "\377"}, {buffer = "\377"}, {buffer = "\377"}, {buffer = "\177"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "N"}, {buffer = <incomplete sequence \363>}, {buffer = "f"}, {buffer = "\377"}, {buffer = "\177"}, {buffer = ""}, {buffer = ""}, {buffer = "@"}, {buffer = "\212"}, {buffer = "W"}, {buffer = "U"}, {buffer = "U"}, {b
uffer = "U"}, {buffer = ""}, {buffer = ""}, {buffer = "\006"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "G"}, {buffer = "\212"}, {buffer = "W"}, {buffer = "U"}, {buffer = "U"}, {buffer = "U"}, {buffer = ""}, {buffer = ""}, {buffer = "\003"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {bu
ffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "K"}, {buffer = "\212"}, {buffer = "W"}, {buffer = "U"}, {buffer = "U"}, {buffer = "U"}, {buffer = ""}, {buffer = ""}, {buffer = "\006"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}}}, <No data fields>}, <No data fields>}
OutputT = {handle = 93824993516160}
SDOR = {Obj = 0x55555568da80}
OutputFilePath = {<llvm::SmallVector<char, 128>> = {<llvm::SmallVectorImpl<char>> = {<llvm::SmallVectorTemplateBase<char, true>> = {<llvm::SmallVectorTemplateCommon<char, void>> = {<llvm::SmallVectorBase> = {BeginX = 0x7fffffffba90, Size = 55, Capacity = 128}, <No data fields>}, <No data fields>}, <No data fields>}, <llvm::SmallVectorStorage<char, 128>>
= {InlineElts = {{buffer = "/"}, {buffer = "t"}, {buffer = "m"}, {buffer = "p"}, {buffer = "/"}, {buffer = "."}, {buffer = "p"}, {buffer = "r"}, {buffer = "i"}, {buffer = "v"}, {buffer = "a"}, {buffer = "t"}, {buffer = "e"}, {buffer = "/"}, {buffer = "d"}, {buffer = "s"}, {buffer = "c"}, {buffer = "h"}, {buffer = "r"}, {buffer = "i"}, {buffer = "d"}, {buffer = "
d"}, {buffer = "e"}, {buffer = "/"}, {buffer = "c"}, {buffer = "o"}, {buffer = "m"}, {buffer = "g"}, {buffer = "r"}, {buffer = "-"}, {buffer = "5"}, {buffer = "f"}, {buffer = "c"}, {buffer = "8"}, {buffer = "6"}, {buffer = "4"}, {buffer = "/"}, {buffer = "o"}, {buffer = "u"}, {buffer = "t"}, {buffer = "p"}, {buffer = "u"}, {buffer = "t"}, {buffer = "/"}, {buffer
= "l"}, {buffer = "i"}, {buffer = "n"}, {buffer = "k"}, {buffer = "e"}, {buffer = "d"}, {buffer = "."}, {buffer = "b"}, {buffer = "c"}, {buffer = "."}, {buffer = "o"}, {buffer = ""}, {buffer = "\005"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "\006"}, {buffer = "\001"}, {buffer = ""}, {bu
ffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = <incomplete sequence \324>}, {buffer = "p"}, {buffer = "G"}, {buffer = "I"}, {buffer = <incomplete sequence \306>}, {buffer = "\257"}, {buffer = "\f"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer =
""}, {buffer = "\006"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "`"}, {buffer = "\273"}, {buffer = "\377"}, {buffer = "\377"}, {buffer = "\377"}, {buffer = "\177"}, {buffer = ""}, {buffer = ""}, {buffer = "@"}, {buffer = "\212"}, {buffer = "W"}, {buffer = "U"}, {buffer = "U"}, {buffer = "
U"}, {buffer = ""}, {buffer = ""}, {buffer = "@"}, {buffer = <incomplete sequence \320>}, {buffer = "\377"}, {buffer = "\377"}, {buffer = "\377"}, {buffer = "\177"}, {buffer = ""}, {buffer = ""}, {buffer = "\220"}, {buffer = "\242"}, {buffer = "f"}, {buffer = "V"}, {buffer = "U"}, {buffer = "U"}, {buffer = ""}, {buffer = ""}}}, <No data fields>}, <No data fields
>}
Output = 0x55555568da80
Input = 0x7fffffffba00
__for_range = <optimized out>
__for_begin = 0x55555666a2e8
__for_end = 0x55555666a2f8
#16 0x00007fff66f7e5f8 in dispatchCompilerAction (ActionKind=<optimized out>, ActionInfo=<optimized out>, InputSet=<optimized out>, ResultSet=<optimized out>, LogS=...) at /tmp/portage/dev-libs/rocm-comgr-3.5.0/work/ROCm-CompilerSupport-rocm-3.5.0/lib/comgr/src/comgr.cpp:148 [97/569]
Compiler = {ActionInfo = 0x555555ca34e0, InSet = 0x55555666a290, OutSetT = {handle = 93824995400960}, Triple = "amdgcn-amd-amdhsa", CPU = "-mcpu=gfx902", GPUArch = "gfx902", CUDAGPUArch = "", HIPIncludePath = "", ClangIncludePath = "", ClangIncludePath2 = "", CompileOOP = false, PrecompiledHeaders = {<llvm::SmallVectorImpl<llvm::SmallString<128> >> = {<l
lvm::SmallVectorTemplateBase<llvm::SmallString<128>, false>> = {<llvm::SmallVectorTemplateCommon<llvm::SmallString<128>, void>> = {<llvm::SmallVectorBase> = {BeginX = 0x7fffffffbc70, Size = 0, Capacity = 2}, <No data fields>}, <No data fields>}, <No data fields>}, <llvm::SmallVectorStorage<llvm::SmallString<128>, 2>> = {InlineElts = {{buffer = '\000' <repeats 16
times>, "\220\274\377\377\377\177\000\000*\000\000\000\200\000\000\000/tmp/.private/dschridde/comgr-ca17a3/input\000\000\000\000\000\000\002\000\000\000\000\000\000\000\006\000\000\000\000\000\000\200", '\000' <repeats 27 times>, "\004\000\000\000\000\020\220\333\367\377\177\000\000\000\000\000\000\000\000\000"}, {buffer = "0\000\000\000\000\000\000\000z\232\00
2\000\000\000\000\000\265\247)\000\000\000\000\000\200\033\364\367\377\177\000\000\000p#g\377\177\000\000\002\000\000\000\000\000\000\000\005\000\000\000\000\000\000\000\200\214sUUU\000\000\357\000\000\000\000\000\000\000s\372\367f\377\177\000\000\001\000\000\000\000\000\000\000\000\324pGIƯ\f\001\000\000\000\000\000\000\000cW\340\367\377\177\000\000\000\000\000\
000\000\000\000\000\340\033\364\367\377\177\000\000\220\275\377\377\377\177\000\000\001\000\000\000\200\000\000"}}}, <No data fields>}, Args = {<llvm::SmallVectorImpl<char const*>> = {<llvm::SmallVectorTemplateBase<char const*, true>> = {<llvm::SmallVectorTemplateCommon<char const*, void>> = {<llvm::SmallVectorBase> = {BeginX = 0x7fffffffbda0, Size = 7, Capacity
= 128}, <No data fields>}, <No data fields>}, <No data fields>}, <llvm::SmallVectorStorage<char const*, 128>> = {InlineElts = {{buffer = "\000P\370f\377\177\000"}, {buffer = "\254P\370f\377\177\000"}, {buffer = "\220{\035VUU\000"}, {buffer = "\250\273\377\377\377\177\000"}, {buffer = "qP\370f\377\177\000"}, {buffer = "\204P\370f\377\177\000"}, {buffer = "\375Q\
370f\377\177\000"}, {buffer = "\a\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\240\017\000\000\000\000\000"}, {buffer = "b\000\000\000\000\000\000"}, {buffer = "\320\017\000\000\000\000\000"}, {buffer = ">\000\000\000\000\000\000"}, {buffer = "\373\000\000\000n\000\000"}, {buffer = "n\000\000\000|\000\000"}, {buffer = "\000\0
00\000\000\000\000\000"}, {buffer = "b\000\000\000w\000\000"}, {buffer = "\a\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "!\246\000\000\000\000\000"}, {buffer = "\320!\234UUU\000"}, {buffer = "\371\000\000\000\000\000\000"}, {buffer = "\240\017\000\000\000\000\000"}, {buffer = "\200\033\364\367\377\177\000"}, {buffer = "\260\3
01\377\377\377\177\000"}, {buffer = "\000\355\205\354\377\177\000"}, {buffer = "\350\276\377\377\377\177\000"}, {buffer = "\231\222\340\367\377\177\000"}, {buffer = "\240\017\000\000\000\000\000"}, {buffer = "\006\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "[\367\367f\377\177\000"}, {buffer = "\000\000\000\000\000\000\000"},
{buffer = "\361c~\354\377\177\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "8\303\377\377\377\177\000"}, {buffer = "\320!\234UUU\000"}, {buffer = "\360\277\377\377\377\177\000"}, {buffer = "\360\277\377\377\377\177\000"}, {buffer = "p\025tUUU\000"}, {buffer = "\220\355\227UUU\000"}, {buffer = "\240\017\000\000\000\000\000"}, {buffer = "(\020\000\0
00\000\000\000"}, {buffer = "@\001\000\000\000\000\000"}, {buffer = "\340\277\377\377\377\177\000"}, {buffer = "\377_{\354\377\177\000"}, {buffer = "`\277\377\377\377\177\000"}, {buffer = "\000\324pGIƯ\f"}, {buffer = "\000\355\205\354\377\177\000"}, {buffer = "зxUUU\000"}, {buffer = "\002\000\000\000\000\000\000"}, {buffer = "@\001\000\000\000\000\000"}, {buffer
= "\000\000\000\000\000\000\000"}, {buffer = "\002\000\000\000\000\000\000"}, {buffer = "\300(HVUU\000"}, {buffer = "0t{\354\377\177\000"}, {buffer = "X\020\000\000\000\000\000"}, {buffer = "\200\001\000\000\000\000\000"}, {buffer = "P\300\377\377\377\177\000"}, {buffer = "\377_{\354\377\177\000"}, {buffer = "\240\017\000\000\000\000\000"}, {buffer = "\000\324p
GIƯ\f"}, {buffer = "\001\000\000\000\000\000\000"}, {buffer = "зxUUU\000"}, {buffer = "\002\000\000\000\000\000\000"}, {buffer = "\200\001\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\002\000\000\000\000\000\000"}, {buffer = "\300(HVUU\000"}, {buffer = "0t{\354\377\177\000"}, {buffer = "\300(HVUU\000"}, {buffer = "\330\021\000\00
0\000\000\000"}, {buffer = "\001\000\000\000\000\000\000"}, {buffer = "X\020\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "@\000\000\000\001\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "зxUUU\000"}, {buffer = "P\300\377\377\377\177\000"}, {buffer = "\002\000\000\000\001\000\000"}, {buffer = "\260\n'VUU\000"}, {b
uffer = "\000\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\006\000\000\000\000\000\000"}, {buffer = "X\020\000\000\000\000\000"}, {buffer = "\000\000\000\000\377\177\000"}, {buffer = "X\020\000\000\000\000\000"}, {buffer = "\200\001\000\000\000\000\000"}, {buffer = "@\301\377\377\377\177\000"}, {buffer = "\377_{\354\377\177\0
00"}, {buffer = "\300BUVUU\000"}, {buffer = "\000\324pGIƯ\f"}, {buffer = "p\267\312VUU\000"}, {buffer = "зxUUU\000"}, {buffer = "\002\000\000\000\000\000\000"}, {buffer = "\200\001\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\002\000\000\000\000\000\000"}, {buffer = "\300(HVUU\000"}, {buffer = "0t{\354\377\177\000"}, {buffer = "\
300(HVUU\000"}, {buffer = "\330\021\000\000\000\000\000"}, {buffer = "\001\000\000\000\000\000\000"}, {buffer = "X\020\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\030\000\000\000\001\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "зxUUU\000"}, {buffer = "@\301\377\377\377\177\000"}, {buffer = "\002\000\000\000\0
01\000\000"}, {buffer = "\260\n'VUU\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\006\000\000\000\000\000\000"}, {buffer = "X\020\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\000\324pGIƯ\f"}, {buffer = "j\261\201\354\377\177\000"
}, {buffer = "p\267\312VUU\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "\001\000\000\000\000\000\000"}, {buffer = "\000\000\000\000\000\000\000"}, {buffer = "h\"\234UUU\000"}, {buffer = "\005\000\000\000\000\000\000"}, {buffer = "\311Y\340\367\377\177\000"}, {buffer = "\240\301\377\377\377\177\000"}, {buffer = "$\000\000\000\200\000\000"}}}, <No
data fields>}, TmpDir = {<llvm::SmallVector<char, 128>> = {<llvm::SmallVectorImpl<char>> = {<llvm::SmallVectorTemplateBase<char, true>> = {<llvm::SmallVectorTemplateCommon<char, void>> = {<llvm::SmallVectorBase> = {BeginX = 0x7fffffffc1b0, Size = 36, Capacity = 128}, <No data fields>}, <No data fields>}, <No data fields>}, <llvm::SmallVectorStorage<char, 128>> =
{InlineElts = {{buffer = "/"}, {buffer = "t"}, {buffer = "m"}, {buffer = "p"}, {buffer = "/"}, {buffer = "."}, {buffer = "p"}, {buffer = "r"}, {buffer = "i"}, {buffer = "v"}, {buffer = "a"}, {buffer = "t"}, {buffer = "e"}, {buffer = "/"}, {buffer = "d"}, {buffer = "s"}, {buffer = "c"}, {buffer = "h"}, {buffer = "r"}, {buffer = "i"}, {buffer = "d"}, {buffer = "d
"}, {buffer = "e"}, {buffer = "/"}, {buffer = "c"}, {buffer = "o"}, {buffer = "m"}, {buffer = "g"}, {buffer = "r"}, {buffer = "-"}, {buffer = "5"}, {buffer = "f"}, {buffer = "c"}, {buffer = "8"}, {buffer = "6"}, {buffer = "4"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "\301"}, {buffer = "\006"}, {buffer = ""}, {buffer = ""}, {buffer
= ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "K"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "U"}, {buffer = "U"}, {buffer = ""}, {buffer = ""}, {buffer = <incomplete sequence \360>}, {buffer = "\006"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "\033"}, {buffer = ""}, {buffer
= ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "m"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "K"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "n"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "|"}, {buffer = ""} <repeats 11 times>, {buffer = "^"}, {buffer = ""}, {buffer = ""}, {b
uffer = ""}, {buffer = "w"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "\003"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "0"}, {buffer = <incomplete sequence \302>}, {buffer = "\377"}, {buffer = "\377"}, {buffer = "\377"}, {buffer = "\177"}, {buffer = ""}, {buffer = ""}, {buff
er = "*"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "\200"}, {buffer = ""}, {buffer = ""}, {buffer = ""}}}, <No data fields>}, <No data fields>}, InputDir = {<llvm::SmallVector<char, 128>> = {<llvm::SmallVectorImpl<char>> = {<llvm::SmallVectorTemplateBase<char, true>> = {<llvm::SmallVectorTemplateCommon<char, void>> = {<llvm::SmallVectorBase> = {Be
ginX = 0x7fffffffc240, Size = 42, Capacity = 128}, <No data fields>}, <No data fields>}, <No data fields>}, <llvm::SmallVectorStorage<char, 128>> = {InlineElts = {{buffer = "/"}, {buffer = "t"}, {buffer = "m"}, {buffer = "p"}, {buffer = "/"}, {buffer = "."}, {buffer = "p"}, {buffer = "r"}, {buffer = "i"}, {buffer = "v"}, {buffer = "a"}, {buffer = "t"}, {buffer =
"e"}, {buffer = "/"}, {buffer = "d"}, {buffer = "s"}, {buffer = "c"}, {buffer = "h"}, {buffer = "r"}, {buffer = "i"}, {buffer = "d"}, {buffer = "d"}, {buffer = "e"}, {buffer = "/"}, {buffer = "c"}, {buffer = "o"}, {buffer = "m"}, {buffer = "g"}, {buffer = "r"}, {buffer = "-"}, {buffer = "5"}, {buffer = "f"}, {buffer = "c"}, {buffer = "8"}, {buffer = "6"}, {buff
er = "4"}, {buffer = "/"}, {buffer = "i"}, {buffer = "n"}, {buffer = "p"}, {buffer = "u"}, {buffer = "t"}, {buffer = <incomplete sequence \340>}, {buffer = <incomplete sequence \367>}, {buffer = "\377"}, {buffer = "\177"}, {buffer = ""}, {buffer = ""}, {buffer = "\300"}, {buffer = "\006"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}
, {buffer = ""}, {buffer = ""}, {buffer = "E"}, {buffer = "\177"}, {buffer = "U"}, {buffer = "U"}, {buffer = "U"}, {buffer = ""} <repeats 13 times>, {buffer = "\004"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "\020"}, {buffer = "\220"}, {buffer = <incomplete sequence \333>}, {buffer = <incomplete sequence \367>}, {buffer = "\377"}, {
buffer = "\177"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "\027"}, {buffer = "\201"}, {buffer = <incomplete sequence \313>}, {buffer = "V"}, {buffer = "U"}, {buffer = "U"}, {buffer = ""}, {buffer = ""}, {buffer = "\003"}, {buffer = ""}, {buffer
= ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "\033"}, {buffer = "\201"}, {buffer = <incomplete sequence \313>}, {buffer = "V"}, {buffer = "U"}, {buffer = "U"}, {buffer = ""}, {buffer = ""}, {buffer = "\006"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}}},
<No data fields>}, <No data fields>}, OutputDir = {<llvm::SmallVector<char, 128>> = {<llvm::SmallVectorImpl<char>> = {<llvm::SmallVectorTemplateBase<char, true>> = {<llvm::SmallVectorTemplateCommon<char, void>> = {<llvm::SmallVectorBase> = {BeginX = 0x7fffffffc2d0, Size = 43, Capacity = 128}, <No data fields>}, <No data fields>}, <No data fields>}, <llvm::SmallV
ectorStorage<char, 128>> = {InlineElts = {{buffer = "/"}, {buffer = "t"}, {buffer = "m"}, {buffer = "p"}, {buffer = "/"}, {buffer = "."}, {buffer = "p"}, {buffer = "r"}, {buffer = "i"}, {buffer = "v"}, {buffer = "a"}, {buffer = "t"}, {buffer = "e"}, {buffer = "/"}, {buffer = "d"}, {buffer = "s"}, {buffer = "c"}, {buffer = "h"}, {buffer = "r"}, {buffer = "i"}, {b
uffer = "d"}, {buffer = "d"}, {buffer = "e"}, {buffer = "/"}, {buffer = "c"}, {buffer = "o"}, {buffer = "m"}, {buffer = "g"}, {buffer = "r"}, {buffer = "-"}, {buffer = "5"}, {buffer = "f"}, {buffer = "c"}, {buffer = "8"}, {buffer = "6"}, {buffer = "4"}, {buffer = "/"}, {buffer = "o"}, {buffer = "u"}, {buffer = "t"}, {buffer = "p"}, {buffer = "u"}, {buffer = "t"}
, {buffer = <incomplete sequence \367>}, {buffer = "\377"}, {buffer = "\177"}, {buffer = ""}, {buffer = ""}, {buffer = "\001"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "\005"}, {buffer = ""} <repeats 16 times>, {buffer = " "}, {buffer = "}"}, {buffer = "g"}, {buffer = "\377"}, {buffer = "
\177"}, {buffer = ""} <repeats 13 times>, {buffer = "\004"}, {buffer = ""} <repeats 15 times>, {buffer = "\004"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "\020"}, {buffer = "\220"}, {buffer = <incomplete sequence \333>}, {buffer = <incomplete sequence \367>}, {buffer = "\377"}, {buffer = "\177"}, {buffer = ""}, {buffer = ""}, {buffe
r = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}}}, <No data fields>}, <No data fields>}, IncludeDir = {<llvm::SmallVector<char, 128>> = {<llvm::SmallVectorImpl<char>> = {<llvm::SmallVectorTemplateBase<char, true>> = {<llvm::SmallVectorTemplateCommon<char, void>> = {<llvm::SmallVectorBase> = {BeginX
= 0x7fffffffc360, Size = 44, Capacity = 128}, <No data fields>}, <No data fields>}, <No data fields>}, <llvm::SmallVectorStorage<char, 128>> = {InlineElts = {{buffer = "/"}, {buffer = "t"}, {buffer = "m"}, {buffer = "p"}, {buffer = "/"}, {buffer = "."}, {buffer = "p"}, {buffer = "r"}, {buffer = "i"}, {buffer = "v"}, {buffer = "a"}, {buffer = "t"}, {buffer = "e"
}, {buffer = "/"}, {buffer = "d"}, {buffer = "s"}, {buffer = "c"}, {buffer = "h"}, {buffer = "r"}, {buffer = "i"}, {buffer = "d"}, {buffer = "d"}, {buffer = "e"}, {buffer = "/"}, {buffer = "c"}, {buffer = "o"}, {buffer = "m"}, {buffer = "g"}, {buffer = "r"}, {buffer = "-"}, {buffer = "5"}, {buffer = "f"}, {buffer = "c"}, {buffer = "8"}, {buffer = "6"}, {buffer =
"4"}, {buffer = "/"}, {buffer = "i"}, {buffer = "n"}, {buffer = "c"}, {buffer = "l"}, {buffer = "u"}, {buffer = "d"}, {buffer = "e"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "g"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = <incomplete sequence \370>}, {buffer =
"\034"}, {buffer = "}"}, {buffer = <incomplete sequence \360>}, {buffer = "\377"}, {buffer = "\177"}, {buffer = ""}, {buffer = ""}, {buffer = "c"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "\216"}, {buffer = "\001"}, {buffer = ""}, {buffer = ""}, {buffer = "\223"}, {buffer = ""}, {buffer
= ""}, {buffer = ""}, {buffer = "\300"}, {buffer = "="}, {buffer = "\227"}, {buffer = <incomplete sequence \360>}, {buffer = "\377"}, {buffer = "\177"}, {buffer = ""}, {buffer = ""}, {buffer = "\001"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "0"}, {buffer = "5"}, {buffer = "\226"}, {buffe
r = <incomplete sequence \360>}, {buffer = "\377"}, {buffer = "\177"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = <incomplete sequence \324>}, {buffer = "p"}, {buffer = "G"}, {buffer = "I"}, {buffer = <incomplete sequence \306>}, {buffer = "\257"}, {buffer = "\f"}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = ""}, {buffer = "
"}, {buffer = ""}, {buffer = ""}, {buffer = "\225"}, {buffer = <incomplete sequence \322>}, {buffer = <incomplete sequence \367>}, {buffer = "f"}, {buffer = "\377"}, {buffer = "\177"}, {buffer = ""}, {buffer = ""}}}, <No data fields>}, <No data fields>}, LogS = @0x7fffffffc540}
#17 0x00007fff66f82569 in amd_comgr_do_action (ActionKind=AMD_COMGR_ACTION_CODEGEN_BC_TO_RELOCATABLE, ActionInfo=..., InputSet=..., ResultSet=...) at /tmp/portage/dev-libs/rocm-comgr-3.5.0/work/ROCm-CompilerSupport-rocm-3.5.0/lib/comgr/src/comgr.cpp:1135
ActionInfoP = <optimized out>
InputSetP = <optimized out>
ResultSetP = <optimized out>
LogStr = ""
LogS = <incomplete type>
LogF = <optimized out>
LogP = 0x7fffffffc540
ActionStatus = <optimized out>
#18 0x00007fffec7e823c in amd::Comgr::do_action (result=..., input=..., info=..., kind=AMD_COMGR_ACTION_CODEGEN_BC_TO_RELOCATABLE) at /tmp/portage/dev-libs/rocclr-3.5.0/work/ROCclr-roc-3.5.0/device/comgrctx.hpp:245
No locals.
#19 device::Program::compileAndLinkExecutable (this=0x5555559c21d0, inputs=..., options=..., amdOptions=0x7fffffffd040, executable=0x7fffffffc860, executableSize=0x7fffffffc868) at /tmp/portage/dev-libs/rocclr-3.5.0/work/ROCclr-roc-3.5.0/device/devprogram.cpp:597
targetIdent = "amdgcn-amd-amdhsa--gfx902+xnack"
action = {handle = 93824999896288}
output = {handle = 93825010148464}
relocatableData = {handle = 93824995400960}
hasAction = true
hasOutput = <optimized out>
hasRelocatableData = true
status = AMD_COMGR_STATUS_SUCCESS
#20 0x00007fffec7eb629 in device::Program::linkImplLC (this=0x5555559c21d0, options=0x7fffffffd040) at /tmp/portage/dev-libs/rocclr-3.5.0/work/ROCclr-roc-3.5.0/device/devprogram.cpp:1259
continueCompileFrom = <optimized out>
inputs = {handle = 93825010147984}
bLinkLLVMBitcode = <optimized out>
codegenOptions = std::vector of length 7, capacity 8 = {"-O3", "-cl-kernel-arg-info", "-mno-sram-ecc", "-mllvm", "-amdgpu-internalize-symbols", "-mcumode", "-mwavefrontsize64"}
splitLlvmOptions = std::vector of length 0, capacity 0
optLevel = {<std::basic_ostream<char, std::char_traits<char> >> = {<std::basic_ios<char, std::char_traits<char> >> = {<std::ios_base> = {_vptr.ios_base = 0x7ffff0968ed0 <vtable for std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >+64>, static boolalpha = std::_S_boolalpha, static dec = std::_S_dec, static fixed = std:
:_S_fixed, static hex = std::_S_hex, static internal = std::_S_internal, static left = std::_S_left, static oct = std::_S_oct, static right = std::_S_right, static scientific = std::_S_scientific, static showbase = std::_S_showbase, static showpoint = std::_S_showpoint, static showpos = std::_S_showpos, static skipws = std::_S_skipws, static unitbuf = std::_S_un
itbuf, static uppercase = std::_S_uppercase, static adjustfield = std::_S_adjustfield, static basefield = std::_S_basefield, static floatfield = std::_S_floatfield, static badbit = std::_S_badbit, static eofbit = std::_S_eofbit, static failbit = std::_S_failbit, static goodbit = std::_S_goodbit, static app = std::_S_app, static ate = std::_S_ate, static binary =
std::_S_bin, static in = std::_S_in, static out = std::_S_out, static trunc = std::_S_trunc, static beg = std::_S_beg, static cur = std::_S_cur, static end = std::_S_end, _M_precision = 6, _M_width = 0, _M_flags = 4098, _M_exception = std::_S_goodbit, _M_streambuf_state = std::_S_goodbit, _M_callbacks = 0x0, _M_word_zero = {_M_pword = 0x0, _M_iword = 0}, _M_loc
al_word = {{_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}}, _M_word_size = 8, _M_word = 0x7fffffffc980, _M_ios_locale = {static none = 0, static ctype = 1,
static numeric = 2, static collate = 4, static time = 8, static monetary = 16, static messages = 32, static all = 63, _M_impl = 0x7ffff09743a0 <(anonymous namespace)::c_locale_impl>, static _S_classic = 0x7ffff09743a0 <(anonymous namespace)::c_locale_impl>, static _S_global = 0x7ffff09743a0 <(anonymous namespace)::c_locale_impl>, static _S_categories = 0x7ffff09
5fea0 <__gnu_cxx::category_names>, static _S_once = 2, static _S_twinned_facets = 0x7ffff0961c60 <std::locale::_S_twinned_facets>}}, _M_tie = 0x0, _M_fill = 0 '\000', _M_fill_init = false, _M_streambuf = 0x7fffffffc8d8, _M_ctype = 0x7ffff0973dc0 <(anonymous namespace)::ctype_c>, _M_num_put = 0x7ffff0973d50 <(anonymous namespace)::num_put_c>, _M_num_get = 0x7ffff
0973d60 <(anonymous namespace)::num_get_c>}, _vptr.basic_ostream = 0x7ffff0968ea8 <vtable for std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >+24>}, _M_stringbuf = {<std::basic_streambuf<char, std::char_traits<char> >> = {_vptr.basic_streambuf = 0x7ffff0968cf0 <vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<
char>, std::allocator<char> >+16>, _M_in_beg = 0x0, _M_in_cur = 0x0, _M_in_end = 0x0, _M_out_beg = 0x7fffffffc930 "-O3\360\377\177", _M_out_cur = 0x7fffffffc933 "\360\377\177", _M_out_end = 0x7fffffffc93f "", _M_buf_locale = {static none = 0, static ctype = 1, static numeric = 2, static collate = 4, static time = 8, static monetary = 16, static messages = 32, st
atic all = 63, _M_impl = 0x7ffff09743a0 <(anonymous namespace)::c_locale_impl>, static _S_classic = 0x7ffff09743a0 <(anonymous namespace)::c_locale_impl>, static _S_global = 0x7ffff09743a0 <(anonymous namespace)::c_locale_impl>, static _S_categories = 0x7ffff095fea0 <__gnu_cxx::category_names>, static _S_once = 2, static _S_twinned_facets = 0x7ffff0961c60 <std::
locale::_S_twinned_facets>}}, _M_mode = std::_S_out, _M_string = ""}}
executable = 0x0
executableSize = 0
ret = <optimized out>
#21 0x00007fffec7efba2 in device::Program::linkImpl (options=0x7fffffffd040, this=0x5555559c21d0) at /tmp/portage/dev-libs/rocclr-3.5.0/work/ROCclr-roc-3.5.0/device/devprogram.cpp:1091
No locals.
#22 device::Program::build (this=this@entry=0x5555559c21d0, sourceCode="#define GWO(type) global type* restrict\n#define GRO(type) global const type* restrict\n#define BODY int i = get_global_id(0); out[i] = in1[i] + in2[i]\n#define _KRN(T, N) void kernel sum##N(GWO(T##N) ou"..., origOptions=origOptions@entry=0x0, options=options@entry=0x7fffffffd040) at /tmp/po
rtage/dev-libs/rocclr-3.5.0/work/ROCclr-roc-3.5.0/device/devprogram.cpp:1691
start_time = 0
headers = std::vector of length 0, capacity 0
#23 0x00007fffec79f362 in amd::Program::build (this=this@entry=0x555555980560, devices=std::vector of length 1, capacity 1 = {...}, options=options@entry=0x0, notifyFptr=notifyFptr@entry=0x0, data=data@entry=0x0, optionChangable=optionChangable@entry=true) at /tmp/portage/dev-libs/rocclr-3.5.0/work/ROCclr-roc-3.5.0/platform/program.cpp:549
parsedOptions = {origOptionStr = "", oVariables = 0x555555ca0c30, clcOptions = "", clangOptions = std::vector of length 1, capacity 1 = {"-cl-kernel-arg-info"}, llvmOptions = "", finalizerOptions = std::vector of length 0, capacity 0, WorkGroupSize = {256, 1, 1}, NumAvailGPRs = 64, kernelArgAlign = 0, fullPath = "", baseName = "_temp_0_gfx902", basename_
max = 255, OptionsLog = "", flagsSize = 160, flags = {0, 0, 0, 0, 0}, llvmargc = 0, llvmargv = 0x0, buildNo = 0, dumpFileRoot = "_temp_0_gfx902", currKernelName = 0x0, encryptCode = 0, MemoryHandles = std::vector of length 0, capacity 0, UseDefaultWGS = true, libraryType_ = amd::LibraryUndefined, sourceFileName_ = ""}
LinkOptsOnly = false
devProgram = 0x5555559c21d0
result = <optimized out>
it = @0x55555581a5f0: 0x555555738280
__for_range = std::vector of length 1, capacity 1 = {0x555555738280}
__for_begin = <optimized out>
__for_end = <optimized out>
sl = <optimized out>
retval = 0
cppstr = ""
#24 0x00007fffec7577ed in clBuildProgram (program=0x555555980570, num_devices=<optimized out>, device_list=0x7fffffffd3c8, options=0x0, pfn_notify=0x0, user_data=0x0) at /tmp/portage/dev-libs/rocm-opencl-runtime-3.5.0/work/ROCm-OpenCL-Runtime-roc-3.5.0/amdocl/cl_program.cpp:519
amdProgram = 0x555555980560
devices = std::vector of length 1, capacity 1 = {0x555555738280}
thread = <optimized out>
#25 0x00005555555607a9 in getWGsizes (ret=0x7fffffffd3e0, loc=0x7fffffffd3a0, wgm=0x7fffffffd370, wgm_sz=1, output=<optimized out>) at src/clinfo.c:1174
log_err = <optimized out>
ctxpft = {4228, 140737161546992, 0, 0}
cursor = 0
ctx = 0x5555565da9c0
prg = 0x555555980570
krn = 0x0
__func__ = "getWGsizes"
#26 0x0000555555560be0 in device_info_wg (ret=0x7fffffffd3e0, loc=<optimized out>, chk=<optimized out>, output=<optimized out>) at src/clinfo.c:1230
wgm = {0}
#27 0x0000555555561354 in printDeviceInfo (dev=<optimized out>, plist=<optimized out>, p=<optimized out>, param_whitelist=0x0, output=0x7fffffffd860) at src/clinfo.c:2327
traits = 0x55555556d9c0 <dinfo_traits+1920>
checked = 1
extensions = 0x555555789c20 "cl_khr_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_at"...
extensions_traits = 0x55555556d360 <dinfo_traits+288>
chk = {pinfo_checks = 0x555555789fdc, devtype = 4, cachetype = 0, lmemtype = 0, image_support = 0, compiler_available = 1, has_half = "cl_khr_fp16", has_double = "cl_khr_fp64", '\000' <repeats 12 times>, has_nv = '\000' <repeats 28 times>, has_amd = "cl_amd_device_attribute_query", has_amd_svm = "\000\000\000\000\000\000\000\000\000\000", has_arm_svm = '
\000' <repeats 28 times>, has_fission = '\000' <repeats 21 times>, has_atomic_counters = '\000' <repeats 25 times>, has_image2d_buffer = "cl_khr_image2d_from_buffer", has_il_program = '\000' <repeats 17 times>, has_intel_local_thread = '\000' <repeats 29 times>, has_intel_AME = '\000' <repeats 35 times>, has_intel_AVC_ME = '\000' <repeats 42 times>, has_intel_pl
anar_yuv = '\000' <repeats 19 times>, has_intel_required_subgroup_size = '\000' <repeats 31 times>, has_altera_dev_temp = '\000' <repeats 28 times>, has_p2p = "cl_amd_copy_buffer_p2p", has_spir = '\000' <repeats 11 times>, has_qcom_ext_host_ptr = '\000' <repeats 20 times>, has_simultaneous_sharing = '\000' <repeats 29 times>, has_subgroup_named_barrier = '\000'
<repeats 29 times>, has_terminate_context = '\000' <repeats 24 times>, dev_version = 20}
ret = {err = 0, str = {buf = 0x555555941540 "", sz = 1024}, err_str = {buf = 0x55555584c220 "", sz = 1024}, value = {s = 1024, i64 = 1024, u64 = 1024, i32 = 1024, u32 = 1024, u32v = {s = {1024, 0, 0, 0}, v2 = {{1024, 0}, {0, 0}}, v4 = {1024, 0, 0, 0}}, b = 1024, devtype = 1024, cachetype = 1024, lmemtype = 1024, devtopo = {raw = {type = 1024, data = {0,
0, 0, 0, 2560}}, pcie = {type = 1024, unused = '\000' <repeats 16 times>, bus = 10 '\n', device = 0 '\000', function = 0 '\000'}}, affinity_domain = 1024, fpconfig = 1024, qprop = 1024, execap = 1024, svmcap = 1024, termcap = 1024}, base = {ptr = 0xff0000000000, ctx = 0xff0000000000}}
loc = {function = 0x555555568640 <__func__.8> "printDeviceInfo", sname = 0x555555566cc8 "CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE", pname = 0x555555566cf8 "Preferred work group size multiple", line = 40, plat = 0x7fffec854cf0 <amd::PlatformID::Platform>, dev = 0x555555738290, param = {plat = 4531, dev = 4531, icdl = 4531}}
__func__ = "printDeviceInfo"
#28 0x0000555555561d36 in printPlatformDevices (plist=0x7fffffffd880, p=1, device=0x555555789e10, ndevs=1, str=<optimized out>, output=0x7fffffffd860, these_are_offline=0) at src/clinfo.c:2536
dev = <optimized out>
pdata = 0x555555789478
param_whitelist = 0x0
d = 0
#29 0x000055555556204a in showDevices (plist=0x7fffffffd880, output=0x7fffffffd860) at src/clinfo.c:2582
num_platforms = 4294956960
maxdevs = <optimized out>
pdata = <optimized out>
p = 1
str = {buf = 0x5555557894a0 "", sz = 1024}
__func__ = "showDevices"
#30 0x000055555555a2e8 in main (argc=<optimized out>, argv=<optimized out>) at src/clinfo.c:3213
p = <optimized out>
err = <optimized out>
a = <optimized out>
output = {mode = CLINFO_HUMAN, cond = COND_PROP_CHECK, brief = 0, detailed = 1, offline = 0, check_size = 0}
plist = {num_platforms = 2, ndevs_total = 3, alloc_devs = 3, max_plat_version = 20, max_devs = 2, max_sname_len = 4, platform = 0x5555556a3c00, all_devs = 0x555555789e00, dev_offset = 0x555555789fb0, pdata = 0x555555789460, platform_checks = 0x555555789fd0}
__func__ = "main"
When I rebuild / reinstall Mesa, Clover's information gets output last and we see a little more of Radeon Open Compute's output:
Number of platforms 2
Platform Name AMD Accelerated Parallel Processing
Platform Vendor Advanced Micro Devices, Inc.
Platform Version OpenCL 2.0 AMD-APP.dbg (3137.0)
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_icd cl_amd_event_callback
Platform Extensions function suffix AMD
Platform Name Clover
Platform Vendor Mesa
Platform Version OpenCL 1.1 Mesa 20.1.3
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_icd
Platform Extensions function suffix MESA
Platform Name AMD Accelerated Parallel Processing
Number of devices 1
Device Name gfx902+xnack
Device Vendor Advanced Micro Devices, Inc.
Device Vendor ID 0x1002
Device Version OpenCL 2.0
Driver Version 3137.0 (HSA1.1,LC)
Device OpenCL C Version OpenCL C 2.0
Device Type GPU
Device Board Name (AMD) AMD Ryzen 5 2400G with Radeon Vega Graphics
Device Topology (AMD) PCI-E, 0a:00.0
Device Profile FULL_PROFILE
Device Available Yes
Compiler Available Yes
Linker Available Yes
Max compute units 11
SIMD per compute unit (AMD) 4
SIMD width (AMD) 16
SIMD instruction width (AMD) 1
Max clock frequency 1250MHz
Graphics IP (AMD) 9.2
Device Partition (core)
Max number of sub-devices 11
Supported partition types None
Supported affinity domains (n/a)
Max work item dimensions 3
Max work item sizes 1024x1024x1024
Max work group size 256
Preferred work group size (AMD) 256
Max work group size (AMD) 1024
Preferred work group size multiple 64
Wavefront width (AMD) 64
Preferred / native vector sizes
char 4 / 4
short 2 / 2
int 1 / 1
long 1 / 1
half 1 / 1 (cl_khr_fp16)
float 1 / 1
double 1 / 1 (cl_khr_fp64)
Half-precision Floating-point support (cl_khr_fp16)
Denormals No
Infinity and NANs No
Round to nearest No
Round to zero No
Round to infinity No
IEEE754-2008 fused multiply-add No
Support is emulated in software No
Single-precision Floating-point support (core)
Denormals Yes
Infinity and NANs Yes
Round to nearest Yes
Round to zero Yes
Round to infinity Yes
IEEE754-2008 fused multiply-add Yes
Support is emulated in software No
Correctly-rounded divide and sqrt operations Yes
Double-precision Floating-point support (cl_khr_fp64)
Denormals Yes
Infinity and NANs Yes
Round to nearest Yes
Round to zero Yes
Round to infinity Yes
IEEE754-2008 fused multiply-add Yes
Support is emulated in software No
Address bits 64, Little-Endian
Global memory size 7233757184 (6.737GiB)
Global free memory (AMD) 7064216 (6.737GiB)
Global memory channels (AMD) 2
Global memory banks per channel (AMD) 4
Global memory bank width (AMD) 256 bytes
Error Correction support No
Max memory allocation 6148693606 (5.726GiB)
Unified memory for Host and Device Yes
Shared Virtual Memory (SVM) capabilities (core)
Coarse-grained buffer sharing Yes
Fine-grained buffer sharing Yes
Fine-grained system sharing Yes
Atomics No
Minimum alignment for any data type 128 bytes
Alignment of base address 1024 bits (128 bytes)
Preferred alignment for atomics
SVM 0 bytes
Global 0 bytes
Local 0 bytes
Max size for global variable 6148693606 (5.726GiB)
Preferred total size of global vars 7233757184 (6.737GiB)
Global Memory cache type Read/Write
Global Memory cache size 16384 (16KiB)
Global Memory cache line size 64 bytes
Image support No
Base address alignment for 2D image buffers 0 bytes
Pitch alignment for 2D image buffers 0 pixels
Max number of pipe args 16
Max active pipe reservations 16
Max pipe packet size 1853726310 (1.726GiB)
Local memory type Local
Local memory size 65536 (64KiB)
Local memory syze per CU (AMD) 65536 (64KiB)
Local memory banks (AMD) 32
Max number of constant args 8
Max constant buffer size 6148693606 (5.726GiB)
Preferred constant buffer size (AMD) 16384 (16KiB)
Max size of kernel argument 1024
Queue properties (on host)
Out-of-order execution No
Profiling Yes
Queue properties (on device)
Out-of-order execution Yes
Profiling Yes
Preferred size 262144 (256KiB)
Max size 8388608 (8MiB)
Max queues on device 1
Max events on device 1024
Prefer user sync for interop Yes
Number of P2P devices (AMD) 0
P2P devices (AMD) <printDeviceInfo:147: get number of CL_DEVICE_P2P_DEVICES_AMD : error -30>
Profiling timer resolution 1ns
Profiling timer offset since Epoch (AMD) 0ns (Thu Jan 1 01:00:00 1970)
Execution capabilities
Run OpenCL kernels Yes
Run native kernels No
Thread trace supported (AMD) No
Number of async queues (AMD) 8
Max real-time compute queues (AMD) 8
Max real-time compute units (AMD) 11
printf() buffer size 4194304 (4MiB)
Built-in kernels (n/a)
Device Extensions cl_khr_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_fp16 cl_khr_gl_sharing cl_amd_device_attribute_q
uery cl_amd_media_ops cl_amd_media_ops2 cl_khr_image2d_from_buffer cl_khr_subgroups cl_khr_depth_images cl_amd_copy_buffer_p2p cl_amd_assembly_program
Platform Name Clover
Number of devices 2
Device Name Radeon RX 560 Series (POLARIS11, DRM 3.37.0, 5.7.7, LLVM 10.0.0)
Device Vendor AMD
Device Vendor ID 0x1002
Device Version OpenCL 1.1 Mesa 20.1.3
Driver Version 20.1.3
Device OpenCL C Version OpenCL C 1.1
Device Type GPU
Device Profile FULL_PROFILE
Device Available Yes
Compiler Available Yes
Max compute units 16
Max clock frequency 1210MHz
Max work item dimensions 3
Max work item sizes 256x256x256
Max work group size 256
Otherwise (i.e. with respect to the exception and the segfault) the behaviour is the same in both orders.
Regression
I never got OpenCL to work on this system. Still working on it. :)
Logs
When running clinfo
, I see in dmesg
:
[Fri Jul 10 20:12:32 2020] Evicting PASID 0x801a queues
[Fri Jul 10 20:12:32 2020] Evicting PASID 0x801a queues
[Fri Jul 10 20:13:00 2020] [drm] PCIE GART of 256M enabled (table at 0x000000F400000000).
[Fri Jul 10 20:13:00 2020] [drm] UVD and UVD ENC initialized successfully.
[Fri Jul 10 20:13:00 2020] [drm] VCE initialized successfully.
[Fri Jul 10 20:13:00 2020] amdgpu 0000:01:00.0: [drm] Cannot find any crtc or sizes
[Fri Jul 10 20:13:04 2020] Alloc host visible vram on small bar is not allowed
[Fri Jul 10 20:16:01 2020] Evicting PASID 0x801a queues
[Fri Jul 10 20:16:01 2020] Evicting PASID 0x801a queues
[Fri Jul 10 20:16:06 2020] Alloc host visible vram on small bar is not allowed
Extra information
I also see an exception being thrown from Mesa Clover, but that does not stop clinfo
as it seems to be caught by Mesa: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3255/-/issues/3255
rocminfo
also fails with an assertion: ROCm/ROCR-Runtime#97
Hi,
I have the exact same issue. Is there any workaround for this or we just have to wait for a fix ?
(on AMD Ryzen 7 1700X linux 5.8.5-gentoo on a Vega64 (Vega 10 XL/XT) Liquid cooled)
my gentoo tells me I have rocm comgr 3.7.0. does it include the patch referenced as closed ?
I would like to also add that after a ln -s trick to redirect /usr/lib/llvm/roc to /usr/lib/llvm/10 (essentially redirecting all attempt to reach llvm roc toward my system llvm10) it does avoid the crash but softwares like DaVinci Resolve or blender still can't use it. Not sure how that help but just in case...
Also might be interesting to note: I recompiled llvm-roc with debug flags and now instead of SEGV I get clinfo: /var/tmp/portage/sys-devel/llvm-roc-3.7.0-r1/work/llvm-project-rocm-3.7.0/llvm/include/llvm/Support/CommandLine.h:852: void llvm::cl::parser<DataType>::addLiteralOption(llvm::StringRef, const DT&, llvm::StringRef) [with DT = llvm::FunctionPass* (*)(); DataType = llvm::FunctionPass* (*)()]: Assertion 'findOption(Name) == Values.size() && "Option already exists!"' failed.
right at the start.
I don't know if any current issues with clinfo. If anyone is still hitting errors with this please comment and I will reopen!