Commit Graph

  • f420bc1265 [svn r132] Added some tests. some will fail at the moment. Tomas Lindquist Olsen 2007-11-30 17:12:08 +01:00
  • 0a226c956f [svn r131] Fixed #11 Tomas Lindquist Olsen 2007-11-30 12:56:52 +01:00
  • 32ebd9617e [svn r130] fixed #28 Tomas Lindquist Olsen 2007-11-28 05:04:38 +01:00
  • 5ab2166b05 [svn r129] Started AA literals. Fixed #15, passing -O will now invoke the optimizer before writing bitcode. Tomas Lindquist Olsen 2007-11-28 04:52:35 +01:00
  • c4d1ae5d54 [svn r128] function local typedefs were not working Tomas Lindquist Olsen 2007-11-28 03:34:37 +01:00
  • 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. Tomas Lindquist Olsen 2007-11-28 03:01:51 +01:00
  • 0665531549 [svn r126] String switch is now implemented. A few other fixes. Tomas Lindquist Olsen 2007-11-27 09:19:07 +01:00
  • ea362d8402 [svn r125] Renamed/moved a few backend member inside DMD structures for consistency. Unit tests are now implemented. Tomas Lindquist Olsen 2007-11-27 03:09:36 +01:00
  • 935dfae9c8 [svn r124] Fixed another D vararg + return in ptr bug. Fixed some nested function calls failed to resolve the context ptr. Tomas Lindquist Olsen 2007-11-26 07:26:21 +01:00
  • 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. Tomas Lindquist Olsen 2007-11-26 06:45:13 +01:00
  • 26beb7f43d [svn r122] Fixed temporary delegates can now alloca their own storage. Tomas Lindquist Olsen 2007-11-26 05:50:33 +01:00
  • 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) Tomas Lindquist Olsen 2007-11-26 04:49:23 +01:00
  • 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. Tomas Lindquist Olsen 2007-11-25 18:55:52 +01:00
  • c08b0918cc [svn r119] Added the monitor data field that comes after the vtable pointer to all classes. Represented as a void* initialized to zero. Tomas Lindquist Olsen 2007-11-25 03:58:55 +01:00
  • 541a677a54 [svn r118] Fixed dynamic casts. Fixed a few interface bugs. Tomas Lindquist Olsen 2007-11-25 00:19:13 +01:00
  • b43f5729b0 [svn r117] Initial working implementation of interfaces. Groundwork for all the different types of class/interface casts laid out. Tomas Lindquist Olsen 2007-11-24 06:33:00 +01:00
  • 0a8ff5931a [svn r116] Implemented the ClassInfo.destructor field. Tomas Lindquist Olsen 2007-11-22 22:30:10 +01:00
  • ccaf229830 [svn r115] Implemented the ClassInfo.defaultConstructor member. Tomas Lindquist Olsen 2007-11-22 21:17:54 +01:00
  • be1fcd6a24 [svn r114] Implemented the ClassInfo.offTi member. Tomas Lindquist Olsen 2007-11-22 21:01:01 +01:00
  • 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. Tomas Lindquist Olsen 2007-11-21 04:13:15 +01:00
  • 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. Tomas Lindquist Olsen 2007-11-20 05:29:20 +01:00
  • 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. Tomas Lindquist Olsen 2007-11-20 00:02:35 +01:00
  • 2af443b045 [svn r110] Fixed typeinfo for classes. Tomas Lindquist Olsen 2007-11-19 06:01:48 +01:00
  • b347fd8a50 [svn r109] Fixed support for static array TypeInfo Tomas Lindquist Olsen 2007-11-19 03:39:46 +01:00
  • 5e9f5034ff [svn r108] Now basic suppport for complex types. =,+,-,*,/ are supported. Tomas Lindquist Olsen 2007-11-19 02:58:58 +01:00
  • 6da09c01b3 [svn r107] Getting .classinfo on a class instance now works (classinfo is stored in vtable) Tomas Lindquist Olsen 2007-11-18 08:25:07 +01:00
  • 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... Tomas Lindquist Olsen 2007-11-18 06:52:57 +01:00
  • 1c4cfc21ac [svn r105] -inline does nothing for now, the -On setting can already be used to trigger it. Fixed a rare bug in AddrExp. Tomas Lindquist Olsen 2007-11-16 10:01:24 +01:00
  • 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! :) Tomas Lindquist Olsen 2007-11-16 08:21:47 +01:00
  • 7d6bbcd87d [svn r103] Array comparisons are now fully implemented, that is - to the extent that TypeInfo is. Tomas Lindquist Olsen 2007-11-15 00:24:44 +01:00
  • 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. Tomas Lindquist Olsen 2007-11-14 23:39:10 +01:00
  • 46d8929fb6 [svn r101] Split up CastExp into several smaller utility functions. Tomas Lindquist Olsen 2007-11-14 20:18:01 +01:00
  • feff45cadd [svn r100] Moved test/ray.d to demos/ray.d. Cleanups. Tomas Lindquist Olsen 2007-11-12 07:58:44 +01:00
  • e39beb1ad9 [svn r99] Removed the ray demo. it's in test already (and not broken there) Tomas Lindquist Olsen 2007-11-12 06:43:33 +01:00
  • 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. Tomas Lindquist Olsen 2007-11-12 06:32:46 +01:00
  • b32e04cacd [svn r97] Fixed bug with main(string[] args) on 32 bit systems. 64bit worked. Tomas Lindquist Olsen 2007-11-08 19:21:05 +01:00
  • 454f50ccbc [svn r96] Updated to DMD 1.023. Regular bugfixes. Tomas Lindquist Olsen 2007-11-08 19:13:28 +01:00
  • 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 Tomas Lindquist Olsen 2007-11-07 04:52:56 +01:00
  • 4a5659c04e [svn r94] started on complex support calling final class methods was being treated as a virtual call failing an assertion. Tomas Lindquist Olsen 2007-11-07 03:36:07 +01:00
  • e7a17c2744 [svn r93] a few fixes, some phobos additions. some very rough groundwork for moduleinfo and classinfo support Tomas Lindquist Olsen 2007-11-07 02:45:47 +01:00
  • 34d9e12020 [svn r92] Fixed support for statically initialized unions. lots of bugfixes as cleanups too. Tomas Lindquist Olsen 2007-11-06 10:03:14 +01:00
  • 3b2cb94f6e [svn r91] fixed some minor mistakes Tomas Lindquist Olsen 2007-11-03 14:48:33 +01:00
  • 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) Tomas Lindquist Olsen 2007-11-03 14:44:58 +01:00
  • 1b867a0588 [svn r89] Fixed a bunch of problems with template instance across multiple modules. Fixed initialization of function local static variables, with a non const initializer (now happens on first call using a global to make sure it only happens once.) Tomas Lindquist Olsen 2007-11-02 06:32:32 +01:00
  • 3e3579da22 [svn r88] fixed global given initializers when they don't deserve Tomas Lindquist Olsen 2007-11-02 02:27:41 +01:00
  • 6cdf99f01e [svn r87] Fixed some memory bloat when passing string literals as char[] params (double temporary before) Tomas Lindquist Olsen 2007-11-02 02:03:13 +01:00
  • d58ce84169 [svn r86] Changed the way arguments are given storage. It is now detected if they will need it during semantic passes. Initial support for debug information. Very limited, but MUCH better than nothing :) Tomas Lindquist Olsen 2007-11-02 01:17:26 +01:00
  • 6bb534fb2a [svn r85] Fixed: if a return statement appeared in the try block of a nested try-finally, only the inner-most finally block would be executed. Changed: Renamed all the LLVM_Dto... helper function to just Dto... Tomas Lindquist Olsen 2007-11-01 17:27:18 +01:00
  • 947bba2b48 [svn r84] Fixed: Returning from a void function from inside the try of a try-finally block was broken. Tomas Lindquist Olsen 2007-10-31 22:35:39 +01:00
  • 44d2104eec [svn r83] Fixed: Returning a struct from within the try block of a try-finally was broken. Tomas Lindquist Olsen 2007-10-31 22:20:19 +01:00
  • d8f021d63f [svn r82] Fixed: Fall-through switch cases were broken. Tomas Lindquist Olsen 2007-10-31 20:50:21 +01:00
  • 0979d55d26 [svn r81] Fixed: Union support was very buggy. Should be fairly solid now. Tomas Lindquist Olsen 2007-10-31 09:34:18 +01:00
  • fcdb174faf [svn r80] Fixed union literals Tomas Lindquist Olsen 2007-10-31 07:24:02 +01:00
  • 0e0d7eca12 [svn r79] Updated the rebuild profile to link bitcode libraries with -lib Tomas Lindquist Olsen 2007-10-31 04:55:48 +01:00
  • 21e50af2c0 [svn r78] Removed the useless pragmas Tomas Lindquist Olsen 2007-10-31 04:05:38 +01:00
  • 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... Tomas Lindquist Olsen 2007-10-31 03:11:32 +01:00
  • 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. Tomas Lindquist Olsen 2007-10-29 03:28:12 +01:00
  • 848ecbed0d [svn r75] Fixed the init member in custom enum typeinfo. I don't see any way this could actually need emmision though :/ Tomas Lindquist Olsen 2007-10-28 19:48:57 +01:00
  • 449db38d75 [svn r74] Fixed passing types with different alignment to D-style variadic functions. Fixed casting integer to pointer. Tomas Lindquist Olsen 2007-10-28 19:33:50 +01:00
  • 58b6fc972a [svn r73] Identity expression for dynamic array and null was broken. Tomas Lindquist Olsen 2007-10-28 04:23:38 +01:00
  • b5433b6054 [svn r72] Calling a nested function that is not a delegate was not working. Tomas Lindquist Olsen 2007-10-28 03:14:29 +01:00
  • feea94424c [svn r71] Fixed accessing parent function arguments from inside nested delegates. Some cleanups in VarExp::toElem. Tomas Lindquist Olsen 2007-10-28 02:46:06 +02:00
  • a5d3910b57 [svn r70] Fixed bug where correct calling convention was not set on calling aggregate methods Tomas Lindquist Olsen 2007-10-28 02:03:42 +02:00
  • 49deafe227 [svn r69] forgot std.stdarg Tomas Lindquist Olsen 2007-10-26 15:14:51 +02:00
  • 498c442bc1 [svn r68] Added support for multi-dimensional static arrays. Several bugfixes to array support. Tomas Lindquist Olsen 2007-10-25 12:09:13 +02:00
  • 1dcad1c62d [svn r67] Fixed ignore unittests instead of failing to compile Tomas Lindquist Olsen 2007-10-25 10:05:21 +02:00
  • 1f13dbd766 [svn r66] Added support for imaginary floating point types Tomas Lindquist Olsen 2007-10-25 09:48:36 +02:00
  • 8e49b3c389 [svn r65] Added typeinfo implementations for float[], double[] and real[] Tomas Lindquist Olsen 2007-10-25 09:26:17 +02:00
  • bed0a36018 [svn r64] ... Tomas Lindquist Olsen 2007-10-25 09:16:05 +02:00
  • 82c6cd6439 [svn r63] Forgot lphobos/typeinfo2 Tomas Lindquist Olsen 2007-10-25 09:04:00 +02:00
  • 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 Tomas Lindquist Olsen 2007-10-25 09:02:55 +02:00
  • 5478de7147 [svn r61] Added support for D-style variadic functions :) Tomas Lindquist Olsen 2007-10-25 02:39:53 +02:00
  • e92b027299 [svn r60] fixed vararg1 test Tomas Lindquist Olsen 2007-10-24 22:26:37 +02:00
  • 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! Tomas Lindquist Olsen 2007-10-24 22:18:06 +02:00
  • 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. Tomas Lindquist Olsen 2007-10-24 01:37:34 +02:00
  • b72a4fa645 [svn r57] Added most basic TypeInfo (rebuild lphobos). Fixed some SymOffExp bugs. Added another typeinfo test case. Tomas Lindquist Olsen 2007-10-23 07:16:02 +02:00
  • 5fee3fc8b7 [svn r56] Initial support for TypeInfo. Enums not work. Several other bugfixes. Tomas Lindquist Olsen 2007-10-23 05:55:12 +02:00
  • 2c99df8deb [svn r55] Foreach was always generating code as if the value variable was 'ref' Other not-so-major improvements Tomas Lindquist Olsen 2007-10-22 17:25:44 +02:00
  • a9189bd3a9 [svn r54] Added support for nested delegates referencing parent's stack variables. Replaced tester.sh with a version written in D. A few bugfixes. Tomas Lindquist Olsen 2007-10-22 15:40:56 +02:00
  • f16a0c35b5 [svn r53] added basic support for delegate literals. if you access outer variables you get a broken module Tomas Lindquist Olsen 2007-10-19 17:43:46 +02:00
  • 6445254a7b [svn r52] fixed static arrays in struct literals Tomas Lindquist Olsen 2007-10-19 17:15:30 +02:00
  • cca32e4efd [svn r51] dynamic array members in struct literals was broken Tomas Lindquist Olsen 2007-10-19 17:00:35 +02:00
  • 114f4bd0a5 [svn r50] Tomas Lindquist Olsen 2007-10-19 16:37:34 +02:00
  • 0248873a79 [svn r49] foreach on dynamic arrays Tomas Lindquist Olsen 2007-10-19 16:37:15 +02:00
  • b008e187bb [svn r48] fixed some storage problems Tomas Lindquist Olsen 2007-10-19 16:05:06 +02:00
  • 7a9434e3b6 [svn r47] fixed a problem with gdc 4.1 Tomas Lindquist Olsen 2007-10-19 15:26:09 +02:00
  • 817c05be2b [svn r46] fix for shift operations added a simple opengl binding in demos Tomas Lindquist Olsen 2007-10-19 15:16:11 +02:00
  • 795b3bfd20 [svn r45] Added a modified version of scrapple.qd (by downs) to the demos dir. It doesn't compile yet though :( Tomas Lindquist Olsen 2007-10-19 07:45:35 +02:00
  • 10db08076c [svn r44] Lots of bug fixes. New array literal support New array ~= operator support (for single element) New with statement support More... Tomas Lindquist Olsen 2007-10-19 07:43:21 +02:00
  • bc02cdd5cf [svn r43] Fixed the rebuild profile to be able to build sdldemo1. Tomas Lindquist Olsen 2007-10-10 06:21:31 +02:00
  • 52a6e71703 [svn r42] Disabled the extensive logging by default. Use the -vv flag to get it back. Fiddled a bit the the testing system. Added a very simple SDL graphics demo. Tomas Lindquist Olsen 2007-10-10 06:16:48 +02:00
  • 67a92f5d51 [svn r41] new'd dynamic arrays are now initialized with the element type's default initializer. initial label/goto support. Tomas Lindquist Olsen 2007-10-10 03:38:24 +02:00
  • 4fdad2c750 [svn r40] Cleaned up some of the array routines to use gep/load/store instead of memcpy/memset. Resizing arrays did not allocate enough memory for types bigger than 1 byte. Tomas Lindquist Olsen 2007-10-09 07:51:13 +02:00
  • e251fc42b2 [svn r39] * Updated to DMD 1.022 with the exception of: Tomas Lindquist Olsen 2007-10-09 06:21:30 +02:00
  • 3db5b9bb98 [svn r38] * resizing dynamic arrays support * throw is replaced with assert(0) * catch is ignored * better foreach support * various bugfixes Tomas Lindquist Olsen 2007-10-09 02:50:00 +02:00
  • e17f720cce [svn r37] * Initial support for foreach on static arrays. Not 100% complete Tomas Lindquist Olsen 2007-10-04 22:38:53 +02:00
  • e4eaf0455d [svn r36] * Fixed a bug where passing a regular argument to a ref argument did not allocate storage Tomas Lindquist Olsen 2007-10-04 18:24:05 +02:00
  • 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. Tomas Lindquist Olsen 2007-10-04 16:44:07 +02:00
  • c188a544de [svn r34] * Fixed passing a struct literal as function argument Tomas Lindquist Olsen 2007-10-04 14:15:54 +02:00
  • 43d59e151b [svn r33] * Added support for assignment to function arguments Tomas Lindquist Olsen 2007-10-04 13:45:22 +02:00