Commit graph

40585 commits

Author SHA1 Message Date
Sean Kelly
95429f1f56 Fixed 64-bit prototype for dirent_r routine. 2008-10-29 21:22:29 +00:00
Sean Kelly
31c28edd96 Added static data segment support to the new Runtime.loadLibrary() features. This also replaces static data segment scanning for all apps by dropping rt_scanStaticData() in favor of a new initialization step that calls gc_addRange() for each static data segment. The upshot of this is that all GCs must track add/remove Root and Range calls so the info can be passed to a proxy if gc_setProxy() is called. See src/gc/stub/gc.d for a simple implementation of this. 2008-10-29 00:15:37 +00:00
Sean Kelly
30c428a710 First attempt at support for dynamic library loading and unloading. Currently, only Windows is supported, and information on static data ranges still needs to be passed to the application GC (see "TODO" in gc/basic and gc/stub). 2008-10-27 22:15:16 +00:00
Sean Kelly
db1536183f Removed stdc directory. This was moved to core/stdc. 2008-10-27 22:08:29 +00:00
Sean Kelly
c55599d072 * Moved sys into core.sys
* Moved stdc.posix into core.sys.posix
* Moved stdc into core.stdc
* Added initial support for Runtime.loadLibrary() and Runtime.unloadLibrary() in D2.  The same functions are exposed in D1, but they are stubbed out for the moment.  The basic library loading and unloading should theoretically work, but the GC handle swapping code still needs a look, etc.  I left the D1 version stubbed out to make finding GC diffs easier for when I look at the handle swapping code (which is in D2 but not D1).  Still not sure about the function naming either... may just switch to load() and unload().
2008-10-25 00:15:55 +00:00
Sean Kelly
9840b16488 Changed pthread_cleanup to properly account for platform differences. core.thread should now build with freebsd. 2008-10-21 23:40:18 +00:00
Walter Bright
4740931234 enable generation of gcstub.obj 2008-10-20 20:51:32 +00:00
Walter Bright
aad3bb955c restored support for setting gc handle 2008-10-20 05:01:16 +00:00
Sean Kelly
867558c18b Fixed a few build script issues on posix, including a bug in looking for some of the core modules in the wrong place, and a hack to eliminate filename collision with the dmd compiler runtime. This latter issue really needs to be addressed in a better way, but at this point my priority is just to get the build working. 2008-10-17 03:06:32 +00:00
Sean Kelly
5cc64a1812 Changed Thread.sleep() to accept a long with a tick resolution of 100 nanoseconds. This closes #9 2008-10-16 20:54:55 +00:00
Sean Kelly
88d00e1b9b No longer default-initializing a buffer which is immediately set via a function call. 2008-10-16 20:46:34 +00:00
Sean Kelly
11bfb05bb2 * Changed top-level exception class name from 'Exception' to 'Throwable'.
* Created a new class 'Exception' which derives from 'Throwable'.
* Created a new class 'Error' which derives from 'Throwable'.
* Moved core modules from the top level into a package named 'core'.
* Added onHiddenFuncError() routine to pass hidden function error handling from the runtime to core.exception.
* Renamed _d_getErrno to getErrno and moved it to src/common/stdc.  The idea is that druntime may eventually generate a lib for the stdc modules, and this definition is necessary.  The comparable function will have to be removed from Phobos as well.
* Moved the GC code into a package named 'gc', which is in accordance with the spec defined for druntime library integration (as yet unpublished).
2008-10-15 21:33:55 +00:00
Walter Bright
a8ed90f6e1 fix support for file/line 2008-10-13 21:39:33 +00:00
Sean Kelly
4b405b1432 Fixed import path override for library build on posix. 2008-10-13 19:55:46 +00:00
Sean Kelly
335d3d0409 Fixed a potential issue with building druntime. src/core will now be a part of the import path. This is necessary if any of the core modules import one another--not the case now, but better safe than sorry. 2008-10-13 19:44:27 +00:00
Sean Kelly
a0886be68b Fixed a build error on Linux. 2008-10-13 19:38:22 +00:00
Walter Bright
b75e2fe2ca add hidden function error support 2008-10-13 17:19:53 +00:00
Walter Bright
c0c2474a40 update readme.txt 2008-10-13 00:47:05 +00:00
Walter Bright
eb91542f26 restored Object.factory() 2008-10-12 20:03:44 +00:00
Walter Bright
844127aa90 renamed output library 2008-10-12 19:53:43 +00:00
Walter Bright
1cf88e803c fix it so it compiles 2008-10-12 01:53:37 +00:00
Sean Kelly
840f10020b Added _d_delarray_t and _d_allocmemory. 2008-10-10 21:49:12 +00:00
Sean Kelly
faec8478df Added Error alias for Exception as a placeholder until the exception hierarchy can be finalized. This should facilitate a batch update later on. 2008-10-10 18:59:32 +00:00
Sean Kelly
4f95a7eb0f Merged in changes from Phobos SVN. 2008-10-10 18:57:31 +00:00
Sean Kelly
aa7daf8302 Fixed eol-style for all source files. This closes #1 2008-10-08 05:49:34 +00:00
Sean Kelly
581546cdbf Fixed a few mistakes regarding invariance, etc, between D1 and D2. 2008-10-06 19:41:05 +00:00
Sean Kelly
ca1ab9f200 Fixed a few mistakes regarding invariance, etc, between D1 and D2. 2008-10-06 19:39:07 +00:00
Sean Kelly
45827f65a7 Applied freebsd stdc changes from Tango. 2008-10-04 00:38:57 +00:00
Sean Kelly
dcec3ba1cb Added "invariant" module to fix link issues because DMD generates references to an extern (D) function it contains. Hopefully, this is only temporary and the routine will be made extern (C), thus allowing the use of "invariant_" instead. The rationale being that it's not a good thing to have modules with the same name as reserved words. 2008-09-30 19:50:33 +00:00
Sean Kelly
9392888eee Removed an errant lib file. 2008-09-23 03:30:11 +00:00
Sean Kelly
e5e25ae17f Applied all D2 changes to trunk. It should now be a fully functional D2 runtime. 2008-09-23 03:29:18 +00:00
Sean Kelly
1ff99272c7 Finished flattening D1/D2 differences. Except for one or two lines, all differences between the D1 and D2 runtimes is now strictly additive. 2008-09-23 03:21:04 +00:00
Sean Kelly
0a57c36dda The next batch of updates towards D2 support. The lib should be pretty close to compiling with D2 now, and the D2 runtime changes have been reduced to a compact set of pure additions (few/no alterations). Next update will be aimed at finishing the process of getting the lib to build with -w set under D2, which will mean adding "override" where necessary to the compiler runtime as well as figuring out how to deal with the use of 'volatile' in the thread code. 2008-09-20 02:53:43 +00:00
Sean Kelly
6837c0cd42 First commit of the D Runtime Project. This includes a fully functional runtime for DMD/D1. Support for DMD/D2 is next on the agenda. 2008-09-19 02:35:12 +00:00
root
c072c221d5 initial repository setup 2008-09-10 02:25:56 +00:00