]>
Commit | Line | Data |
---|---|---|
e6b7a69a | 1 | ## Linker script for GNU ld 2.13.91+ only. |
530539d9 | 2 | ## |
8099b2ae | 3 | ## Copyright (C) 2002, 2003 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 | 23 | GLIBCXX_3.4 { |
530539d9 PE |
24 | |
25 | global: | |
26 | ||
0d223e3a | 27 | # Names inside the 'extern' block are demangled names. |
530539d9 PE |
28 | extern "C++" |
29 | { | |
bd40d535 | 30 | std::[A-Za-k]*; |
a7817e1d BK |
31 | std::length_error*; |
32 | std::logic_error*; | |
1c26d8fd BK |
33 | std::locale::[A-Za-e]*; |
34 | std::locale::facet::[A-Za-z]*; | |
8099b2ae | 35 | std::locale::facet::_S_c_locale; |
1c26d8fd BK |
36 | std::locale::facet::_S_clone_c_locale*; |
37 | std::locale::facet::_S_create_c_locale*; | |
38 | std::locale::facet::_S_destroy_c_locale*; | |
8099b2ae BK |
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]*; | |
b0b12802 BK |
47 | std::locale::_S_normalize_category*; |
48 | std::locale::_[T-Za-z]*; | |
a7817e1d | 49 | std::[A-Zm-z]*; |
530539d9 PE |
50 | std::__throw_*; |
51 | std::__basic_file*; | |
84979344 | 52 | std::__timepunct*; |
3a24c513 | 53 | std::__numeric_limits_base*; |
3a15abf1 BK |
54 | std::__num_base::_S_format_float*; |
55 | std::__num_base::_S_format_int*; | |
56 | std::__num_base::_S_atoms_in; | |
215f9e28 | 57 | std::__num_base::_S_atoms_out; |
58579a27 | 58 | std::__numpunct_cache* |
530539d9 PE |
59 | }; |
60 | ||
0d223e3a | 61 | # Names not in an 'extern' block are mangled names. |
6dc5fdfd | 62 | |
b0b12802 | 63 | # std::locale destructors |
a7817e1d | 64 | _ZNSt6localeD*; |
1c26d8fd BK |
65 | |
66 | # std::locale::facet destructors | |
67 | _ZNSt6locale5facetD*; | |
b0b12802 | 68 | |
8099b2ae BK |
69 | # std::locale::_Impl constructors, destrutors |
70 | _ZNSt6locale5_ImplC*; | |
71 | _ZNSt6locale5_ImplD*; | |
a7817e1d | 72 | |
8099b2ae | 73 | # bool has_facet |
41b4d44b | 74 | _ZSt9has_facet*; |
e38ff265 | 75 | |
ca1c7011 GB |
76 | # _Rb_tree |
77 | _ZNSt22_Rb_tree_base_iterator12_M_decrementEv; | |
78 | _ZNSt22_Rb_tree_base_iterator12_M_incrementEv; | |
79 | _ZSt18_Rb_tree_rebalancePSt18_Rb_tree_node_baseRS0_; | |
80 | _ZSt20_Rb_tree_rotate_leftPSt18_Rb_tree_node_baseRS0_; | |
81 | _ZSt21_Rb_tree_rotate_rightPSt18_Rb_tree_node_baseRS0_; | |
82 | _ZSt28_Rb_tree_rebalance_for_erasePSt18_Rb_tree_node_baseRS_; | |
83 | ||
c37514ff | 84 | # virtual table |
4e7a2c6f BK |
85 | _ZTVNSt8ios_base7failureE; |
86 | _ZTVNSt6locale5facetE; | |
87 | _ZTVS[a-z]; | |
88 | _ZTVSt[0-9][A-Za-z]*; | |
89 | _ZTVSt[0-9][0-9][A-Za-z]*; | |
90 | _ZTVSt11__timepunctI[cw]E; | |
91 | _ZTVSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE; | |
92 | _ZTVSt21__ctype_abstract_baseI[cw]E; | |
93 | ||
c37514ff | 94 | # VTT structure |
4e7a2c6f BK |
95 | _ZTTS[a-z]; |
96 | _ZTTSt[0-9][A-Za-z]*; | |
97 | _ZTTSt[0-9][0-9][A-Za-z]*; | |
37cea034 | 98 | |
c37514ff BK |
99 | # typeinfo structure |
100 | _ZTIS[a-z]; | |
4e7a2c6f BK |
101 | _ZTINSt8ios_base7failureE; |
102 | _ZTINSt6locale5facetE; | |
4e7a2c6f BK |
103 | _ZTISt[0-9][A-Za-z]*; |
104 | _ZTISt[0-9][0-9][A-Za-z]*; | |
105 | _ZTISt11__timepunctI[cw]E; | |
106 | _ZTISt10__num_base; | |
107 | _ZTISt21__ctype_abstract_baseI[cw]E; | |
108 | _ZTISt23__codecvt_abstract_baseI[cw]c11__mbstate_tE; | |
109 | ||
c37514ff | 110 | # typeinfo name |
4e7a2c6f BK |
111 | _ZTSNSt8ios_base7failureE; |
112 | _ZTSNSt6locale5facetE; | |
4e7a2c6f BK |
113 | _ZTSS[a-z]; |
114 | _ZTSSt[0-9][A-Za-z]*; | |
115 | _ZTSSt[0-9][0-9][A-Za-z]*; | |
116 | _ZTSSt11__timepunctI[cw]E; | |
117 | _ZTSSt10__num_base; | |
118 | _ZTSSt21__ctype_abstract_baseI[cw]E; | |
119 | _ZTSSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE; | |
9b41c370 BK |
120 | |
121 | # function-scope static objects requires a guard variable. | |
c37514ff | 122 | _ZGVNSt*; |
37cea034 | 123 | |
9b41c370 | 124 | # virtual function thunks |
c37514ff | 125 | _ZThn8_NS*; |
dc4add82 | 126 | _ZThn16_NS*; |
c37514ff | 127 | _ZTv0_n12_NS*; |
dc4add82 | 128 | _ZTv0_n24_NS*; |
9b41c370 | 129 | |
0d223e3a | 130 | # std::__convert_to_v |
530539d9 PE |
131 | _ZSt14__convert_to_v*; |
132 | ||
8099b2ae BK |
133 | # stub functions from libmath |
134 | sinf; | |
135 | sinl; | |
136 | sinhf; | |
137 | sinhl; | |
138 | cosf; | |
139 | cosl; | |
140 | coshf; | |
141 | coshl; | |
142 | tanf; | |
143 | tanl; | |
144 | tanhf; | |
145 | tanhl; | |
146 | atan2f; | |
147 | atan2l; | |
148 | expf; | |
149 | expl; | |
150 | hypotf; | |
151 | hypotl; | |
152 | hypot; | |
153 | logf; | |
154 | logl; | |
155 | log10f; | |
156 | log10l; | |
157 | powf; | |
158 | powl; | |
159 | sqrtf; | |
160 | sqrtl; | |
161 | copysignf; | |
162 | nan; | |
163 | __signbit; | |
164 | __signbitf; | |
165 | __signbitl; | |
166 | ||
c37514ff BK |
167 | # __gnu_cxx::__pool_alloc |
168 | _ZN9__gnu_cxx12__pool_allocILb1ELi0EE8allocateE[jm]; | |
169 | _ZN9__gnu_cxx12__pool_allocILb1ELi0EE10deallocateEPv[jm]; | |
170 | ||
171 | # __gnu_cxx::stdio_sync_filebuf | |
172 | _ZTVN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE; | |
173 | ||
174 | # Needed only when generic cpu's atomicity.h is in use. | |
175 | _ZN9__gnu_cxx17_Atomic_add_mutexE; | |
176 | _ZN9__gnu_cxx22_Atomic_add_mutex_onceE; | |
177 | _ZN9__gnu_cxx31__gthread_atomic_add_mutex_onceEv; | |
178 | ||
e6b7a69a PE |
179 | # DO NOT DELETE THIS LINE. Port-specific symbols, if any, will be here. |
180 | ||
530539d9 PE |
181 | local: |
182 | *; | |
183 | }; | |
9aa43698 | 184 | |
1c26d8fd | 185 | |
9aa43698 | 186 | # Symbols in the support library (libsupc++) have their own tag. |
8099b2ae | 187 | CXXABI_1.3 { |
9aa43698 PE |
188 | |
189 | global: | |
8ecab601 BK |
190 | __cxa_allocate_exception; |
191 | __cxa_bad_cast; | |
192 | __cxa_bad_typeid; | |
193 | __cxa_begin_catch; | |
194 | __cxa_call_unexpected; | |
195 | __cxa_current_exception_type; | |
196 | __cxa_demangle; | |
8ecab601 BK |
197 | __cxa_end_catch; |
198 | __cxa_free_exception; | |
199 | __cxa_get_globals; | |
200 | __cxa_get_globals_fast; | |
8099b2ae BK |
201 | __cxa_guard_abort; |
202 | __cxa_guard_acquire; | |
203 | __cxa_guard_release; | |
8ecab601 BK |
204 | __cxa_pure_virtual; |
205 | __cxa_rethrow; | |
206 | __cxa_throw; | |
207 | __cxa_vec_cctor; | |
208 | __cxa_vec_cleanup; | |
209 | __cxa_vec_ctor; | |
210 | __cxa_vec_delete2; | |
211 | __cxa_vec_delete3; | |
212 | __cxa_vec_delete; | |
213 | __cxa_vec_dtor; | |
214 | __cxa_vec_new2; | |
215 | __cxa_vec_new3; | |
216 | __cxa_vec_new; | |
9aa43698 | 217 | __gxx_personality_v0; |
51cd12de | 218 | __gxx_personality_sj0; |
9aa43698 PE |
219 | __dynamic_cast; |
220 | ||
c37514ff BK |
221 | # operator new(size_t) |
222 | _Znw[jm]; | |
223 | # operator new(size_t, std::nothrow_t const&) | |
224 | _Znw[jm]RKSt9nothrow_t; | |
225 | ||
226 | # operator delete(void*) | |
227 | _ZdlPv; | |
228 | # operator delete(void*, std::nothrow_t const&) | |
229 | _ZdlPvRKSt9nothrow_t; | |
76f6aa8b | 230 | |
c37514ff BK |
231 | # operator new[](size_t) |
232 | _Zna[jm]; | |
233 | # operator new[](size_t, std::nothrow_t const&) | |
234 | _Zna[jm]RKSt9nothrow_t; | |
4e7a2c6f | 235 | |
c37514ff BK |
236 | # operator delete[](void*) |
237 | _ZdaPv; | |
238 | # operator delete[](void*, std::nothrow_t const&) | |
239 | _ZdaPvRKSt9nothrow_t; | |
240 | ||
241 | # virtual table | |
242 | _ZTVN10__cxxabiv117__class_type_infoE; | |
243 | _ZTVN10__cxxabiv120__si_class_type_infoE; | |
244 | _ZTVN10__cxxabiv121__vmi_class_type_infoE; | |
245 | _ZTVN10__cxxabiv123__fundamental_type_infoE; | |
246 | _ZTVN10__cxxabiv117__array_type_infoE; | |
247 | _ZTVN10__cxxabiv120__function_type_infoE; | |
248 | _ZTVN10__cxxabiv116__enum_type_infoE; | |
249 | _ZTVN10__cxxabiv117__pbase_type_infoE; | |
250 | _ZTVN10__cxxabiv119__pointer_type_infoE; | |
251 | _ZTVN10__cxxabiv129__pointer_to_member_type_infoE; | |
252 | ||
253 | # typeinfo structure (and some names) | |
254 | _ZTI[a-z]; | |
255 | _ZTIP[a-z]; | |
256 | _ZTIPK[a-z]; | |
257 | _ZTIN10__cxxabiv117__class_type_infoE; | |
258 | _ZTIN10__cxxabiv120__si_class_type_infoE; | |
259 | _ZTIN10__cxxabiv121__vmi_class_type_infoE; | |
260 | _ZTIN10__cxxabiv123__fundamental_type_infoE; | |
261 | _ZTIN10__cxxabiv117__array_type_infoE; | |
262 | _ZTIN10__cxxabiv120__function_type_infoE; | |
263 | _ZTIN10__cxxabiv116__enum_type_infoE; | |
264 | _ZTIN10__cxxabiv117__pbase_type_infoE; | |
265 | _ZTIN10__cxxabiv119__pointer_type_infoE; | |
266 | _ZTIN10__cxxabiv129__pointer_to_member_type_infoE; | |
267 | ||
268 | # typeinfo name | |
269 | _ZTS[a-z]; | |
270 | _ZTSP[a-z]; | |
271 | _ZTSPK[a-z]; | |
272 | ||
273 | # __gnu_cxx::_verbose_terminate_handler() | |
274 | _ZN9__gnu_cxx27__verbose_terminate_handlerEv; | |
4e7a2c6f | 275 | |
9aa43698 PE |
276 | local: |
277 | *; | |
278 | }; |