summaryrefslogtreecommitdiffstats
path: root/libcxxabi/include
diff options
context:
space:
mode:
authorSaleem Abdulrasool <compnerd@compnerd.org>2016-05-26 02:12:20 +0000
committerSaleem Abdulrasool <compnerd@compnerd.org>2016-05-26 02:12:20 +0000
commit18ef564c8bb060bc586de28789d5b212942f355f (patch)
treefbee86fdadae86bc2e4669b16060aa4490916c82 /libcxxabi/include
parentee77a4828e2efdd3c0a6896da0ef5804b08c1cbe (diff)
downloadbcm5719-llvm-18ef564c8bb060bc586de28789d5b212942f355f.tar.gz
bcm5719-llvm-18ef564c8bb060bc586de28789d5b212942f355f.zip
libc++abi: build with -fvisibility=hidden
Enable building libc++abi with hidden visibility by default. The ABI mandated interfaces (and a few extra) are already set up to be externally visible. This allows us to ensure that any implementation details are not leaked. llvm-svn: 270816
Diffstat (limited to 'libcxxabi/include')
-rw-r--r--libcxxabi/include/__cxxabi_config.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/libcxxabi/include/__cxxabi_config.h b/libcxxabi/include/__cxxabi_config.h
index 68e325ffef6..61555f1a927 100644
--- a/libcxxabi/include/__cxxabi_config.h
+++ b/libcxxabi/include/__cxxabi_config.h
@@ -24,15 +24,18 @@
#if defined(_LIBCXXABI_DLL)
#if defined(cxxabi_EXPORTS)
#define _LIBCXXABI_HIDDEN
+ #define _LIBCXXABI_DATA_VIS __declspec(dllexport)
#define _LIBCXXABI_FUNC_VIS __declspec(dllexport)
#define _LIBCXXABI_TYPE_VIS __declspec(dllexport)
#else
#define _LIBCXXABI_HIDDEN
+ #define _LIBCXXABI_DATA_VIS __declspec(dllimport)
#define _LIBCXXABI_FUNC_VIS __declspec(dllimport)
#define _LIBCXXABI_TYPE_VIS __declspec(dllimport)
#endif
#else
#define _LIBCXXABI_HIDDEN __attribute__((__visibility__("hidden")))
+ #define _LIBCXXABI_DATA_VIS __attribute__((__visibility__("default")))
#define _LIBCXXABI_FUNC_VIS __attribute__((__visibility__("default")))
#if __has_attribute(__type_visibility__)
#define _LIBCXXABI_TYPE_VIS __attribute__((__type_visibility__("default")))
OpenPOWER on IntegriCloud