Commit Graph

621 Commits

Author SHA1 Message Date
Tomas Lindquist Olsen
bcafbe169d Wrapped all the most potentially expensive logging calls in a conditional to only do work when actually requested.
Commented some logging calls that could potentially write out many megabytes of type dumps.
2008-10-01 18:32:31 +02:00
Tomas Lindquist Olsen
7b18b7a633 Implemented constant pointer casts (like casting function pointer to void* as a constant global initializer) 2008-09-28 21:09:21 +02:00
Tomas Lindquist Olsen
04f7c18f95 Removed some excessive llvm type logging 2008-09-28 15:22:39 +02:00
Christian Kamm
8645e103ef Simplify complex number handling. Fixes bug with complex substraction. 2008-09-22 20:29:18 +02:00
Christian Kamm
9ce414c174 Fix NegExp not to use substraction. 2008-09-21 19:28:57 +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
12c81a2ee3 Don't delete the header file after it has been generated! 2008-09-21 17:35:27 +02:00
Christian Kamm
4f7f53fa04 Add bool-special cases in tango.core.Atomic. 2008-09-21 17:23:17 +02:00
Christian Kamm
16c32afa18 Fix issue with EH table indices and nested try-catch. 2008-09-21 17:18:35 +02:00
Christian Kamm
bb47b7c4ce Backed out changeset 1b62222581fb
Do not use i8 for bool. Instead rely on the target to store i1 as i8.
2008-09-21 14:45:41 +02:00
Christian Kamm
4b02533745 Change bool type to i8 2008-09-20 10:13:15 +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
Tomas Lindquist Olsen
6c5c7ee1c1 Fixed the optimizer thing, since llvm PR 2800 is already fixed, users need to upgrade LLVM to latest svn. 2008-09-18 21:07:35 +02:00
Christian Kamm
441253b416 Add implementations for dmd intrinsics. Fixes #92. 2008-09-17 19:54:37 +02:00
Tomas Lindquist Olsen
1daa67ba50 Removed useless assert in ArrayLiteralExp::toConstElem
Added second verification pass after optimization
Commented an optimization pass out from lvl2, it turns the IR invalid, see llvm PR 2800
2008-09-16 16:06:39 +02:00
Christian Kamm
713a734d58 Make creating and deleting of doc and hdr files dependent on whether doc and
hdr files are to be generated.

Fixes html_empty_01,02
2008-09-16 09:00:05 +02:00
Christian Kamm
310cdb14bf Fix typo in ArrayLiteralExp::toConstElem. 2008-09-16 08:42:40 +02:00
Tomas Lindquist Olsen
56fed01c88 Fixed ArrayLiteralExp::toConstElem for dynamic arrays, tango-user library should now be possible to build. It seems to be related to DMD bug 2356, which must have been introduced recently, as we already handled this fine for ArrayInitializers, just not ArrayLiterals... Kinda annoying to have to do this work due to DMD bugs ... 2008-09-15 15:48:59 +02:00
Tomas Lindquist Olsen
c9242e3fbe Fixed DLRValue::getLType did not handle the lvalue being a LRValue itself properly. 2008-09-15 15:17:41 +02:00
Tomas Lindquist Olsen
be651d97b7 Fixed AddrExp might silently change the type of its value, but we weren't casting to compensate ... why doesn't DMD insert a cast? 2008-09-15 02:39:55 +02:00
Tomas Lindquist Olsen
4280a86bcf Fixed .funcptr property of delegates, no longer uses the infamous DMD rewrites to pointer arithmetic, instead a GEPExp has been introduced. 2008-09-15 02:04:26 +02:00
Christian Kamm
431bc19d2f To prevert source-overwriting in the future, forbit output files with the same
name as the source file.
2008-09-14 22:49:19 +02:00
Christian Kamm
151f86630c Fix path handling, hopefully. 2008-09-14 22:08:39 +02:00
Christian Kamm
eaa4ebd7aa Add broken .funcptr test. 2008-09-14 22:04:13 +02:00
Christian Kamm
cc568d6820 Fix output files being .d.bc. They're now .bc again. 2008-09-14 19:51:38 +02:00
Christian Kamm
857b89e3f4 Fix #88 : pragma(lib, "str") is now converted to -lstr in the linker command line. 2008-09-14 14:36:11 +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
d6e4f659e2 Allocate dynamic array literals on the heap. 2008-09-14 10:56:01 +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
Christian Kamm
e0635f1707 Allow VarDecl inside AttributeDecl inside DeclExp.
Fixes run/e/extern_10_D
2008-09-12 13:11:32 +02:00
Christian Kamm
e4ee8907cb Fix line number for error when trying to new a nested class without a context. 2008-09-12 12:48:16 +02:00
Christian Kamm
f0abdf860a Constant fold structliteral.member again. 2008-09-12 12:39:06 +02:00
Tomas Lindquist Olsen
bba1994b05 Fixed a few mini tests issues.
Added 'darwin' and 'Posix' as versions user can't set.
Fixed #80 .
2008-09-11 21:10:15 +02:00
Tomas Lindquist Olsen
d474fa027a Fixed most regressions from last commit. 2008-09-10 12:33:33 -07:00
Tomas Lindquist Olsen
8e9b957bce Complex number should now follow the D ABI on x86. They're also treated as first class values now. Big change. 2008-09-09 16:49:47 -07:00
Christian Kamm
4e0b6b4bf0 Make sure functions containing inline asm are never inlined to avoid
duplicated labels.
2008-09-08 20:38:55 +02:00
Tomas Lindquist Olsen
f411df11e3 Fixed choosing default target machine without needing to link in targets. 2008-09-07 17:44:25 -07:00
Christian Kamm
88f9ca75ad Don't link in any target code, was unnecessary. 2008-09-07 16:16:10 +02:00
Christian Kamm
640f21c493 Only link default native backend by default.
Use the new option --add-backend to link in additional targets.
2008-09-07 15:30:34 +02:00
Christian Kamm
d44f21687e Restructure path handling a bit. Fixes #66. 2008-09-06 12:27:27 +02: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
dde98f16f9 Add test for GC scanning data segment. 2008-09-04 17:59:01 +02:00
Tomas Lindquist Olsen
3a8125b7c8 Pointer comparisons were being treated as signed integers. Now they are handled as unsigned integers. 2008-09-04 17:24:10 +02:00
Tomas Lindquist Olsen
ee29f29659 Fixed pointer comparisons with differing types. 2008-09-04 17:17:40 +02:00
Tomas Lindquist Olsen
6bcf3c5126 merge 2008-09-04 17:05:51 +02:00
Tomas Lindquist Olsen
ccfa5218c3 merge 2008-09-04 17:05:35 +02:00
Christian Kamm
7e39328af4 Typo in runtime makefile. 2008-09-04 16:14:07 +02:00