OSDN Git Service

2bd23cd1bea76ccc4e7703ed805b1dc0bc90317f
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / config / abi / pre / gnu-versioned-namespace.ver
1 ## Linker script for GNU namespace versioning.
2 ##
3 ## Copyright (C) 2002, 2003, 2004, 2005, 2007, 2009, 2011, 2012
4 ## Free Software Foundation, Inc.
5 ##
6 ## This file is part of the libstdc++ version 3 distribution.
7 ##
8 ## This file is part of the GNU ISO C++ Library.  This library is free
9 ## software; you can redistribute it and/or modify it under the
10 ## terms of the GNU General Public License as published by the
11 ## Free Software Foundation; either version 3, or (at your option)
12 ## any later version.
13 ##
14 ## This library is distributed in the hope that it will be useful,
15 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
16 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 ## GNU General Public License for more details.
18 ##
19 ## You should have received a copy of the GNU General Public License along
20 ## with this library; see the file COPYING3.  If not see
21 ## <http://www.gnu.org/licenses/>.
22
23 GLIBCXX_7.0 {
24
25   global:
26
27     # Names inside the 'extern' block are demangled names.
28     extern "C++"
29     {
30       std::__7::*;
31       std::*
32     };
33
34     # locale
35     _ZNSt3__79has_facetINS_*;
36
37     # hash 
38     _ZNSt8__detail3__712__prime_listE;
39     _ZNSt3tr18__detail3__712__prime_listE;
40
41     # thread/mutex/condition_variable/future
42     __once_proxy;
43
44     # operator new(size_t)
45     _Znw[jmy];
46     # operator new(size_t, std::nothrow_t const&)
47     _Znw[jmy]RKSt9nothrow_t;
48
49     # operator delete(void*)
50     _ZdlPv;
51     # operator delete(void*, std::nothrow_t const&)
52     _ZdlPvRKSt9nothrow_t;
53
54     # operator new[](size_t)
55     _Zna[jmy];
56     # operator new[](size_t, std::nothrow_t const&)
57     _Zna[jmy]RKSt9nothrow_t;
58
59     # operator delete[](void*)
60     _ZdaPv;
61     # operator delete[](void*, std::nothrow_t const&)
62     _ZdaPvRKSt9nothrow_t;
63
64     # function-scope static objects requires a guard variable.
65     _ZGVNSt*;
66
67     _ZTT*;
68     _ZTV*;
69
70     _ZTI*;
71     _ZTS*;
72
73     _ZTv0_n*;
74
75     # std::__detail::_List_node_base
76     _ZNSt8__detail3__715_List_node_base7_M_hook*;
77     _ZNSt8__detail3__715_List_node_base9_M_unhookEv;
78     _ZNSt8__detail3__715_List_node_base10_M_reverseEv;
79     _ZNSt8__detail3__715_List_node_base11_M_transfer*;
80     _ZNSt8__detail3__715_List_node_base4swapER*;
81
82     # std::__convert_to_v
83     _ZNSt3__714__convert_to_v*;
84
85     # std::__copy_streambufs
86     _ZNSt3__717__copy_streambufsI*;
87     _ZNSt3__721__copy_streambufs_eofI*;
88
89     # __gnu_cxx::__atomic_add
90     # __gnu_cxx::__exchange_and_add
91     _ZN9__gnu_cxx3__712__atomic_addEPV[il][il];
92     _ZN9__gnu_cxx3__718__exchange_and_addEPV[li][il];
93
94     # __gnu_cxx::__pool
95     _ZN9__gnu_cxx3__76__poolILb[01]EE13_M_initializeEv;
96     _ZN9__gnu_cxx3__76__poolILb[01]EE16_M_reserve_blockE[jmy][jmy];
97     _ZN9__gnu_cxx3__76__poolILb[01]EE16_M_reclaim_blockEPc[jmy];
98     _ZN9__gnu_cxx3__76__poolILb[01]EE10_M_destroyEv;
99     _ZN9__gnu_cxx3__76__poolILb1EE16_M_get_thread_idEv;
100
101     _ZN9__gnu_cxx3__717__pool_alloc_base9_M_refillE[jmy];    
102     _ZN9__gnu_cxx3__717__pool_alloc_base16_M_get_free_listE[jmy];
103     _ZN9__gnu_cxx3__717__pool_alloc_base12_M_get_mutexEv;
104
105     _ZN9__gnu_cxx3__79free_list6_M_getE[jmy];
106     _ZN9__gnu_cxx3__79free_list8_M_clearEv;
107
108     # __gnu_cxx::stdio_sync_filebuf
109     _ZTVN9__gnu_cxx3__718stdio_sync_filebufI[cw]St3__711char_traitsI[cw]EEE;
110     _ZN9__gnu_cxx3__718stdio_sync_filebufI[cw]NSt3__711char_traitsI[cw]EEE[5-9]*;
111
112     # debug mode
113     _ZN11__gnu_debug19_Safe_sequence_base12_M_get_mutexEv;
114     _ZN11__gnu_debug19_Safe_sequence_base13_M_detach_allEv;
115     _ZN11__gnu_debug19_Safe_sequence_base18_M_detach_singularEv;
116     _ZN11__gnu_debug19_Safe_sequence_base22_M_revalidate_singularEv;
117     _ZN11__gnu_debug19_Safe_sequence_base7_M_swapERS0_;
118
119     _ZN11__gnu_debug19_Safe_iterator_base9_M_attach*;
120     _ZN11__gnu_debug19_Safe_iterator_base16_M_attach_single*;
121     _ZN11__gnu_debug19_Safe_iterator_base9_M_detachEv;
122     _ZN11__gnu_debug19_Safe_iterator_base16_M_detach_singleEv;
123     _ZN11__gnu_debug19_Safe_iterator_base12_M_get_mutexEv;
124     _ZNK11__gnu_debug19_Safe_iterator_base11_M_singularEv;
125     _ZNK11__gnu_debug19_Safe_iterator_base14_M_can_compareERKS0_;
126
127     _ZNK11__gnu_debug16_Error_formatter10_M_message*;
128     _ZNK11__gnu_debug16_Error_formatter10_Parameter*;
129     _ZNK11__gnu_debug16_Error_formatter13_M_print_word*;
130     _ZNK11__gnu_debug16_Error_formatter15_M_print_string*;
131     _ZNK11__gnu_debug16_Error_formatter8_M_error*;
132     _ZNK11__gnu_debug16_Error_formatter17_M_get_max_lengthEv;
133
134     # parallel mode
135     _ZN14__gnu_parallel9_Settings3getEv;
136     _ZN14__gnu_parallel9_Settings3setERS0_;
137
138   local:
139     *;
140 };
141
142
143 # Symbols in the support library (libsupc++) have their own tag.
144 CXXABI_2.0 {
145
146   global:
147     __cxa_allocate_exception;
148     __cxa_allocate_dependent_exception;
149     __cxa_bad_cast;
150     __cxa_bad_typeid;
151     __cxa_begin_catch;
152     __cxa_begin_cleanup;
153     __cxa_call_unexpected;
154     __cxa_current_exception_type;
155     __cxa_deleted_virtual;
156     __cxa_demangle;
157     __cxa_end_catch;
158     __cxa_end_cleanup;
159     __cxa_free_exception;
160     __cxa_free_dependent_exception;
161     __cxa_get_exception_ptr;
162     __cxa_get_globals;
163     __cxa_get_globals_fast;
164     __cxa_guard_abort;
165     __cxa_guard_acquire;
166     __cxa_guard_release;
167     __cxa_pure_virtual;
168     __cxa_rethrow;
169     __cxa_throw;
170     __cxa_type_match;
171     __cxa_vec_cctor;
172     __cxa_vec_cleanup;
173     __cxa_vec_ctor;
174     __cxa_vec_delete2;
175     __cxa_vec_delete3;
176     __cxa_vec_delete;
177     __cxa_vec_dtor;
178     __cxa_vec_new2;
179     __cxa_vec_new3;
180     __cxa_vec_new;
181     __gxx_personality_v0;
182     __gxx_personality_sj0;
183     __dynamic_cast;
184
185     # std::exception_ptr
186     _ZNSt15__exception_ptr13exception_ptrC1Ev;
187     _ZNSt15__exception_ptr13exception_ptrC2Ev;
188     _ZNSt15__exception_ptr13exception_ptrC1ERKS0_;
189     _ZNSt15__exception_ptr13exception_ptrC2ERKS0_;
190     _ZNSt15__exception_ptr13exception_ptrC1EMS0_FvvE;
191     _ZNSt15__exception_ptr13exception_ptrC2EMS0_FvvE;
192     _ZNSt15__exception_ptr13exception_ptrD1Ev;
193     _ZNSt15__exception_ptr13exception_ptrD2Ev;
194     _ZNSt15__exception_ptr13exception_ptraSERKS0_;
195     _ZNKSt15__exception_ptr13exception_ptrcvMS0_FvvEEv;
196     _ZNKSt15__exception_ptr13exception_ptrntEv;
197     _ZNKSt15__exception_ptr13exception_ptr20__cxa_exception_typeEv;
198     _ZNSt15__exception_ptr13exception_ptr4swapERS0_;
199     _ZNSt15__exception_ptreqERKNS_13exception_ptrES2_;
200     _ZNSt15__exception_ptrneERKNS_13exception_ptrES2_;
201
202     _ZSt17current_exceptionv;
203     _ZSt17rethrow_exceptionNSt15__exception_ptr13exception_ptrE;
204
205     # std::nested_exception
206     _ZNSt16nested_exceptionD*;
207     _ZTISt16nested_exception;
208     _ZTVSt16nested_exception;
209
210     # std::bad_function_call.
211     _ZNSt17bad_function_callD*;
212     _ZTISt17bad_function_call;
213     _ZTSSt17bad_function_call;
214     _ZTVSt17bad_function_call;
215
216     # Default function.
217     _ZSt11_Hash_bytesPKv*;
218
219     # FNV hash.
220     _ZSt15_Fnv_hash_bytesPKv*;
221
222     # __gnu_cxx::_verbose_terminate_handler()
223     _ZN9__gnu_cxx3__727__verbose_terminate_handlerEv;
224
225     # *_type_info classes, ctor and dtor
226     _ZN10__cxxabiv117__array_type_info*;
227     _ZN10__cxxabiv117__class_type_info*;
228     _ZN10__cxxabiv116__enum_type_info*;
229     _ZN10__cxxabiv120__function_type_info*;
230     _ZN10__cxxabiv123__fundamental_type_info*;
231     _ZN10__cxxabiv117__pbase_type_info*;
232     _ZN10__cxxabiv129__pointer_to_member_type_info*;
233     _ZN10__cxxabiv119__pointer_type_info*;
234     _ZN10__cxxabiv120__si_class_type_info*;
235     _ZN10__cxxabiv121__vmi_class_type_info*;
236
237     # *_type_info classes, member functions
238     _ZNK10__cxxabiv117__class_type_info*;
239     _ZNK10__cxxabiv120__function_type_info*;
240     _ZNK10__cxxabiv117__pbase_type_info*;
241     _ZNK10__cxxabiv129__pointer_to_member_type_info*;
242     _ZNK10__cxxabiv119__pointer_type_info*;
243     _ZNK10__cxxabiv120__si_class_type_info*;
244     _ZNK10__cxxabiv121__vmi_class_type_info*;
245
246     # typeinfo structure
247     _ZTI[a-z];
248     _ZTIP[a-z];
249     _ZTIPK[a-z];
250     _ZTIN10__cxxabiv117__array_type_infoE;
251     _ZTIN10__cxxabiv117__class_type_infoE;
252     _ZTIN10__cxxabiv116__enum_type_infoE;
253     _ZTIN10__cxxabiv120__function_type_infoE;
254     _ZTIN10__cxxabiv123__fundamental_type_infoE;
255     _ZTIN10__cxxabiv117__pbase_type_infoE;
256     _ZTIN10__cxxabiv129__pointer_to_member_type_infoE;
257     _ZTIN10__cxxabiv119__pointer_type_infoE;
258     _ZTIN10__cxxabiv120__si_class_type_infoE;
259     _ZTIN10__cxxabiv121__vmi_class_type_infoE;
260     _ZTIN10__cxxabiv115__forced_unwindE;
261     _ZTIN10__cxxabiv119__foreign_exceptionE;
262     _ZTIN10__cxxabiv115__forced_unwindE;
263     _ZTIN10__cxxabiv119__foreign_exceptionE;
264
265     # typeinfo name
266     _ZTS[a-z];
267     _ZTSP[a-z];
268     _ZTSPK[a-z];
269     _ZTSN10__cxxabiv117__array_type_infoE;
270     _ZTSN10__cxxabiv117__class_type_infoE;
271     _ZTSN10__cxxabiv116__enum_type_infoE;
272     _ZTSN10__cxxabiv120__function_type_infoE;
273     _ZTSN10__cxxabiv123__fundamental_type_infoE;
274     _ZTSN10__cxxabiv117__pbase_type_infoE;
275     _ZTSN10__cxxabiv129__pointer_to_member_type_infoE;
276     _ZTSN10__cxxabiv119__pointer_type_infoE;
277     _ZTSN10__cxxabiv120__si_class_type_infoE;
278     _ZTSN10__cxxabiv121__vmi_class_type_infoE;
279
280     # typeinfo for char16_t and char32_t
281     _ZTIDs;
282     _ZTIPDs;
283     _ZTIPKDs;
284     _ZTIDi;
285     _ZTIPDi;
286     _ZTIPKDi;
287
288     # typeinfo for decimal floating point types
289     _ZTID[fde];
290     _ZTIPD[fde];
291     _ZTIPKD[fde];
292
293     # typeinfo for decltype(nullptr)
294     _ZTIDn;
295     _ZTIPDn;
296     _ZTIPKDn;
297
298     # typeinfo for __int128 and unsigned __int128
299     _ZTI[no];
300     _ZTIP[no];
301     _ZTIPK[no];
302
303     # virtual table
304     _ZTVN10__cxxabiv117__array_type_infoE;
305     _ZTVN10__cxxabiv117__class_type_infoE;
306     _ZTVN10__cxxabiv116__enum_type_infoE;
307     _ZTVN10__cxxabiv120__function_type_infoE;
308     _ZTVN10__cxxabiv123__fundamental_type_infoE;
309     _ZTVN10__cxxabiv117__pbase_type_infoE;
310     _ZTVN10__cxxabiv129__pointer_to_member_type_infoE;
311     _ZTVN10__cxxabiv119__pointer_type_infoE;
312     _ZTVN10__cxxabiv120__si_class_type_infoE;
313     _ZTVN10__cxxabiv121__vmi_class_type_infoE;
314
315   local:
316     *;
317 };
318
319 # Symbols in the support library (libsupc++) supporting trans-mem.
320 CXXABI_TM_1 {
321   global:
322     __cxa_tm_cleanup;
323
324   local:
325     *;
326 };