Commit graph

66 commits

Author SHA1 Message Date
Christian Kamm
d3de204732 Apply phobos patch by downs. 2008-12-17 18:20:45 +01:00
Christian Kamm
45fc733717 Renames. 2008-10-06 22:56:54 +02:00
Christian Kamm
a3a418150e Some missed LLVMDC -> LDC. 2008-10-06 22:54:08 +02:00
Christian Kamm
6eeeafdba6 First part of rename to LDC. 2008-10-06 22:46:55 +02:00
Tomas Lindquist Olsen
1fe1354a8a Applied downs' latest Phobos patch 2008-10-06 21:40:33 +02:00
Tomas Lindquist Olsen
323c45e768 Added missing llvmdc-build script in lphobos, added llvmdc.conf to lphobos. 2008-08-04 20:05:42 +02:00
Tomas Lindquist Olsen
641523be79 Added bash style rebuild to the lphobos dir 2008-08-04 20:01:36 +02:00
Tomas Lindquist Olsen
6fc52fd86b Removed old moduleinit_backend from lphobos it's useless now. 2008-08-04 19:38:59 +02:00
Tomas Lindquist Olsen
3f1767fd49 Applied downs' lphobos update 2008-08-04 19:28:49 +02:00
Tomas Lindquist Olsen
1742d02e54 [svn r211] Added readme in phobos dir. 2008-05-12 19:08:22 +02:00
Tomas Lindquist Olsen
bc08c6fcb1 [svn r135] * Merged DMD 1.025 *
* Fixed a minor linking order mishap *
* Added an command line option -annotate *
* Fixed some problems with running optimizations *
* Added std.stdio and dependencies to lphobos (still not 100% working, but compiles and links) *
* Fixed problems with passing aggregate types to variadic functions *
* Added initial code towards full GC support, currently based on malloc and friends, not all the runtime calls the GC yet for memory *
* Fixed problems with resolving nested function context pointers for some heavily nested cases *
* Redid function argument passing + other minor code cleanups, still lots to do on this end... *
2008-01-04 01:38:42 +01:00
Tomas Lindquist Olsen
4428e47a66 [svn r134] Merged the DMD 1.024 frontend.
Added std.base64.
2007-12-28 23:52:40 +01:00
Tomas Lindquist Olsen
0a226c956f [svn r131] Fixed #11
All associative array properties now work as they should.

Fixed problems with some cases of array.length and array.ptr.

Fixed some problems with array properties.

Fixed 'in' contracts.
2007-11-30 12:56:52 +01:00
Tomas Lindquist Olsen
32ebd9617e [svn r130] fixed #28 2007-11-28 05:04:38 +01:00
Tomas Lindquist Olsen
667b6339f3 [svn r127] Updated the lphobos build scripts a little. Created a new rebuild profile.
Removed some potentially very long logging lines.
Added support for inner classes.
2007-11-28 03:01:51 +01:00
Tomas Lindquist Olsen
0665531549 [svn r126] String switch is now implemented.
A few other fixes.
2007-11-27 09:19:07 +01:00
Tomas Lindquist Olsen
935dfae9c8 [svn r124] Fixed another D vararg + return in ptr bug.
Fixed some nested function calls failed to resolve the context ptr.
2007-11-26 07:26:21 +01:00
Tomas Lindquist Olsen
282f60e4a0 [svn r123] Fixed some typeinfo module name mismatches.
Fixed D-style varargs returning through pointer.
Fixed converting nested function to delegate.
Added std.string and std.format to Phobos.
2007-11-26 06:45:13 +01:00
Tomas Lindquist Olsen
e0176785c7 [svn r121] Finished ModuleInfo implementation.
Static ctors/dtors now work according to spec.
Changed class vtable types slightly in some cases. Overridden functions now always take the the type of the first class declaring the method as this parameter. This helps when using headers (w. implementation somewhere else)
2007-11-26 04:49:23 +01:00
Tomas Lindquist Olsen
cb37aab93b [svn r120] ModuleInfo implementation is now almost complete.
Fixed some nasty static array-initializer bugs.
Fixed bug in DtoArrayLen and DtoArrayPtr for full slices of static arrays.
2007-11-25 18:55:52 +01:00
Tomas Lindquist Olsen
b43f5729b0 [svn r117] Initial working implementation of interfaces.
Groundwork for all the different types of class/interface casts laid out.
2007-11-24 06:33:00 +01:00
Tomas Lindquist Olsen
d51e392b8d [svn r113] Added initial support for associative arrays (AAs).
Fixed some problems with the string runtime support functions.
Fixed initialization of array of structs.
Fixed slice assignment where LHS is slice but RHS is dynamic array.
Fixed problems with result of assignment expressions.
Fixed foreach problems with key type mismatches.
2007-11-21 04:13:15 +01:00
Tomas Lindquist Olsen
a807cbfc91 [svn r112] Fixed 'case 1,2,3:' style case statements.
Fixed a bunch of bugs with return/break/continue in loops.
Fixed support for the DMDFE hidden implicit return value variable. This can be needed for some foreach statements where the loop body is converted to a nested delegate, but also possibly returns from the function.
Added std.math to phobos.
Added AA runtime support code, done ground work for implementing AAs.
Several other bugfixes.
2007-11-20 05:29:20 +01:00
Tomas Lindquist Olsen
adab52fad9 [svn r111] Fixed most problems with complex number support and added typeinfo for them.
Added typeinfo ti_C.
Did some changes to the way expressions that have both lvalue and rvalue LLVM values are handled.
2007-11-20 00:02:35 +01:00
Tomas Lindquist Olsen
2af443b045 [svn r110] Fixed typeinfo for classes. 2007-11-19 06:01:48 +01:00
Tomas Lindquist Olsen
c99938debf [svn r106] Turns out the last commit wasn't enough, now the D->LLVM process is even more split up.
Basically it tries to do the following in order: Resolve types, Declare symbols, Create constant initializers, Apply initializers, Generate functions bodies.
ClassInfo is now has the most useful(biased?) members working.
Probably other stuf...
2007-11-18 06:52:57 +01:00
Tomas Lindquist Olsen
d1cfe9524c [svn r104] TONS OF FIXES.
Split up declaration, constant initializer gen and definition for globals, structs, classes and functions.
Improved ClassInfo support (not complete), not in vtable yet.
Fixed a bunch of forward reference problems.
Much more. Major commit! :)
2007-11-16 08:21:47 +01:00
Tomas Lindquist Olsen
302015d7e8 [svn r102] Further delayed emission of function bodies to avoid problems with circular-forward-references.
Now uses the DMD _adEq(void[], void[], TypeInfo) runtime function for array equality comparison.
2007-11-14 23:39:10 +01:00
Tomas Lindquist Olsen
46d8929fb6 [svn r101] Split up CastExp into several smaller utility functions. 2007-11-14 20:18:01 +01:00
Tomas Lindquist Olsen
3b4c818082 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
Added support for array .sort and .reverse properties.
Fixed some bugs with pointer arithmetic.
Disabled some DMD AST optimizations that was messing things up, destroying valuable information.
Added a KDevelop project file, this is what I use for coding LLVMDC now :)
Other minor stuff.
2007-11-12 06:32:46 +01:00
Tomas Lindquist Olsen
454f50ccbc [svn r96] Updated to DMD 1.023.
Regular bugfixes.
2007-11-08 19:13:28 +01:00
Tomas Lindquist Olsen
ea18cd8e75 [svn r95] added support for mains like:
T main(string[] args)
fixed a bug with slicing a pointer that is an argument with no storage
2007-11-07 04:52:56 +01:00
Tomas Lindquist Olsen
e7a17c2744 [svn r93] a few fixes, some phobos additions.
some very rough groundwork for moduleinfo and classinfo support
2007-11-07 02:45:47 +01:00
Tomas Lindquist Olsen
34d9e12020 [svn r92] Fixed support for statically initialized unions. lots of bugfixes as cleanups too. 2007-11-06 10:03:14 +01:00
Tomas Lindquist Olsen
3b2cb94f6e [svn r91] fixed some minor mistakes 2007-11-03 14:48:33 +01:00
Tomas Lindquist Olsen
48492229ec [svn r90] Major updates to the gen directory. Redesigned the 'elem' struct. Much more... !!!
Lots of bugfixes.
Added support for special foreach on strings.
Added std.array, std.utf, std.ctype and std.uni to phobos.
Changed all the .c files in the gen dir to .cpp (it *is* C++ after all)
2007-11-03 14:44:58 +01:00
Tomas Lindquist Olsen
9804fe0fa3 [svn r77] Fixed foreach on slice.
Fixed some nested function problems when accessing outer function parameters.
Major changes to handling of structs.
Initial support for unions.
Probably more...
2007-10-31 03:11:32 +01:00
Tomas Lindquist Olsen
4230f2ef11 [svn r76] Fixed: TypeInfo for structs.
Fixed: PostExp was unable to allocate storage for parameters.
Fixed: Many types of functions and delegates were broken.
Misc cleanups.
2007-10-29 03:28:12 +01:00
Tomas Lindquist Olsen
449db38d75 [svn r74] Fixed passing types with different alignment to D-style variadic functions.
Fixed casting integer to pointer.
2007-10-28 19:33:50 +01:00
Tomas Lindquist Olsen
49deafe227 [svn r69] forgot std.stdarg 2007-10-26 15:14:51 +02:00
Tomas Lindquist Olsen
498c442bc1 [svn r68] Added support for multi-dimensional static arrays.
Several bugfixes to array support.
2007-10-25 12:09:13 +02:00
Tomas Lindquist Olsen
1f13dbd766 [svn r66] Added support for imaginary floating point types 2007-10-25 09:48:36 +02:00
Tomas Lindquist Olsen
8e49b3c389 [svn r65] Added typeinfo implementations for float[], double[] and real[] 2007-10-25 09:26:17 +02:00
Tomas Lindquist Olsen
bed0a36018 [svn r64] ... 2007-10-25 09:16:05 +02:00
Tomas Lindquist Olsen
82c6cd6439 [svn r63] Forgot lphobos/typeinfo2 2007-10-25 09:04:00 +02:00
Tomas Lindquist Olsen
be330878c2 [svn r62] Added support for TypeInfo _Array, _Function, _Pointer, _Delegate, _Enum
Added initial support for CatExp aka 'a ~ b'
Fixed global constant static arrays initialized with string literals
Fixed casting any dynamic array to void*
Fixed new expression with temporary storage
Fixed alias declarations in function scope
Fixed relational comparisons of pointers
2007-10-25 09:02:55 +02:00
Tomas Lindquist Olsen
5478de7147 [svn r61] Added support for D-style variadic functions :) 2007-10-25 02:39:53 +02:00
Tomas Lindquist Olsen
152e229329 [svn r59] Added support for C-style variadic functions. Currently only works on x86, x86-64 va_arg is broken in LLVM 2.1. PPC and PPC64 unknown.
Updates to runtime. Rebuild!
2007-10-24 22:18:06 +02:00
Tomas Lindquist Olsen
039bc0880d [svn r58] Fixed cond expression resulting in a non-basic type.
Fixed identity expression for dynamic arrays.
Revamped the system to keep track of lvalues and rvalues and their relations.
Typedef declaration now generate the custom typeinfo.
Other bugfixes.
2007-10-24 01:37:34 +02:00
Tomas Lindquist Olsen
b72a4fa645 [svn r57] Added most basic TypeInfo (rebuild lphobos).
Fixed some SymOffExp bugs.
Added another typeinfo test case.
2007-10-23 07:16:02 +02:00