]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/config/linker-map.gnu
[multiple changes]
[thirdparty/gcc.git] / libstdc++-v3 / config / linker-map.gnu
CommitLineData
e6b7a69a 1## Linker script for GNU ld 2.13.91+ only.
530539d9 2##
ba9d552e 3## Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
530539d9
PE
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
3d7c150e 23GLIBCXX_3.4 {
530539d9
PE
24
25 global:
26
0d223e3a 27 # Names inside the 'extern' block are demangled names.
530539d9
PE
28 extern "C++"
29 {
5ec3f566
BK
30 std::[A-Za-h]*;
31 std::i[a-n]*;
32 std::ios_base::[A-Ha-z]*;
33 std::ios_base::_M_grow_words*;
34 std::ios_base::_M_init*;
35 std::ios_base::Init::[A-Za-z]*;
5ec3f566
BK
36 std::ios_base::[J-Za-z]*;
37 std::i[p-z]*;
38 std::[A-Zj-k]*;
a7817e1d
BK
39 std::length_error*;
40 std::logic_error*;
1c26d8fd
BK
41 std::locale::[A-Za-e]*;
42 std::locale::facet::[A-Za-z]*;
8ae81136 43 std::locale::facet::_S_get_c_locale*;
1c26d8fd
BK
44 std::locale::facet::_S_clone_c_locale*;
45 std::locale::facet::_S_create_c_locale*;
46 std::locale::facet::_S_destroy_c_locale*;
8099b2ae
BK
47 std::locale::[A-Zg-h]*;
48 std::locale::id::[A-Za-z]*;
5aaa2108 49 std::locale::id::_M_id*;
8099b2ae
BK
50 std::locale::[A-Zj-z]*;
51 std::locale::_[A-Ha-z]*;
52 std::locale::_Impl::[A-Za-z]*;
53 std::locale::_Impl::_M_[A-Za-z]*;
54 std::locale::_[J-Ra-z]*;
b0b12802
BK
55 std::locale::_S_normalize_category*;
56 std::locale::_[T-Za-z]*;
a7817e1d 57 std::[A-Zm-z]*;
530539d9
PE
58 std::__throw_*;
59 std::__basic_file*;
84979344 60 std::__timepunct*;
3a24c513 61 std::__numeric_limits_base*;
3a15abf1
BK
62 std::__num_base::_S_format_float*;
63 std::__num_base::_S_format_int*;
64 std::__num_base::_S_atoms_in;
215f9e28 65 std::__num_base::_S_atoms_out;
fea4065d
BK
66 std::__moneypunct_cache*;
67 std::__numpunct_cache*;
285b36d6
BK
68 std::__timepunct_cache*;
69 __gnu_norm::*;
70 __gnu_debug::_Safe_iterator_base*;
71 __gnu_debug::_Safe_sequence_base*;
72 __gnu_debug::_Error_formatter*
530539d9
PE
73 };
74
0d223e3a 75 # Names not in an 'extern' block are mangled names.
6dc5fdfd 76
5aaa2108
BK
77 # operator new(size_t)
78 _Znw[jm];
79 # operator new(size_t, std::nothrow_t const&)
80 _Znw[jm]RKSt9nothrow_t;
81
82 # operator delete(void*)
83 _ZdlPv;
84 # operator delete(void*, std::nothrow_t const&)
85 _ZdlPvRKSt9nothrow_t;
86
87 # operator new[](size_t)
88 _Zna[jm];
89 # operator new[](size_t, std::nothrow_t const&)
90 _Zna[jm]RKSt9nothrow_t;
91
92 # operator delete[](void*)
93 _ZdaPv;
94 # operator delete[](void*, std::nothrow_t const&)
95 _ZdaPvRKSt9nothrow_t;
96
b0b12802 97 # std::locale destructors
a7817e1d 98 _ZNSt6localeD*;
1c26d8fd
BK
99
100 # std::locale::facet destructors
101 _ZNSt6locale5facetD*;
b0b12802 102
285b36d6 103 # std::locale::_Impl constructors, destructors
8099b2ae
BK
104 _ZNSt6locale5_ImplC*;
105 _ZNSt6locale5_ImplD*;
a7817e1d 106
5ec3f566
BK
107 # std::ios_base, std::ios_base::Init destructors
108 _ZNSt8ios_baseD*;
109 _ZNSt8ios_base4InitD*;
110
8099b2ae 111 # bool has_facet
41b4d44b 112 _ZSt9has_facet*;
e38ff265 113
ca1c7011 114 # _Rb_tree
e135a038 115 _ZSt18_Rb_tree_decrementPKSt18_Rb_tree_node_base;
b4c70e89 116 _ZSt18_Rb_tree_decrementPSt18_Rb_tree_node_base;
e135a038 117 _ZSt18_Rb_tree_incrementPKSt18_Rb_tree_node_base;
b4c70e89 118 _ZSt18_Rb_tree_incrementPSt18_Rb_tree_node_base;
b4c70e89 119 _ZSt20_Rb_tree_black_countPKSt18_Rb_tree_node_baseS1_;
ca1c7011
GB
120 _ZSt20_Rb_tree_rotate_leftPSt18_Rb_tree_node_baseRS0_;
121 _ZSt21_Rb_tree_rotate_rightPSt18_Rb_tree_node_baseRS0_;
122 _ZSt28_Rb_tree_rebalance_for_erasePSt18_Rb_tree_node_baseRS_;
e135a038 123 _ZSt29_Rb_tree_insert_and_rebalancebPSt18_Rb_tree_node_baseS0_RS_;
ca1c7011 124
5aaa2108
BK
125 # std::__codecvt_abstract_base*
126 _ZNStSt23__codecvt_abstract_base*;
127
c37514ff 128 # virtual table
4e7a2c6f
BK
129 _ZTVNSt8ios_base7failureE;
130 _ZTVNSt6locale5facetE;
131 _ZTVS[a-z];
132 _ZTVSt[0-9][A-Za-z]*;
133 _ZTVSt[0-9][0-9][A-Za-z]*;
134 _ZTVSt11__timepunctI[cw]E;
135 _ZTVSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
136 _ZTVSt21__ctype_abstract_baseI[cw]E;
137
c37514ff 138 # VTT structure
4e7a2c6f
BK
139 _ZTTS[a-z];
140 _ZTTSt[0-9][A-Za-z]*;
141 _ZTTSt[0-9][0-9][A-Za-z]*;
37cea034 142
c37514ff
BK
143 # typeinfo structure
144 _ZTIS[a-z];
4e7a2c6f
BK
145 _ZTINSt8ios_base7failureE;
146 _ZTINSt6locale5facetE;
4e7a2c6f
BK
147 _ZTISt[0-9][A-Za-z]*;
148 _ZTISt[0-9][0-9][A-Za-z]*;
149 _ZTISt11__timepunctI[cw]E;
150 _ZTISt10__num_base;
151 _ZTISt21__ctype_abstract_baseI[cw]E;
152 _ZTISt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
64bd39cc 153 _ZTIN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
d318a8ba 154 _ZTIN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
4e7a2c6f 155
c37514ff 156 # typeinfo name
4e7a2c6f
BK
157 _ZTSNSt8ios_base7failureE;
158 _ZTSNSt6locale5facetE;
4e7a2c6f
BK
159 _ZTSS[a-z];
160 _ZTSSt[0-9][A-Za-z]*;
161 _ZTSSt[0-9][0-9][A-Za-z]*;
162 _ZTSSt11__timepunctI[cw]E;
163 _ZTSSt10__num_base;
164 _ZTSSt21__ctype_abstract_baseI[cw]E;
165 _ZTSSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
64bd39cc 166 _ZTSN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
d318a8ba 167 _ZTSN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
9b41c370
BK
168
169 # function-scope static objects requires a guard variable.
c37514ff 170 _ZGVNSt*;
37cea034 171
9b41c370 172 # virtual function thunks
c37514ff 173 _ZThn8_NS*;
dc4add82 174 _ZThn16_NS*;
c37514ff 175 _ZTv0_n12_NS*;
dc4add82 176 _ZTv0_n24_NS*;
9b41c370 177
0d223e3a 178 # std::__convert_to_v
530539d9
PE
179 _ZSt14__convert_to_v*;
180
8099b2ae
BK
181 # stub functions from libmath
182 sinf;
183 sinl;
184 sinhf;
185 sinhl;
186 cosf;
187 cosl;
188 coshf;
189 coshl;
190 tanf;
191 tanl;
192 tanhf;
193 tanhl;
194 atan2f;
195 atan2l;
196 expf;
197 expl;
198 hypotf;
199 hypotl;
200 hypot;
201 logf;
202 logl;
203 log10f;
204 log10l;
205 powf;
206 powl;
207 sqrtf;
208 sqrtl;
209 copysignf;
8099b2ae
BK
210 __signbit;
211 __signbitf;
212 __signbitl;
213
c37514ff
BK
214 # __gnu_cxx::stdio_sync_filebuf
215 _ZTVN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
216
2c5d0ae8
BK
217 # __gnu_cxx::__atomic_add
218 # __gnu_cxx::__exchange_and_add
f83295ba
BK
219 _ZN9__gnu_cxx12__atomic_add*;
220 _ZN9__gnu_cxx18__exchange_and_add*;
c37514ff 221
e6b7a69a
PE
222 # DO NOT DELETE THIS LINE. Port-specific symbols, if any, will be here.
223
530539d9
PE
224 local:
225 *;
226};
9aa43698 227
1c26d8fd 228
9aa43698 229# Symbols in the support library (libsupc++) have their own tag.
8099b2ae 230CXXABI_1.3 {
9aa43698
PE
231
232 global:
8ecab601
BK
233 __cxa_allocate_exception;
234 __cxa_bad_cast;
235 __cxa_bad_typeid;
236 __cxa_begin_catch;
237 __cxa_call_unexpected;
238 __cxa_current_exception_type;
239 __cxa_demangle;
8ecab601
BK
240 __cxa_end_catch;
241 __cxa_free_exception;
242 __cxa_get_globals;
243 __cxa_get_globals_fast;
8099b2ae
BK
244 __cxa_guard_abort;
245 __cxa_guard_acquire;
246 __cxa_guard_release;
8ecab601
BK
247 __cxa_pure_virtual;
248 __cxa_rethrow;
249 __cxa_throw;
250 __cxa_vec_cctor;
251 __cxa_vec_cleanup;
252 __cxa_vec_ctor;
253 __cxa_vec_delete2;
254 __cxa_vec_delete3;
255 __cxa_vec_delete;
256 __cxa_vec_dtor;
257 __cxa_vec_new2;
258 __cxa_vec_new3;
259 __cxa_vec_new;
9aa43698 260 __gxx_personality_v0;
51cd12de 261 __gxx_personality_sj0;
9aa43698
PE
262 __dynamic_cast;
263
5aaa2108
BK
264 # *_type_info classes, ctor and dtor
265 _ZN10__cxxabiv117__array_type_info*;
266 _ZN10__cxxabiv117__class_type_info*;
267 _ZN10__cxxabiv116__enum_type_info*;
268 _ZN10__cxxabiv120__function_type_info*;
269 _ZN10__cxxabiv123__fundamental_type_info*;
270 _ZN10__cxxabiv117__pbase_type_info*;
271 _ZN10__cxxabiv129__pointer_to_member_type_info*;
272 _ZN10__cxxabiv119__pointer_type_info*;
273 _ZN10__cxxabiv120__si_class_type_info*;
274 _ZN10__cxxabiv121__vmi_class_type_info*;
275
276 # *_type_info classes, member functions
277 _ZNK10__cxxabiv117__class_type_info*;
278 _ZNK10__cxxabiv120__function_type_info*;
279 _ZNK10__cxxabiv117__pbase_type_info*;
280 _ZNK10__cxxabiv129__pointer_to_member_type_info*;
281 _ZNK10__cxxabiv119__pointer_type_info*;
282 _ZNK10__cxxabiv120__si_class_type_info*;
283 _ZNK10__cxxabiv121__vmi_class_type_info*;
c37514ff
BK
284
285 # virtual table
c37514ff 286 _ZTVN10__cxxabiv117__array_type_infoE;
5aaa2108 287 _ZTVN10__cxxabiv117__class_type_infoE;
c37514ff 288 _ZTVN10__cxxabiv116__enum_type_infoE;
5aaa2108
BK
289 _ZTVN10__cxxabiv120__function_type_infoE;
290 _ZTVN10__cxxabiv123__fundamental_type_infoE;
c37514ff 291 _ZTVN10__cxxabiv117__pbase_type_infoE;
c37514ff 292 _ZTVN10__cxxabiv129__pointer_to_member_type_infoE;
5aaa2108
BK
293 _ZTVN10__cxxabiv119__pointer_type_infoE;
294 _ZTVN10__cxxabiv120__si_class_type_infoE;
295 _ZTVN10__cxxabiv121__vmi_class_type_infoE;
c37514ff
BK
296
297 # typeinfo structure (and some names)
298 _ZTI[a-z];
299 _ZTIP[a-z];
300 _ZTIPK[a-z];
c37514ff 301 _ZTIN10__cxxabiv117__array_type_infoE;
5aaa2108 302 _ZTIN10__cxxabiv117__class_type_infoE;
c37514ff 303 _ZTIN10__cxxabiv116__enum_type_infoE;
5aaa2108
BK
304 _ZTIN10__cxxabiv120__function_type_infoE;
305 _ZTIN10__cxxabiv123__fundamental_type_infoE;
c37514ff 306 _ZTIN10__cxxabiv117__pbase_type_infoE;
c37514ff 307 _ZTIN10__cxxabiv129__pointer_to_member_type_infoE;
5aaa2108
BK
308 _ZTIN10__cxxabiv119__pointer_type_infoE;
309 _ZTIN10__cxxabiv120__si_class_type_infoE;
310 _ZTIN10__cxxabiv121__vmi_class_type_infoE;
c37514ff
BK
311
312 # typeinfo name
313 _ZTS[a-z];
314 _ZTSP[a-z];
315 _ZTSPK[a-z];
5aaa2108
BK
316 _ZTSN10__cxxabiv117__array_type_infoE;
317 _ZTSN10__cxxabiv117__class_type_infoE;
318 _ZTSN10__cxxabiv116__enum_type_infoE;
319 _ZTSN10__cxxabiv120__function_type_infoE;
320 _ZTSN10__cxxabiv123__fundamental_type_infoE;
321 _ZTSN10__cxxabiv117__pbase_type_infoE;
322 _ZTSN10__cxxabiv129__pointer_to_member_type_infoE;
323 _ZTSN10__cxxabiv119__pointer_type_infoE;
324 _ZTSN10__cxxabiv120__si_class_type_infoE;
325 _ZTSN10__cxxabiv121__vmi_class_type_infoE;
c37514ff
BK
326
327 # __gnu_cxx::_verbose_terminate_handler()
328 _ZN9__gnu_cxx27__verbose_terminate_handlerEv;
4e7a2c6f 329
9aa43698
PE
330 local:
331 *;
332};