Commit Graph

40 Commits

Author SHA1 Message Date
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
Tomas Lindquist Olsen
5fee3fc8b7 [svn r56] Initial support for TypeInfo.
Enums not work.
Several other bugfixes.
2007-10-23 05:55:12 +02:00
Tomas Lindquist Olsen
817c05be2b [svn r46] fix for shift operations
added a simple opengl binding in demos
2007-10-19 15:16:11 +02:00
Tomas Lindquist Olsen
10db08076c [svn r44] Lots of bug fixes.
New array literal support
New array ~= operator support (for single element)
New with statement support
More...
2007-10-19 07:43:21 +02:00
Tomas Lindquist Olsen
67a92f5d51 [svn r41] new'd dynamic arrays are now initialized with the element type's default initializer.
initial label/goto support.
2007-10-10 03:38:24 +02:00
Tomas Lindquist Olsen
e251fc42b2 [svn r39] * Updated to DMD 1.022 with the exception of:
Bugzilla 278: dmd.conf search path doesn't work

This fix was causing crashes for me :/ So for it's the old behaviour
2007-10-09 06:21:30 +02:00
Tomas Lindquist Olsen
3db5b9bb98 [svn r38] * resizing dynamic arrays support
* throw is replaced with assert(0)
* catch is ignored
* better foreach support
* various bugfixes
2007-10-09 02:50:00 +02:00
Tomas Lindquist Olsen
56d2cff2a2 [svn r35] * Attributes on struct fields/methods now work
* Updated object.d to 1.021
* Added -novalidate command line option. this is sometimes useful when debugging as it may let you read the .ll even if it's invalid.
2007-10-04 16:44:07 +02:00
Tomas Lindquist Olsen
53038b0f5e [svn r27] * Fixed bug in aggregate field lookup.
* Fixed structs with no fields.
* Added support for NegExp as in -x.
2007-10-04 09:24:15 +02:00
Tomas Lindquist Olsen
0ba16ebb39 [svn r26] * Fixed templates defining a constant value
* Fixed problem with slice-slice copy assignment if a side was a temporary slice
2007-10-04 07:35:02 +02:00
Tomas Lindquist Olsen
879d2f10be [svn r25] * Fixed a lot of problems with string literals
* Fixed slice-slice copying assignment
2007-10-04 07:01:15 +02:00
Tomas Lindquist Olsen
49707be82d [svn r24] * Added a simple std.traits by downs 2007-10-04 04:28:30 +02:00
Tomas Lindquist Olsen
8004219a69 [svn r22] * Forgot to add std.stdio 2007-10-04 01:47:53 +02:00
Tomas Lindquist Olsen
8d542addd9 [svn r20] * Added a simple compiletime std.stdio by downs
* Added a simple lphobos of std.stdio (so far)
* 'tester.sh run' now links to lphobos
2007-10-03 05:41:15 +02:00
Tomas Lindquist Olsen
4eab68b36c [svn r15] * Fixed a bunch problems with virtual calls. Seems I did some rather poor testing.
* Now 50/51 tests compile.
* Added a simple runalltests.d scripts that should be run with 'gdmd -run runalltests.d' - LLVMDC will not compile it yet.
2007-10-02 05:10:18 +02:00
Tomas Lindquist Olsen
e95466cb64 [svn r13] * Updated for LLVM 2.1
* Class v-tables are now typesafe
* Code cleanups
2007-10-01 21:19:53 +02:00
Tomas Lindquist Olsen
34699bbb07 [svn r5] Initial commit. Most things are very rough. 2007-09-01 21:43:27 +02:00