Commit Graph
410 Commits
Author SHA1 Message Date
Christian Kamm 4b02533745 Change bool type to i8 2008-09-20 10:13:15 +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
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 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 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
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 d44f21687e Restructure path handling a bit. Fixes #66. 2008-09-06 12:27:27 +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
Christian Kamm d6e7a65b69 Automated merge with http://hg.dsource.org/projects/llvmdc 2008-09-02 19:14:37 +02:00
Christian Kamm 877da230a3 Get rid of runtime path. Allow defaultlib and debuglib switches to be given multiple times. 2008-09-02 19:14:25 +02:00
Tomas Lindquist Olsen 1565f00f85 Fixed toobj.cpp to compile with latest LLVM, seems a method overload was removed recently. 2008-08-31 18:38:16 +02:00
Christian Kamm 8efe20f5f9 Link in pthread, dl and m on OS X. 2008-08-29 14:11:20 +02:00
Christian Kamm b2b013d929 Always call finalizer for stack classes. Checking for the number of
destructors of the class type is not sufficient: we may be holding a derived
class with a destructor.

Fixes: run/auto_07
2008-08-28 20:17:21 +02:00
Christian Kamm 0f92afc5b9 Do not assert on non-existing supposed globals. (see nocompile/union_12,14) 2008-08-28 20:15:36 +02:00
Tomas Lindquist Olsen d78677961b Removed D_InlineAsm and D_InlineAsm_X86 versions.
Made use of 'naked' in inline asm an error.
2008-08-25 19:36:27 +02:00
Christian Kamm f183d7ce1d Automated merge with http://hg.dsource.org/projects/llvmdc 2008-08-24 17:02:03 +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
Christian Kamm 72a2db6d7c Get rid of isLinux and isWindows in favor of global.params.os. 2008-08-24 16:22:58 +02:00
Christian Kamm ef80c904dc Make class invariants work. 2008-08-21 15:19:45 +02:00
Tomas Lindquist Olsen 2e1a2bfe4a Fixed problem with parameterized intrinsics taking bools. 2008-08-20 19:01:56 +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 3346a78e71 First step towards D abi compliance.
Framepointer elimination is now disabled for functions using inline asm (with a hack from aKor).
2008-08-19 20:18:01 +02:00
Christian Kamm 9caf74c59b Fix binops change for OpAssign. 2008-08-17 13:16:35 +02:00
Christian Kamm 521a988e43 Binary ops had the wrong result type for real op imaginary.
Fixes:
run/creal_03
2008-08-17 12:21:53 +02:00
Christian Kamm d0fec06c7d Abstract functions may have bodies.
Fixes:
run/a/abstract_17_A,B
2008-08-17 11:39:36 +02:00
Christian Kamm fe9b2b7efc Fix TypeInfo_Tuple array initialization.
Fixes:
mini/emptytuple.d
2008-08-16 19:29:56 +02:00
Christian Kamm 6a81f7e66f Do not need to allocate temporary for function literal. 2008-08-16 14:01:23 +02:00
Christian Kamm 7a535a1798 Fix function literals. They never carry a context.
Fixes:
run/f/foreach_36_A
2008-08-16 13:33:37 +02:00
Christian Kamm 981da466b7 Don't assert on empty foreach body.
Fixes:
run/f/foreach_28_B
2008-08-16 12:38:53 +02:00
Christian Kamm e5568d62af Prevent cast error for cast(void) around expression statements.
Fixes:
run/e/ExpressionStatement_10_A
2008-08-16 12:32:22 +02:00
Christian Kamm ceb292ed85 Fix continue inside dowhile statements.
Fixes:
run/do_while_02
2008-08-16 11:19:34 +02:00
Christian Kamm 406cefb53f Fix delegate equality.
Fixes:
mini/delegate.d
run/d/delegate_17_A
2008-08-16 10:48:25 +02:00
Christian Kamm 60617d5444 Add interface comparison to EqualExp: just do pointer comparison.
Fixes run/b/bug_e2ir_1786_B,C.
2008-08-15 22:41:47 +02:00
Tomas Lindquist Olsen 2b2291952c Fixed problem when instantiating a template with private global variables. 2008-08-15 05:08:33 +02:00
Christian Kamm c31d07e23f Reverted bad change [506]. Added test case for remaining bug. 2008-08-13 23:54:09 +02:00
Christian Kamm 53f8542719 Got rid of improper static array compile time index check.
It had caused tango.core.Variant to fail to compile.
2008-08-13 22:31:46 +02:00