HomePhabricator

[VE] Fix initializer visibility

Authored by trofi on Oct 19 2020, 2:51 PM.

Description

[VE] Fix initializer visibility

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

[ 76%] Linking CXX shared library ../../lib/libLTO.so
... /usr/bin/cmake -E cmake_link_script CMakeFiles/LTO.dir/link.txt --verbose=1
c++ -o ...libLTO.so.12git ...ibLLVM-12git.so
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.

Bug: https://bugs.llvm.org/show_bug.cgi?id=47847

Reviewed By: simoll

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

Details

Committed
trofiOct 19 2020, 2:54 PM
Reviewer
simoll
Differential Revision
D89633: [VE] Fix initializer visibility
Parents
rG52bcd691cb19: Recommit "[CUDA][HIP] Defer overloading resolution diagnostics for host deviceā€¦
Branches
Unknown
Tags
Unknown