<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/62832>62832</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
AMDGPU/TeraScale: Mesa Clover OpenCL crashes on llvm::TargetInstrInfo::ReplaceTailWithBranchTo()
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
Mek101
</td>
</tr>
</table>
<pre>
Originally posted here: https://github.com/void-linux/void-packages/issues/43921
Running some models causes Mesa's OpenCL implementation for TeraScale (Clover) to call `llvm::TargetInstrInfo::ReplaceTailWithBranchTo()` from `/usr/lib/libLLVM-15.so`, which itself is provided by `libllvm` version 15. This call causes a segmentation fault (verified via `gdb`).
To reproduce the bug:
- Use a TeraScale 3 GPU.
- Ensure Mesa uses Clover as an OpenCL implementation with llvm 15.
- Download an affected TensorFlow Lite model ([squeezenet](https://tfhub.dev/tensorflow/lite-model/squeezenet/1/default/1) for example).
- Compile TensorFlow Lite's benchmark with GPU support.
- Run it with the --use_gpu=true --gpu_backend="cl" options.
- Observe the segmentation fault
In my particular case I'm using an old Radeon 8670D, a Terascale 3 iGPU with the radeon kernel driver.
Since segmentation faults are typically caused by null-pointer dereferencing in CPU code I tried to solve the problem in the linked issue by patching llvm with a backport of https://github.com/llvm/llvm-project/commit/17069608940d22cd6266afb948443b11793f0a57, but the segmentation fault still occurred.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJykVctu4zYXfhp6c2BDomTZXHiRiX8HARIkyDh_lwOKPJJYU6TKiz3p0xek3CS9TIGiG1kSqePvpk_ce9UbxB1ZfyHr_YLHMFi3e8RTWZSL1sq33ZNTvTJc6zeYrA8oYUCHpLqBIYTJk-qG0AOhh16FIbYrYUdCD2er5FIrE7__fjFxceI9ekIPyvuYT-qK0ZIUe1LczMeXaIwyPXg7IoxWovYgePTo4RE9J3Tj4WlCc_sAapw0jmgCD8oa6KyDIzr-VXCNQOj2VtszOkIZBAuCaw2kKbQ-jwlwdXPkrsdwb3xw96az880XnDQXeORK_6TC8MVxI4ajJXRLKCNNAZ2zY5pD6CF6R-hBq3Y-Pjz8_3FZrlfe5uVbuAxKDKCCR92B8jA5e1YSJbRvGYlqM5imgDM6nyiU6xUcB-VntFfaHDz2n2jyqEOid0anOoUSzoqneb1s8x-z1Wc9jxYcTs7KKBDCgNDGPlHNi7CEV4_AP-lWwd3z6-p9-X_GR4dZeshoZlGBe-DmB0ZcVBggUUt83ift7cVoy2V6jncdipSjIxpv3UHbCzyocDU8kSPrL_6XiPgrGgxkvSd0-8eshS5FTeI5necpnbaX7ETAZZ5D6OHTDHooCT1IzPrNVyxnBr_zhP9DOFjCrR0npfHP-HL6WjRiGLk7zUTvnl_Bx2myLnw8_xINqDBvSKIvl9Hjt36KpNoHF9ONforfWi5OaCSp9oRSoQmlYKekof8Y9dR6dOfZu78G4bPV9wbGN5i4C0pEzR0I7hHuCd2MEH16qbgBqyW8cInWwLbZFPsU1Nl_f_VfJUbvyN2894TOoAbp1BndFdxXZcTfYfLAHUJ4m5TInZFznFNvotbLySoT0IFEhx06NCJBUwZun19BWIlwD8GlYAcL3uor98nZVuOYNqZLrcwJJeQiSaMnHsSQBuXgZfgckr7JGLDdP1VVfg3nn-Xk7M8oUkCEHUeVk7IpGtYUW1YXklIhG9o0vGtZva3rqi3LDau6gq83Sco2hh84BT4orcEKEZ1DuVrIXSVZxfgCd2WzrZumrNZ0MewKVm472rG27ljFaNttkdbINpSzmm3LbqF2tKBVsaZlwSgr6YpvOmRSiopukBVdTeoCR670KjFaWdcvsky7hm4rutC8Re1z3VNq8DJrSChN7e92WYU29p7UhVY--I8pQQWNu5vH_d3zK6GH99JIX4LcENdyuNaCcNwP6MEa-C-tu4hO7_61e-9fmEz6twAAAP__u1xEcQ">