Page MenuHomePhabricator

[VE] Fix initializer visibility

Authored by trofi on Sat, Oct 17, 12:30 PM.



Before the change attempt to link against shared
LLVM library failed as:

[ 76%] Linking CXX shared library ../../lib/
... /usr/bin/cmake -E cmake_link_script CMakeFiles/LTO.dir/link.txt --verbose=1
c++ -o
ld: CMakeFiles/LTO.dir/lto.cpp.o: in function `llvm::InitializeAllTargetInfos()':
include/llvm/Config/Targets.def:31: undefined reference to `LLVMInitializeVETargetInfo'

It happens because on linux llvm build system sets default
symbol visibility to "hidden". The fix is to set visibility
back to "default" for exported APIs with LLVM_EXTERNAL_VISIBILITY.

Signed-off-by: Sergei Trofimovich <>

Diff Detail

Event Timeline

trofi created this revision.Sat, Oct 17, 12:30 PM
trofi requested review of this revision.Sat, Oct 17, 12:30 PM
simoll accepted this revision.Mon, Oct 19, 2:18 AM


This revision is now accepted and ready to land.Mon, Oct 19, 2:18 AM
This revision was landed with ongoing or failed builds.Mon, Oct 19, 2:55 PM
This revision was automatically updated to reflect the committed changes.