<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Then again, I doubt that this issue is static llvm specific. Most<br>
likely in the shared llvm case, we were producing libraries with<br>
unresolved symbols and those were implicitly resolved by something<br>
else ?<br></blockquote><div><br></div></div>With swr specifically, the implementation is broken out into a separate libswrAVX.so and libswrAVX2.so, one of which is chosen and loaded at run-time.  LLVM is linked into libGL but prior to this patch, not into libswr*, so libswr had unresolved LLVM symbols.  When linking to a shared libLLVM, when libswr gets loaded at runtime then the symbols get resolved by the libLLVM.so linked to by libGL.  Obviously this doesn't work when the LLVM libs are linked statically into libGL since libGL isn't exporting those symbols.<br></div></div>