summaryrefslogtreecommitdiffstats
path: root/lib/libcxxrt
diff options
context:
space:
mode:
authordim <dim@FreeBSD.org>2017-03-08 07:58:29 +0000
committerdim <dim@FreeBSD.org>2017-03-08 07:58:29 +0000
commitbd4ab57012e00eb9aabaed8931b919a2be8316f6 (patch)
treef45ed004152d20c912d4b8bf2afe3ca98bb7f14c /lib/libcxxrt
parent0b83b08fa41977cce765d5ea3e37843dea2d6fcc (diff)
downloadFreeBSD-src-bd4ab57012e00eb9aabaed8931b919a2be8316f6.zip
FreeBSD-src-bd4ab57012e00eb9aabaed8931b919a2be8316f6.tar.gz
MFC r314061:
Add __int128-related symbols to libcxxrt's version map. Put these into the same CXXABI verions as recent libstdc++. Note that __int128 types are only available on arches where long long is 128 bit wide. Noticed by: harti MFC r314104: Surround any unmangled C++ names in libcxxrt's version map with 'extern "C++"', otherwise ld refuses to make the symbols global in the final library. This causes the __int128-related symbols to go missing when the library is stripped during installation. Helpful hints: emaste
Diffstat (limited to 'lib/libcxxrt')
-rw-r--r--lib/libcxxrt/Version.map23
1 files changed, 22 insertions, 1 deletions
diff --git a/lib/libcxxrt/Version.map b/lib/libcxxrt/Version.map
index 73ef707..39f98e3 100644
--- a/lib/libcxxrt/Version.map
+++ b/lib/libcxxrt/Version.map
@@ -254,10 +254,31 @@ CXXABI_1.3.1 {
__cxa_get_exception_ptr;
} CXXABI_1.3;
+CXXABI_1.3.5 {
+ extern "C++" {
+ "typeinfo for __int128 const*";
+ "typeinfo for __int128";
+ "typeinfo for __int128*";
+ "typeinfo for unsigned __int128 const*";
+ "typeinfo for unsigned __int128";
+ "typeinfo for unsigned __int128*";
+ };
+} CXXABI_1.3.1;
+
CXXABI_1.3.6 {
__cxa_deleted_virtual;
-} CXXABI_1.3.1;
+} CXXABI_1.3.5;
+CXXABI_1.3.9 {
+ extern "C++" {
+ "typeinfo name for __int128 const*";
+ "typeinfo name for __int128";
+ "typeinfo name for __int128*";
+ "typeinfo name for unsigned __int128 const*";
+ "typeinfo name for unsigned __int128";
+ "typeinfo name for unsigned __int128*";
+ };
+} CXXABI_1.3.6;
CXXRT_1.0 {
OpenPOWER on IntegriCloud