OSDN Git Service

/
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / config / linker-map.gnu
index 6f87a0b..0b89892 100644 (file)
@@ -1,6 +1,6 @@
-## Linker script for GNU ld 2.11.94+ only.
+## Linker script for GNU ld 2.13.91+ only.
 ##
-## Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+## Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 ##
 ## This file is part of the libstdc++ version 3 distribution.
 ##
 ##
 ## You should have received a copy of the GNU General Public License along
 ## with this library; see the file COPYING.  If not, write to the Free
-## Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+## Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
 ## USA.
 
-GLIBCPP_3.4 {
+GLIBCXX_3.4 {
 
   global:
 
     # Names inside the 'extern' block are demangled names.
-    # All but the last are terminated with a semicolon.
     extern "C++"
     {
-      std::[A-Za-k]*;
+      std::[A-Za]*;
+      std::ba[a-r]*;
+      std::basic_[a-e]*;
+      std::basic_f[a-r]*;
+#     std::basic_fstream;
+      std::basic_f[t-z]*;
+      std::basic_[g-h]*;
+      std::basic_i[a-e]*;
+#     std::basic_ifstream;
+      std::basic_i[g-r]*;
+      std::basic_istr[a-d]*;
+#     std::basic_istream;
+      std::basic_istr[f-z]*;
+      std::basic_i[t-z]*;
+      std::basic_[j-n]*;
+      std::basic_o[a-e]*;
+#     std::basic_ofstream;
+      std::basic_o[g-z]*;
+      std::basic_[p-r]*;
+      std::basic_streambuf*;
+#     std::basic_string
+#     std::basic_stringbuf
+      std::basic_stringstream*;
+      std::basic_[t-z]*;
+      std::ba[t-z]*;
+      std::b[b-z]*;
+      std::c[a-g]*;
+#     std::char_traits;
+      std::c[i-z]*;
+      std::[d-h]*;
+      std::i[a-n]*;
+      std::ios_base::[A-Ha-z]*;
+      std::ios_base::_M_grow_words*;
+      std::ios_base::_M_init*;
+      std::ios_base::Init::[A-Za-z]*;
+      std::ios_base::[J-Za-z]*;
+      std::i[p-r]*;
+#     std::istream
+#     std::istreambuf_iterator
+      std::istringstream*;
+      std::istrstream*;
+      std::i[t-z]*;
+      std::[A-Zj-k]*;
       std::length_error*;
       std::logic_error*;
       std::locale::[A-Za-e]*;
       std::locale::facet::[A-Za-z]*;
-      std::locale::facet::_S_c_locale; 
+      std::locale::facet::_S_get_c_locale*;    
       std::locale::facet::_S_clone_c_locale*;
       std::locale::facet::_S_create_c_locale*;
       std::locale::facet::_S_destroy_c_locale*;
       std::locale::[A-Zg-h]*;
       std::locale::id::[A-Za-z]*;
-      std::locale::id::_S_highwater;
+      std::locale::id::_M_id*;
       std::locale::[A-Zj-z]*;
       std::locale::_[A-Ha-z]*;
       std::locale::_Impl::[A-Za-z]*;
@@ -47,45 +88,254 @@ GLIBCPP_3.4 {
       std::locale::_[J-Ra-z]*;
       std::locale::_S_normalize_category*;
       std::locale::_[T-Za-z]*;
-      std::[A-Zm-z]*;
+      std::[A-Zm-r]*;
+      std::set_new_handler*;
+      std::set_terminate*;
+      std::set_unexpected*;
+#     std::string
+      std::strstream*;
+      std::strstreambuf*;
+      std::[A-Zt-z]*;
+      std::_List_node_base::hook*;
+      std::_List_node_base::swap*;
+      std::_List_node_base::unhook*;
+      std::_List_node_base::reverse*;
+      std::_List_node_base::transfer*;
       std::__throw_*;
-      std::__basic_file*;
       std::__timepunct*;
       std::__numeric_limits_base*;
       std::__num_base::_S_format_float*;
       std::__num_base::_S_format_int*;
       std::__num_base::_S_atoms_in;
       std::__num_base::_S_atoms_out;
-      
-      # Needed only when generic cpu's atomicity.h is in use.
-      __gnu_cxx::_Atomic_add_mutex;
-      __gnu_cxx::_Atomic_add_mutex_once;
-      __gnu_cxx::__gthread_atomic_add_mutex_once
+      std::__moneypunct_cache*;
+      std::__numpunct_cache*;
+      std::__timepunct_cache*;
+      __gnu_debug::_Safe_iterator_base*;
+      __gnu_debug::_Safe_sequence_base*;
+      __gnu_debug::_Error_formatter*;
+      __gnu_norm::_List_node_base::hook*;
+      __gnu_norm::_List_node_base::swap*;
+      __gnu_norm::_List_node_base::unhook*;
+      __gnu_norm::_List_node_base::reverse*;
+      __gnu_norm::_List_node_base::transfer*
     };
 
     # Names not in an 'extern' block are mangled names.
 
+    # std::string
+    _ZNSsC*;
+    _ZNSsD*;
+    _ZNSs[0-9][a-z]*;
+    _ZNSs12_Alloc_hiderC*;
+    _ZNSs12_M_leak_hardEv;
+    _ZNSs12_S_constructE[jm]cRKSaIcE;
+    _ZNSs12_S_empty_repEv;
+    _ZNSs13_S_copy_chars*;
+    _ZNSs[0-9][0-9]_M_replace*;
+    _ZNSs4_Rep10_M_destroy*;
+    _ZNSs4_Rep10_M_dispose*;
+    _ZNSs4_Rep10_M_refcopyEv;
+    _ZNSs4_Rep10_M_refdataEv;
+    _ZNSs4_Rep12_S_empty_repEv;
+    _ZNSs4_Rep13_M_set_leakedEv;
+    _ZNSs4_Rep15_M_set_sharableEv;
+    _ZNSs4_Rep7_M_grab*;
+    _ZNSs4_Rep8_M_clone*;
+    _ZNSs4_Rep9_S_createE[jm][jm]*;
+    _ZNSs7_M_dataEPc;
+    _ZNSs7_M_leakEv;
+    _ZNSs9_M_mutateE[jm][jm][jm];
+    _ZNSs4_Rep20_S_empty_rep_storageE;
+    _ZNSs4_Rep11_S_max_sizeE;
+    _ZNSs4_Rep11_S_terminalE;
+    _ZNSsaSE*;
+    _ZNSsixE*;
+    _ZNSspLE*;
+    _ZNKSs[0-9][a-z]*;
+    _ZNKSs[0-9][0-9][a-z]*;
+    _ZNKSs[a-z]*;
+    _ZNKSs4_Rep12_M_is_leakedEv;
+    _ZNKSs4_Rep12_M_is_sharedEv;
+    _ZNKSs6_M_repEv;
+    _ZNKSs7_M_dataEv;
+    _ZNKSs7_M_iendEv;
+    _ZNKSs8_M_check*;
+    _ZNKSs8_M_limit*;
+    _ZNKSs9_M_ibeginEv;
+    _ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_E*;
+
+    # std::wstring
+    _ZNSbIwSt11char_traitsIwESaIwEEC*;
+    _ZNSbIwSt11char_traitsIwESaIwEED*;
+    _ZNSbIwSt11char_traitsIwESaIwEE[0-9][a-z]*;
+    _ZNSbIwSt11char_traitsIwESaIwEE12_Alloc_hiderC*;
+    _ZNSbIwSt11char_traitsIwESaIwEE12_M_leak_hardEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE12_S_constructE[jm]wRKS1_;
+    _ZNSbIwSt11char_traitsIwESaIwEE12_S_empty_repEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE13_S_copy_chars*;
+    _ZNSbIwSt11char_traitsIwESaIwEE[0-9][0-9]_M_replace*;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_destroy*;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_dispose*;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_refcopyEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_refdataEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep12_S_empty_repEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep13_M_set_leakedEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep15_M_set_sharableEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep7_M_grab*;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep8_M_clone*;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep9_S_createE[jm][jm]*;
+    _ZNSbIwSt11char_traitsIwESaIwEE7_M_dataEPw;
+    _ZNSbIwSt11char_traitsIwESaIwEE7_M_leakEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateE[jm][jm][jm];
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep20_S_empty_rep_storageE;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep11_S_max_sizeE;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep11_S_terminalE;
+    _ZNSbIwSt11char_traitsIwESaIwEEaSE*;
+    _ZNSbIwSt11char_traitsIwESaIwEEixE*;
+    _ZNSbIwSt11char_traitsIwESaIwEEpLE*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE[0-9][a-z]*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE[0-9][0-9][a-z]*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE[a-z]*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE4_Rep12_M_is_leakedEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE4_Rep12_M_is_sharedEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE6_M_repEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE7_M_dataEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE7_M_iendEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE8_M_check*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE8_M_limit*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE9_M_ibeginEv;
+    _ZStplIwSt11char_traitsIwESaIwEESbIT_T0_T1_E*;
+
+    # std::basic_stringbuf
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[CD]*;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9][a-r]*;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]seek*;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]set*;
+    _ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv;
+    _ZNKSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strEv;
+    _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strERKSs;
+    _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strERKSbIwS1_S2_E;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9][t-z]*;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]_M_[a-z]*;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9][0-9]_M_[a-z]*;
+
+
+    # std::basic_iostream constructors, destructors
+    _ZNSdC*;
+    _ZNSdD*;
+
+    # std::basic_fstream
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EEC*;
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EED*;
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE5closeEv;
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE4open*;
+    _ZNKSt13basic_fstreamI[cw]St11char_traitsI[cw]EE5rdbufEv;
+
+    # std::basic_ifstream
+    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EEC*;
+    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EED*;
+    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE5closeEv;
+    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE4open*;
+    _ZNKSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE5rdbufEv;
+
+    # std::basic_ofstream
+    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EEC*;
+    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EED*;
+    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE5closeEv;
+    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE4open*;
+    _ZNKSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE5rdbufEv;
+
+    # std::basic_istream<char>
+    _ZNSiC*;
+    _ZNSiD*;
+    _ZNKSi[0-9][a-z]*;
+    _ZNSi[0-9][a-h]*;
+    _ZNSi[0-9][j-z]*;
+    _ZNSi6ignoreE[il][il];
+    _ZNSirsE*;
+
+    # std::basic_istream<wchar_t>
+    _ZNSt13basic_istreamIwSt11char_traitsIwEEC*;
+    _ZNSt13basic_istreamIwSt11char_traitsIwEED*;
+    _ZNKSt13basic_istreamIwSt11char_traitsIwEE[0-9][a-z]*;
+    _ZNSt13basic_istreamIwSt11char_traitsIwEE[0-9][a-h]*;
+    _ZNSt13basic_istreamIwSt11char_traitsIwEE[0-9][j-z]*;
+    _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[il][ijlm];
+    _ZNSt13basic_istreamIwSt11char_traitsIwEErsE*;
+
+    # std::istream operators and inserters
+    _ZSt7getlineI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_istream*;
+    _ZSt2wsI[cw]St11char_traitsI[cw]EE*;
+    _ZStrsI[cw]St11char_traitsI[cw]EERSt13basic_istream*;
+    _ZStrsI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_istream*;
+    _ZStrsISt11char_traitsI[cw]EERSt13basic_istream*;
+    _ZStrsId[cw]St11char_traitsI[cw]EERSt13basic_istream*;
+    _ZStrsIe[cw]St11char_traitsI[cw]EERSt13basic_istream*;
+    _ZStrsIf[cw]St11char_traitsI[cw]EERSt13basic_istream*;
+
     # std::locale destructors
     _ZNSt6localeD*;
        
     # std::locale::facet destructors
     _ZNSt6locale5facetD*;
         
-    # std::locale::_Impl constructors, destrutors
+    # std::locale::_Impl constructors, destructors
     _ZNSt6locale5_ImplC*;
     _ZNSt6locale5_ImplD*;
 
-    # bool has_facet 
+    # std::ios_base, std::ios_base::Init destructors
+    _ZNSt8ios_baseD*;
+    _ZNSt8ios_base4InitD*;
+
+    # bool std::has_facet 
     _ZSt9has_facet*;
 
-    # std::__pool_alloc
-    _ZNSt12__pool_allocILb1ELi0EE10deallocateEPv[jm]*;
-    _ZNSt12__pool_allocILb1ELi0EE8allocateE[jm]*;
-    _ZNSt12__pool_allocILb1ELi0EE5_Lock*;
-    _ZNSt12__pool_allocILb1ELi0EE12_S_force_newE;
-    _ZNSt12__pool_allocILb1ELi0EE12_S_free_listE;
-    _ZNSt12__pool_allocILb1ELi0EE7_S_lockE;
-    _ZNSt12__pool_allocILb1ELi0EE9_S_refillE[jm];
+    # std::num_get
+    _ZNKSt7num_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
+
+    # std::money_get
+    _ZNKSt9money_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
+
+    # std::_Rb_tree
+    _ZSt18_Rb_tree_decrementPKSt18_Rb_tree_node_base;
+    _ZSt18_Rb_tree_decrementPSt18_Rb_tree_node_base;
+    _ZSt18_Rb_tree_incrementPKSt18_Rb_tree_node_base;
+    _ZSt18_Rb_tree_incrementPSt18_Rb_tree_node_base;
+    _ZSt20_Rb_tree_black_countPKSt18_Rb_tree_node_baseS1_;
+    _ZSt20_Rb_tree_rotate_leftPSt18_Rb_tree_node_baseRS0_;
+    _ZSt21_Rb_tree_rotate_rightPSt18_Rb_tree_node_baseRS0_;
+    _ZSt28_Rb_tree_rebalance_for_erasePSt18_Rb_tree_node_baseRS_;
+    _ZSt29_Rb_tree_insert_and_rebalancebPSt18_Rb_tree_node_baseS0_RS_;
+
+    # std::__basic_file
+    _ZNKSt12__basic_fileIcE7is_openEv;
+    _ZNSt12__basic_fileIcE2fdEv;
+    _ZNSt12__basic_fileIcE4openEPKcSt13_Ios_Openmodei;
+    _ZNSt12__basic_fileIcE4syncEv;
+    _ZNSt12__basic_fileIcE5closeEv;
+    _ZNSt12__basic_fileIcE6xsgetn*;
+    _ZNSt12__basic_fileIcE6xsputn*;
+    _ZNSt12__basic_fileIcE7seekoff*;
+    _ZNSt12__basic_fileIcE8sys_openE*St13_Ios_Openmode;
+    _ZNSt12__basic_fileIcE8xsputn_2*;
+    _ZNSt12__basic_fileIcE9showmanycEv;
+    _ZNSt12__basic_fileIcEC*;
+    _ZNSt12__basic_fileIcED*;
+
+    # std::__convert_to_v
+    _ZSt14__convert_to_v*;
+
+    # __gnu_cxx::stdio_sync_filebuf
+    _ZTVN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
+
+    # __gnu_cxx::__atomic_add
+    # __gnu_cxx::__exchange_and_add
+    _ZN9__gnu_cxx12__atomic_add*;
+    _ZN9__gnu_cxx18__exchange_and_add*;
 
     # operator new(size_t)
     _Znw[jm];
@@ -107,8 +357,7 @@ GLIBCPP_3.4 {
     # operator delete[](void*, std::nothrow_t const&)
     _ZdaPvRKSt9nothrow_t;
 
-    # vtable
-    _ZTVN9__gnu_cxx*;
+    # virtual table
     _ZTVNSt8ios_base7failureE;
     _ZTVNSt6locale5facetE;
     _ZTVS[a-z];
@@ -118,31 +367,27 @@ GLIBCPP_3.4 {
     _ZTVSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
     _ZTVSt21__ctype_abstract_baseI[cw]E;
 
+    # VTT structure
     _ZTTS[a-z];
     _ZTTSt[0-9][A-Za-z]*;
     _ZTTSt[0-9][0-9][A-Za-z]*;
 
-    # typeinfo
-    _ZTI[a-z];
+    # typeinfo structure
+    _ZTIS[a-z];
     _ZTINSt8ios_base7failureE;
     _ZTINSt6locale5facetE;
-    _ZTIN9__gnu_cxx*;
-    _ZTIP[a-z];
-    _ZTIPK[a-z];
-    _ZTIS[a-z];
     _ZTISt[0-9][A-Za-z]*;
     _ZTISt[0-9][0-9][A-Za-z]*;
     _ZTISt11__timepunctI[cw]E;
     _ZTISt10__num_base;
     _ZTISt21__ctype_abstract_baseI[cw]E;
     _ZTISt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
+    _ZTIN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
+    _ZTIN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
 
-    _ZTS[a-z];
+    # typeinfo name
     _ZTSNSt8ios_base7failureE;
     _ZTSNSt6locale5facetE;
-    _ZTSN9__gnu_cxx*;
-    _ZTSP[a-z];
-    _ZTSPK[a-z];
     _ZTSS[a-z];
     _ZTSSt[0-9][A-Za-z]*;
     _ZTSSt[0-9][0-9][A-Za-z]*;
@@ -150,17 +395,17 @@ GLIBCPP_3.4 {
     _ZTSSt10__num_base;
     _ZTSSt21__ctype_abstract_baseI[cw]E;
     _ZTSSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
+    _ZTSN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
+    _ZTSN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
 
     # function-scope static objects requires a guard variable.
-    _ZGV*;
+    _ZGVNSt*;
 
     # virtual function thunks
-    _ZTh*;
-    _ZTv*;
-    _ZTc*;
-
-    # std::__convert_to_v
-    _ZSt14__convert_to_v*;
+    _ZThn8_NS*;
+    _ZThn16_NS*;
+    _ZTv0_n12_NS*;
+    _ZTv0_n24_NS*;
 
     # stub functions from libmath
     sinf;
@@ -191,15 +436,144 @@ GLIBCPP_3.4 {
     sqrtf;
     sqrtl;
     copysignf;
-    nan;
     __signbit;
     __signbitf;
     __signbitl;
 
+   # GLIBCXX_ABI compatibility only.
+    # std::string
+    _ZNKSs11_M_disjunctEPKc;
+    _ZNKSs15_M_check_lengthE[jm][jm]PKc;
+    _ZNSs4_Rep26_M_set_length_and_sharableE*;
+    _ZNSs7_M_copyEPcPKc[jm];
+    _ZNSs7_M_moveEPcPKc[jm];
+    _ZNSs9_M_assignEPc[jm]c;
+
+    # std::wstring
+    _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw;
+    _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthE[jm][jm]PKc;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableE*;
+    _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKw[jm];
+    _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKw[jm];
+    _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPw[jm]w;
+
+    _ZNKSt13basic_fstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNKSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNKSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+
+    _ZNSi6ignoreE[ilv];
+    _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[ilv];
+
+    _ZNSt11char_traitsI[cw]E2eqERK[cw]S2_;
+
+    _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv;
+
+  # DO NOT DELETE THIS LINE.  Port-specific symbols, if any, will be here.
+
   local:
     *;
 };
 
+GLIBCXX_3.4.1 {
+    _ZNSt12__basic_fileIcE4fileEv;
+} GLIBCXX_3.4;
+GLIBCXX_3.4.2 {
+
+    _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EE4fileEv;
+
+    _ZN9__gnu_cxx17__pool_alloc_base9_M_refillE[jm];
+    _ZN9__gnu_cxx17__pool_alloc_base16_M_get_free_listE[jm];
+    _ZN9__gnu_cxx17__pool_alloc_base12_M_get_mutexEv;
+
+} GLIBCXX_3.4.1;
+
+GLIBCXX_3.4.3 {
+    # stub functions from libmath
+    acosf;
+    acosl;
+    asinf;
+    asinl;
+    atanf;
+    atanl;
+    ceilf;
+    ceill;
+    floorf;
+    floorl;
+    fmodf;
+    fmodl;
+    frexpf;
+    frexpl;
+    ldexpf;
+    ldexpl;
+    modff;
+    modfl;
+
+} GLIBCXX_3.4.2;
+
+GLIBCXX_3.4.4 {
+
+    _ZN9__gnu_cxx6__poolILb0EE13_M_initializeEv;
+    _ZN9__gnu_cxx6__poolILb1EE13_M_initializeEPFvPvE;
+    _ZN9__gnu_cxx6__poolILb1EE21_M_destroy_thread_keyEPv;
+    _ZN9__gnu_cxx6__poolILb1EE16_M_get_thread_idEv;
+    _ZN9__gnu_cxx6__poolILb[01]EE16_M_reserve_blockE[jm][jm];
+    _ZN9__gnu_cxx6__poolILb[01]EE16_M_reclaim_blockEPc[jm];
+    _ZN9__gnu_cxx6__poolILb[01]EE10_M_destroyEv;
+
+    _ZN9__gnu_cxx9free_list6_M_getE*;
+    _ZN9__gnu_cxx9free_list8_M_clearEv;
+
+} GLIBCXX_3.4.3;
+
+GLIBCXX_3.4.5 {
+
+    # std::string
+    _ZNKSs11_M_disjunctEPKc;
+    _ZNKSs15_M_check_lengthE[jm][jm]PKc;
+    _ZNSs4_Rep26_M_set_length_and_sharableE*;
+    _ZNSs7_M_copyEPcPKc[jm];
+    _ZNSs7_M_moveEPcPKc[jm];
+    _ZNSs9_M_assignEPc[jm]c;
+
+    # std::wstring
+    _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw;
+    _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthE[jm][jm]PKc;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableE*;
+    _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKw[jm];
+    _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKw[jm];
+    _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPw[jm]w;
+
+    _ZNKSt13basic_fstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNKSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNKSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+
+    _ZNSi6ignoreE[ilv];
+    _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[ilv];
+
+    _ZNSt11char_traitsI[cw]E2eqERK[cw]S2_;
+
+    _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv;
+
+} GLIBCXX_3.4.4;
+
+GLIBCXX_3.4.6 {
+
+    _ZSt17__copy_streambufsI[cw]St11char_traitsI[cw]EEiPSt15basic_streambuf*;
+    _ZNSt8ios_base17_M_call_callbacksENS_5eventE;
+    _ZNSt8ios_base20_M_dispose_callbacksEv;
+    _ZNSt6locale5facet13_S_get_c_nameEv;
+
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE9showmanycEv;
+
+    _ZNKSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strEv;
+
+   _ZN9__gnu_cxx6__poolILb1EE13_M_initializeEv;
+
+} GLIBCXX_3.4.5;
 
 # Symbols in the support library (libsupc++) have their own tag.
 CXXABI_1.3 {
@@ -209,10 +583,12 @@ CXXABI_1.3 {
     __cxa_bad_cast;
     __cxa_bad_typeid;
     __cxa_begin_catch;
+    __cxa_begin_cleanup;
     __cxa_call_unexpected;
     __cxa_current_exception_type;
     __cxa_demangle;
     __cxa_end_catch;
+    __cxa_end_cleanup;
     __cxa_free_exception;
     __cxa_get_globals;
     __cxa_get_globals_fast;
@@ -222,6 +598,7 @@ CXXABI_1.3 {
     __cxa_pure_virtual;
     __cxa_rethrow;
     __cxa_throw;
+    __cxa_type_match;
     __cxa_vec_cctor;
     __cxa_vec_cleanup;
     __cxa_vec_ctor;
@@ -236,16 +613,78 @@ CXXABI_1.3 {
     __gxx_personality_sj0;
     __dynamic_cast;
 
-    # __gnu_cxx::_verbose_terminate_handler()
-    _ZN9__gnu_cxx27__verbose_terminate_handlerEv;
+    # *_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*;
 
-    # typeinfo
-    _ZTIN10__cxxabi*;
-    _ZTSN10__cxxabi*;
+    # *_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*;
 
-    # vtable
-    _ZTVN10__cxxabi*;
+    # 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;
+
+    # typeinfo structure (and some names)
+    _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;
+
+    # 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;
+
+    # __gnu_cxx::_verbose_terminate_handler()
+    _ZN9__gnu_cxx27__verbose_terminate_handlerEv;
 
   local:
     *;
 };
+
+CXXABI_1.3.1 {
+
+    __cxa_get_exception_ptr;
+
+} CXXABI_1.3;