OSDN Git Service

2003-10-02 Benjamin Kosnik <bkoz@redhat.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / config / linker-map.gnu
1 ## Linker script for GNU ld 2.13.91+ only.
2 ##
3 ## Copyright (C) 2002, 2003 Free Software Foundation, Inc.
4 ##
5 ## This file is part of the libstdc++ version 3 distribution.
6 ##
7 ## This file is part of the GNU ISO C++ Library.  This library is free
8 ## software; you can redistribute it and/or modify it under the
9 ## terms of the GNU General Public License as published by the
10 ## Free Software Foundation; either version 2, or (at your option)
11 ## any later version.
12 ##
13 ## This library is distributed in the hope that it will be useful,
14 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
15 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 ## GNU General Public License for more details.
17 ##
18 ## You should have received a copy of the GNU General Public License along
19 ## with this library; see the file COPYING.  If not, write to the Free
20 ## Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
21 ## USA.
22
23 GLIBCXX_3.4 {
24
25   global:
26
27     # Names inside the 'extern' block are demangled names.
28     extern "C++"
29     {
30       std::[A-Za-k]*;
31       std::length_error*;
32       std::logic_error*;
33       std::locale::[A-Za-e]*;
34       std::locale::facet::[A-Za-z]*;
35       std::locale::facet::_S_get_c_locale*;     
36       std::locale::facet::_S_clone_c_locale*;
37       std::locale::facet::_S_create_c_locale*;
38       std::locale::facet::_S_destroy_c_locale*;
39       std::locale::[A-Zg-h]*;
40       std::locale::id::[A-Za-z]*;
41       std::locale::id::_S_highwater;
42       std::locale::[A-Zj-z]*;
43       std::locale::_[A-Ha-z]*;
44       std::locale::_Impl::[A-Za-z]*;
45       std::locale::_Impl::_M_[A-Za-z]*;
46       std::locale::_[J-Ra-z]*;
47       std::locale::_S_normalize_category*;
48       std::locale::_[T-Za-z]*;
49       std::[A-Zm-z]*;
50       std::__throw_*;
51       std::__basic_file*;
52       std::__timepunct*;
53       std::__numeric_limits_base*;
54       std::__num_base::_S_format_float*;
55       std::__num_base::_S_format_int*;
56       std::__num_base::_S_atoms_in;
57       std::__num_base::_S_atoms_out;
58       std::__moneypunct_cache*;
59       std::__numpunct_cache*;
60       std::__timepunct_cache*
61     };
62
63     # Names not in an 'extern' block are mangled names.
64
65     # std::locale destructors
66     _ZNSt6localeD*;
67         
68     # std::locale::facet destructors
69     _ZNSt6locale5facetD*;
70          
71     # std::locale::_Impl constructors, destrutors
72     _ZNSt6locale5_ImplC*;
73     _ZNSt6locale5_ImplD*;
74
75     # bool has_facet 
76     _ZSt9has_facet*;
77
78     # _Rb_tree
79     _ZSt18_Rb_tree_decrementPSt18_Rb_tree_node_base;
80     _ZSt18_Rb_tree_incrementPSt18_Rb_tree_node_base;
81     _ZSt18_Rb_tree_rebalancePSt18_Rb_tree_node_baseRS0_;
82     _ZSt20_Rb_tree_black_countPKSt18_Rb_tree_node_baseS1_;
83     _ZSt20_Rb_tree_rotate_leftPSt18_Rb_tree_node_baseRS0_;
84     _ZSt21_Rb_tree_rotate_rightPSt18_Rb_tree_node_baseRS0_;
85     _ZSt28_Rb_tree_rebalance_for_erasePSt18_Rb_tree_node_baseRS_;
86
87     # virtual table
88     _ZTVNSt8ios_base7failureE;
89     _ZTVNSt6locale5facetE;
90     _ZTVS[a-z];
91     _ZTVSt[0-9][A-Za-z]*;
92     _ZTVSt[0-9][0-9][A-Za-z]*;
93     _ZTVSt11__timepunctI[cw]E;
94     _ZTVSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
95     _ZTVSt21__ctype_abstract_baseI[cw]E;
96
97     # VTT structure
98     _ZTTS[a-z];
99     _ZTTSt[0-9][A-Za-z]*;
100     _ZTTSt[0-9][0-9][A-Za-z]*;
101
102     # typeinfo structure
103     _ZTIS[a-z];
104     _ZTINSt8ios_base7failureE;
105     _ZTINSt6locale5facetE;
106     _ZTISt[0-9][A-Za-z]*;
107     _ZTISt[0-9][0-9][A-Za-z]*;
108     _ZTISt11__timepunctI[cw]E;
109     _ZTISt10__num_base;
110     _ZTISt21__ctype_abstract_baseI[cw]E;
111     _ZTISt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
112
113     # typeinfo name
114     _ZTSNSt8ios_base7failureE;
115     _ZTSNSt6locale5facetE;
116     _ZTSS[a-z];
117     _ZTSSt[0-9][A-Za-z]*;
118     _ZTSSt[0-9][0-9][A-Za-z]*;
119     _ZTSSt11__timepunctI[cw]E;
120     _ZTSSt10__num_base;
121     _ZTSSt21__ctype_abstract_baseI[cw]E;
122     _ZTSSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
123
124     # function-scope static objects requires a guard variable.
125     _ZGVNSt*;
126
127     # virtual function thunks
128     _ZThn8_NS*;
129     _ZThn16_NS*;
130     _ZTv0_n12_NS*;
131     _ZTv0_n24_NS*;
132
133     # std::__convert_to_v
134     _ZSt14__convert_to_v*;
135
136     # stub functions from libmath
137     sinf;
138     sinl;
139     sinhf;
140     sinhl;
141     cosf;
142     cosl;
143     coshf;
144     coshl;
145     tanf;
146     tanl;
147     tanhf;
148     tanhl;
149     atan2f;
150     atan2l;
151     expf;
152     expl;
153     hypotf;
154     hypotl;
155     hypot;
156     logf;
157     logl;
158     log10f;
159     log10l;
160     powf;
161     powl;
162     sqrtf;
163     sqrtl;
164     copysignf;
165     nan;
166     __signbit;
167     __signbitf;
168     __signbitl;
169
170     # __gnu_cxx::__pool_alloc
171     _ZN9__gnu_cxx12__pool_allocILb1ELi0EE8allocateE[jm];
172     _ZN9__gnu_cxx12__pool_allocILb1ELi0EE10deallocateEPv[jm];
173
174     # __gnu_cxx::stdio_sync_filebuf
175     _ZTVN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
176
177     # Needed only when generic cpu's atomicity.h is in use.
178     _ZN9__gnu_cxx17_Atomic_add_mutexE;
179     _ZN9__gnu_cxx22_Atomic_add_mutex_onceE;
180     _ZN9__gnu_cxx31__gthread_atomic_add_mutex_onceEv;
181
182   # DO NOT DELETE THIS LINE.  Port-specific symbols, if any, will be here.
183
184   local:
185     *;
186 };
187
188
189 # Symbols in the support library (libsupc++) have their own tag.
190 CXXABI_1.3 {
191
192   global:
193     __cxa_allocate_exception;
194     __cxa_bad_cast;
195     __cxa_bad_typeid;
196     __cxa_begin_catch;
197     __cxa_call_unexpected;
198     __cxa_current_exception_type;
199     __cxa_demangle;
200     __cxa_end_catch;
201     __cxa_free_exception;
202     __cxa_get_globals;
203     __cxa_get_globals_fast;
204     __cxa_guard_abort;
205     __cxa_guard_acquire;
206     __cxa_guard_release;
207     __cxa_pure_virtual;
208     __cxa_rethrow;
209     __cxa_throw;
210     __cxa_vec_cctor;
211     __cxa_vec_cleanup;
212     __cxa_vec_ctor;
213     __cxa_vec_delete2;
214     __cxa_vec_delete3;
215     __cxa_vec_delete;
216     __cxa_vec_dtor;
217     __cxa_vec_new2;
218     __cxa_vec_new3;
219     __cxa_vec_new;
220     __gxx_personality_v0;
221     __gxx_personality_sj0;
222     __dynamic_cast;
223
224     # operator new(size_t)
225     _Znw[jm];
226     # operator new(size_t, std::nothrow_t const&)
227     _Znw[jm]RKSt9nothrow_t;
228
229     # operator delete(void*)
230     _ZdlPv;
231     # operator delete(void*, std::nothrow_t const&)
232     _ZdlPvRKSt9nothrow_t;
233
234     # operator new[](size_t)
235     _Zna[jm];
236     # operator new[](size_t, std::nothrow_t const&)
237     _Zna[jm]RKSt9nothrow_t;
238
239     # operator delete[](void*)
240     _ZdaPv;
241     # operator delete[](void*, std::nothrow_t const&)
242     _ZdaPvRKSt9nothrow_t;
243
244     # virtual table
245     _ZTVN10__cxxabiv117__class_type_infoE;
246     _ZTVN10__cxxabiv120__si_class_type_infoE;
247     _ZTVN10__cxxabiv121__vmi_class_type_infoE;
248     _ZTVN10__cxxabiv123__fundamental_type_infoE;
249     _ZTVN10__cxxabiv117__array_type_infoE;
250     _ZTVN10__cxxabiv120__function_type_infoE;
251     _ZTVN10__cxxabiv116__enum_type_infoE;
252     _ZTVN10__cxxabiv117__pbase_type_infoE;
253     _ZTVN10__cxxabiv119__pointer_type_infoE;
254     _ZTVN10__cxxabiv129__pointer_to_member_type_infoE;
255
256     # typeinfo structure (and some names)
257     _ZTI[a-z];
258     _ZTIP[a-z];
259     _ZTIPK[a-z];
260     _ZTIN10__cxxabiv117__class_type_infoE;
261     _ZTIN10__cxxabiv120__si_class_type_infoE;
262     _ZTIN10__cxxabiv121__vmi_class_type_infoE;
263     _ZTIN10__cxxabiv123__fundamental_type_infoE;
264     _ZTIN10__cxxabiv117__array_type_infoE;
265     _ZTIN10__cxxabiv120__function_type_infoE;
266     _ZTIN10__cxxabiv116__enum_type_infoE;
267     _ZTIN10__cxxabiv117__pbase_type_infoE;
268     _ZTIN10__cxxabiv119__pointer_type_infoE;
269     _ZTIN10__cxxabiv129__pointer_to_member_type_infoE;
270
271     # typeinfo name
272     _ZTS[a-z];
273     _ZTSP[a-z];
274     _ZTSPK[a-z];
275
276     # __gnu_cxx::_verbose_terminate_handler()
277     _ZN9__gnu_cxx27__verbose_terminate_handlerEv;
278
279   local:
280     *;
281 };