]>
Commit | Line | Data |
---|---|---|
3cbc7af0 BK |
1 | ## Linker script for GNU namespace versioning. |
2 | ## | |
818ab71a | 3 | ## Copyright (C) 2002-2016 Free Software Foundation, Inc. |
3cbc7af0 BK |
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 | |
748086b7 | 10 | ## Free Software Foundation; either version 3, or (at your option) |
3cbc7af0 BK |
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 | |
748086b7 JJ |
19 | ## with this library; see the file COPYING3. If not see |
20 | ## <http://www.gnu.org/licenses/>. | |
3cbc7af0 | 21 | |
2799d972 | 22 | GLIBCXX_7.0 { |
3cbc7af0 BK |
23 | |
24 | global: | |
25 | ||
26 | # Names inside the 'extern' block are demangled names. | |
27 | extern "C++" | |
28 | { | |
957ea7ba | 29 | std::*; |
2799d972 | 30 | std::__7::*; |
957ea7ba | 31 | std::random_device::* |
3cbc7af0 BK |
32 | }; |
33 | ||
34 | # operator new(size_t) | |
c1da2dc9 | 35 | _Znw[jmy]; |
3cbc7af0 | 36 | # operator new(size_t, std::nothrow_t const&) |
c1da2dc9 | 37 | _Znw[jmy]RKSt9nothrow_t; |
3cbc7af0 BK |
38 | |
39 | # operator delete(void*) | |
40 | _ZdlPv; | |
41 | # operator delete(void*, std::nothrow_t const&) | |
42 | _ZdlPvRKSt9nothrow_t; | |
43 | ||
44 | # operator new[](size_t) | |
c1da2dc9 | 45 | _Zna[jmy]; |
3cbc7af0 | 46 | # operator new[](size_t, std::nothrow_t const&) |
c1da2dc9 | 47 | _Zna[jmy]RKSt9nothrow_t; |
3cbc7af0 BK |
48 | |
49 | # operator delete[](void*) | |
50 | _ZdaPv; | |
51 | # operator delete[](void*, std::nothrow_t const&) | |
52 | _ZdaPvRKSt9nothrow_t; | |
53 | ||
54 | # function-scope static objects requires a guard variable. | |
55 | _ZGVNSt*; | |
56 | ||
957ea7ba BK |
57 | # VTT structure |
58 | _ZTTNSt*; | |
59 | ||
60 | # vtable | |
e0372a2f | 61 | _ZTVSt*; |
957ea7ba | 62 | _ZTVNSt*; |
68459267 | 63 | _ZTVN9__gnu_cxx3__718stdio_sync_filebufI[cw]NSt3__711char_traitsI[cw]EEEE; |
3cbc7af0 | 64 | |
957ea7ba | 65 | # thunk |
6da10826 | 66 | _ZTv0_n12_NS*; |
957ea7ba | 67 | _ZTv0_n24_NS*; |
3cbc7af0 | 68 | |
957ea7ba | 69 | # typeinfo structure |
e0372a2f | 70 | _ZTISt*; |
957ea7ba BK |
71 | _ZTINSt*; |
72 | ||
73 | # typeinfo name | |
e0372a2f | 74 | _ZTSSt*; |
957ea7ba BK |
75 | _ZTSNSt*; |
76 | ||
77 | # locale | |
78 | _ZNSt3__79has_facetINS_*; | |
79 | ||
f92ab29f | 80 | # hash |
957ea7ba BK |
81 | _ZNSt8__detail3__712__prime_listE; |
82 | _ZNSt3tr18__detail3__712__prime_listE; | |
83 | ||
84 | # thread/mutex/condition_variable/future | |
85 | __once_proxy; | |
3cbc7af0 | 86 | |
12ffa228 | 87 | # std::__detail::_List_node_base |
2799d972 BK |
88 | _ZNSt8__detail3__715_List_node_base7_M_hook*; |
89 | _ZNSt8__detail3__715_List_node_base9_M_unhookEv; | |
90 | _ZNSt8__detail3__715_List_node_base10_M_reverseEv; | |
91 | _ZNSt8__detail3__715_List_node_base11_M_transfer*; | |
92 | _ZNSt8__detail3__715_List_node_base4swapER*; | |
12ffa228 | 93 | |
3cbc7af0 | 94 | # std::__convert_to_v |
2799d972 | 95 | _ZNSt3__714__convert_to_v*; |
3cbc7af0 BK |
96 | |
97 | # std::__copy_streambufs | |
2799d972 BK |
98 | _ZNSt3__717__copy_streambufsI*; |
99 | _ZNSt3__721__copy_streambufs_eofI*; | |
3cbc7af0 BK |
100 | |
101 | # __gnu_cxx::__atomic_add | |
102 | # __gnu_cxx::__exchange_and_add | |
2799d972 BK |
103 | _ZN9__gnu_cxx3__712__atomic_addEPV[il][il]; |
104 | _ZN9__gnu_cxx3__718__exchange_and_addEPV[li][il]; | |
3cbc7af0 BK |
105 | |
106 | # __gnu_cxx::__pool | |
2799d972 | 107 | _ZN9__gnu_cxx3__76__poolILb[01]EE13_M_initializeEv; |
c1da2dc9 BK |
108 | _ZN9__gnu_cxx3__76__poolILb[01]EE16_M_reserve_blockE[jmy][jmy]; |
109 | _ZN9__gnu_cxx3__76__poolILb[01]EE16_M_reclaim_blockEPc[jmy]; | |
2799d972 BK |
110 | _ZN9__gnu_cxx3__76__poolILb[01]EE10_M_destroyEv; |
111 | _ZN9__gnu_cxx3__76__poolILb1EE16_M_get_thread_idEv; | |
3cbc7af0 | 112 | |
f92ab29f | 113 | _ZN9__gnu_cxx3__717__pool_alloc_base9_M_refillE[jmy]; |
c1da2dc9 | 114 | _ZN9__gnu_cxx3__717__pool_alloc_base16_M_get_free_listE[jmy]; |
2799d972 | 115 | _ZN9__gnu_cxx3__717__pool_alloc_base12_M_get_mutexEv; |
3cbc7af0 | 116 | |
c1da2dc9 | 117 | _ZN9__gnu_cxx3__79free_list6_M_getE[jmy]; |
2799d972 | 118 | _ZN9__gnu_cxx3__79free_list8_M_clearEv; |
3cbc7af0 | 119 | |
9b690d8c | 120 | # __gnu_cxx::stdio_sync_filebuf |
2799d972 BK |
121 | _ZTVN9__gnu_cxx3__718stdio_sync_filebufI[cw]St3__711char_traitsI[cw]EEE; |
122 | _ZN9__gnu_cxx3__718stdio_sync_filebufI[cw]NSt3__711char_traitsI[cw]EEE[5-9]*; | |
9b690d8c | 123 | |
9adfc73c | 124 | # debug mode |
9adfc73c BK |
125 | _ZN11__gnu_debug19_Safe_sequence_base12_M_get_mutexEv; |
126 | _ZN11__gnu_debug19_Safe_sequence_base13_M_detach_allEv; | |
127 | _ZN11__gnu_debug19_Safe_sequence_base18_M_detach_singularEv; | |
128 | _ZN11__gnu_debug19_Safe_sequence_base22_M_revalidate_singularEv; | |
129 | _ZN11__gnu_debug19_Safe_sequence_base7_M_swapERS0_; | |
130 | ||
9b690d8c BK |
131 | _ZN11__gnu_debug19_Safe_iterator_base9_M_attach*; |
132 | _ZN11__gnu_debug19_Safe_iterator_base16_M_attach_single*; | |
9adfc73c BK |
133 | _ZN11__gnu_debug19_Safe_iterator_base9_M_detachEv; |
134 | _ZN11__gnu_debug19_Safe_iterator_base16_M_detach_singleEv; | |
135 | _ZN11__gnu_debug19_Safe_iterator_base12_M_get_mutexEv; | |
136 | _ZNK11__gnu_debug19_Safe_iterator_base11_M_singularEv; | |
137 | _ZNK11__gnu_debug19_Safe_iterator_base14_M_can_compareERKS0_; | |
138 | ||
139 | _ZNK11__gnu_debug16_Error_formatter10_M_message*; | |
140 | _ZNK11__gnu_debug16_Error_formatter10_Parameter*; | |
141 | _ZNK11__gnu_debug16_Error_formatter13_M_print_word*; | |
142 | _ZNK11__gnu_debug16_Error_formatter15_M_print_string*; | |
143 | _ZNK11__gnu_debug16_Error_formatter8_M_error*; | |
144 | _ZNK11__gnu_debug16_Error_formatter17_M_get_max_lengthEv; | |
145 | ||
68459267 BK |
146 | # __gnu_debug::_Safe_unordered_container_base |
147 | # __gnu_debug::_Safe_local_iterator_base | |
148 | _ZN11__gnu_debug30_Safe_unordered_container_base7_M_swapERS0_; | |
149 | _ZN11__gnu_debug30_Safe_unordered_container_base13_M_detach_allEv; | |
150 | _ZN11__gnu_debug25_Safe_local_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb; | |
151 | _ZN11__gnu_debug25_Safe_local_iterator_base9_M_detachEv; | |
152 | ||
153 | ||
12ffa228 BK |
154 | # parallel mode |
155 | _ZN14__gnu_parallel9_Settings3getEv; | |
156 | _ZN14__gnu_parallel9_Settings3setERS0_; | |
157 | ||
3cbc7af0 BK |
158 | local: |
159 | *; | |
160 | }; | |
161 | ||
162 | ||
163 | # Symbols in the support library (libsupc++) have their own tag. | |
9b690d8c | 164 | CXXABI_2.0 { |
3cbc7af0 BK |
165 | |
166 | global: | |
167 | __cxa_allocate_exception; | |
c1da2dc9 | 168 | __cxa_allocate_dependent_exception; |
3cbc7af0 BK |
169 | __cxa_bad_cast; |
170 | __cxa_bad_typeid; | |
171 | __cxa_begin_catch; | |
172 | __cxa_begin_cleanup; | |
173 | __cxa_call_unexpected; | |
174 | __cxa_current_exception_type; | |
c1da2dc9 | 175 | __cxa_deleted_virtual; |
3cbc7af0 BK |
176 | __cxa_demangle; |
177 | __cxa_end_catch; | |
178 | __cxa_end_cleanup; | |
179 | __cxa_free_exception; | |
c1da2dc9 | 180 | __cxa_free_dependent_exception; |
3cbc7af0 | 181 | __cxa_get_exception_ptr; |
27abac26 | 182 | __cxa_init_primary_exception; |
3cbc7af0 BK |
183 | __cxa_get_globals; |
184 | __cxa_get_globals_fast; | |
185 | __cxa_guard_abort; | |
186 | __cxa_guard_acquire; | |
187 | __cxa_guard_release; | |
188 | __cxa_pure_virtual; | |
189 | __cxa_rethrow; | |
190 | __cxa_throw; | |
191 | __cxa_type_match; | |
192 | __cxa_vec_cctor; | |
193 | __cxa_vec_cleanup; | |
194 | __cxa_vec_ctor; | |
195 | __cxa_vec_delete2; | |
196 | __cxa_vec_delete3; | |
197 | __cxa_vec_delete; | |
198 | __cxa_vec_dtor; | |
199 | __cxa_vec_new2; | |
200 | __cxa_vec_new3; | |
201 | __cxa_vec_new; | |
202 | __gxx_personality_v0; | |
203 | __gxx_personality_sj0; | |
204 | __dynamic_cast; | |
205 | ||
9b690d8c BK |
206 | # std::exception_ptr |
207 | _ZNSt15__exception_ptr13exception_ptrC1Ev; | |
208 | _ZNSt15__exception_ptr13exception_ptrC2Ev; | |
27abac26 | 209 | _ZNSt15__exception_ptr13exception_ptrC1EPv; |
9b690d8c BK |
210 | _ZNSt15__exception_ptr13exception_ptrC1ERKS0_; |
211 | _ZNSt15__exception_ptr13exception_ptrC2ERKS0_; | |
212 | _ZNSt15__exception_ptr13exception_ptrC1EMS0_FvvE; | |
213 | _ZNSt15__exception_ptr13exception_ptrC2EMS0_FvvE; | |
214 | _ZNSt15__exception_ptr13exception_ptrD1Ev; | |
215 | _ZNSt15__exception_ptr13exception_ptrD2Ev; | |
216 | _ZNSt15__exception_ptr13exception_ptraSERKS0_; | |
217 | _ZNKSt15__exception_ptr13exception_ptrcvMS0_FvvEEv; | |
218 | _ZNKSt15__exception_ptr13exception_ptrntEv; | |
219 | _ZNKSt15__exception_ptr13exception_ptr20__cxa_exception_typeEv; | |
220 | _ZNSt15__exception_ptr13exception_ptr4swapERS0_; | |
221 | _ZNSt15__exception_ptreqERKNS_13exception_ptrES2_; | |
222 | _ZNSt15__exception_ptrneERKNS_13exception_ptrES2_; | |
223 | ||
224 | _ZSt17current_exceptionv; | |
225 | _ZSt17rethrow_exceptionNSt15__exception_ptr13exception_ptrE; | |
226 | ||
c1da2dc9 BK |
227 | # std::nested_exception |
228 | _ZNSt16nested_exceptionD*; | |
229 | _ZTISt16nested_exception; | |
230 | _ZTVSt16nested_exception; | |
231 | ||
9b690d8c BK |
232 | # std::bad_function_call. |
233 | _ZNSt17bad_function_callD*; | |
234 | _ZTISt17bad_function_call; | |
235 | _ZTSSt17bad_function_call; | |
236 | _ZTVSt17bad_function_call; | |
237 | ||
7d5e76c8 JM |
238 | __cxa_throw_bad_array_new_length; |
239 | _Z*St20bad_array_new_length*; | |
240 | ||
0138d6b2 JM |
241 | __cxa_throw_bad_array_length; |
242 | _Z*St16bad_array_length*; | |
243 | ||
9b690d8c BK |
244 | # Default function. |
245 | _ZSt11_Hash_bytesPKv*; | |
246 | ||
247 | # FNV hash. | |
248 | _ZSt15_Fnv_hash_bytesPKv*; | |
249 | ||
250 | # __gnu_cxx::_verbose_terminate_handler() | |
2799d972 | 251 | _ZN9__gnu_cxx3__727__verbose_terminate_handlerEv; |
9b690d8c | 252 | |
3cbc7af0 BK |
253 | # *_type_info classes, ctor and dtor |
254 | _ZN10__cxxabiv117__array_type_info*; | |
255 | _ZN10__cxxabiv117__class_type_info*; | |
256 | _ZN10__cxxabiv116__enum_type_info*; | |
257 | _ZN10__cxxabiv120__function_type_info*; | |
258 | _ZN10__cxxabiv123__fundamental_type_info*; | |
259 | _ZN10__cxxabiv117__pbase_type_info*; | |
260 | _ZN10__cxxabiv129__pointer_to_member_type_info*; | |
261 | _ZN10__cxxabiv119__pointer_type_info*; | |
262 | _ZN10__cxxabiv120__si_class_type_info*; | |
263 | _ZN10__cxxabiv121__vmi_class_type_info*; | |
264 | ||
265 | # *_type_info classes, member functions | |
266 | _ZNK10__cxxabiv117__class_type_info*; | |
267 | _ZNK10__cxxabiv120__function_type_info*; | |
268 | _ZNK10__cxxabiv117__pbase_type_info*; | |
269 | _ZNK10__cxxabiv129__pointer_to_member_type_info*; | |
270 | _ZNK10__cxxabiv119__pointer_type_info*; | |
271 | _ZNK10__cxxabiv120__si_class_type_info*; | |
272 | _ZNK10__cxxabiv121__vmi_class_type_info*; | |
273 | ||
9adfc73c | 274 | # typeinfo structure |
3cbc7af0 BK |
275 | _ZTI[a-z]; |
276 | _ZTIP[a-z]; | |
277 | _ZTIPK[a-z]; | |
278 | _ZTIN10__cxxabiv117__array_type_infoE; | |
279 | _ZTIN10__cxxabiv117__class_type_infoE; | |
280 | _ZTIN10__cxxabiv116__enum_type_infoE; | |
281 | _ZTIN10__cxxabiv120__function_type_infoE; | |
282 | _ZTIN10__cxxabiv123__fundamental_type_infoE; | |
283 | _ZTIN10__cxxabiv117__pbase_type_infoE; | |
284 | _ZTIN10__cxxabiv129__pointer_to_member_type_infoE; | |
285 | _ZTIN10__cxxabiv119__pointer_type_infoE; | |
286 | _ZTIN10__cxxabiv120__si_class_type_infoE; | |
287 | _ZTIN10__cxxabiv121__vmi_class_type_infoE; | |
9adfc73c BK |
288 | _ZTIN10__cxxabiv115__forced_unwindE; |
289 | _ZTIN10__cxxabiv119__foreign_exceptionE; | |
9b690d8c BK |
290 | _ZTIN10__cxxabiv115__forced_unwindE; |
291 | _ZTIN10__cxxabiv119__foreign_exceptionE; | |
3cbc7af0 BK |
292 | |
293 | # typeinfo name | |
294 | _ZTS[a-z]; | |
295 | _ZTSP[a-z]; | |
296 | _ZTSPK[a-z]; | |
297 | _ZTSN10__cxxabiv117__array_type_infoE; | |
298 | _ZTSN10__cxxabiv117__class_type_infoE; | |
299 | _ZTSN10__cxxabiv116__enum_type_infoE; | |
300 | _ZTSN10__cxxabiv120__function_type_infoE; | |
301 | _ZTSN10__cxxabiv123__fundamental_type_infoE; | |
302 | _ZTSN10__cxxabiv117__pbase_type_infoE; | |
303 | _ZTSN10__cxxabiv129__pointer_to_member_type_infoE; | |
304 | _ZTSN10__cxxabiv119__pointer_type_infoE; | |
305 | _ZTSN10__cxxabiv120__si_class_type_infoE; | |
306 | _ZTSN10__cxxabiv121__vmi_class_type_infoE; | |
307 | ||
9b690d8c BK |
308 | # typeinfo for char16_t and char32_t |
309 | _ZTIDs; | |
310 | _ZTIPDs; | |
311 | _ZTIPKDs; | |
312 | _ZTIDi; | |
313 | _ZTIPDi; | |
314 | _ZTIPKDi; | |
315 | ||
316 | # typeinfo for decimal floating point types | |
317 | _ZTID[fde]; | |
318 | _ZTIPD[fde]; | |
319 | _ZTIPKD[fde]; | |
320 | ||
321 | # typeinfo for decltype(nullptr) | |
322 | _ZTIDn; | |
323 | _ZTIPDn; | |
324 | _ZTIPKDn; | |
325 | ||
b911b50d MG |
326 | # typeinfo for __int128 and unsigned __int128 |
327 | _ZTI[no]; | |
328 | _ZTIP[no]; | |
329 | _ZTIPK[no]; | |
c1da2dc9 | 330 | |
9b690d8c BK |
331 | # virtual table |
332 | _ZTVN10__cxxabiv117__array_type_infoE; | |
333 | _ZTVN10__cxxabiv117__class_type_infoE; | |
334 | _ZTVN10__cxxabiv116__enum_type_infoE; | |
335 | _ZTVN10__cxxabiv120__function_type_infoE; | |
336 | _ZTVN10__cxxabiv123__fundamental_type_infoE; | |
337 | _ZTVN10__cxxabiv117__pbase_type_infoE; | |
338 | _ZTVN10__cxxabiv129__pointer_to_member_type_infoE; | |
339 | _ZTVN10__cxxabiv119__pointer_type_infoE; | |
340 | _ZTVN10__cxxabiv120__si_class_type_infoE; | |
341 | _ZTVN10__cxxabiv121__vmi_class_type_infoE; | |
3cbc7af0 | 342 | |
4244b840 | 343 | # operator delete(void*, std::size_t) |
47830a4d | 344 | _ZdlPv[jmy]; |
4244b840 | 345 | # operator delete[](void*, std::size_t) |
47830a4d | 346 | _ZdaPv[jmy]; |
3cbc7af0 | 347 | }; |
0a35513e AH |
348 | |
349 | # Symbols in the support library (libsupc++) supporting trans-mem. | |
350 | CXXABI_TM_1 { | |
ca2fecdc | 351 | |
0a35513e AH |
352 | global: |
353 | __cxa_tm_cleanup; | |
354 | ||
0a35513e | 355 | }; |