Commit Graph
372 Commits
Author SHA1 Message Date
Alexey Prokhin cd732537e8 Fixed atomic_store and atomic_load instrinsics 2011-12-04 16:05:48 +04:00
Alexey Prokhin b8721a8515 Emit debug info for variables that are used in nested functions 2011-12-03 23:45:58 +04:00
Alexey Prokhin 1f3d9b98d0 Removed old hack for llvm 2.8, it is not required anymore 2011-12-03 14:20:54 +04:00
Alexey Prokhin 014d6bdd4d Merged 2.056 2011-12-02 21:50:52 +04:00
kai a5b3dd29b5 Fixes 2 kinds of warnings.
1) The last parameter of getGetElementPtr() has type bool. In some instances, a 2 is used as parameter. This is converted to true.
2) Several loops use int instead of unsigned. This causes warning about signed/unsigned mismatch.

Curiously, only Visual C++ complains about this. Nevertheless I think that the warnings should be fixed.
2011-11-23 19:01:04 +01:00
Alexey Prokhin 6ef7ee6d32 Unimplemented toConstElem is not a fatal error if errors are gagged.
Because ldc uses gagging to check whether an expression is constant.
2011-11-01 14:35:28 +04:00
Alexey Prokhin b52c224d57 Merge v2.056 2011-11-01 11:44:03 +04:00
Alexey Prokhin 7431d58702 Rewritten initialization of global variables. 2011-10-25 15:43:49 +04:00
Alexey Prokhin 45426ca60d Implemented atomic intrinsics for llvm 3.0
Unline older versions, llvm 3.0 provides atomic instructions, not intrinsics.
The patch wraps the instructions into intrinsics, so they will be accessible
from d code.
2011-10-25 15:43:49 +04:00
Alexey Prokhin 81426b8cc8 Fix DelegateExp::toElem return type 2011-10-25 15:43:49 +04:00
Alexey Prokhin 629f13929e WIP: port to llvm 3.0 2011-10-25 15:43:39 +04:00
Alexey Prokhin 4879a8bc17 Fixed initialization of nested structs 2011-09-13 21:01:39 +04:00
Alexey Prokhin 8f4a15c868 Fix ldc1 regressions 2011-09-10 13:24:29 +04:00
Alexey Prokhin f3c901af9d Use _d_arraycatT to append an element to an array instead of reallocating the array 2011-09-10 13:23:47 +04:00
David Nadlinger e397b29722 Fixed #448 for D2 and restored opOpAssign expression cache for D1.
When clearing the lvalue cache, the added-then-backed-out-then-added-back-for-D2-only code by Alexey permanently removed all casts from e1 (e1 is a member variable!), instead of only skipping them for the cachedLvalue assignment.
2011-07-28 23:10:22 +02:00
Alexey Prokhin 46c241009d Fixed a segfault when compiling fail_compilation/fail105.d 2011-07-23 14:06:59 +04:00
Alexey Prokhin edd1ed5b09 DMD issue 693 & 5946 - Allow using 'this' for alias template parameter 2011-07-19 19:43:05 +04:00
Alexey Prokhin 2cc34c4005 Call desctructors on temporary variables 2011-07-19 19:20:42 +04:00
Alexey Prokhin c470a715a0 DMD issue 1570 - Wrong return for address operator 2011-07-19 19:20:39 +04:00
Alexey Prokhin 99f5a73125 Allow nonconstants in associative array initializers 2011-07-19 10:14:15 +04:00
Alexey Prokhin 4210f4285a Fixed a few interpret regressions 2011-07-19 10:14:11 +04:00
Alexey Prokhin 6548ce2e79 Fix a crash in OrOrExp::toElem 2011-04-30 15:30:58 +04:00
Alexey Prokhin 8da0d673cf Rework vaarg support on X86_64 2011-04-30 15:30:57 +04:00
David Nadlinger 7a24e12736 Cleanup: Remove unused code in backend, silence some warnings.
This removed quite some clutter that has presumably piled up because LDC is seldom built with a lot of warnings enabled due to DMDFE.
2011-04-24 12:21:33 +02:00
Alexey Prokhin 6d89bfa961 Use _d_assocarrayliteralTX to initialize associative arrays. Replace depricated _d_arrayappendcT() by _d_arrayappendcTX(). Make sure that a l-value of a binassign expressions is only evaluated once (reapllied 1784 but only for D2) 2011-02-20 19:00:45 +03:00
Moritz Warning ec2ea65977 revert 1784 2011-01-11 03:20:35 +01:00
Alexey Prokhin 553d5518b3 Implemented casting of a global variable to a pointer in an initializer. Implemented adding to a pointer in an initializer 2011-01-08 13:01:54 +03:00
Alexey Prokhin cbd0296328 Implemented CommaExp::cacheLvalue(). Fixed CallExp::chackLvalue(). 2011-01-06 19:41:54 +03:00
Alexey Prokhin c5e9784863 Updated to dmdfe 2.051 2011-01-05 18:21:40 +03:00
Alexey Prokhin 1c59eed83a Check for lower slice bound when bounds checking is enabled 2011-01-03 16:50:08 +03:00
Alexey Prokhin fd52810f1a Fixed initialization of static arrays 2011-01-03 16:50:08 +03:00
Alexey Prokhin 47239d9058 Work on support for variadic arguments. Updated headers in druntime/import. 2011-01-02 19:14:52 +03:00
Alexey Prokhin 4b34601a79 Make sure that a l-value of a binassign expressions is only evaluated once. 2011-01-02 17:38:40 +03:00
Alexey Prokhin 023b55a772 Run postblit constructors for elements of an array. 2010-12-30 14:04:24 +03:00
Alexey Prokhin fbbb832187 Added suppport for custom allocators for structs. 2010-12-19 13:02:09 +03:00
Alexey Prokhin e7c880cd08 Store the right context frame in nested structs and classes. 2010-12-19 12:13:00 +03:00
Alexey Prokhin 7e6807b0df Fixed calling of _d_delmemory() and _d_delinterface() 2010-12-17 12:55:28 +03:00
Alexey Prokhin 349a6c1c3f Fixed calling of final methods of interfaces 2010-12-17 12:55:28 +03:00
Alexey Prokhin bb644d5c91 Fix for delegates.
The following code works correctly now:
auto dg = &super.virtualFunc();
2010-12-15 21:47:22 +03:00
Alexey Prokhin c47bfbcc32 Implemented mod operator for complex numbers 2010-12-15 20:30:38 +03:00
Alexey Prokhin 6d22dd7999 Updated to 2.050 2010-11-08 16:55:35 +03:00
Alexey Prokhin 59d1ec5e0b Another fix for nested context in structs. 2010-11-05 11:55:23 +03:00
Alexey Prokhin 20b2b4b7f5 Added missing calls of postBlit 2010-11-04 12:50:19 +03:00
Alexey Prokhin d7047f639e Rehash associative array right after its creating (DMD seems to be doing the same) 2010-11-03 19:46:19 +03:00
Alexey Prokhin 3943b2866b Fixed nested context for delegates initialized in structs and classes 2010-11-02 13:22:19 +03:00
Alexey Prokhin 2fe8635e5a Struct constructors are supported now 2010-11-02 13:22:10 +03:00
Alexey Prokhin 360a99caa9 Resolving nested context for structs.
* * *
Another fix for nested structs
* * *
Yet another fix for nested structs
2010-11-02 13:21:36 +03:00
Alexey Prokhin e3afcf8a8d Workaround for a bug in llvm 2.8 which appears only when all optimizations are off 2010-11-02 13:20:21 +03:00
Alexey Prokhin 24c92d3a7c CallExp::cacheLvalue is back 2010-10-30 20:51:31 +04:00
Eldar Insafutdinov f95fa16f58 fix compile errors 2010-10-29 22:58:11 +01:00