Tomas Lindquist Olsen
efd3f0dddf
[svn r387] Removed unused MD5 stuff.
...
Fixed incorrect __VENDOR__ variable and printed DMD frontend version.
2008-07-15 02:01:53 +02:00
Tomas Lindquist Olsen
dbd640a3dc
[svn r368] Fixed custom class allocators with arbitrary user arguments. Closes #25
...
Removed some dead code.
Started on a more generalised approach to call misc. D functions.
2008-07-13 20:49:10 +02:00
Tomas Lindquist Olsen
a4e4f34a34
[svn r365] Implemented raw struct equality comparison, uses C memcmp.
...
Renamed DtoDelegateCompare to DtoDelegateEquals, for consistency with the other equality helpers.
2008-07-13 04:11:08 +02:00
Tomas Lindquist Olsen
599f879149
[svn r316] Fixed array slice assignments like: int[] arr = ...; arr[] = 42;
...
There was problems with most non basic types...
Added an option to premake so we can do: premake --target gnu --no-boehm
to disable the Boehm GC.
2008-06-23 14:48:42 +02:00
Tomas Lindquist Olsen
9a28d083f8
[svn r276] Fixed debug info for 'this' arg seemed to be broken.
2008-06-12 19:59:19 +02:00
Tomas Lindquist Olsen
53dedd765b
[svn r271] Fixed debug info for implicit 'this' param.
...
Fixed debug info for arguments passed byval (ref and out params still missing).
2008-06-12 18:04:28 +02:00
Tomas Lindquist Olsen
e0f2825fd0
[svn r269] Fixed dwarf debug info for structs.
2008-06-12 16:58:26 +02:00
Tomas Lindquist Olsen
4d2797526d
[svn r267] Fixed debug info for global variables.
...
Cleaned up the debug info code in general.
2008-06-11 20:53:26 +02:00
Tomas Lindquist Olsen
cfc8befb5b
[svn r264] Fixed debug info for global variables.
2008-06-09 17:49:30 +02:00
Tomas Lindquist Olsen
37b6748897
[svn r263] Changed *** ATTENTION *** to warnings.
...
Implemented debug info for dynamic arrays, start of general composite support.
2008-06-09 15:52:22 +02:00
Tomas Lindquist Olsen
1e87ae15ef
[svn r262] Fixed debug info for normal function parameters.
...
Fixed debug info for pointers to basic types.
2008-06-09 12:43:16 +02:00
Tomas Lindquist Olsen
8b83eda2a2
[svn r261] Fixed debug info for integer and floating local variables, can now be inspected in GDB.
...
Did a lot of smaller cleans up here and there.
Replaced more llvm::Foo with LLFoo for common stuff.
Split up tollvm.cpp.
2008-06-09 09:37:08 +02:00
Tomas Lindquist Olsen
951657ccdc
[svn r259] Enabled ASM for the GC, this closes #45 by saving the registers on the stack.
2008-06-09 02:05:02 +02:00
Tomas Lindquist Olsen
6ededdd9e3
[svn r253] Removed -inlineasm option. inline asm is now enabled by default unless the new -noasm option is passed.
...
Tried adding a stack trace print when compiler crashes, not sure it's working though.
Changed data layouts to match that of llvm-gcc.
Fixed casting function pointers.
Added support checks in AsmStatement.
2008-06-08 19:09:24 +02:00
Tomas Lindquist Olsen
fd8cec14e1
[svn r248] Fixed: labels in inline asm block now work for the normal case.
...
Fixed: inline asm blocks are now emitted as a single asm entity.
2008-06-08 06:15:51 +02:00
Tomas Lindquist Olsen
187d6523e3
[svn r245] initial support for labels in inline asm, broken :/
2008-06-07 21:31:38 +02:00
Tomas Lindquist Olsen
47ac84b223
[svn r241] Fixed missing terminator for void main() with inline asm block.
2008-06-06 22:30:31 +02:00
Tomas Lindquist Olsen
346d04aa8a
[svn r236] added initial codegen of inline asm, pretty buggy and incomplete still. see the tangotests/asm1.d test for a sample of what does
...
work!
2008-06-06 20:14:51 +02:00
Tomas Lindquist Olsen
d03c3a7757
[svn r233] Added: -oq command line option for writing fully qualified object names.
...
Added: started support for x86 80bit floating point.
Changed: aggregates passed by value now use the llvm 'byval' parameter attribute, also lays ground work for
using other attributes.
Changed: eliminated a lot more std::vectorS, these showed up pretty much at the top when profiling!
Changed: performed other misc. cleanups.
Changed: halt expression now call the new llvm trap intrinsic instead of an assert(0).
Changed: dstress suite now passes -O0 by default, this only eliminates unreferenced globals, which speeds up
linking quite a bit.
2008-06-05 06:38:36 +02:00
Tomas Lindquist Olsen
590d44d302
[svn r231] Changed: warnings are no longer treated as an error.
...
Added some comments and cleaned up CallExp::toElem a tiny bit.
Fixed: struct literals always reported inplace assignment even if they allocated a temporary.
Fixed: passing stuff to a D-style vararg which did inplace assignment was generated suboptimal code.
2008-06-03 13:51:09 +02:00
Tomas Lindquist Olsen
b4bb3aaec4
[svn r229] Updated the object.d implementation to the latest Tango.
...
Fixed a bunch of the built-in typeinfos for arrays, they did not inherit TypeInfo_Array.
Applied patch to tango/text/convert/Layout.d by fvbommel, closes #47 .
Cleaned up some type code.
Replaced uses of llvm::Type with LLType (a typedef), same for Value and Constant.
Fixed a few cases where typeinfo for user structs could be emitted multiple times, seems to still be some cases of this :/
2008-05-30 19:32:04 +02:00
Tomas Lindquist Olsen
0b479b5749
[svn r228] Fixed: when new'ing basic types, the storage was not default initialized.
...
Fixed: the tango/lib/compiler/llvmdc/llvmdc.mak makefile was a bit incorrect.
Changed: the basic gc is now the default.
Changed: renamed a few temporary names in the LLVM IR output.
2008-05-27 22:14:24 +02:00
Tomas Lindquist Olsen
19748f09ec
[svn r225] Fixed: delete expressions no longer use llvm's free instruction, which crashes on a GC provided pointer.
2008-05-14 01:22:40 +02:00
Tomas Lindquist Olsen
39ed86269e
[svn r222] Forgot to remove volatile ATTENTION.
...
Fixed a few comment types.
Forgot to add makefile for the basic GC.
2008-05-13 18:07:03 +02:00
Tomas Lindquist Olsen
f1c26350ca
[svn r206] Fixed some interfaceInfo related issues, closes #44
2008-05-12 14:32:29 +02:00
Tomas Lindquist Olsen
0dd975e1f4
[svn r197] Fixed: empty scope statement segfaulted.
2008-05-07 19:34:41 +02:00
Tomas Lindquist Olsen
24bd9034c3
[svn r193] Fixed: abstract classes implementing interfaces now output proper Interface info arrays. (null vtables).
...
Did a little renaming of delegate utils.
2008-05-07 04:45:51 +02:00
Tomas Lindquist Olsen
f716b18cc1
[svn r188] Fixed using a dereferenced pointer argument as both l- and r-value. fixes tango.io.FileRoots.
...
Reorganized the tangotests dir a bit.
2008-05-06 07:26:27 +02:00
Tomas Lindquist Olsen
d3b57eaf60
[svn r187] Fixed missing definitions of instances of imported struct template declarations.
2008-05-06 05:25:53 +02:00
Tomas Lindquist Olsen
93a632c7c2
[svn r185] Fixed broken nested classes with data members, did DMD change the class layout? tango.text.Regex now compiles.
...
Commented some of the *very* verbose logging for -vv option.
2008-05-06 03:07:21 +02:00
Tomas Lindquist Olsen
a0c6cb6673
[svn r179] lots and lots of fixes, much more of tango now compiles/works.
2008-05-05 07:36:29 +02:00
Tomas Lindquist Olsen
06362014f4
[svn r178] Fixed codegen values for function arguments, the old approach was completely broken, amazing it even worked...
2008-05-05 00:56:53 +02:00
Tomas Lindquist Olsen
a522719b85
[svn r176] Fixed a bug with class constructors.
2008-05-04 04:35:27 +02:00
Tomas Lindquist Olsen
24392c4903
[svn r156] added a testcase for the most annoying bug ever
2008-03-24 20:05:44 +01:00
Tomas Lindquist Olsen
ecd91a48f2
[svn r155] Fixed a bunch of linkage problems (especially with templates)
2008-03-24 19:43:02 +01:00
Tomas Lindquist Olsen
64537a9478
[svn r149] fixed: a bunch of D-style variadics problems.
...
fixed: GotoDefaultStatement implemented.
fixed: some other minor bugs.
2008-01-26 17:13:22 +01:00
Tomas Lindquist Olsen
f9685eab09
[svn r145] fixed some x86 problems
2008-01-23 12:58:51 +01:00
Tomas Lindquist Olsen
0c0bac2766
[svn r144] fixes
2008-01-23 12:56:09 +01:00
Tomas Lindquist Olsen
94c47aa1fa
[svn r143] Fixed: a few bugs in debug information, still only line info, but should be correct files now :)
...
Fixed: tango.io.Console seems to be working now.
2008-01-22 00:01:16 +01:00
Tomas Lindquist Olsen
17247d63e7
[svn r141] fixed more problems with classinfo
...
moved more IR state out of the AST classes
2008-01-18 16:42:16 +01:00
Tomas Lindquist Olsen
5652546986
[svn r140] did a lot of the work towards being able to pass multiple modules on the command line. not complete yet though
2008-01-17 03:15:12 +01:00
Tomas Lindquist Olsen
4505b9b006
[svn r137] Many fixes towards tango.io.Console working, but not quite there yet...
...
In particular, assertions has been fixed to include file/line info, and much more!
2008-01-14 05:11:54 +01:00
Tomas Lindquist Olsen
b15b3484c8
[svn r136] MAJOR UNSTABLE UPDATE!!!
...
Initial commit after moving to Tango instead of Phobos.
Lots of bugfixes...
This build is not suitable for most things.
2008-01-11 17:57:40 +01: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
5eb88f9e80
[svn r133] Fixed some problems with inlining not happening :P
...
Fixed problems with certain cases of deeply nested classes/functions.
2007-12-28 22:55:24 +01:00
Tomas Lindquist Olsen
5ab2166b05
[svn r129] Started AA literals.
...
Fixed #15 , passing -O will now invoke the optimizer before writing bitcode.
2007-11-28 04:52:35 +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