2012-03-27 23:13:14 +00:00
|
|
|
## Linker script for GNU namespace versioning.
|
|
|
|
##
|
2019-06-02 15:48:37 +00:00
|
|
|
## Copyright (C) 2002-2019 Free Software Foundation, Inc.
|
2012-03-27 23:13:14 +00:00
|
|
|
##
|
|
|
|
## This file is part of the libstdc++ version 3 distribution.
|
|
|
|
##
|
|
|
|
## This file is part of the GNU ISO C++ Library. This library is free
|
|
|
|
## software; you can redistribute it and/or modify it under the
|
|
|
|
## terms of the GNU General Public License as published by the
|
|
|
|
## Free Software Foundation; either version 3, or (at your option)
|
|
|
|
## any later version.
|
|
|
|
##
|
|
|
|
## This library is distributed in the hope that it will be useful,
|
|
|
|
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
## GNU General Public License for more details.
|
|
|
|
##
|
|
|
|
## You should have received a copy of the GNU General Public License along
|
|
|
|
## with this library; see the file COPYING3. If not see
|
|
|
|
## <http://www.gnu.org/licenses/>.
|
|
|
|
|
2018-12-28 15:30:48 +00:00
|
|
|
GLIBCXX_8.0 {
|
2012-03-27 23:13:14 +00:00
|
|
|
|
|
|
|
global:
|
|
|
|
|
|
|
|
# Names inside the 'extern' block are demangled names.
|
|
|
|
extern "C++"
|
|
|
|
{
|
2014-09-21 17:33:12 +00:00
|
|
|
std::*;
|
2018-12-28 15:30:48 +00:00
|
|
|
std::__8::*;
|
2014-09-21 17:33:12 +00:00
|
|
|
std::random_device::*
|
2012-03-27 23:13:14 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
# operator new(size_t)
|
|
|
|
_Znw[jmy];
|
|
|
|
# operator new(size_t, std::nothrow_t const&)
|
|
|
|
_Znw[jmy]RKSt9nothrow_t;
|
|
|
|
|
|
|
|
# operator delete(void*)
|
|
|
|
_ZdlPv;
|
|
|
|
# operator delete(void*, std::nothrow_t const&)
|
|
|
|
_ZdlPvRKSt9nothrow_t;
|
|
|
|
|
|
|
|
# operator new[](size_t)
|
|
|
|
_Zna[jmy];
|
|
|
|
# operator new[](size_t, std::nothrow_t const&)
|
|
|
|
_Zna[jmy]RKSt9nothrow_t;
|
|
|
|
|
|
|
|
# operator delete[](void*)
|
|
|
|
_ZdaPv;
|
|
|
|
# operator delete[](void*, std::nothrow_t const&)
|
|
|
|
_ZdaPvRKSt9nothrow_t;
|
|
|
|
|
|
|
|
# function-scope static objects requires a guard variable.
|
|
|
|
_ZGVNSt*;
|
|
|
|
|
2014-09-21 17:33:12 +00:00
|
|
|
# VTT structure
|
|
|
|
_ZTTNSt*;
|
|
|
|
|
|
|
|
# vtable
|
|
|
|
_ZTVSt*;
|
|
|
|
_ZTVNSt*;
|
2018-12-28 15:30:48 +00:00
|
|
|
_ZTVN9__gnu_cxx3__818stdio_sync_filebufI[cw]NSt3__811char_traitsI[cw]EEEE;
|
2014-09-21 17:33:12 +00:00
|
|
|
|
|
|
|
# thunk
|
|
|
|
_ZTv0_n12_NS*;
|
|
|
|
_ZTv0_n24_NS*;
|
|
|
|
|
|
|
|
# typeinfo structure
|
|
|
|
_ZTISt*;
|
|
|
|
_ZTINSt*;
|
2012-03-27 23:13:14 +00:00
|
|
|
|
2014-09-21 17:33:12 +00:00
|
|
|
# typeinfo name
|
|
|
|
_ZTSSt*;
|
|
|
|
_ZTSNSt*;
|
2012-03-27 23:13:14 +00:00
|
|
|
|
2014-09-21 17:33:12 +00:00
|
|
|
# locale
|
2018-12-28 15:30:48 +00:00
|
|
|
_ZNSt3__89has_facetINS_*;
|
2014-09-21 17:33:12 +00:00
|
|
|
|
2017-10-07 00:16:47 +00:00
|
|
|
# hash
|
2018-12-28 15:30:48 +00:00
|
|
|
_ZNSt8__detail3__812__prime_listE;
|
|
|
|
_ZNSt3tr18__detail3__812__prime_listE;
|
2014-09-21 17:33:12 +00:00
|
|
|
|
|
|
|
# thread/mutex/condition_variable/future
|
|
|
|
__once_proxy;
|
2012-03-27 23:13:14 +00:00
|
|
|
|
|
|
|
# std::__detail::_List_node_base
|
2018-12-28 15:30:48 +00:00
|
|
|
_ZNSt8__detail3__815_List_node_base7_M_hook*;
|
|
|
|
_ZNSt8__detail3__815_List_node_base9_M_unhookEv;
|
|
|
|
_ZNSt8__detail3__815_List_node_base10_M_reverseEv;
|
|
|
|
_ZNSt8__detail3__815_List_node_base11_M_transfer*;
|
|
|
|
_ZNSt8__detail3__815_List_node_base4swapER*;
|
2012-03-27 23:13:14 +00:00
|
|
|
|
|
|
|
# std::__convert_to_v
|
2018-12-28 15:30:48 +00:00
|
|
|
_ZNSt3__814__convert_to_v*;
|
2012-03-27 23:13:14 +00:00
|
|
|
|
|
|
|
# std::__copy_streambufs
|
2018-12-28 15:30:48 +00:00
|
|
|
_ZNSt3__817__copy_streambufsI*;
|
|
|
|
_ZNSt3__821__copy_streambufs_eofI*;
|
2012-03-27 23:13:14 +00:00
|
|
|
|
|
|
|
# __gnu_cxx::__atomic_add
|
|
|
|
# __gnu_cxx::__exchange_and_add
|
2018-12-28 15:30:48 +00:00
|
|
|
_ZN9__gnu_cxx3__812__atomic_addEPV[il][il];
|
|
|
|
_ZN9__gnu_cxx3__818__exchange_and_addEPV[li][il];
|
2012-03-27 23:13:14 +00:00
|
|
|
|
|
|
|
# __gnu_cxx::__pool
|
2018-12-28 15:30:48 +00:00
|
|
|
_ZN9__gnu_cxx3__86__poolILb[01]EE13_M_initializeEv;
|
|
|
|
_ZN9__gnu_cxx3__86__poolILb[01]EE16_M_reserve_blockE[jmy][jmy];
|
|
|
|
_ZN9__gnu_cxx3__86__poolILb[01]EE16_M_reclaim_blockEPc[jmy];
|
|
|
|
_ZN9__gnu_cxx3__86__poolILb[01]EE10_M_destroyEv;
|
|
|
|
_ZN9__gnu_cxx3__86__poolILb1EE16_M_get_thread_idEv;
|
2012-03-27 23:13:14 +00:00
|
|
|
|
2018-12-28 15:30:48 +00:00
|
|
|
_ZN9__gnu_cxx3__817__pool_alloc_base9_M_refillE[jmy];
|
|
|
|
_ZN9__gnu_cxx3__817__pool_alloc_base16_M_get_free_listE[jmy];
|
|
|
|
_ZN9__gnu_cxx3__817__pool_alloc_base12_M_get_mutexEv;
|
2012-03-27 23:13:14 +00:00
|
|
|
|
2018-12-28 15:30:48 +00:00
|
|
|
_ZN9__gnu_cxx3__89free_list6_M_getE[jmy];
|
|
|
|
_ZN9__gnu_cxx3__89free_list8_M_clearEv;
|
2012-03-27 23:13:14 +00:00
|
|
|
|
|
|
|
# __gnu_cxx::stdio_sync_filebuf
|
2018-12-28 15:30:48 +00:00
|
|
|
_ZTVN9__gnu_cxx3__818stdio_sync_filebufI[cw]St3__811char_traitsI[cw]EEE;
|
|
|
|
_ZN9__gnu_cxx3__818stdio_sync_filebufI[cw]NSt3__811char_traitsI[cw]EEE[5-9]*;
|
2012-03-27 23:13:14 +00:00
|
|
|
|
|
|
|
# debug mode
|
|
|
|
_ZN11__gnu_debug19_Safe_sequence_base12_M_get_mutexEv;
|
|
|
|
_ZN11__gnu_debug19_Safe_sequence_base13_M_detach_allEv;
|
|
|
|
_ZN11__gnu_debug19_Safe_sequence_base18_M_detach_singularEv;
|
|
|
|
_ZN11__gnu_debug19_Safe_sequence_base22_M_revalidate_singularEv;
|
|
|
|
_ZN11__gnu_debug19_Safe_sequence_base7_M_swapERS0_;
|
|
|
|
|
|
|
|
_ZN11__gnu_debug19_Safe_iterator_base9_M_attach*;
|
|
|
|
_ZN11__gnu_debug19_Safe_iterator_base16_M_attach_single*;
|
|
|
|
_ZN11__gnu_debug19_Safe_iterator_base9_M_detachEv;
|
|
|
|
_ZN11__gnu_debug19_Safe_iterator_base16_M_detach_singleEv;
|
|
|
|
_ZN11__gnu_debug19_Safe_iterator_base12_M_get_mutexEv;
|
|
|
|
_ZNK11__gnu_debug19_Safe_iterator_base11_M_singularEv;
|
|
|
|
_ZNK11__gnu_debug19_Safe_iterator_base14_M_can_compareERKS0_;
|
|
|
|
|
|
|
|
_ZNK11__gnu_debug16_Error_formatter10_M_message*;
|
|
|
|
_ZNK11__gnu_debug16_Error_formatter8_M_error*;
|
|
|
|
|
2014-09-21 17:33:12 +00:00
|
|
|
# __gnu_debug::_Safe_unordered_container_base
|
|
|
|
# __gnu_debug::_Safe_local_iterator_base
|
|
|
|
_ZN11__gnu_debug30_Safe_unordered_container_base7_M_swapERS0_;
|
|
|
|
_ZN11__gnu_debug30_Safe_unordered_container_base13_M_detach_allEv;
|
|
|
|
_ZN11__gnu_debug25_Safe_local_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb;
|
|
|
|
_ZN11__gnu_debug25_Safe_local_iterator_base9_M_detachEv;
|
|
|
|
|
2012-03-27 23:13:14 +00:00
|
|
|
# parallel mode
|
|
|
|
_ZN14__gnu_parallel9_Settings3getEv;
|
|
|
|
_ZN14__gnu_parallel9_Settings3setERS0_;
|
|
|
|
|
|
|
|
local:
|
|
|
|
*;
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
# Symbols in the support library (libsupc++) have their own tag.
|
|
|
|
CXXABI_2.0 {
|
|
|
|
|
|
|
|
global:
|
|
|
|
__cxa_allocate_exception;
|
|
|
|
__cxa_allocate_dependent_exception;
|
|
|
|
__cxa_bad_cast;
|
|
|
|
__cxa_bad_typeid;
|
|
|
|
__cxa_begin_catch;
|
|
|
|
__cxa_begin_cleanup;
|
|
|
|
__cxa_call_unexpected;
|
|
|
|
__cxa_current_exception_type;
|
|
|
|
__cxa_deleted_virtual;
|
|
|
|
__cxa_demangle;
|
|
|
|
__cxa_end_catch;
|
|
|
|
__cxa_end_cleanup;
|
|
|
|
__cxa_free_exception;
|
|
|
|
__cxa_free_dependent_exception;
|
|
|
|
__cxa_get_exception_ptr;
|
2017-10-07 00:16:47 +00:00
|
|
|
__cxa_init_primary_exception;
|
2012-03-27 23:13:14 +00:00
|
|
|
__cxa_get_globals;
|
|
|
|
__cxa_get_globals_fast;
|
|
|
|
__cxa_guard_abort;
|
|
|
|
__cxa_guard_acquire;
|
|
|
|
__cxa_guard_release;
|
|
|
|
__cxa_pure_virtual;
|
|
|
|
__cxa_rethrow;
|
2017-04-10 11:32:00 +00:00
|
|
|
__cxa_thread_atexit;
|
2012-03-27 23:13:14 +00:00
|
|
|
__cxa_throw;
|
|
|
|
__cxa_type_match;
|
|
|
|
__cxa_vec_cctor;
|
|
|
|
__cxa_vec_cleanup;
|
|
|
|
__cxa_vec_ctor;
|
|
|
|
__cxa_vec_delete2;
|
|
|
|
__cxa_vec_delete3;
|
|
|
|
__cxa_vec_delete;
|
|
|
|
__cxa_vec_dtor;
|
|
|
|
__cxa_vec_new2;
|
|
|
|
__cxa_vec_new3;
|
|
|
|
__cxa_vec_new;
|
|
|
|
__gxx_personality_v0;
|
|
|
|
__gxx_personality_sj0;
|
|
|
|
__dynamic_cast;
|
|
|
|
|
|
|
|
# std::exception_ptr
|
|
|
|
_ZNSt15__exception_ptr13exception_ptrC1Ev;
|
|
|
|
_ZNSt15__exception_ptr13exception_ptrC2Ev;
|
2017-10-07 00:16:47 +00:00
|
|
|
_ZNSt15__exception_ptr13exception_ptrC1EPv;
|
2012-03-27 23:13:14 +00:00
|
|
|
_ZNSt15__exception_ptr13exception_ptrC1ERKS0_;
|
|
|
|
_ZNSt15__exception_ptr13exception_ptrC2ERKS0_;
|
|
|
|
_ZNSt15__exception_ptr13exception_ptrC1EMS0_FvvE;
|
|
|
|
_ZNSt15__exception_ptr13exception_ptrC2EMS0_FvvE;
|
|
|
|
_ZNSt15__exception_ptr13exception_ptrD1Ev;
|
|
|
|
_ZNSt15__exception_ptr13exception_ptrD2Ev;
|
|
|
|
_ZNSt15__exception_ptr13exception_ptraSERKS0_;
|
|
|
|
_ZNKSt15__exception_ptr13exception_ptrcvMS0_FvvEEv;
|
|
|
|
_ZNKSt15__exception_ptr13exception_ptrntEv;
|
|
|
|
_ZNKSt15__exception_ptr13exception_ptr20__cxa_exception_typeEv;
|
|
|
|
_ZNSt15__exception_ptr13exception_ptr4swapERS0_;
|
|
|
|
_ZNSt15__exception_ptreqERKNS_13exception_ptrES2_;
|
|
|
|
_ZNSt15__exception_ptrneERKNS_13exception_ptrES2_;
|
|
|
|
|
|
|
|
_ZSt17current_exceptionv;
|
|
|
|
_ZSt17rethrow_exceptionNSt15__exception_ptr13exception_ptrE;
|
|
|
|
|
|
|
|
# std::nested_exception
|
|
|
|
_ZNSt16nested_exceptionD*;
|
|
|
|
_ZTISt16nested_exception;
|
|
|
|
_ZTVSt16nested_exception;
|
|
|
|
|
|
|
|
# std::bad_function_call.
|
|
|
|
_ZNSt17bad_function_callD*;
|
|
|
|
_ZTISt17bad_function_call;
|
|
|
|
_ZTSSt17bad_function_call;
|
|
|
|
_ZTVSt17bad_function_call;
|
|
|
|
|
2014-09-21 17:33:12 +00:00
|
|
|
__cxa_throw_bad_array_new_length;
|
|
|
|
_Z*St20bad_array_new_length*;
|
|
|
|
|
|
|
|
__cxa_throw_bad_array_length;
|
|
|
|
_Z*St16bad_array_length*;
|
|
|
|
|
2012-03-27 23:13:14 +00:00
|
|
|
# Default function.
|
|
|
|
_ZSt11_Hash_bytesPKv*;
|
|
|
|
|
|
|
|
# FNV hash.
|
|
|
|
_ZSt15_Fnv_hash_bytesPKv*;
|
|
|
|
|
|
|
|
# __gnu_cxx::_verbose_terminate_handler()
|
2018-12-28 15:30:48 +00:00
|
|
|
_ZN9__gnu_cxx3__827__verbose_terminate_handlerEv;
|
2012-03-27 23:13:14 +00:00
|
|
|
|
|
|
|
# *_type_info classes, ctor and dtor
|
|
|
|
_ZN10__cxxabiv117__array_type_info*;
|
|
|
|
_ZN10__cxxabiv117__class_type_info*;
|
|
|
|
_ZN10__cxxabiv116__enum_type_info*;
|
|
|
|
_ZN10__cxxabiv120__function_type_info*;
|
|
|
|
_ZN10__cxxabiv123__fundamental_type_info*;
|
|
|
|
_ZN10__cxxabiv117__pbase_type_info*;
|
|
|
|
_ZN10__cxxabiv129__pointer_to_member_type_info*;
|
|
|
|
_ZN10__cxxabiv119__pointer_type_info*;
|
|
|
|
_ZN10__cxxabiv120__si_class_type_info*;
|
|
|
|
_ZN10__cxxabiv121__vmi_class_type_info*;
|
|
|
|
|
|
|
|
# *_type_info classes, member functions
|
|
|
|
_ZNK10__cxxabiv117__class_type_info*;
|
|
|
|
_ZNK10__cxxabiv120__function_type_info*;
|
|
|
|
_ZNK10__cxxabiv117__pbase_type_info*;
|
|
|
|
_ZNK10__cxxabiv129__pointer_to_member_type_info*;
|
|
|
|
_ZNK10__cxxabiv119__pointer_type_info*;
|
|
|
|
_ZNK10__cxxabiv120__si_class_type_info*;
|
|
|
|
_ZNK10__cxxabiv121__vmi_class_type_info*;
|
|
|
|
|
|
|
|
# typeinfo structure
|
|
|
|
_ZTI[a-z];
|
|
|
|
_ZTIP[a-z];
|
|
|
|
_ZTIPK[a-z];
|
|
|
|
_ZTIN10__cxxabiv117__array_type_infoE;
|
|
|
|
_ZTIN10__cxxabiv117__class_type_infoE;
|
|
|
|
_ZTIN10__cxxabiv116__enum_type_infoE;
|
|
|
|
_ZTIN10__cxxabiv120__function_type_infoE;
|
|
|
|
_ZTIN10__cxxabiv123__fundamental_type_infoE;
|
|
|
|
_ZTIN10__cxxabiv117__pbase_type_infoE;
|
|
|
|
_ZTIN10__cxxabiv129__pointer_to_member_type_infoE;
|
|
|
|
_ZTIN10__cxxabiv119__pointer_type_infoE;
|
|
|
|
_ZTIN10__cxxabiv120__si_class_type_infoE;
|
|
|
|
_ZTIN10__cxxabiv121__vmi_class_type_infoE;
|
|
|
|
_ZTIN10__cxxabiv115__forced_unwindE;
|
|
|
|
_ZTIN10__cxxabiv119__foreign_exceptionE;
|
|
|
|
_ZTIN10__cxxabiv115__forced_unwindE;
|
|
|
|
_ZTIN10__cxxabiv119__foreign_exceptionE;
|
|
|
|
|
|
|
|
# typeinfo name
|
|
|
|
_ZTS[a-z];
|
|
|
|
_ZTSP[a-z];
|
|
|
|
_ZTSPK[a-z];
|
|
|
|
_ZTSN10__cxxabiv117__array_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv117__class_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv116__enum_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv120__function_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv123__fundamental_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv117__pbase_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv129__pointer_to_member_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv119__pointer_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv120__si_class_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv121__vmi_class_type_infoE;
|
|
|
|
|
2019-06-02 15:48:37 +00:00
|
|
|
# typeinfo for char8_t
|
|
|
|
_ZTIDu;
|
|
|
|
_ZTIPDu;
|
|
|
|
_ZTIPKDu;
|
|
|
|
|
2012-03-27 23:13:14 +00:00
|
|
|
# typeinfo for char16_t and char32_t
|
|
|
|
_ZTIDs;
|
|
|
|
_ZTIPDs;
|
|
|
|
_ZTIPKDs;
|
|
|
|
_ZTIDi;
|
|
|
|
_ZTIPDi;
|
|
|
|
_ZTIPKDi;
|
|
|
|
|
|
|
|
# typeinfo for decimal floating point types
|
|
|
|
_ZTID[fde];
|
|
|
|
_ZTIPD[fde];
|
|
|
|
_ZTIPKD[fde];
|
|
|
|
|
|
|
|
# typeinfo for decltype(nullptr)
|
|
|
|
_ZTIDn;
|
|
|
|
_ZTIPDn;
|
|
|
|
_ZTIPKDn;
|
|
|
|
|
|
|
|
# typeinfo for __int128 and unsigned __int128
|
|
|
|
_ZTI[no];
|
|
|
|
_ZTIP[no];
|
|
|
|
_ZTIPK[no];
|
|
|
|
|
|
|
|
# virtual table
|
|
|
|
_ZTVN10__cxxabiv117__array_type_infoE;
|
|
|
|
_ZTVN10__cxxabiv117__class_type_infoE;
|
|
|
|
_ZTVN10__cxxabiv116__enum_type_infoE;
|
|
|
|
_ZTVN10__cxxabiv120__function_type_infoE;
|
|
|
|
_ZTVN10__cxxabiv123__fundamental_type_infoE;
|
|
|
|
_ZTVN10__cxxabiv117__pbase_type_infoE;
|
|
|
|
_ZTVN10__cxxabiv129__pointer_to_member_type_infoE;
|
|
|
|
_ZTVN10__cxxabiv119__pointer_type_infoE;
|
|
|
|
_ZTVN10__cxxabiv120__si_class_type_infoE;
|
|
|
|
_ZTVN10__cxxabiv121__vmi_class_type_infoE;
|
|
|
|
|
2015-08-28 15:33:40 +00:00
|
|
|
# operator delete(void*, std::size_t)
|
|
|
|
_ZdlPv[jmy];
|
|
|
|
# operator delete[](void*, std::size_t)
|
|
|
|
_ZdaPv[jmy];
|
2017-04-10 11:32:00 +00:00
|
|
|
|
|
|
|
# __gnu_cxx::__freeres()
|
|
|
|
_ZN9__gnu_cxx9__freeresEv;
|
2017-10-07 00:16:47 +00:00
|
|
|
|
|
|
|
# C++17 aligned new/delete
|
|
|
|
_Znw[jmy]St11align_val_t;
|
|
|
|
_Znw[jmy]St11align_val_tRKSt9nothrow_t;
|
|
|
|
_Zna[jmy]St11align_val_t;
|
|
|
|
_Zna[jmy]St11align_val_tRKSt9nothrow_t;
|
|
|
|
_ZdlPvSt11align_val_t;
|
|
|
|
_ZdlPvSt11align_val_tRKSt9nothrow_t;
|
|
|
|
_ZdlPv[jmy]St11align_val_t;
|
|
|
|
_ZdaPvSt11align_val_t;
|
|
|
|
_ZdaPvSt11align_val_tRKSt9nothrow_t;
|
|
|
|
_ZdaPv[jmy]St11align_val_t;
|
2012-03-27 23:13:14 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
# Symbols in the support library (libsupc++) supporting trans-mem.
|
|
|
|
CXXABI_TM_1 {
|
|
|
|
|
|
|
|
global:
|
|
|
|
__cxa_tm_cleanup;
|
|
|
|
|
|
|
|
};
|