Difference between revisions of "Runtime Hooks"
(split out dynamic array) |
|||
Line 30: | Line 30: | ||
|- | |- | ||
| _d_assocarrayliteralTX || extern(C)|| || [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/aaA.d#L737 rt/aaA.d]|| | | _d_assocarrayliteralTX || extern(C)|| || [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/aaA.d#L737 rt/aaA.d]|| | ||
+ | |} | ||
+ | |||
+ | |||
+ | {| class="wikitable" width="100%" | ||
+ | |+dynamic array support | ||
+ | |- | ||
+ | !mangled name!!calling convention!!description!!druntime definition!!comment | ||
+ | |- | ||
+ | | _adCmp || extern(C)|| Compare arrays|| [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/adi.d#L415 rt/adi.d]|| | ||
+ | |- | ||
+ | | _adCmp2 || extern(C)|| Compare arrays|| [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/adi.d#L445 rt/adi.d]|| What's the difference to _adCmp? | ||
+ | |- | ||
+ | | _adCmpBit || ???|| || ???|| Can't find this in druntime. Deprecated? | ||
+ | |- | ||
+ | | _adCmpChar || extern(C)|| Compare arrays|| [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/adi.d#L471 rt/adi.d]|| | ||
+ | |- | ||
+ | | _adDupT || extern(C)|| Implement .dup property|| [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/lifetime.d#L2222 rt/lifetime.d]|| | ||
+ | |- | ||
+ | | _adEq || extern(C)|| array equality test|| [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/adi.d#L368 rt/adi.d]|| | ||
+ | |- | ||
+ | | _adEq2 || extern(C)|| array equality test|| [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/adi.d#L389 rt/adi.d]|| | ||
+ | |- | ||
+ | | _adEqBit || ???|| || ???||Can't find this in druntime. Deprecated? | ||
+ | |- | ||
+ | | _adReverse || extern(C)|| implement .reverse property (generic)|| [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/adi.d#L236 rt/adi.d]|| | ||
+ | |- | ||
+ | | _adReverseChar || extern(C)|| implement .reverse property (char array)|| [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/adi.d#L47 rt/adi.d]|| | ||
+ | |- | ||
+ | | _adReverseWchar || extern(C)|| implement .reverse property (wchar array)|| [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/adi.d#L142 rt/adi.d]|| | ||
+ | |- | ||
+ | | _adSort || extern(C)|| Implement .sort property (generic)|| [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/qsort.d#L43 rt/qsort.d]|| | ||
+ | |- | ||
+ | | _adSortChar || extern(C)|| Implement .sort property (char array)|| [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/adi.d#L321 rt/adi.d]|| | ||
+ | |- | ||
+ | | _adSortWchar || extern(C)|| Implement .sort property (wchar array)|| [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/adi.d#L343 rt/adi.d]|| | ||
|} | |} | ||
Line 120: | Line 155: | ||
|- | |- | ||
| _aApplywd2 || extern(C)|| || [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/aApply.d#L227 rt/aApply.d]|| | | _aApplywd2 || extern(C)|| || [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/aApply.d#L227 rt/aApply.d]|| | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| _d_allocmemory || extern(C)|| || [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/lifetime.d#L87 rt/lifetime.d]|| | | _d_allocmemory || extern(C)|| || [https://github.com/D-Programming-Language/druntime/blob/e47a00bff935c3f079bb567a6ec97663ba384487/src/rt/lifetime.d#L87 rt/lifetime.d]|| |
Revision as of 16:07, 21 January 2013
This page lists runtime functions to which the compiler may automatically generate calls to in certain circumstances. This list was taken from dmd's backend/rtlsym.h.
This list is not complete and may even list functions which are no longer needed. Please help to verify this list.
mangled name | calling convention | description | druntime definition | comment |
---|---|---|---|---|
_aaApply | extern(C) | rt/aaA.d | ||
_aaApply2 | extern(C) | rt/aaA.d | ||
_aaDelX | extern(C) | rt/aaA.d | ||
_aaEqual | extern(C) | rt/aaA.d | ||
_aaGetRvalueX | extern(C) | rt/aaA.d | ||
_aaGetX | extern(C) | rt/aaA.d | ||
_aaInX | extern(C) | rt/aaA.d | ||
_aaLen | extern(C) | rt/aaA.d | ||
_d_assocarrayliteralT | extern(C) | rt/aaA.d | ||
_d_assocarrayliteralTX | extern(C) | rt/aaA.d |
mangled name | calling convention | description | druntime definition | comment |
---|---|---|---|---|
_adCmp | extern(C) | Compare arrays | rt/adi.d | |
_adCmp2 | extern(C) | Compare arrays | rt/adi.d | What's the difference to _adCmp? |
_adCmpBit | ??? | ??? | Can't find this in druntime. Deprecated? | |
_adCmpChar | extern(C) | Compare arrays | rt/adi.d | |
_adDupT | extern(C) | Implement .dup property | rt/lifetime.d | |
_adEq | extern(C) | array equality test | rt/adi.d | |
_adEq2 | extern(C) | array equality test | rt/adi.d | |
_adEqBit | ??? | ??? | Can't find this in druntime. Deprecated? | |
_adReverse | extern(C) | implement .reverse property (generic) | rt/adi.d | |
_adReverseChar | extern(C) | implement .reverse property (char array) | rt/adi.d | |
_adReverseWchar | extern(C) | implement .reverse property (wchar array) | rt/adi.d | |
_adSort | extern(C) | Implement .sort property (generic) | rt/qsort.d | |
_adSortChar | extern(C) | Implement .sort property (char array) | rt/adi.d | |
_adSortWchar | extern(C) | Implement .sort property (wchar array) | rt/adi.d |
mangled name | calling convention | description | druntime definition | comment |
---|---|---|---|---|
_d_throw | ??? | ??? | ||
_d_throw@4 | ??? | ??? | ||
_d_throwc | extern(C) | rt/deh2.d |
mangled name | calling convention | description | druntime definition | comment |
---|---|---|---|---|
_d_unittest | extern(C) | rt/dmain2.d | ||
_d_unittest_msg | extern(C) | rt/dmain2.d | ||
_d_unittestm | extern(C) | rt/dmain2.d |
mangled name | calling convention | description | druntime definition | comment |
---|---|---|---|---|
___tls_get_addr | extern(D) | Returns the thread local address of a variable. Used to emulate thread local storage on Mac OS X. | core/thread.d | Only used on Mac OS X. |
mangled name | calling convention | description | druntime definition | comment |
---|---|---|---|---|
D9invariant12_d_invariantFC6ObjectZv | extern(D) | rt/invariant.d | ||
_D9invariant12_d_invariantFC6ObjectZv | ??? | |||
_aApplyRcd1 | extern(C) | rt/aApplyR.d | ||
_aApplyRcd2 | extern(C) | rt/aApplyR.d | ||
_aApplyRcw1 | extern(C) | rt/aApplyR.d | ||
_aApplyRcw2 | extern(C) | rt/aApplyR.d | ||
_aApplyRdc1 | extern(C) | rt/aApplyR.d | ||
_aApplyRdc2 | extern(C) | rt/aApplyR.d | ||
_aApplyRdw1 | extern(C) | rt/aApplyR.d | ||
_aApplyRdw2 | extern(C) | rt/aApplyR.d | ||
_aApplyRwc1 | extern(C) | rt/aApplyR.d | ||
_aApplyRwc2 | extern(C) | rt/aApplyR.d | ||
_aApplyRwd1 | extern(C) | rt/aApplyR.d | ||
_aApplyRwd2 | extern(C) | rt/aApplyR.d | ||
_aApplycd1 | extern(C) | rt/aApply.d | ||
_aApplycd2 | extern(C) | rt/aApply.d | ||
_aApplycw1 | extern(C) | rt/aApply.d | ||
_aApplycw2 | extern(C) | rt/aApply.d | ||
_aApplydc1 | extern(C) | rt/aApply.d | ||
_aApplydc2 | extern(C) | rt/aApply.d | ||
_aApplydw1 | extern(C) | rt/aApply.d | ||
_aApplydw2 | extern(C) | rt/aApply.d | ||
_aApplywc1 | extern(C) | rt/aApply.d | ||
_aApplywc2 | extern(C) | rt/aApply.d | ||
_aApplywd1 | extern(C) | rt/aApply.d | ||
_aApplywd2 | extern(C) | rt/aApply.d | ||
_d_allocmemory | extern(C) | rt/lifetime.d | ||
_d_array_bounds | extern(C) | rt/dmain2.d | ||
_d_arrayappendT | extern(C) | rt/lifetime.d | ||
_d_arrayappendcT | extern(C) | rt/lifetime.d | ||
_d_arrayappendcTX | extern(C) | rt/lifetime.d | ||
_d_arrayappendcd | extern(C) | rt/lifetime.d | ||
_d_arrayappendwd | extern(C) | rt/lifetime.d | ||
_d_arrayassign | extern(C) | rt/arrayassign.d | ||
_d_arraycast | extern(C) | rt/arraycast.d | ||
_d_arraycast_frombit | extern(C) | rt/arraycast.d | ||
_d_arraycatT | extern(C) | rt/lifetime.d | ||
_d_arraycatnT | extern(C) | rt/lifetime.d | ||
_d_arraycopy | extern(C) | rt/arraycat.d | ||
_d_arrayctor | extern(C) | rt/arrayassign.d | ||
_d_arrayliteralT | extern(C) | rt/lifetime.d | ||
_d_arrayliteralTX | extern(C) | rt/lifetime.d | ||
_d_arraysetassign | extern(C) | rt/arrayassign.d | ||
_d_arraysetctor | extern(C) | rt/arrayassign.d | ||
_d_arraysetlengthT | extern(C) | rt/lifetime.d | ||
_d_arraysetlengthiT | extern(C) | rt/lifetime.d | ||
_d_assert | extern(C) | rt/dmain2.d | ||
_d_assert_msg | extern(C) | rt/dmain2.d | ||
_d_assertm | extern(C) | rt/dmain2.d | ||
_d_callfinalizer | extern(C) | rt/lifetime.d | ||
_d_callinterfacefinalizer | extern(C) | rt/lifetime.d | ||
_d_cover_register | extern(C) | rt/cover.d | ||
_d_criticalenter | extern(C) | rt/critical_.d | ||
_d_criticalexit | extern(C) | rt/critical_.d | ||
_d_delarray | extern(C) | rt/lifetime.d | ||
_d_delarray_t | extern(C) | rt/lifetime.d | ||
_d_delclass | extern(C) | rt/lifetime.d | ||
_d_delinterface | extern(C) | rt/lifetime.d | ||
_d_delmemory | extern(C) | rt/lifetime.d | ||
_d_dynamic_cast | extern(C) | rt/cast_.d | ||
_d_hidden_func | extern(C) | rt/dmain2.d | ||
_d_interface_cast | extern(C) | rt/cast_.d | ||
_d_interface_vtbl | extern(C) | rt/cast_.d | ||
_d_monitor_epilog | extern(C) | rt/deh.d | ||
_d_monitor_handler | extern(C) | rt/deh.d | ||
_d_monitor_prolog | extern(C) | rt/deh.d | ||
_d_monitorenter | extern(C) | rt/deh.d | ||
_d_monitorexit | extern(C) | rt/deh.d | ||
_d_newarrayT | extern(C) | rt/lifetime.d | ||
_d_newarrayiT | extern(C) | rt/lifetime.d | ||
_d_newarraymT | extern(C) | rt/lifetime.d | ||
_d_newarraymTX | ??? | ??? | ||
_d_newarraymiT | extern(C) | rt/lifetime.d | ||
_d_newarraymiTX | ??? | ??? | ||
_d_newclass | extern(C) | rt/lifetime.d | ||
_d_newitemT | extern(C) | rt/lifetime.d | ||
_d_newitemiT | extern(C) | rt/lifetime.d | ||
_d_obj_cmp | extern(C) | rt/obj.d | ||
_d_obj_eq | extern(C) | rt/obj.d | ||
_d_switch_dstring | extern(C) | rt/switch_.d | ||
_d_switch_error | extern(C) | rt/dmain2.d | ||
_d_switch_string | extern(C) | rt/switch_.d | ||
_d_switch_ustring | extern(C) | rt/switch_.d |