Commit Graph
217 Commits
Author SHA1 Message Date
Tomas Lindquist Olsen 5d9854aaff Fixed 32bit assumption in statement.c when calling aaApply(2). 2008-11-12 07:41:56 +01:00
Tomas Lindquist Olsen c36bd9f4b0 Applied fvbommel's patch from #112
Added missing TypeInfoInvariant codegen for D2
2008-11-12 02:30:28 +01:00
Tomas Lindquist Olsen c4c1c1d72e Added initial D2 support, D2 frontend and changes to codegen to make things compile. 2008-11-11 01:38:48 +01:00
Christian Kamm bc80a83666 Merge wilsonk's x86-64 inline assembly. 2008-11-08 22:29:19 +01:00
Christian Kamm 16b38a7fef Fix compile-time warnings. Adjust include in d-asm-i386. 2008-11-03 12:35:29 +01:00
Christian Kamm d3f190822c Fix REALSIZE, REALPAD and alignment of double and real for x86-64. 2008-10-30 15:58:58 +01:00
Christian Kamm 891d17e4b5 Applied easy part from wilsonk's x86-64 patch in #107 2008-10-30 11:08:34 +01:00
Christian Kamm e625829f0f Automated merge with http://hg.dsource.org/projects/ldc 2008-10-30 10:17:05 +01:00
Christian Kamm 36a98404ae Fix accidental double-inreg caused by shared TupleType. Enabled inreg by default. 2008-10-30 10:16:37 +01:00
Tomas Lindquist Olsen 6cf5ca6aba Removed warnings on ignored aligns. Only do aligment on packed structs, align(1) struct Packed { ... }
Changed the way struct/class fields are added, first small part of cleaning up these...
Make struct/class/union fields aware of any anonymous struct/union they might be part of, not yet really useful, but part of getting better union support.
2008-10-28 15:41:09 +01:00
Tomas Lindquist Olsen 6b9e85df48 Attempt at getting LLVM to provide a proper target data layout. Should assert now if things are borked.
Added untested support for Thumb target.
2008-10-27 17:37:34 +01:00
Christian Kamm 29dfacde9a Fold in mandel's patch for ARM from #106 2008-10-27 16:36:59 +01:00
Tomas Lindquist Olsen fdc172377e Fixed tuple fields, thanx downs 2008-10-27 01:11:41 +01:00
Tomas Lindquist Olsen 3c3a5dda14 Implemented correct parameter order according to x86-32 ABI documentation.
Changed AA types to just a void* .
2008-10-25 06:03:28 +02:00
Tomas Lindquist Olsen 4b82b7a729 Make extern(System) configure the calling convention on LDC runtime, not when building LDC. 2008-10-23 19:38:01 +02:00
Tomas Lindquist Olsen f71b7ac284 Added inreg attribute where appropriate on x86 to follow ABI docs.
Removed now unnecessary temporary variable in StringExp.
2008-10-23 00:34:46 +02:00
Tomas Lindquist Olsen a52f0330d0 Implemented first class delegates. closes #101 2008-10-22 21:50:08 +02:00
Tomas Lindquist Olsen 5ad345646a Merged DMD 1.036.
Improved comments a little in the runtime source code.
2008-10-22 17:06:17 +02:00
Tomas Lindquist Olsen 7be6ac6b36 Turned unimplemented align error into a warning instead. 2008-10-22 15:35:46 +02:00
Tomas Lindquist Olsen f7ea1da010 Removed TypeOpaque from DMD.
Changed runtime functions taking opaque[] to void[].
Implemented proper type painting, to avoid "resizing" array casts in runtime calls that previously took opaque[].
Implemented dynamic arrays as first class types, this implements proper ABI for these types on x86.
Added dwarf region end after call to assert function, fixes some problems with llvm not allowing this to be missing.
Reverted change to WithStatement from rev [704] it breaks MiniD, mini/with2.d needs to be fixed some other way...
Fixed tango bug 1339 in runtime, problem with _adReverseChar on invalid UTF-8.
Disabled .bc generation in the compiler runtime part, genobj.d triggers some llvm bug when using debug info. the .o seems to work fine.
2008-10-22 14:55:33 +02:00
Christian Kamm 773b15ba5e Use malloc instead of alloca. 2008-10-21 20:46:12 +02:00
Christian Kamm 742ffd88a3 Fix -of with multiple input files. 2008-10-21 18:15:34 +02:00
Christian Kamm 7c7ed3ec12 Make align(n), n != 1 an error. 2008-10-18 14:33:11 +02:00
Christian Kamm 6c532ac149 Hopefully sensible command switch handling. Changed default ext to .o on Windows. 2008-10-16 22:07:02 +02:00
Tomas Lindquist Olsen 202c4f7bc2 Changed premake.lua to work with mingw.
Implemented array operations, not perfect but ok for tonight. closes #89
2008-10-13 23:19:32 +02:00
Tomas Lindquist Olsen 1757e2e1de Updated rebuild profile for .o output as default, compiler needs to be fixed still.
Fixed segfault with ' ldc foo.o -offoo '.
2008-10-13 18:19:43 +02:00
Tomas Lindquist Olsen f15b115ee9 Started changing target triple stuff, part of fixing #97 2008-10-13 17:28:39 +02:00
Christian Kamm 73c58119e5 Missing include added. 2008-10-13 14:09:24 +02:00
Christian Kamm cdeaefa63c Fix issues with gradual underflow and strtof, strtod on Mac. 2008-10-13 14:01:18 +02:00
Christian Kamm ee8dd42c1d Some cleanups in command line argument descriptions. 2008-10-13 11:13:20 +02:00
Christian Kamm bc39d73425 Allow output of only bc, ll, or s by making -of set the output type depending
on the extension.
2008-10-13 10:58:00 +02:00
Christian Kamm a455186f28 Homepage rename. 2008-10-12 18:03:34 +02:00
Christian Kamm 697e5830fc Fix remaining make files. Fix linking order for static libs. 2008-10-11 21:40:44 +02:00
Christian Kamm ee407e597a Link using gcc instead. 2008-10-11 21:21:21 +02:00
Christian Kamm 1bfc0316aa Make ldc call gcc to assemble. 2008-10-11 20:00:36 +02:00
Christian Kamm 73d7a299c9 Disable bc output by default. Remove -dis. Add -output-bc, -output-ll, -output-s.
Call to gcc to convert assembly to object file still required.
2008-10-11 13:07:59 +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 06a55194d7 Upgraded frontend to DMD 1.035 2008-10-06 16:22:11 +02:00
Tomas Lindquist Olsen 81b93325ca Added -nodefaultlib switch do disable implicitly linked standard lib modules 2008-10-05 18:55:43 +02:00
Christian Kamm 87d885f840 Don't let outer enclosing handlers propagate to nested function declarations. 2008-10-04 12:32:09 +02:00
Christian Kamm f4da5f4a89 Fix -oq, closes #96
Add value debug output to RealExp::toConstElem.
2008-10-03 19:24:46 +02:00
Christian Kamm 2f9b9dead7 Make default argument protection check not error for undefined protection.
Fix symbol visibility issues in Tango.
2008-10-03 17:31:16 +02:00
Christian Kamm b3d4bc83f8 Move check for access of context for nested class from backend into frontend. 2008-10-02 23:12:19 +02:00
Tomas Lindquist Olsen e2a1394ae8 Added FreeBSD support to the -t switch 2008-10-02 03:38:29 +02:00
Tomas Lindquist Olsen d0c5df393c Applied the FreeBSD patch from Ralith, closes ticket #95 , slightly changed but basically the same. Thanx Ralith :) 2008-10-02 03:25:46 +02:00
Christian Kamm c4b523dc29 Nicer error message on some invalid default args. 2008-10-01 21:14:15 +02:00
Christian Kamm 271012bcfc Fix import visibility bugs 313 and 314. 2008-10-01 19:16:10 +02:00
Tomas Lindquist Olsen 7b18b7a633 Implemented constant pointer casts (like casting function pointer to void* as a constant global initializer) 2008-09-28 21:09:21 +02:00
Christian Kamm 12c81a2ee3 Don't delete the header file after it has been generated! 2008-09-21 17:35:27 +02:00