1 /** 2 * Compiler runtime function symbols 3 * 4 * Compiler implementation of the 5 * $(LINK2 https://www.dlang.org, D programming language). 6 * 7 * Copyright: Copyright (C) 1994-1998 by Symantec 8 * Copyright (C) 2000-2023 by The D Language Foundation, All Rights Reserved 9 * Authors: $(LINK2 https://www.digitalmars.com, Walter Bright) 10 * License: $(LINK2 https://www.boost.org/LICENSE_1_0.txt, Boost License 1.0) 11 * Source: https://github.com/dlang/dmd/blob/master/src/dmd/backend/_rtlsym.d 12 * Documentation: https://dlang.org/phobos/dmd_backend_rtlsym.html 13 */ 14 15 module dmd.backend.rtlsym; 16 17 import dmd.backend.cc : Symbol; 18 19 enum RTLSYM 20 { 21 THROWC, 22 THROWDWARF, 23 MONITOR_HANDLER, 24 MONITOR_PROLOG, 25 MONITOR_EPILOG, 26 DCOVER2, 27 DASSERT, 28 DASSERTP, 29 DASSERT_MSG, 30 DUNITTEST, 31 DUNITTESTP, 32 DUNITTEST_MSG, 33 DARRAYP, 34 DARRAY_SLICEP, 35 DARRAY_INDEXP, 36 DINVARIANT, 37 MEMCPY, 38 MEMSET8, 39 MEMSET16, 40 MEMSET32, 41 MEMSET64, 42 MEMSET128, 43 MEMSET128ii, 44 MEMSET80, 45 MEMSET160, 46 MEMSETFLOAT, 47 MEMSETDOUBLE, 48 MEMSETSIMD, 49 MEMSETN, 50 NEWCLASS, 51 NEWTHROW, 52 NEWARRAYT, 53 NEWARRAYIT, 54 NEWITEMT, 55 NEWITEMIT, 56 NEWARRAYMTX, 57 NEWARRAYMITX, 58 ARRAYLITERALTX, 59 ASSOCARRAYLITERALTX, 60 CALLFINALIZER, 61 CALLINTERFACEFINALIZER, 62 ALLOCMEMORY, 63 DYNAMIC_CAST, 64 INTERFACE_CAST, 65 ARRAYCATT, 66 ARRAYCATNTX, 67 ARRAYAPPENDT, 68 ARRAYAPPENDCTX, 69 ARRAYAPPENDCD, 70 ARRAYAPPENDWD, 71 ARRAYSETLENGTHT, 72 ARRAYSETLENGTHIT, 73 ARRAYCOPY, 74 ARRAYASSIGN, 75 ARRAYASSIGN_R, 76 ARRAYASSIGN_L, 77 ARRAYSETASSIGN, 78 ARRAYEQ2, 79 AANEW, 80 AAEQUAL, 81 AAINX, 82 AADELX, 83 AAGETY, 84 AAGETRVALUEX, 85 86 EXCEPT_HANDLER3, 87 CPP_HANDLER, 88 D_HANDLER, 89 D_LOCAL_UNWIND2, 90 LOCAL_UNWIND2, 91 UNWIND_RESUME, 92 PERSONALITY, 93 BEGIN_CATCH, 94 CXA_BEGIN_CATCH, 95 CXA_END_CATCH, 96 97 TLS_INDEX, 98 TLS_ARRAY, 99 AHSHIFT, 100 101 HDIFFN, 102 HDIFFF, 103 INTONLY, 104 105 EXCEPT_LIST, 106 SETJMP3, 107 LONGJMP, 108 ALLOCA, 109 CPP_LONGJMP, 110 PTRCHK, 111 CHKSTK, 112 TRACE_PRO_N, 113 TRACE_PRO_F, 114 TRACE_EPI_N, 115 TRACE_EPI_F, 116 117 TRACENEWCLASS, 118 TRACENEWARRAYT, 119 TRACENEWARRAYIT, 120 TRACENEWARRAYMTX, 121 TRACENEWARRAYMITX, 122 TRACENEWITEMT, 123 TRACENEWITEMIT, 124 TRACECALLFINALIZER, 125 TRACECALLINTERFACEFINALIZER, 126 TRACEARRAYLITERALTX, 127 TRACEASSOCARRAYLITERALTX, 128 TRACEARRAYCATT, 129 TRACEARRAYCATNTX, 130 TRACEARRAYAPPENDT, 131 TRACEARRAYAPPENDCTX, 132 TRACEARRAYAPPENDCD, 133 TRACEARRAYAPPENDWD, 134 TRACEARRAYSETLENGTHT, 135 TRACEARRAYSETLENGTHIT, 136 TRACEALLOCMEMORY, 137 138 C_ASSERT, 139 C__ASSERT, 140 C__ASSERT_FAIL, 141 C__ASSERT_RTN, 142 143 CXA_ATEXIT 144 } 145 146 @safe: 147 148 public import dmd.backend.drtlsym : getRtlsym, getRtlsymPersonality;