[all-commits] [llvm/llvm-project] a4441f: [mlir][vulkan-runner] Avoid dependency on LLVM lib...

Lei Zhang via All-commits all-commits at lists.llvm.org
Wed May 13 10:43:05 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: a4441fcd12a6c097cca1f8cff6515b9ea9ae3cee
      https://github.com/llvm/llvm-project/commit/a4441fcd12a6c097cca1f8cff6515b9ea9ae3cee
  Author: Lei Zhang <antiagainst at google.com>
  Date:   2020-05-13 (Wed, 13 May 2020)

  Changed paths:
    M mlir/tools/mlir-vulkan-runner/CMakeLists.txt
    M mlir/tools/mlir-vulkan-runner/VulkanRuntime.cpp
    M mlir/tools/mlir-vulkan-runner/VulkanRuntime.h
    M mlir/tools/mlir-vulkan-runner/vulkan-runtime-wrappers.cpp

  Log Message:
  -----------
  [mlir][vulkan-runner] Avoid dependency on LLVM libraries

The Vulkan runtime wrapper will be compiled to a shared library
that are loaded by the JIT runner. Depending on LLVM libraries
means that LLVM symbols will be compiled into the shared library.
That can cause problems if we are using it with other shared
libraries depending on LLVM, notably Mesa, the open-source graphics
driver framework. The Vulkan API wrappers invoked by the JIT runner
links to the system libvulkan.so. If it's Mesa providing the
implementation, Mesa will normally try to load the system libLLVM.so
for its shader compilation. That causes issues because the JIT runner
already loaded the Vulkan runtime wrapper which has LLVM sybmols
compiled in. So system linker will instruct Mesa to use those symbols
instead.

Differential Revision: https://reviews.llvm.org/D79860




More information about the All-commits mailing list