Commit Graph

51 Commits

Author SHA1 Message Date
Tomas Lindquist Olsen
60cb084af7 Updated the Tango patch to latest revision. Removed problematic (Jarrett) include <cassert> from gen/runtime.cpp 2008-10-05 02:01:50 +02:00
Christian Kamm
40d0df8769 Portability changes to dmain2.d 2008-10-04 23:28:49 +02:00
Christian Kamm
35f6672bb6 Adjust dmain catch to print exception trace info. 2008-10-04 13:35:27 +02:00
Christian Kamm
2f9b9dead7 Make default argument protection check not error for undefined protection.
Fix symbol visibility issues in Tango.
2008-10-03 17:31:16 +02:00
Christian Kamm
920aa77e64 Fiber support: clobber the registers we want restored on a context switch. 2008-10-03 09:11:41 +02:00
Christian Kamm
8113935dea Made Fibers work with LLVMDC on x86 Posix. 2008-10-03 00:42:17 +02:00
Tomas Lindquist Olsen
d0c5df393c Applied the FreeBSD patch from Ralith, closes ticket #95 , slightly changed but basically the same. Thanx Ralith :) 2008-10-02 03:25:46 +02:00
Tomas Lindquist Olsen
e77e235307 updated tango patch so it compiles again with the latests check for using privates as default args for public functions. 2008-10-02 01:42:21 +02:00
Christian Kamm
656b89db0f Tango patch: xml document fixes and symbol visibility in gc 2008-10-01 19:19:26 +02:00
Christian Kamm
2f479df1b2 Fix atomicIncr and atomicDecr. Probably.
The unittest for tango.core.Atomic now passes.
2008-09-21 18:41:27 +02:00
Christian Kamm
4f7f53fa04 Add bool-special cases in tango.core.Atomic. 2008-09-21 17:23:17 +02:00
Christian Kamm
a81a6367b4 Tango rev 3939 fixed the std.intrinsic issue. 2008-09-19 21:45:05 +02:00
Tomas Lindquist Olsen
14e9384b23 Removed dmdintrinsic.d from the runtime, we already have llvmdc.bitmanip.
Updated tango patch to import tango.core.BitManip instead of std.intrinsic.
2008-09-18 21:14:37 +02:00
Christian Kamm
441253b416 Add implementations for dmd intrinsics. Fixes #92. 2008-09-17 19:54:37 +02:00
Christian Kamm
9c514a7afe Undid some of the previous changes: DtoArrayInit has issues with arrays
similar to T[n][].
2008-09-14 13:47:38 +02:00
Christian Kamm
30c9af1945 Add _d_newarrayvT and _d_newarraymvT to create arrays without initialization.
Adjust DtoNewDynArray to use DtoArrayInit for initialization of new arrays.
Make Type::tvoid->defaultInit() not error.
2008-09-14 10:13:50 +02:00
Tomas Lindquist Olsen
d474fa027a Fixed most regressions from last commit. 2008-09-10 12:33:33 -07:00
Christian Kamm
2f2987371f Basic support for runtime in shared library.
Needs to be built with runtime/build-sharedlibs.sh and activated manually by
providing -defaultlib=llvmdc-runtime-shared -defaultlib=tango-cc-tango-shared
-defaultlib=tango-gc-basic-shared on llvmdc call at the moment.

To support D shared libraries in non-D code, we need to remove the main() from
libllvmdc-runtime-shared.
2008-09-05 23:02:18 +02:00
Christian Kamm
a27b5c5684 Fix (?) rt_stackBottom for Windows. 2008-09-04 20:58:25 +02:00
Christian Kamm
e3691ffa19 Merge Dynamic_Ranges and Data_Proc_Maps from GDC runtime. 2008-09-04 18:57:03 +02:00
Christian Kamm
7e39328af4 Typo in runtime makefile. 2008-09-04 16:14:07 +02:00
Christian Kamm
3779b7c7d1 Split runtime into three parts again. 2008-09-03 22:07:04 +02:00
Tomas Lindquist Olsen
9310134dfc Ok. last fix was wrong, PTHREAD_MUTEX_RECURSIVE_NP is only valid on linux... 2008-08-29 16:59:12 +02:00
Tomas Lindquist Olsen
6b423621d2 The latest patch broke things for non OS X 2008-08-29 16:35:46 +02:00
Christian Kamm
01b6538f6f Make rt_stackBottom return the right fixed value for darwin. 2008-08-29 15:01:48 +02:00
Christian Kamm
3e5a20cf6b Merge rest of patch from #72. 2008-08-29 14:48:40 +02:00
Christian Kamm
ba21d60706 Enable unwind code on darwin. 2008-08-29 14:16:18 +02:00
Tomas Lindquist Olsen
24de69fa76 removed use on removed switches in gc makefile 2008-08-26 21:06:12 +02:00
Christian Kamm
e4a211838f Disable invariants for the gc. Makes collections not take ages again.
'Fixes' associative_array_19 by reducing runtime from a minute to a second.
2008-08-26 20:50:42 +02:00
Tomas Lindquist Olsen
fc08ace210 missing || __APPLE__ in monitor.c 2008-08-24 18:11:08 +02:00
Tomas Lindquist Olsen
f3269bf51e Gah, missed something still. I'll test properly next time ;) 2008-08-24 17:13:40 +02:00
Tomas Lindquist Olsen
6d2011394e Made a small mistake in the Tango patch 2008-08-24 17:11:02 +02:00
Christian Kamm
f183d7ce1d Automated merge with http://hg.dsource.org/projects/llvmdc 2008-08-24 17:02:03 +02:00
Christian Kamm
4e5cc8380f Don't use -u in build.sh; not all cp implementations support it. 2008-08-24 17:01:40 +02:00
Tomas Lindquist Olsen
b41a80cefc Reverted some changes in the Tango patch, splitting asm block is simply not supported by llvm. 2008-08-24 16:51:17 +02:00
Tomas Lindquist Olsen
fa6f277bdd merge 2008-08-21 15:35:39 +02:00
Tomas Lindquist Olsen
b5a54a5a1c Updated the tango patch, removed some now unnecessarily complex inline asm. 2008-08-21 15:35:24 +02:00
Christian Kamm
ef80c904dc Make class invariants work. 2008-08-21 15:19:45 +02:00
Tomas Lindquist Olsen
6c78396d11 Updated tango patch, with rewrittten Atomics using llvm atomic intrinsics. 2008-08-20 19:03:28 +02:00
Tomas Lindquist Olsen
5bf3e8911a Added support for overloaded intrinsics.
Added atomic intrinsics in the intrinsics.di header.
2008-08-20 01:02:22 +02:00
Tomas Lindquist Olsen
148534637e Removed debug info per default from the runtime makefiles, since llvm 2.4svn is currently buggy. 2008-08-12 00:20:04 +02:00
Tomas Lindquist Olsen
983a1b18a1 Fixed EH fatalerror printf'ing. 2008-08-10 22:05:30 +02:00
Christian Kamm
7d7c9059d3 Get rid of exception usage in exception handling code. 2008-08-10 21:57:29 +02:00
Christian Kamm
b3ce162a54 Elrood's proposed directory layout changes. 2008-08-10 18:35:27 +02:00
Tomas Lindquist Olsen
43567aca3b Fixed a critical bug in the runtime, where _d_allocmemoryT would mark
the memory block as having pointers (for scanning) opposite of what it
should. So pointers would not be seen and freed. Should fix a bunch of
regressions with AAs.
2008-08-10 17:28:01 +02:00
Tomas Lindquist Olsen
9d7f16b967 Added pragma(llvmdc, "string") for misc per-module compiler configuration, currently "string" can only be "verbose" which forces -vv for module it appears in.
Reimplemented support for nested functions/class using a new approach.
Added error on taking address of intrinsic.
Fixed problems with the ->syntaxCopy of TypeFunction delegate exp.
Removed DtoDType and replaced all uses with ->toBasetype() instead.
Removed unused inplace stuff.
Fixed a bunch of issues in the runtime unittests, not complete yet.
Added mini tests.
2008-08-10 08:37:38 +02:00
Christian Kamm
0613b47df9 Windows build changes proposed by Elrood. 2008-08-03 12:26:43 +02:00
Tomas Lindquist Olsen
18b376ba66 Added generation of the llvm 'sret' parameter attribute where applicable.
Fixed some wrong argument handling code when setting parameter attributes.
Updated the tango unittest script in the tango patch, does not work yet, all modules don't compile...
2008-08-02 02:54:57 +02:00
Tomas Lindquist Olsen
9b45fc5533 Changed the handling of variadic intrinsics a bit.
Removed the -fp80 option and made real be 80bit floats on X86, this is what the D spec really says it should be and fixes a bunch of issues.
Changed the handling of parameter attributes to a bit more generalized approach.
Added sext/zext attributes for byte/short/ubyte/ushort parameters, fixes #60 .
Parameter attribs now properly set for intrinsic calls if necessary.
Made the tango.math.Math patch less intrusive.
Fixed/added some mini tests.
2008-08-01 17:59:58 +02:00
Tomas Lindquist Olsen
858dd3e4fa Updated tango patch. tango.math.Math was incorrect. 2008-08-01 01:12:33 +02:00