[llvm] Initial changes for llvm shared library build using explicit visibility annotations (PR #96630)
Saleem Abdulrasool via llvm-commits
llvm-commits at lists.llvm.org
Wed Aug 14 09:03:03 PDT 2024
================
@@ -125,18 +126,79 @@
#define LLVM_ATTRIBUTE_VISIBILITY_DEFAULT
#endif
-
-#if (!(defined(_WIN32) || defined(__CYGWIN__)) || \
- (defined(__MINGW32__) && defined(__clang__)))
-#define LLVM_LIBRARY_VISIBILITY LLVM_ATTRIBUTE_VISIBILITY_HIDDEN
#if defined(LLVM_BUILD_LLVM_DYLIB) || defined(LLVM_BUILD_SHARED_LIBS)
#define LLVM_EXTERNAL_VISIBILITY LLVM_ATTRIBUTE_VISIBILITY_DEFAULT
#else
#define LLVM_EXTERNAL_VISIBILITY
#endif
+
+#if (!(defined(_WIN32) || defined(__CYGWIN__)) || \
+ (defined(__MINGW32__) && defined(__clang__)))
+#define LLVM_LIBRARY_VISIBILITY LLVM_ATTRIBUTE_VISIBILITY_HIDDEN
+#define LLVM_ALWAYS_EXPORT LLVM_ATTRIBUTE_VISIBILITY_DEFAULT
----------------
compnerd wrote:
I'm not sure how I feel about this abstraction (`LLVM_ATTRIBUTE_VISIBILITY_*`), but I suppose that it doesn't matter too much.
https://github.com/llvm/llvm-project/pull/96630
More information about the llvm-commits
mailing list