[PATCH] D108943: Fine grain control over some symbol visibility

Reid Kleckner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 1 12:46:57 PDT 2021


rnk added a comment.

In D108943#2977678 <https://reviews.llvm.org/D108943#2977678>, @MaskRay wrote:

> Such -fvisibility=hidden built shared objects export very few dynamic symbols (API) so may not be usable by other shared objects...
> But perhaps your setup doesn't require the built libLLVM.so to be used by others.

I believe in the current cmake build that `-fvisibility=hidden` is only passed into compile actions in lib/Target/*. The intention is to eliminate backend library symbols, but expose all other LLVM symbols. It's a coarse grained way of annotating the LLVM API. I'm guessing the problem is that, for those compiles, they see `llvm::Function` as a hidden class, when really it is intended to be visible.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D108943/new/

https://reviews.llvm.org/D108943



More information about the llvm-commits mailing list