1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/os/kernelhwsrv/kernel/eka/compsupp/rvct2_2/drtaeabi.cpp Fri Jun 15 03:10:57 2012 +0200
1.3 @@ -0,0 +1,416 @@
1.4 +// Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
1.5 +// All rights reserved.
1.6 +// This component and the accompanying materials are made available
1.7 +// under the terms of the License "ARM EABI LICENCE.txt"
1.8 +// which accompanies this distribution, and is available
1.9 +// in kernel/eka/compsupp.
1.10 +//
1.11 +// Initial Contributors:
1.12 +// Nokia Corporation - initial contribution.
1.13 +//
1.14 +// Contributors:
1.15 +//
1.16 +// Description:
1.17 +//
1.18 +
1.19 +extern char * _ZTVN10__cxxabiv123__fundamental_type_infoE;
1.20 +extern const char * const $Sub$$_ZTSv = "v";
1.21 +
1.22 +
1.23 +// This function is simple a way to get these EXPORT statements into
1.24 +// the .in file. These symbols will therefore be referenced from
1.25 +// the export table and so **forced** into the DLL
1.26 +__asm void __rt_exporter_dummy(void)
1.27 +{
1.28 + EXTERN _ZTVN10__cxxabiv123__fundamental_type_infoE
1.29 + EXTERN _ZTSv
1.30 + EXPORT |$Sub$$_ZTIv|
1.31 +|$Sub$$_ZTIv|
1.32 + DCD _ZTVN10__cxxabiv123__fundamental_type_infoE
1.33 + DCD _ZTSv
1.34 +
1.35 + AREA |.directive|, READONLY, NOALLOC
1.36 +
1.37 + PRESERVE8
1.38 +
1.39 + DCB "#<SYMEDIT>#\n"
1.40 + // Long long functions
1.41 + DCB "EXPORT __aeabi_lmul\n"
1.42 + DCB "EXPORT __aeabi_ldivmod\n"
1.43 + DCB "EXPORT __aeabi_uldivmod\n"
1.44 + DCB "EXPORT __aeabi_llsl\n"
1.45 + DCB "EXPORT __aeabi_llsr\n"
1.46 + DCB "EXPORT __aeabi_lasr\n"
1.47 + DCB "EXPORT __aeabi_lcmp\n"
1.48 + DCB "EXPORT __aeabi_ulcmp\n"
1.49 +
1.50 + // Integer division functions
1.51 + DCB "EXPORT __aeabi_idiv\n"
1.52 + DCB "EXPORT __aeabi_uidiv\n"
1.53 +
1.54 + // Integer (32/32 . 32) division functions
1.55 + DCB "EXPORT __aeabi_idivmod\n"
1.56 + DCB "EXPORT __aeabi_uidivmod\n"
1.57 +
1.58 + // Division by Zero
1.59 + // SIGFPE not supported on SymbianOS
1.60 + // Implemented in rtdiv0.cpp
1.61 + DCB "EXPORT __aeabi_idiv0\n"
1.62 + DCB "EXPORT __aeabi_ldiv0\n"
1.63 +
1.64 + // Unaligned memory access
1.65 + DCB "EXPORT __aeabi_uread4\n"
1.66 + DCB "EXPORT __aeabi_uwrite4\n"
1.67 + DCB "EXPORT __aeabi_uread8\n"
1.68 + DCB "EXPORT __aeabi_uwrite8\n"
1.69 +
1.70 + // Memory copying, clearing, and setting
1.71 + // we may want to override the toolchain supplied versions of these (or not)
1.72 + DCB "EXPORT __aeabi_memcpy8\n"
1.73 + DCB "EXPORT __aeabi_memcpy4\n"
1.74 + DCB "EXPORT __aeabi_memcpy\n"
1.75 + DCB "EXPORT __aeabi_memmove8\n"
1.76 + DCB "EXPORT __aeabi_memmove4\n"
1.77 + DCB "EXPORT __aeabi_memmove\n"
1.78 +
1.79 + DCB "EXPORT __aeabi_memset8\n"
1.80 + DCB "EXPORT __aeabi_memset4\n"
1.81 + DCB "EXPORT __aeabi_memset\n"
1.82 + DCB "EXPORT __aeabi_memclr8\n"
1.83 + DCB "EXPORT __aeabi_memclr4\n"
1.84 + DCB "EXPORT __aeabi_memclr\n"
1.85 +
1.86 + // C++ helper functions
1.87 +
1.88 + // Pure virtual call
1.89 + DCB "EXPORT __cxa_pure_virtual\n"
1.90 +
1.91 + // One-time construction API
1.92 + DCB "EXPORT __cxa_guard_acquire\n"
1.93 + DCB "EXPORT __cxa_guard_release\n"
1.94 + DCB "EXPORT __cxa_guard_abort\n"
1.95 +
1.96 + // Construction and destruction of arrays
1.97 +
1.98 + // Helper functions defined by the generic C++ ABI
1.99 + DCB "EXPORT __cxa_vec_new\n"
1.100 + DCB "EXPORT __cxa_vec_new2\n"
1.101 + DCB "EXPORT __cxa_vec_new3\n"
1.102 + DCB "EXPORT __cxa_vec_ctor\n"
1.103 + DCB "EXPORT __cxa_vec_dtor\n"
1.104 + DCB "EXPORT __cxa_vec_cleanup\n"
1.105 + DCB "EXPORT __cxa_vec_delete\n"
1.106 + DCB "EXPORT __cxa_vec_delete2\n"
1.107 + DCB "EXPORT __cxa_vec_delete3\n"
1.108 + DCB "EXPORT __cxa_vec_cctor\n"
1.109 +
1.110 + // Helper functions defined by the C++ ABI for the ARM Architecture
1.111 + DCB "EXPORT __aeabi_vec_ctor_nocookie_nodtor\n"
1.112 + DCB "EXPORT __aeabi_vec_ctor_cookie_nodtor\n"
1.113 + DCB "EXPORT __aeabi_vec_cctor_nocookie_nodtor\n"
1.114 + DCB "EXPORT __aeabi_vec_new_cookie_noctor\n"
1.115 + DCB "EXPORT __aeabi_vec_new_nocookie\n"
1.116 + DCB "EXPORT __aeabi_vec_new_cookie_nodtor\n"
1.117 + DCB "EXPORT __aeabi_vec_new_cookie\n"
1.118 + DCB "EXPORT __aeabi_vec_dtor\n"
1.119 + DCB "EXPORT __aeabi_vec_dtor_cookie\n"
1.120 + DCB "EXPORT __aeabi_vec_delete\n"
1.121 + DCB "EXPORT __aeabi_vec_delete3\n"
1.122 + DCB "EXPORT __aeabi_vec_delete3_nodtor\n"
1.123 +
1.124 + // Object finalization
1.125 + // these need SymbianOS specific implementations
1.126 + // implemented in ucppfini.cpp
1.127 + // and supplied by usrt.lib
1.128 +#if 0
1.129 + DCB "EXPORT __cxa_atexit\n"
1.130 + DCB "EXPORT __aeabi_atexit\n"
1.131 + DCB "EXPORT __cxa_finalize\n"
1.132 +#endif
1.133 +
1.134 +/// Exception Support from here. Not needed by system side code.
1.135 +#ifndef __KERNEL_MODE__
1.136 + // Standard (user-visible) C++ exception related functions
1.137 + DCB "EXPORT _ZSt9terminatev\n"
1.138 + DCB "EXPORT _ZSt10unexpectedv\n"
1.139 + DCB "EXPORT _ZSt18uncaught_exceptionv\n"
1.140 + DCB "EXPORT _ZSt13set_terminatePFvvE\n"
1.141 + DCB "EXPORT _ZSt14set_unexpectedPFvvE\n"
1.142 +
1.143 + DCB "EXPORT abort\n"
1.144 +
1.145 + // Exception-handling support
1.146 + DCB "EXPORT __cxa_allocate_exception\n"
1.147 + DCB "EXPORT __cxa_free_exception\n"
1.148 + DCB "EXPORT __cxa_throw\n"
1.149 + DCB "EXPORT __cxa_rethrow\n"
1.150 + DCB "EXPORT __cxa_begin_catch\n"
1.151 + DCB "EXPORT __cxa_end_catch\n"
1.152 + DCB "EXPORT __cxa_end_cleanup\n"
1.153 +
1.154 + // personality routines for ARM compact EH entries
1.155 + DCB "EXPORT __aeabi_unwind_cpp_pr0\n"
1.156 + DCB "EXPORT __aeabi_unwind_cpp_pr1\n"
1.157 + DCB "EXPORT __aeabi_unwind_cpp_pr2\n"
1.158 +
1.159 + // Unwinder helper routines
1.160 + DCB "EXPORT _Unwind_VRS_Get\n"
1.161 + DCB "EXPORT _Unwind_VRS_Set\n"
1.162 + DCB "EXPORT _Unwind_VRS_Pop\n"
1.163 +
1.164 + // personality routine helper functions
1.165 + DCB "EXPORT __cxa_begin_cleanup\n"
1.166 +
1.167 + // this needs SymbianOS specific implementation
1.168 + DCB "EXPORT __cxa_type_match\n"
1.169 +
1.170 + // this needs SymbianOS specific implementation
1.171 + DCB "EXPORT __cxa_call_terminate\n"
1.172 +
1.173 + DCB "EXPORT __cxa_call_unexpected\n"
1.174 +
1.175 + // Miscellaneous error handling related to exception processing
1.176 + DCB "EXPORT __cxa_bad_cast\n"
1.177 + DCB "EXPORT __cxa_bad_typeid\n"
1.178 +
1.179 +
1.180 + // this needs SymbianOS specific implementation
1.181 + DCB "EXPORT __cxa_get_globals\n"
1.182 +
1.183 + // this needs SymbianOS specific implementation
1.184 + DCB "EXPORT __cxa_current_exception_type\n"
1.185 +
1.186 +
1.187 + // rtti support from rtti.o
1.188 + DCB "EXPORT __dynamic_cast\n"
1.189 + DCB "EXPORT __get_typeid\n"
1.190 + DCB "EXPORT __ARM_get_typeid\n"
1.191 +
1.192 + // Standard typeinfo
1.193 + DCB "EXPORT _ZNSt9type_infoD1Ev\n"
1.194 + DCB "EXPORT _ZNSt9type_infoD2Ev\n"
1.195 + DCB "EXPORT _ZNSt9type_infoD0Ev\n"
1.196 + DCB "EXPORT _ZNKSt9type_info4nameEv\n"
1.197 + DCB "EXPORT _ZNKSt9type_infoeqERKS_\n"
1.198 + DCB "EXPORT _ZNKSt9type_infoneERKS_\n"
1.199 + DCB "EXPORT _ZNKSt9type_info6beforeERKS_\n"
1.200 + DCB "EXPORT _ZNSt8bad_castC1Ev\n"
1.201 + DCB "EXPORT _ZNSt8bad_castC2Ev\n"
1.202 + DCB "EXPORT _ZNSt8bad_castC1ERKS_\n"
1.203 + DCB "EXPORT _ZNSt8bad_castC2ERKS_\n"
1.204 + DCB "EXPORT _ZNSt8bad_castaSERKS_\n"
1.205 + DCB "EXPORT _ZNSt8bad_castD1Ev\n"
1.206 + DCB "EXPORT _ZNSt8bad_castD2Ev\n"
1.207 + DCB "EXPORT _ZNSt8bad_castD0Ev\n"
1.208 + DCB "EXPORT _ZNKSt8bad_cast4whatEv\n"
1.209 + DCB "EXPORT _ZNSt10bad_typeidC1Ev\n"
1.210 + DCB "EXPORT _ZNSt10bad_typeidC2Ev\n"
1.211 + DCB "EXPORT _ZNSt10bad_typeidC1ERKS_\n"
1.212 + DCB "EXPORT _ZNSt10bad_typeidC2ERKS_\n"
1.213 + DCB "EXPORT _ZNSt10bad_typeidaSERKS_\n"
1.214 + DCB "EXPORT _ZNSt10bad_typeidD1Ev\n"
1.215 + DCB "EXPORT _ZNSt10bad_typeidD2Ev\n"
1.216 + DCB "EXPORT _ZNSt10bad_typeidD0Ev\n"
1.217 + DCB "EXPORT _ZNKSt10bad_typeid4whatEv\n"
1.218 + DCB "EXPORT _ZN10__cxxabiv123__fundamental_type_infoD1Ev\n"
1.219 + DCB "EXPORT _ZN10__cxxabiv123__fundamental_type_infoD2Ev\n"
1.220 + DCB "EXPORT _ZN10__cxxabiv123__fundamental_type_infoD0Ev\n"
1.221 + DCB "EXPORT _ZN10__cxxabiv117__array_type_infoD1Ev\n"
1.222 + DCB "EXPORT _ZN10__cxxabiv117__array_type_infoD2Ev\n"
1.223 + DCB "EXPORT _ZN10__cxxabiv117__array_type_infoD0Ev\n"
1.224 + DCB "EXPORT _ZN10__cxxabiv120__function_type_infoD1Ev\n"
1.225 + DCB "EXPORT _ZN10__cxxabiv120__function_type_infoD2Ev\n"
1.226 + DCB "EXPORT _ZN10__cxxabiv120__function_type_infoD0Ev\n"
1.227 + DCB "EXPORT _ZN10__cxxabiv116__enum_type_infoD1Ev\n"
1.228 + DCB "EXPORT _ZN10__cxxabiv116__enum_type_infoD2Ev\n"
1.229 + DCB "EXPORT _ZN10__cxxabiv116__enum_type_infoD0Ev\n"
1.230 + DCB "EXPORT _ZN10__cxxabiv117__class_type_infoD1Ev\n"
1.231 + DCB "EXPORT _ZN10__cxxabiv117__class_type_infoD2Ev\n"
1.232 + DCB "EXPORT _ZN10__cxxabiv117__class_type_infoD0Ev\n"
1.233 + DCB "EXPORT _ZN10__cxxabiv120__si_class_type_infoD1Ev\n"
1.234 + DCB "EXPORT _ZN10__cxxabiv120__si_class_type_infoD2Ev\n"
1.235 + DCB "EXPORT _ZN10__cxxabiv120__si_class_type_infoD0Ev\n"
1.236 + DCB "EXPORT _ZN10__cxxabiv121__vmi_class_type_infoD1Ev\n"
1.237 + DCB "EXPORT _ZN10__cxxabiv121__vmi_class_type_infoD2Ev\n"
1.238 + DCB "EXPORT _ZN10__cxxabiv121__vmi_class_type_infoD0Ev\n"
1.239 + DCB "EXPORT _ZN10__cxxabiv117__pbase_type_infoD1Ev\n"
1.240 + DCB "EXPORT _ZN10__cxxabiv117__pbase_type_infoD2Ev\n"
1.241 + DCB "EXPORT _ZN10__cxxabiv117__pbase_type_infoD0Ev\n"
1.242 + DCB "EXPORT _ZN10__cxxabiv119__pointer_type_infoD1Ev\n"
1.243 + DCB "EXPORT _ZN10__cxxabiv119__pointer_type_infoD2Ev\n"
1.244 + DCB "EXPORT _ZN10__cxxabiv119__pointer_type_infoD0Ev\n"
1.245 + DCB "EXPORT _ZN10__cxxabiv129__pointer_to_member_type_infoD1Ev\n"
1.246 + DCB "EXPORT _ZN10__cxxabiv129__pointer_to_member_type_infoD2Ev\n"
1.247 + DCB "EXPORT _ZN10__cxxabiv129__pointer_to_member_type_infoD0Ev\n"
1.248 + DCB "EXPORT _ZSt21__gen_dummy_typeinfosv\n"
1.249 + DCB "EXPORT _ZTVSt9type_info\n"
1.250 + DCB "EXPORT _ZTVSt8bad_cast\n"
1.251 + DCB "EXPORT _ZTVSt10bad_typeid\n"
1.252 + DCB "EXPORT _ZTIv\n"
1.253 + DCB "EXPORT _ZTVN10__cxxabiv123__fundamental_type_infoE\n"
1.254 + DCB "EXPORT _ZTIPv\n"
1.255 + DCB "EXPORT _ZTVN10__cxxabiv119__pointer_type_infoE\n"
1.256 + DCB "EXPORT _ZTIPKv\n"
1.257 + DCB "EXPORT _ZTIb\n"
1.258 + DCB "EXPORT _ZTIPb\n"
1.259 + DCB "EXPORT _ZTIPKb\n"
1.260 + DCB "EXPORT _ZTIw\n"
1.261 + DCB "EXPORT _ZTIPw\n"
1.262 + DCB "EXPORT _ZTIPKw\n"
1.263 + DCB "EXPORT _ZTIc\n"
1.264 + DCB "EXPORT _ZTIPc\n"
1.265 + DCB "EXPORT _ZTIPKc\n"
1.266 + DCB "EXPORT _ZTIa\n"
1.267 + DCB "EXPORT _ZTIPa\n"
1.268 + DCB "EXPORT _ZTIPKa\n"
1.269 + DCB "EXPORT _ZTIh\n"
1.270 + DCB "EXPORT _ZTIPh\n"
1.271 + DCB "EXPORT _ZTIPKh\n"
1.272 + DCB "EXPORT _ZTIs\n"
1.273 + DCB "EXPORT _ZTIPs\n"
1.274 + DCB "EXPORT _ZTIPKs\n"
1.275 + DCB "EXPORT _ZTIt\n"
1.276 + DCB "EXPORT _ZTIPt\n"
1.277 + DCB "EXPORT _ZTIPKt\n"
1.278 + DCB "EXPORT _ZTIi\n"
1.279 + DCB "EXPORT _ZTIPi\n"
1.280 + DCB "EXPORT _ZTIPKi\n"
1.281 + DCB "EXPORT _ZTIj\n"
1.282 + DCB "EXPORT _ZTIPj\n"
1.283 + DCB "EXPORT _ZTIPKj\n"
1.284 + DCB "EXPORT _ZTIl\n"
1.285 + DCB "EXPORT _ZTIPl\n"
1.286 + DCB "EXPORT _ZTIPKl\n"
1.287 + DCB "EXPORT _ZTIm\n"
1.288 + DCB "EXPORT _ZTIPm\n"
1.289 + DCB "EXPORT _ZTIPKm\n"
1.290 + DCB "EXPORT _ZTIx\n"
1.291 + DCB "EXPORT _ZTIPx\n"
1.292 + DCB "EXPORT _ZTIPKx\n"
1.293 + DCB "EXPORT _ZTIy\n"
1.294 + DCB "EXPORT _ZTIPy\n"
1.295 + DCB "EXPORT _ZTIPKy\n"
1.296 + DCB "EXPORT _ZTIf\n"
1.297 + DCB "EXPORT _ZTIPf\n"
1.298 + DCB "EXPORT _ZTIPKf\n"
1.299 + DCB "EXPORT _ZTId\n"
1.300 + DCB "EXPORT _ZTIPd\n"
1.301 + DCB "EXPORT _ZTIPKd\n"
1.302 + DCB "EXPORT _ZTIe\n"
1.303 + DCB "EXPORT _ZTIPe\n"
1.304 + DCB "EXPORT _ZTIPKe\n"
1.305 + DCB "EXPORT _ZTVN10__cxxabiv117__array_type_infoE\n"
1.306 + DCB "EXPORT _ZTVN10__cxxabiv120__function_type_infoE\n"
1.307 + DCB "EXPORT _ZTVN10__cxxabiv116__enum_type_infoE\n"
1.308 + DCB "EXPORT _ZTVN10__cxxabiv117__class_type_infoE\n"
1.309 + DCB "EXPORT _ZTVN10__cxxabiv120__si_class_type_infoE\n"
1.310 + DCB "EXPORT _ZTVN10__cxxabiv121__vmi_class_type_infoE\n"
1.311 + DCB "EXPORT _ZTVN10__cxxabiv117__pbase_type_infoE\n"
1.312 + DCB "EXPORT _ZTVN10__cxxabiv129__pointer_to_member_type_infoE\n"
1.313 + DCB "EXPORT _ZTSv\n"
1.314 + DCB "EXPORT _ZTSPv\n"
1.315 + DCB "EXPORT _ZTSPKv\n"
1.316 + DCB "EXPORT _ZTSb\n"
1.317 + DCB "EXPORT _ZTSPb\n"
1.318 + DCB "EXPORT _ZTSPKb\n"
1.319 + DCB "EXPORT _ZTSw\n"
1.320 + DCB "EXPORT _ZTSPw\n"
1.321 + DCB "EXPORT _ZTSPKw\n"
1.322 + DCB "EXPORT _ZTSc\n"
1.323 + DCB "EXPORT _ZTSPc\n"
1.324 + DCB "EXPORT _ZTSPKc\n"
1.325 + DCB "EXPORT _ZTSa\n"
1.326 + DCB "EXPORT _ZTSPa\n"
1.327 + DCB "EXPORT _ZTSPKa\n"
1.328 + DCB "EXPORT _ZTSh\n"
1.329 + DCB "EXPORT _ZTSPh\n"
1.330 + DCB "EXPORT _ZTSPKh\n"
1.331 + DCB "EXPORT _ZTSs\n"
1.332 + DCB "EXPORT _ZTSPs\n"
1.333 + DCB "EXPORT _ZTSPKs\n"
1.334 + DCB "EXPORT _ZTSt\n"
1.335 + DCB "EXPORT _ZTSPt\n"
1.336 + DCB "EXPORT _ZTSPKt\n"
1.337 + DCB "EXPORT _ZTSi\n"
1.338 + DCB "EXPORT _ZTSPi\n"
1.339 + DCB "EXPORT _ZTSPKi\n"
1.340 + DCB "EXPORT _ZTSj\n"
1.341 + DCB "EXPORT _ZTSPj\n"
1.342 + DCB "EXPORT _ZTSPKj\n"
1.343 + DCB "EXPORT _ZTSl\n"
1.344 + DCB "EXPORT _ZTSPl\n"
1.345 + DCB "EXPORT _ZTSPKl\n"
1.346 + DCB "EXPORT _ZTSm\n"
1.347 + DCB "EXPORT _ZTSPm\n"
1.348 + DCB "EXPORT _ZTSPKm\n"
1.349 + DCB "EXPORT _ZTSx\n"
1.350 + DCB "EXPORT _ZTSPx\n"
1.351 + DCB "EXPORT _ZTSPKx\n"
1.352 + DCB "EXPORT _ZTSy\n"
1.353 + DCB "EXPORT _ZTSPy\n"
1.354 + DCB "EXPORT _ZTSPKy\n"
1.355 + DCB "EXPORT _ZTSf\n"
1.356 + DCB "EXPORT _ZTSPf\n"
1.357 + DCB "EXPORT _ZTSPKf\n"
1.358 + DCB "EXPORT _ZTSd\n"
1.359 + DCB "EXPORT _ZTSPd\n"
1.360 + DCB "EXPORT _ZTSPKd\n"
1.361 + DCB "EXPORT _ZTSe\n"
1.362 + DCB "EXPORT _ZTSPe\n"
1.363 + DCB "EXPORT _ZTSPKe\n"
1.364 + DCB "EXPORT _ZTISt9type_info\n"
1.365 + DCB "EXPORT _ZTISt8bad_cast\n"
1.366 + DCB "EXPORT _ZTISt10bad_typeid\n"
1.367 + DCB "EXPORT _ZTIN10__cxxabiv123__fundamental_type_infoE\n"
1.368 + DCB "EXPORT _ZTIN10__cxxabiv117__array_type_infoE\n"
1.369 + DCB "EXPORT _ZTIN10__cxxabiv120__function_type_infoE\n"
1.370 + DCB "EXPORT _ZTIN10__cxxabiv116__enum_type_infoE\n"
1.371 + DCB "EXPORT _ZTIN10__cxxabiv117__class_type_infoE\n"
1.372 + DCB "EXPORT _ZTIN10__cxxabiv120__si_class_type_infoE\n"
1.373 + DCB "EXPORT _ZTIN10__cxxabiv121__vmi_class_type_infoE\n"
1.374 + DCB "EXPORT _ZTIN10__cxxabiv117__pbase_type_infoE\n"
1.375 + DCB "EXPORT _ZTIN10__cxxabiv119__pointer_type_infoE\n"
1.376 + DCB "EXPORT _ZTIN10__cxxabiv129__pointer_to_member_type_infoE\n"
1.377 + DCB "EXPORT _ZTSSt9type_info\n"
1.378 + DCB "EXPORT _ZTSSt8bad_cast\n"
1.379 + DCB "EXPORT _ZTSSt10bad_typeid\n"
1.380 + DCB "EXPORT _ZTSN10__cxxabiv123__fundamental_type_infoE\n"
1.381 + DCB "EXPORT _ZTSN10__cxxabiv117__array_type_infoE\n"
1.382 + DCB "EXPORT _ZTSN10__cxxabiv120__function_type_infoE\n"
1.383 + DCB "EXPORT _ZTSN10__cxxabiv116__enum_type_infoE\n"
1.384 + DCB "EXPORT _ZTSN10__cxxabiv117__class_type_infoE\n"
1.385 + DCB "EXPORT _ZTSN10__cxxabiv120__si_class_type_infoE\n"
1.386 + DCB "EXPORT _ZTSN10__cxxabiv121__vmi_class_type_infoE\n"
1.387 + DCB "EXPORT _ZTSN10__cxxabiv117__pbase_type_infoE\n"
1.388 + DCB "EXPORT _ZTSN10__cxxabiv119__pointer_type_infoE\n"
1.389 + DCB "EXPORT _ZTSN10__cxxabiv129__pointer_to_member_type_infoE\n"
1.390 +
1.391 +#endif // __KERNEL_MODE__
1.392 +
1.393 +}
1.394 +
1.395 +#ifndef __KERNEL_MODE__
1.396 +
1.397 +extern "C" {
1.398 +IMPORT_C int __rt_raise(int signal, int type);
1.399 +int raise(int signal)
1.400 + {
1.401 + return __rt_raise(signal, 0);
1.402 + }
1.403 +
1.404 +IMPORT_C int __rt_exit(int aReturnCode);
1.405 +EXPORT_C void abort(int signal)
1.406 + {
1.407 + __rt_raise(signal, 1);
1.408 + __rt_exit(1);
1.409 + }
1.410 +
1.411 +IMPORT_C void* __get_typeid(void*);
1.412 +EXPORT_C void* __ARM_get_typeid(void* p)
1.413 + {
1.414 + return __get_typeid(p);
1.415 + }
1.416 +
1.417 +}
1.418 +
1.419 +#endif