[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