diff dmd/backend/RTLSYM.d @ 0:10317f0c89a5

Initial commit
author korDen
date Sat, 24 Oct 2009 08:42:06 +0400
parents
children 2cc604139636
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dmd/backend/RTLSYM.d	Sat Oct 24 08:42:06 2009 +0400
@@ -0,0 +1,101 @@
+module dmd.backend.RTLSYM;
+
+import dmd.backend.Symbol;
+
+enum RTLSYM
+{
+    RTLSYM_THROW,
+	RTLSYM_MONITOR_HANDLER,
+	RTLSYM_MONITOR_PROLOG,
+	RTLSYM_MONITOR_EPILOG,
+	RTLSYM_DCOVER,
+	RTLSYM_DASSERT,
+	RTLSYM_DASSERT_MSG,
+	RTLSYM_DARRAY,
+	RTLSYM_DINVARIANT,
+	RTLSYM__DINVARIANT,
+	RTLSYM_MEMCPY,
+	RTLSYM_MEMSET8,
+	RTLSYM_MEMSET16,
+	RTLSYM_MEMSET32,
+	RTLSYM_MEMSET64,
+	RTLSYM_MEMSET128,
+	RTLSYM_MEMSET80,
+	RTLSYM_MEMSET160,
+	RTLSYM_MEMSETN,
+	RTLSYM_MODULO,
+	RTLSYM_MONITORENTER,
+	RTLSYM_MONITOREXIT,
+	RTLSYM_CRITICALENTER,
+	RTLSYM_CRITICALEXIT,
+	RTLSYM_SWITCH_STRING,
+	RTLSYM_SWITCH_USTRING,
+	RTLSYM_SWITCH_DSTRING,
+	RTLSYM_DSWITCHERR,
+	RTLSYM_DHIDDENFUNC,
+	RTLSYM_NEWCLASS,
+	RTLSYM_NEWARRAYT,
+	RTLSYM_NEWARRAYIT,
+	RTLSYM_NEWARRAYMT,
+	RTLSYM_NEWARRAYMIT,
+	RTLSYM_ARRAYLITERALT,
+	RTLSYM_ASSOCARRAYLITERALT,
+	RTLSYM_CALLFINALIZER,
+	RTLSYM_CALLINTERFACEFINALIZER,
+	RTLSYM_DELCLASS,
+	RTLSYM_DELINTERFACE,
+	RTLSYM_ALLOCMEMORY,
+	RTLSYM_DELARRAY,
+	RTLSYM_DELARRAYT,
+	RTLSYM_DELMEMORY,
+	RTLSYM_INTERFACE,
+	RTLSYM_DYNAMIC_CAST,
+	RTLSYM_INTERFACE_CAST,
+	RTLSYM_FATEXIT,
+	RTLSYM_ARRAYCATT,
+	RTLSYM_ARRAYCATNT,
+	RTLSYM_ARRAYAPPENDT,
+	RTLSYM_ARRAYAPPENDCT,
+	RTLSYM_ARRAYSETLENGTHT,
+	RTLSYM_ARRAYSETLENGTHIT,
+	RTLSYM_ARRAYCOPY, 
+	RTLSYM_ARRAYASSIGN, 
+	RTLSYM_ARRAYCTOR, 
+	RTLSYM_ARRAYSETASSIGN, 
+	RTLSYM_ARRAYSETCTOR, 
+	RTLSYM_ARRAYCAST, 
+	RTLSYM_ARRAYCAST_FROMBIT, 
+	RTLSYM_ARRAYEQ, 
+	RTLSYM_ARRAYEQ2, 
+	RTLSYM_ARRAYEQBIT, 
+	RTLSYM_ARRAYCMP, 
+	RTLSYM_ARRAYCMP2, 
+	RTLSYM_ARRAYCMPCHAR, 
+	RTLSYM_ARRAYCMPBIT, 
+	RTLSYM_OBJ_EQ, 
+	RTLSYM_OBJ_CMP, 
+	RTLSYM_EXCEPT_HANDLER2, 
+	RTLSYM_EXCEPT_HANDLER3,  
+	RTLSYM_CPP_HANDLER, 
+	RTLSYM_D_LOCAL_UNWIND2,  
+	RTLSYM_TLS_INDEX, 
+	RTLSYM_TLS_ARRAY,    
+	RTLSYM_EXCEPT_LIST, 
+	RTLSYM_SETJMP3, 
+	RTLSYM_LONGJMP, 
+	RTLSYM_INTONLY, 
+	RTLSYM_ALLOCA, 
+	RTLSYM_CPP_LONGJMP, 
+	RTLSYM_PTRCHK, 
+	RTLSYM_CHKSTK, 
+	RTLSYM_TRACE_PRO_N, 
+	RTLSYM_TRACE_PRO_F, 
+	RTLSYM_TRACE_EPI_N, 
+	RTLSYM_TRACE_EPI_F,
+    RTLSYM_MAX
+}
+
+import dmd.EnumUtils;
+mixin(BringToCurrentScope!(RTLSYM));
+
+extern(C++) extern __gshared Symbol* rtlsym[RTLSYM.RTLSYM_MAX];
\ No newline at end of file