Version.map.arm 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363
  1. # Define the same version as the libsupc++ from gcc 4.2.1 so that we can use
  2. # libcxxrt as a drop-in replacement.
  3. CXXABI_1.3 {
  4. global:
  5. # ABI functions with C linkage
  6. __cxa_allocate_exception;
  7. __cxa_bad_cast;
  8. __cxa_bad_typeid;
  9. __cxa_begin_catch;
  10. __cxa_call_unexpected;
  11. __cxa_current_exception_type;
  12. __cxa_demangle;
  13. __cxa_end_catch;
  14. __cxa_end_cleanup;
  15. __cxa_free_exception;
  16. __cxa_get_globals;
  17. __cxa_get_globals_fast;
  18. __cxa_guard_abort;
  19. __cxa_guard_acquire;
  20. __cxa_guard_release;
  21. __cxa_pure_virtual;
  22. __cxa_rethrow;
  23. __cxa_throw;
  24. __cxa_throw_bad_array_new_length;
  25. __dynamic_cast;
  26. __gxx_personality_v0;
  27. extern "C++" {
  28. # Type info classes and their destructors
  29. "__cxxabiv1::__array_type_info::~__array_type_info()";
  30. "__cxxabiv1::__class_type_info::~__class_type_info()";
  31. "__cxxabiv1::__enum_type_info::~__enum_type_info()";
  32. "__cxxabiv1::__function_type_info::~__function_type_info()";
  33. "__cxxabiv1::__fundamental_type_info::~__fundamental_type_info()";
  34. "__cxxabiv1::__pbase_type_info::~__pbase_type_info()";
  35. "__cxxabiv1::__pointer_to_member_type_info::~__pointer_to_member_type_info()";
  36. "__cxxabiv1::__pointer_type_info::~__pointer_type_info()";
  37. "__cxxabiv1::__si_class_type_info::~__si_class_type_info()";
  38. "__cxxabiv1::__vmi_class_type_info::~__vmi_class_type_info()";
  39. # vtables typeinfo classes.
  40. "vtable for __cxxabiv1::__array_type_info";
  41. "vtable for __cxxabiv1::__class_type_info";
  42. "vtable for __cxxabiv1::__enum_type_info";
  43. "vtable for __cxxabiv1::__function_type_info";
  44. "vtable for __cxxabiv1::__fundamental_type_info";
  45. "vtable for __cxxabiv1::__pbase_type_info";
  46. "vtable for __cxxabiv1::__pointer_to_member_type_info";
  47. "vtable for __cxxabiv1::__pointer_type_info";
  48. "vtable for __cxxabiv1::__si_class_type_info";
  49. "vtable for __cxxabiv1::__vmi_class_type_info";
  50. # Type info for built-in types
  51. "typeinfo for bool const*";
  52. "typeinfo for bool";
  53. "typeinfo for char const*";
  54. "typeinfo for char";
  55. "typeinfo for double const*";
  56. "typeinfo for double";
  57. "typeinfo for float const*";
  58. "typeinfo for float";
  59. "typeinfo for int const*";
  60. "typeinfo for int";
  61. "typeinfo for long const*";
  62. "typeinfo for long double const*";
  63. "typeinfo for long double";
  64. "typeinfo for long long const*";
  65. "typeinfo for long long";
  66. "typeinfo for long";
  67. "typeinfo for short const*";
  68. "typeinfo for short";
  69. "typeinfo for signed char const*";
  70. "typeinfo for signed char";
  71. "typeinfo for unsigned char const*";
  72. "typeinfo for unsigned char";
  73. "typeinfo for unsigned int const*";
  74. "typeinfo for unsigned int";
  75. "typeinfo for unsigned long const*";
  76. "typeinfo for unsigned long long const*";
  77. "typeinfo for unsigned long long";
  78. "typeinfo for unsigned long";
  79. "typeinfo for unsigned short const*";
  80. "typeinfo for unsigned short";
  81. "typeinfo for void const*";
  82. "typeinfo for void";
  83. "typeinfo for wchar_t const*";
  84. "typeinfo for wchar_t";
  85. "typeinfo for bool*";
  86. "typeinfo for wchar_t*";
  87. "typeinfo for short*";
  88. "typeinfo for char*";
  89. "typeinfo for unsigned char*";
  90. "typeinfo for long long*";
  91. "typeinfo for unsigned short*";
  92. "typeinfo for long*";
  93. "typeinfo for double*";
  94. "typeinfo for unsigned long*";
  95. "typeinfo for unsigned long long*";
  96. "typeinfo for int*";
  97. "typeinfo for long double*";
  98. "typeinfo for signed char*";
  99. "typeinfo for void*";
  100. "typeinfo for unsigned int*";
  101. "typeinfo for float*";
  102. "typeinfo for __cxxabiv1::__array_type_info";
  103. "typeinfo for __cxxabiv1::__class_type_info";
  104. "typeinfo for __cxxabiv1::__enum_type_info";
  105. "typeinfo for __cxxabiv1::__function_type_info";
  106. "typeinfo for __cxxabiv1::__fundamental_type_info";
  107. "typeinfo for __cxxabiv1::__pbase_type_info";
  108. "typeinfo for __cxxabiv1::__pointer_to_member_type_info";
  109. "typeinfo for __cxxabiv1::__pointer_type_info";
  110. "typeinfo for __cxxabiv1::__si_class_type_info";
  111. "typeinfo for __cxxabiv1::__vmi_class_type_info";
  112. # Typeinfo names.
  113. "typeinfo name for unsigned char const*";
  114. "typeinfo name for long const*";
  115. "typeinfo name for double const*";
  116. "typeinfo name for unsigned long long const*";
  117. "typeinfo name for unsigned short const*";
  118. "typeinfo name for char const*";
  119. "typeinfo name for long long const*";
  120. "typeinfo name for short const*";
  121. "typeinfo name for unsigned int const*";
  122. "typeinfo name for float const*";
  123. "typeinfo name for bool const*";
  124. "typeinfo name for wchar_t const*";
  125. "typeinfo name for int const*";
  126. "typeinfo name for unsigned long const*";
  127. "typeinfo name for void const*";
  128. "typeinfo name for long double const*";
  129. "typeinfo name for signed char const*";
  130. "typeinfo name for wchar_t";
  131. "typeinfo name for short";
  132. "typeinfo name for char";
  133. "typeinfo name for float";
  134. "typeinfo name for void";
  135. "typeinfo name for unsigned int";
  136. "typeinfo name for bool";
  137. "typeinfo name for signed char";
  138. "typeinfo name for long double";
  139. "typeinfo name for int";
  140. "typeinfo name for unsigned long long";
  141. "typeinfo name for unsigned long";
  142. "typeinfo name for unsigned char";
  143. "typeinfo name for long";
  144. "typeinfo name for long long";
  145. "typeinfo name for unsigned short";
  146. "typeinfo name for double";
  147. "typeinfo name for bool*";
  148. "typeinfo name for wchar_t*";
  149. "typeinfo name for short*";
  150. "typeinfo name for char*";
  151. "typeinfo name for unsigned char*";
  152. "typeinfo name for long long*";
  153. "typeinfo name for unsigned short*";
  154. "typeinfo name for long*";
  155. "typeinfo name for double*";
  156. "typeinfo name for unsigned long*";
  157. "typeinfo name for unsigned long long*";
  158. "typeinfo name for int*";
  159. "typeinfo name for long double*";
  160. "typeinfo name for signed char*";
  161. "typeinfo name for void*";
  162. "typeinfo name for unsigned int*";
  163. "typeinfo name for float*";
  164. "typeinfo name for __cxxabiv1::__array_type_info";
  165. "typeinfo name for __cxxabiv1::__class_type_info";
  166. "typeinfo name for __cxxabiv1::__enum_type_info";
  167. "typeinfo name for __cxxabiv1::__function_type_info";
  168. "typeinfo name for __cxxabiv1::__fundamental_type_info";
  169. "typeinfo name for __cxxabiv1::__pbase_type_info";
  170. "typeinfo name for __cxxabiv1::__pointer_to_member_type_info";
  171. "typeinfo name for __cxxabiv1::__pointer_type_info";
  172. "typeinfo name for __cxxabiv1::__si_class_type_info";
  173. "typeinfo name for __cxxabiv1::__vmi_class_type_info";
  174. "std::type_info::type_info(std::type_info const&)";
  175. "std::type_info::operator=(std::type_info const&)";
  176. # Extensions
  177. "pathscale::set_terminate(void (*)())";
  178. "pathscale::set_unexpected(void (*)())";
  179. "pathscale::set_use_thread_local_handlers(bool)";
  180. };
  181. # C++11 typeinfo not understood by ld.bfd 2.17.50
  182. # std::nullptr_t
  183. _ZTIDn;_ZTIPDn;_ZTIPKDn;
  184. # char16_t
  185. _ZTIDi;_ZTIPDi;_ZTIPKDi;
  186. # char32_t
  187. _ZTIDs;_ZTIPDs;_ZTIPKDs;
  188. # IEEE 754r half-precision floating point
  189. _ZTIDh;_ZTIPDh;_ZTIPKDh;
  190. # C++11 typeinfo name not understood by ld.bfd 2.17.50
  191. # std::nullptr_t
  192. _ZTSDn;_ZTSPDn;_ZTSPKDn;
  193. # char16_t
  194. _ZTSDi;_ZTSPDi;_ZTSPKDi;
  195. # char32_t
  196. _ZTSDs;_ZTSPDs;_ZTSPKDs;
  197. # IEEE 754r half-precision floating point
  198. _ZTSDh;_ZTSPDh;_ZTSPKDh;
  199. local:
  200. *;
  201. };
  202. CXXABI_1.3.1 {
  203. __cxa_get_exception_ptr;
  204. } CXXABI_1.3;
  205. CXXABI_1.3.5 {
  206. extern "C++" {
  207. "typeinfo for __int128 const*";
  208. "typeinfo for __int128";
  209. "typeinfo for __int128*";
  210. "typeinfo for unsigned __int128 const*";
  211. "typeinfo for unsigned __int128";
  212. "typeinfo for unsigned __int128*";
  213. };
  214. } CXXABI_1.3.1;
  215. CXXABI_1.3.6 {
  216. __cxa_deleted_virtual;
  217. } CXXABI_1.3.5;
  218. CXXABI_1.3.9 {
  219. extern "C++" {
  220. "typeinfo name for __int128 const*";
  221. "typeinfo name for __int128";
  222. "typeinfo name for __int128*";
  223. "typeinfo name for unsigned __int128 const*";
  224. "typeinfo name for unsigned __int128";
  225. "typeinfo name for unsigned __int128*";
  226. "operator delete[](void*, unsigned int)";
  227. "operator delete(void*, unsigned int)";
  228. };
  229. } CXXABI_1.3.6;
  230. CXXABI_1.3.11 {
  231. __cxa_init_primary_exception;
  232. } CXXABI_1.3.9;
  233. CXXRT_1.0 {
  234. extern "C++" {
  235. "std::type_info::name() const";
  236. "std::type_info::before(std::type_info const&) const";
  237. "std::type_info::operator==(std::type_info const&) const";
  238. "std::type_info::operator!=(std::type_info const&) const";
  239. "std::bad_cast::bad_cast(std::bad_cast const&)";
  240. "std::bad_cast::bad_cast()";
  241. "std::bad_cast::operator=(std::bad_cast const&)";
  242. "std::bad_typeid::bad_typeid(std::bad_typeid const&)";
  243. "std::bad_typeid::bad_typeid()";
  244. "std::bad_typeid::operator=(std::bad_typeid const&)";
  245. "std::exception::exception(std::exception const&)";
  246. "std::exception::exception()";
  247. "std::exception::operator=(std::exception const&)";
  248. "std::bad_alloc::bad_alloc(std::bad_alloc const&)";
  249. "std::bad_alloc::bad_alloc()";
  250. "std::bad_alloc::operator=(std::bad_alloc const&)";
  251. "std::bad_array_new_length::bad_array_new_length(std::bad_array_new_length const&)";
  252. "std::bad_array_new_length::bad_array_new_length()";
  253. "std::bad_array_new_length::operator=(std::bad_array_new_length const&)";
  254. };
  255. __cxa_allocate_dependent_exception;
  256. __cxa_current_primary_exception;
  257. __cxa_decrement_exception_refcount;
  258. __cxa_free_dependent_exception;
  259. __cxa_increment_exception_refcount;
  260. __cxa_rethrow_primary_exception;
  261. } CXXABI_1.3.6;
  262. GLIBCXX_3.4 {
  263. extern "C++" {
  264. "operator delete[](void*)";
  265. "operator delete(void*)";
  266. "operator new[](unsigned int)";
  267. "operator new(unsigned int)";
  268. "operator new(unsigned int, std::nothrow_t const&)";
  269. "std::unexpected()";
  270. "std::get_terminate()";
  271. "std::get_unexpected()";
  272. "std::uncaught_exception()";
  273. "std::terminate()";
  274. "std::type_info::~type_info()";
  275. "std::bad_cast::~bad_cast()";
  276. "std::bad_typeid::~bad_typeid()";
  277. "std::exception::~exception()";
  278. "std::bad_alloc::~bad_alloc()";
  279. "std::bad_array_new_length::~bad_array_new_length()";
  280. "std::exception::what() const";
  281. std::set_new_handler*;
  282. std::set_terminate*;
  283. std::set_unexpected*;
  284. std::type_info::__*;
  285. "vtable for std::bad_alloc";
  286. "vtable for std::bad_cast";
  287. "vtable for std::bad_typeid";
  288. "vtable for std::exception";
  289. "vtable for std::type_info";
  290. "vtable for std::bad_array_new_length";
  291. "typeinfo for std::bad_alloc";
  292. "typeinfo for std::bad_typeid";
  293. "typeinfo for std::bad_cast";
  294. "typeinfo for std::exception";
  295. "typeinfo for std::type_info";
  296. "typeinfo for std::bad_array_new_length";
  297. "typeinfo name for std::bad_alloc";
  298. "typeinfo name for std::bad_typeid";
  299. "typeinfo name for std::bad_cast";
  300. "typeinfo name for std::exception";
  301. "typeinfo name for std::type_info";
  302. "typeinfo name for std::bad_array_new_length";
  303. };
  304. };
  305. GLIBCXX_3.4.9 {
  306. extern "C++" {
  307. "std::bad_typeid::what() const";
  308. "std::bad_cast::what() const";
  309. "std::bad_alloc::what() const";
  310. "std::bad_array_new_length::what() const";
  311. };
  312. } GLIBCXX_3.4;
  313. GLIBCXX_3.4.20 {
  314. extern "C++" {
  315. "std::get_new_handler()";
  316. };
  317. } GLIBCXX_3.4.9;
  318. GLIBCXX_3.4.22 {
  319. extern "C++" {
  320. "std::uncaught_exceptions()";
  321. };
  322. } GLIBCXX_3.4.20;