Commit Graph

37 Commits

Author SHA1 Message Date
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
Tomas Lindquist Olsen
07cfb67178 Removed tango from the repository and instead added a runtime dir with the files needed to patch and build tango from svn.
Reworked the LLVMDC specific pragmas.
2008-08-01 00:32:06 +02:00