os/kernelhwsrv/kernel/eka/compsupp/rvct2_2/drtaeabi.cpp
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
     1 // Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     4 // under the terms of the License "ARM EABI LICENCE.txt"
     5 // which accompanies this distribution, and is available
     6 // in kernel/eka/compsupp.
     7 //
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
    10 //
    11 // Contributors:
    12 //
    13 // Description:
    14 //
    15 
    16 extern char * _ZTVN10__cxxabiv123__fundamental_type_infoE;
    17 extern const char * const  $Sub$$_ZTSv = "v";
    18 
    19 
    20 // This function is simple a way to get these EXPORT statements into
    21 // the .in file. These symbols will therefore be referenced from
    22 // the export table and so **forced** into the DLL 
    23 __asm void __rt_exporter_dummy(void)
    24 {
    25         EXTERN _ZTVN10__cxxabiv123__fundamental_type_infoE
    26 	EXTERN _ZTSv
    27 	EXPORT |$Sub$$_ZTIv|
    28 |$Sub$$_ZTIv|
    29 	DCD _ZTVN10__cxxabiv123__fundamental_type_infoE
    30 	DCD _ZTSv
    31   
    32 	AREA |.directive|, READONLY, NOALLOC
    33 
    34 	PRESERVE8
    35 
    36 	DCB "#<SYMEDIT>#\n"
    37 	// Long long functions
    38 	DCB "EXPORT __aeabi_lmul\n"
    39 	DCB "EXPORT __aeabi_ldivmod\n"
    40 	DCB "EXPORT __aeabi_uldivmod\n"
    41 	DCB "EXPORT __aeabi_llsl\n"
    42 	DCB "EXPORT __aeabi_llsr\n"
    43 	DCB "EXPORT __aeabi_lasr\n"
    44 	DCB "EXPORT __aeabi_lcmp\n"
    45 	DCB "EXPORT __aeabi_ulcmp\n"
    46 
    47 	// Integer division functions
    48 	DCB "EXPORT __aeabi_idiv\n"
    49 	DCB "EXPORT __aeabi_uidiv\n"
    50 
    51 	// Integer (32/32 . 32) division functions
    52 	DCB "EXPORT __aeabi_idivmod\n"
    53 	DCB "EXPORT __aeabi_uidivmod\n"
    54 
    55 	// Division by Zero
    56 	// SIGFPE not supported on SymbianOS
    57 	// Implemented in rtdiv0.cpp
    58 	DCB "EXPORT __aeabi_idiv0\n"
    59 	DCB "EXPORT __aeabi_ldiv0\n"
    60 
    61 	// Unaligned memory access
    62 	DCB "EXPORT __aeabi_uread4\n"
    63 	DCB "EXPORT __aeabi_uwrite4\n"
    64 	DCB "EXPORT __aeabi_uread8\n"
    65 	DCB "EXPORT __aeabi_uwrite8\n"
    66 
    67 	// Memory copying, clearing, and setting
    68 	// we may want to override the toolchain supplied versions of these (or not)
    69 	DCB "EXPORT __aeabi_memcpy8\n"
    70 	DCB "EXPORT __aeabi_memcpy4\n"
    71 	DCB "EXPORT __aeabi_memcpy\n"
    72 	DCB "EXPORT __aeabi_memmove8\n"
    73 	DCB "EXPORT __aeabi_memmove4\n"
    74 	DCB "EXPORT __aeabi_memmove\n"
    75 
    76 	DCB "EXPORT __aeabi_memset8\n"
    77 	DCB "EXPORT __aeabi_memset4\n"
    78 	DCB "EXPORT __aeabi_memset\n"
    79 	DCB "EXPORT __aeabi_memclr8\n"
    80 	DCB "EXPORT __aeabi_memclr4\n"
    81 	DCB "EXPORT __aeabi_memclr\n"
    82 
    83 	// C++ helper functions
    84 
    85 	// Pure virtual call
    86 	DCB "EXPORT __cxa_pure_virtual\n"
    87 
    88 	// One-time construction API
    89 	DCB "EXPORT __cxa_guard_acquire\n"
    90 	DCB "EXPORT __cxa_guard_release\n"
    91 	DCB "EXPORT __cxa_guard_abort\n"
    92 
    93 	// Construction and destruction of arrays
    94 
    95 	// Helper functions defined by the generic C++ ABI
    96 	DCB "EXPORT __cxa_vec_new\n"
    97 	DCB "EXPORT __cxa_vec_new2\n"
    98 	DCB "EXPORT __cxa_vec_new3\n"
    99 	DCB "EXPORT __cxa_vec_ctor\n"
   100 	DCB "EXPORT __cxa_vec_dtor\n"
   101 	DCB "EXPORT __cxa_vec_cleanup\n"
   102 	DCB "EXPORT __cxa_vec_delete\n"
   103 	DCB "EXPORT __cxa_vec_delete2\n"
   104 	DCB "EXPORT __cxa_vec_delete3\n"
   105 	DCB "EXPORT __cxa_vec_cctor\n"
   106 
   107 	// Helper functions defined by the C++ ABI for the ARM Architecture
   108 	DCB "EXPORT __aeabi_vec_ctor_nocookie_nodtor\n"
   109 	DCB "EXPORT __aeabi_vec_ctor_cookie_nodtor\n"
   110 	DCB "EXPORT __aeabi_vec_cctor_nocookie_nodtor\n"
   111 	DCB "EXPORT __aeabi_vec_new_cookie_noctor\n"
   112 	DCB "EXPORT __aeabi_vec_new_nocookie\n"
   113 	DCB "EXPORT __aeabi_vec_new_cookie_nodtor\n"
   114 	DCB "EXPORT __aeabi_vec_new_cookie\n"
   115 	DCB "EXPORT __aeabi_vec_dtor\n"
   116 	DCB "EXPORT __aeabi_vec_dtor_cookie\n"
   117 	DCB "EXPORT __aeabi_vec_delete\n"
   118 	DCB "EXPORT __aeabi_vec_delete3\n"
   119 	DCB "EXPORT __aeabi_vec_delete3_nodtor\n"
   120 
   121 	// Object finalization
   122 	// these need SymbianOS specific implementations
   123 	// implemented in ucppfini.cpp
   124 	// and supplied by usrt.lib
   125 #if 0
   126 	DCB "EXPORT __cxa_atexit\n"
   127 	DCB "EXPORT __aeabi_atexit\n"
   128 	DCB "EXPORT __cxa_finalize\n"
   129 #endif
   130 
   131 /// Exception Support from here. Not needed by system side code.
   132 #ifndef __KERNEL_MODE__
   133 	// Standard (user-visible) C++  exception related functions
   134 	DCB "EXPORT _ZSt9terminatev\n"
   135 	DCB "EXPORT _ZSt10unexpectedv\n"
   136 	DCB "EXPORT _ZSt18uncaught_exceptionv\n"
   137 	DCB "EXPORT _ZSt13set_terminatePFvvE\n"
   138 	DCB "EXPORT _ZSt14set_unexpectedPFvvE\n"
   139 	
   140 	DCB "EXPORT abort\n"
   141 
   142 	// Exception-handling support
   143 	DCB "EXPORT __cxa_allocate_exception\n"
   144 	DCB "EXPORT __cxa_free_exception\n"
   145 	DCB "EXPORT __cxa_throw\n"
   146 	DCB "EXPORT __cxa_rethrow\n"
   147 	DCB "EXPORT __cxa_begin_catch\n"
   148 	DCB "EXPORT __cxa_end_catch\n"
   149 	DCB "EXPORT __cxa_end_cleanup\n"
   150 
   151 	// personality routines for ARM compact EH entries
   152 	DCB "EXPORT __aeabi_unwind_cpp_pr0\n"
   153 	DCB "EXPORT __aeabi_unwind_cpp_pr1\n"
   154 	DCB "EXPORT __aeabi_unwind_cpp_pr2\n"
   155 
   156 	// Unwinder helper routines
   157 	DCB "EXPORT _Unwind_VRS_Get\n"
   158 	DCB "EXPORT _Unwind_VRS_Set\n"
   159 	DCB "EXPORT _Unwind_VRS_Pop\n"
   160 
   161 	// personality routine helper functions
   162 	DCB "EXPORT __cxa_begin_cleanup\n"
   163 
   164         // this needs SymbianOS specific implementation
   165 	DCB "EXPORT __cxa_type_match\n"
   166 
   167         // this needs SymbianOS specific implementation
   168 	DCB "EXPORT __cxa_call_terminate\n"
   169 
   170 	DCB "EXPORT __cxa_call_unexpected\n"
   171 
   172 	// Miscellaneous error handling related to exception processing
   173 	DCB "EXPORT __cxa_bad_cast\n"
   174 	DCB "EXPORT __cxa_bad_typeid\n"
   175 
   176 
   177         // this needs SymbianOS specific implementation
   178 	DCB "EXPORT __cxa_get_globals\n"
   179 
   180         // this needs SymbianOS specific implementation
   181 	DCB "EXPORT __cxa_current_exception_type\n"
   182 
   183 
   184 	// rtti support from rtti.o
   185 	DCB "EXPORT __dynamic_cast\n"		
   186 	DCB "EXPORT __get_typeid\n"		
   187 	DCB "EXPORT __ARM_get_typeid\n"
   188 
   189 	// Standard typeinfo
   190 	DCB "EXPORT _ZNSt9type_infoD1Ev\n"
   191 	DCB "EXPORT _ZNSt9type_infoD2Ev\n"
   192 	DCB "EXPORT _ZNSt9type_infoD0Ev\n"  
   193 	DCB "EXPORT _ZNKSt9type_info4nameEv\n" 
   194 	DCB "EXPORT _ZNKSt9type_infoeqERKS_\n"
   195 	DCB "EXPORT _ZNKSt9type_infoneERKS_\n"
   196 	DCB "EXPORT _ZNKSt9type_info6beforeERKS_\n"
   197 	DCB "EXPORT _ZNSt8bad_castC1Ev\n"
   198 	DCB "EXPORT _ZNSt8bad_castC2Ev\n"
   199 	DCB "EXPORT _ZNSt8bad_castC1ERKS_\n"
   200 	DCB "EXPORT _ZNSt8bad_castC2ERKS_\n"
   201 	DCB "EXPORT _ZNSt8bad_castaSERKS_\n"
   202 	DCB "EXPORT _ZNSt8bad_castD1Ev\n"
   203 	DCB "EXPORT _ZNSt8bad_castD2Ev\n"
   204 	DCB "EXPORT _ZNSt8bad_castD0Ev\n"
   205 	DCB "EXPORT _ZNKSt8bad_cast4whatEv\n"
   206 	DCB "EXPORT _ZNSt10bad_typeidC1Ev\n"
   207 	DCB "EXPORT _ZNSt10bad_typeidC2Ev\n"
   208 	DCB "EXPORT _ZNSt10bad_typeidC1ERKS_\n"
   209 	DCB "EXPORT _ZNSt10bad_typeidC2ERKS_\n"
   210 	DCB "EXPORT _ZNSt10bad_typeidaSERKS_\n"
   211 	DCB "EXPORT _ZNSt10bad_typeidD1Ev\n"
   212 	DCB "EXPORT _ZNSt10bad_typeidD2Ev\n"
   213 	DCB "EXPORT _ZNSt10bad_typeidD0Ev\n"
   214 	DCB "EXPORT _ZNKSt10bad_typeid4whatEv\n"
   215 	DCB "EXPORT _ZN10__cxxabiv123__fundamental_type_infoD1Ev\n"
   216 	DCB "EXPORT _ZN10__cxxabiv123__fundamental_type_infoD2Ev\n"
   217 	DCB "EXPORT _ZN10__cxxabiv123__fundamental_type_infoD0Ev\n"
   218 	DCB "EXPORT _ZN10__cxxabiv117__array_type_infoD1Ev\n"
   219 	DCB "EXPORT _ZN10__cxxabiv117__array_type_infoD2Ev\n"
   220 	DCB "EXPORT _ZN10__cxxabiv117__array_type_infoD0Ev\n"
   221 	DCB "EXPORT _ZN10__cxxabiv120__function_type_infoD1Ev\n"
   222 	DCB "EXPORT _ZN10__cxxabiv120__function_type_infoD2Ev\n"
   223 	DCB "EXPORT _ZN10__cxxabiv120__function_type_infoD0Ev\n"
   224 	DCB "EXPORT _ZN10__cxxabiv116__enum_type_infoD1Ev\n"
   225 	DCB "EXPORT _ZN10__cxxabiv116__enum_type_infoD2Ev\n"
   226 	DCB "EXPORT _ZN10__cxxabiv116__enum_type_infoD0Ev\n"
   227 	DCB "EXPORT _ZN10__cxxabiv117__class_type_infoD1Ev\n"
   228 	DCB "EXPORT _ZN10__cxxabiv117__class_type_infoD2Ev\n"
   229 	DCB "EXPORT _ZN10__cxxabiv117__class_type_infoD0Ev\n"
   230 	DCB "EXPORT _ZN10__cxxabiv120__si_class_type_infoD1Ev\n"
   231 	DCB "EXPORT _ZN10__cxxabiv120__si_class_type_infoD2Ev\n"
   232 	DCB "EXPORT _ZN10__cxxabiv120__si_class_type_infoD0Ev\n"
   233 	DCB "EXPORT _ZN10__cxxabiv121__vmi_class_type_infoD1Ev\n"
   234 	DCB "EXPORT _ZN10__cxxabiv121__vmi_class_type_infoD2Ev\n"
   235 	DCB "EXPORT _ZN10__cxxabiv121__vmi_class_type_infoD0Ev\n"
   236 	DCB "EXPORT _ZN10__cxxabiv117__pbase_type_infoD1Ev\n"
   237 	DCB "EXPORT _ZN10__cxxabiv117__pbase_type_infoD2Ev\n"
   238 	DCB "EXPORT _ZN10__cxxabiv117__pbase_type_infoD0Ev\n"
   239 	DCB "EXPORT _ZN10__cxxabiv119__pointer_type_infoD1Ev\n"
   240 	DCB "EXPORT _ZN10__cxxabiv119__pointer_type_infoD2Ev\n"
   241 	DCB "EXPORT _ZN10__cxxabiv119__pointer_type_infoD0Ev\n"
   242 	DCB "EXPORT _ZN10__cxxabiv129__pointer_to_member_type_infoD1Ev\n"
   243 	DCB "EXPORT _ZN10__cxxabiv129__pointer_to_member_type_infoD2Ev\n"
   244 	DCB "EXPORT _ZN10__cxxabiv129__pointer_to_member_type_infoD0Ev\n"
   245 	DCB "EXPORT _ZSt21__gen_dummy_typeinfosv\n"
   246 	DCB "EXPORT _ZTVSt9type_info\n"
   247 	DCB "EXPORT _ZTVSt8bad_cast\n"
   248 	DCB "EXPORT _ZTVSt10bad_typeid\n"
   249 	DCB "EXPORT _ZTIv\n"
   250 	DCB "EXPORT _ZTVN10__cxxabiv123__fundamental_type_infoE\n"
   251 	DCB "EXPORT _ZTIPv\n"
   252 	DCB "EXPORT _ZTVN10__cxxabiv119__pointer_type_infoE\n"
   253 	DCB "EXPORT _ZTIPKv\n"
   254 	DCB "EXPORT _ZTIb\n"
   255 	DCB "EXPORT _ZTIPb\n"
   256 	DCB "EXPORT _ZTIPKb\n"
   257 	DCB "EXPORT _ZTIw\n"
   258 	DCB "EXPORT _ZTIPw\n"
   259 	DCB "EXPORT _ZTIPKw\n"
   260 	DCB "EXPORT _ZTIc\n"
   261 	DCB "EXPORT _ZTIPc\n"
   262 	DCB "EXPORT _ZTIPKc\n"
   263 	DCB "EXPORT _ZTIa\n"
   264 	DCB "EXPORT _ZTIPa\n"
   265 	DCB "EXPORT _ZTIPKa\n"
   266 	DCB "EXPORT _ZTIh\n"
   267 	DCB "EXPORT _ZTIPh\n"
   268 	DCB "EXPORT _ZTIPKh\n"
   269 	DCB "EXPORT _ZTIs\n"
   270 	DCB "EXPORT _ZTIPs\n"
   271 	DCB "EXPORT _ZTIPKs\n"
   272 	DCB "EXPORT _ZTIt\n"
   273 	DCB "EXPORT _ZTIPt\n"
   274 	DCB "EXPORT _ZTIPKt\n"
   275 	DCB "EXPORT _ZTIi\n"
   276 	DCB "EXPORT _ZTIPi\n"
   277 	DCB "EXPORT _ZTIPKi\n"
   278 	DCB "EXPORT _ZTIj\n"
   279 	DCB "EXPORT _ZTIPj\n"
   280 	DCB "EXPORT _ZTIPKj\n"
   281 	DCB "EXPORT _ZTIl\n"
   282 	DCB "EXPORT _ZTIPl\n"
   283 	DCB "EXPORT _ZTIPKl\n"
   284 	DCB "EXPORT _ZTIm\n"
   285 	DCB "EXPORT _ZTIPm\n"
   286 	DCB "EXPORT _ZTIPKm\n"
   287 	DCB "EXPORT _ZTIx\n"
   288 	DCB "EXPORT _ZTIPx\n"
   289 	DCB "EXPORT _ZTIPKx\n"
   290 	DCB "EXPORT _ZTIy\n"
   291 	DCB "EXPORT _ZTIPy\n"
   292 	DCB "EXPORT _ZTIPKy\n"
   293 	DCB "EXPORT _ZTIf\n"
   294 	DCB "EXPORT _ZTIPf\n"
   295 	DCB "EXPORT _ZTIPKf\n"
   296 	DCB "EXPORT _ZTId\n"
   297 	DCB "EXPORT _ZTIPd\n"
   298 	DCB "EXPORT _ZTIPKd\n"
   299 	DCB "EXPORT _ZTIe\n"
   300 	DCB "EXPORT _ZTIPe\n"
   301 	DCB "EXPORT _ZTIPKe\n"
   302 	DCB "EXPORT _ZTVN10__cxxabiv117__array_type_infoE\n"
   303 	DCB "EXPORT _ZTVN10__cxxabiv120__function_type_infoE\n"
   304 	DCB "EXPORT _ZTVN10__cxxabiv116__enum_type_infoE\n"
   305 	DCB "EXPORT _ZTVN10__cxxabiv117__class_type_infoE\n"
   306 	DCB "EXPORT _ZTVN10__cxxabiv120__si_class_type_infoE\n"
   307 	DCB "EXPORT _ZTVN10__cxxabiv121__vmi_class_type_infoE\n"
   308 	DCB "EXPORT _ZTVN10__cxxabiv117__pbase_type_infoE\n"
   309 	DCB "EXPORT _ZTVN10__cxxabiv129__pointer_to_member_type_infoE\n"
   310 	DCB "EXPORT _ZTSv\n"
   311 	DCB "EXPORT _ZTSPv\n"
   312 	DCB "EXPORT _ZTSPKv\n"
   313 	DCB "EXPORT _ZTSb\n"
   314 	DCB "EXPORT _ZTSPb\n"
   315 	DCB "EXPORT _ZTSPKb\n"
   316 	DCB "EXPORT _ZTSw\n"
   317 	DCB "EXPORT _ZTSPw\n"
   318 	DCB "EXPORT _ZTSPKw\n"
   319 	DCB "EXPORT _ZTSc\n"
   320 	DCB "EXPORT _ZTSPc\n"
   321 	DCB "EXPORT _ZTSPKc\n"
   322 	DCB "EXPORT _ZTSa\n"
   323 	DCB "EXPORT _ZTSPa\n"
   324 	DCB "EXPORT _ZTSPKa\n"
   325 	DCB "EXPORT _ZTSh\n"
   326 	DCB "EXPORT _ZTSPh\n"
   327 	DCB "EXPORT _ZTSPKh\n"
   328 	DCB "EXPORT _ZTSs\n"
   329 	DCB "EXPORT _ZTSPs\n"
   330 	DCB "EXPORT _ZTSPKs\n"
   331 	DCB "EXPORT _ZTSt\n"
   332 	DCB "EXPORT _ZTSPt\n"
   333 	DCB "EXPORT _ZTSPKt\n"
   334 	DCB "EXPORT _ZTSi\n"
   335 	DCB "EXPORT _ZTSPi\n"
   336 	DCB "EXPORT _ZTSPKi\n"
   337 	DCB "EXPORT _ZTSj\n"
   338 	DCB "EXPORT _ZTSPj\n"
   339 	DCB "EXPORT _ZTSPKj\n"
   340 	DCB "EXPORT _ZTSl\n"
   341 	DCB "EXPORT _ZTSPl\n"
   342 	DCB "EXPORT _ZTSPKl\n"
   343 	DCB "EXPORT _ZTSm\n"
   344 	DCB "EXPORT _ZTSPm\n"
   345 	DCB "EXPORT _ZTSPKm\n"
   346 	DCB "EXPORT _ZTSx\n"
   347 	DCB "EXPORT _ZTSPx\n"
   348 	DCB "EXPORT _ZTSPKx\n"
   349 	DCB "EXPORT _ZTSy\n"
   350 	DCB "EXPORT _ZTSPy\n"
   351 	DCB "EXPORT _ZTSPKy\n"
   352 	DCB "EXPORT _ZTSf\n"
   353 	DCB "EXPORT _ZTSPf\n"
   354 	DCB "EXPORT _ZTSPKf\n"
   355 	DCB "EXPORT _ZTSd\n"
   356 	DCB "EXPORT _ZTSPd\n"
   357 	DCB "EXPORT _ZTSPKd\n"
   358 	DCB "EXPORT _ZTSe\n"
   359 	DCB "EXPORT _ZTSPe\n"
   360 	DCB "EXPORT _ZTSPKe\n"
   361 	DCB "EXPORT _ZTISt9type_info\n"
   362 	DCB "EXPORT _ZTISt8bad_cast\n"
   363 	DCB "EXPORT _ZTISt10bad_typeid\n"
   364 	DCB "EXPORT _ZTIN10__cxxabiv123__fundamental_type_infoE\n"
   365 	DCB "EXPORT _ZTIN10__cxxabiv117__array_type_infoE\n"
   366 	DCB "EXPORT _ZTIN10__cxxabiv120__function_type_infoE\n"
   367 	DCB "EXPORT _ZTIN10__cxxabiv116__enum_type_infoE\n"
   368 	DCB "EXPORT _ZTIN10__cxxabiv117__class_type_infoE\n"
   369 	DCB "EXPORT _ZTIN10__cxxabiv120__si_class_type_infoE\n"
   370 	DCB "EXPORT _ZTIN10__cxxabiv121__vmi_class_type_infoE\n"
   371 	DCB "EXPORT _ZTIN10__cxxabiv117__pbase_type_infoE\n"
   372 	DCB "EXPORT _ZTIN10__cxxabiv119__pointer_type_infoE\n"
   373 	DCB "EXPORT _ZTIN10__cxxabiv129__pointer_to_member_type_infoE\n"
   374 	DCB "EXPORT _ZTSSt9type_info\n"
   375 	DCB "EXPORT _ZTSSt8bad_cast\n"
   376 	DCB "EXPORT _ZTSSt10bad_typeid\n"
   377 	DCB "EXPORT _ZTSN10__cxxabiv123__fundamental_type_infoE\n"
   378 	DCB "EXPORT _ZTSN10__cxxabiv117__array_type_infoE\n"
   379 	DCB "EXPORT _ZTSN10__cxxabiv120__function_type_infoE\n"
   380 	DCB "EXPORT _ZTSN10__cxxabiv116__enum_type_infoE\n"
   381 	DCB "EXPORT _ZTSN10__cxxabiv117__class_type_infoE\n"
   382 	DCB "EXPORT _ZTSN10__cxxabiv120__si_class_type_infoE\n"
   383 	DCB "EXPORT _ZTSN10__cxxabiv121__vmi_class_type_infoE\n"
   384 	DCB "EXPORT _ZTSN10__cxxabiv117__pbase_type_infoE\n"
   385 	DCB "EXPORT _ZTSN10__cxxabiv119__pointer_type_infoE\n"
   386 	DCB "EXPORT _ZTSN10__cxxabiv129__pointer_to_member_type_infoE\n"
   387 
   388 #endif // __KERNEL_MODE__
   389 
   390 }
   391 
   392 #ifndef __KERNEL_MODE__
   393 
   394 extern "C" {
   395 IMPORT_C int __rt_raise(int signal, int type);
   396 int raise(int signal)
   397 	{ 
   398 	return __rt_raise(signal, 0); 
   399 	}
   400 
   401 IMPORT_C int __rt_exit(int aReturnCode);
   402 EXPORT_C void abort(int signal)
   403 	{ 
   404 	__rt_raise(signal, 1); 
   405 	__rt_exit(1);
   406 	}
   407 
   408 IMPORT_C void* __get_typeid(void*);
   409 EXPORT_C void* __ARM_get_typeid(void* p)
   410 	{
   411 	return __get_typeid(p);
   412 	}
   413 
   414 }
   415 
   416 #endif