[llvm-dev] llvm-6 change from inlining to relocations causing ImageMagick+mesa crash

James Harvey via llvm-dev llvm-dev at lists.llvm.org
Sun Jun 2 17:06:17 PDT 2019

ImageMagick + mesa provided OpenCL has been failing for many people
for some time now.  See

It was tracked down that ImageMagick commit 41a3cc9 and Mesa commit
9baacf were involved.

There's been discussion about this on the Mesa list.  See

Mesa dev Jan Vesely says behavior changed in llvm-6 that started
causing GPU hangs/crashes in some situations, and their commit was
just to prevent those.

Specifically: "AMDGPU llvm backend used to inline all function calls
until llvm-6. llvm-6+ uses functions calls and issues relocations for
each function invocation. unhandled relocations lead to GPU
hangs/crashes. either clover/mesa needs to handle relocations, or LLVM
needs to stop using relocations for internal symbols (they are not

I don't know all the specifics, of course, but it sounds like even if
ImageMagick or mesa could be changed as a workaround, that the
ultimate cause was a change in llvm-6 that is causing crashes and
should be addressed.

I'm trying to bring the 3 involved projects together.  At this time,
we unfortunately don't have a specific llvm commit where the failure
started.  If it's needed, please ask.  It's not something I'd be able
to bisect, but I'd be able to see if I could find someone involved who

More information about the llvm-dev mailing list