Commit Graph

158 Commits

Author SHA1 Message Date
Tomas Lindquist Olsen
f411df11e3 Fixed choosing default target machine without needing to link in targets. 2008-09-07 17:44:25 -07:00
Christian Kamm
d44f21687e Restructure path handling a bit. Fixes #66. 2008-09-06 12:27:27 +02:00
Tomas Lindquist Olsen
ccfa5218c3 merge 2008-09-04 17:05:35 +02:00
Christian Kamm
3779b7c7d1 Split runtime into three parts again. 2008-09-03 22:07:04 +02:00
Tomas Lindquist Olsen
f3b3db7fa9 Changed all '#if linux || __APPLE__' to '#if POSIX' so we can support other platforms too, thanx for the suggestion anders. 2008-09-02 23:10:12 +02:00
Christian Kamm
d6e7a65b69 Automated merge with http://hg.dsource.org/projects/llvmdc 2008-09-02 19:14:37 +02:00
Christian Kamm
877da230a3 Get rid of runtime path. Allow defaultlib and debuglib switches to be given multiple times. 2008-09-02 19:14:25 +02:00
Tomas Lindquist Olsen
9f0633a7dd Added some sanity checks for target detection. 2008-08-31 18:51:14 +02:00
Christian Kamm
7963800bd6 Introducing template instantiation traces for static asserts and errors within templates. 2008-08-30 10:30:57 +02:00
Tomas Lindquist Olsen
c65cd45966 Removed unimplemented switches. 2008-08-26 21:02:25 +02:00
Christian Kamm
2deaf9f238 Do not set Dversion to 1. Dversion = 2 means we use post 1.000 additions to D1. 2008-08-26 20:49:01 +02:00
Christian Kamm
54871f4ea7 Add -enable/-disable for specific features.
Allow setting target os with -t.
Clean up the help message.
2008-08-26 19:31:47 +02:00
Tomas Lindquist Olsen
d78677961b Removed D_InlineAsm and D_InlineAsm_X86 versions.
Made use of 'naked' in inline asm an error.
2008-08-25 19:36:27 +02:00
Tomas Lindquist Olsen
6cb325e2fa Missing 'break' in osx code path. 2008-08-24 17:57:53 +02:00
Tomas Lindquist Olsen
6cd4eda726 Fixed some osx mistakes. 2008-08-24 17:19:31 +02:00
Christian Kamm
8d95fc7b3e Add isnan for __APPLE__ and darwin version ident for OSX. 2008-08-24 16:59:08 +02:00
Jacob Carlborg
81de0c4b23 Add __APPLE__ to most #if linux compile time switches. 2008-08-24 16:54:06 +02:00
Christian Kamm
72a2db6d7c Get rid of isLinux and isWindows in favor of global.params.os. 2008-08-24 16:22:58 +02:00
Christian Kamm
ef80c904dc Make class invariants work. 2008-08-21 15:19:45 +02:00
Tomas Lindquist Olsen
5bf3e8911a Added support for overloaded intrinsics.
Added atomic intrinsics in the intrinsics.di header.
2008-08-20 01:02:22 +02:00
Tomas Lindquist Olsen
5aae7a6bee Merged DMD 1.034, array operations are not yet implemented ;) 2008-08-14 06:55:41 +02:00
Tomas Lindquist Olsen
c092165b3a Fixed mini/missingti.d 2008-08-14 03:09:26 +02:00
Christian Kamm
c31d07e23f Reverted bad change [506]. Added test case for remaining bug. 2008-08-13 23:54:09 +02:00
Christian Kamm
575ae2ea33 Provided overload to TypeClass::builtinTypeInfo to return true.
Shouldn't almost all types have a builtin typeinfo? Maybe it'd be better to
have the default at true and only overload typedef and friends.
2008-08-13 22:14:43 +02:00
Christian Kamm
d81aeb0d28 Make the alignment computations of the frontend match the llvm default alignment.
Breaks run/double_03 because it assumes double.alignof >= 8, which does not
seem to be the case for llvm.
2008-08-10 13:42:08 +02:00
Tomas Lindquist Olsen
9d7f16b967 Added pragma(llvmdc, "string") for misc per-module compiler configuration, currently "string" can only be "verbose" which forces -vv for module it appears in.
Reimplemented support for nested functions/class using a new approach.
Added error on taking address of intrinsic.
Fixed problems with the ->syntaxCopy of TypeFunction delegate exp.
Removed DtoDType and replaced all uses with ->toBasetype() instead.
Removed unused inplace stuff.
Fixed a bunch of issues in the runtime unittests, not complete yet.
Added mini tests.
2008-08-10 08:37:38 +02:00
Christian Kamm
6e78763b3f Get rid of predefined Unix version 2008-08-07 18:59:23 +02:00
Tomas Lindquist Olsen
9500e89eeb Added 'Unix' predefined version identifier. 2008-08-04 19:08:39 +02:00
Tomas Lindquist Olsen
691a922850 Changed DMD to make a copy of the TypeFunction in DelegateExp. 2008-08-04 17:32:13 +02:00
Tomas Lindquist Olsen
daad516579 Removed the 'needsstorage' thing from Dsymbol. Arguments are not always given storage when applicable. This is not longer treat specially
in this regard. Code for accessing nested variables and contexts rewritten. Probably more. Fairly well tested.
2008-08-04 02:59:34 +02:00
Christian Kamm
d87a3cd4ee Path combining on Windows didn't work with / properly. 2008-08-03 12:27:11 +02:00
Christian Kamm
ad8e9ae852 Implement a rough AddrExp::toConstElem() 2008-08-02 22:54:36 +02:00
Tomas Lindquist Olsen
9b45fc5533 Changed the handling of variadic intrinsics a bit.
Removed the -fp80 option and made real be 80bit floats on X86, this is what the D spec really says it should be and fixes a bunch of issues.
Changed the handling of parameter attributes to a bit more generalized approach.
Added sext/zext attributes for byte/short/ubyte/ushort parameters, fixes #60 .
Parameter attribs now properly set for intrinsic calls if necessary.
Made the tango.math.Math patch less intrusive.
Fixed/added some mini tests.
2008-08-01 17:59:58 +02:00
Tomas Lindquist Olsen
07cfb67178 Removed tango from the repository and instead added a runtime dir with the files needed to patch and build tango from svn.
Reworked the LLVMDC specific pragmas.
2008-08-01 00:32:06 +02:00
Christian Kamm
7882f4858e Enable array bounds check and emit them in IndexExp. 2008-07-30 18:38:56 +02:00
elrood
dbe905604b fixed configuration file loading issues on windows 2008-07-29 21:52:25 +02:00
Christian Kamm
f439de46ab Another fix to DMD's path code. 2008-07-29 18:00:01 +02:00
Christian Kamm
fe76eeee4e Missed a line in the dmdfe path code. 2008-07-29 17:45:28 +02:00
Christian Kamm
62e1d77cc1 Allow / as a path separator on Windows. 2008-07-29 17:35:33 +02:00
Christian Kamm
dd49c2ca00 Give errors originating from Dsymbol::error the proper 'Error:' heading. 2008-07-29 13:48:46 +02:00
Christian Kamm
d9f85de2a1 Fix real comparison for real: allow +0 to be distinguished from -0. 2008-07-28 21:37:47 +02:00
Christian Kamm
cf4565095c Use == in RealEquals and get rid of the memcmp there entirely. 2008-07-28 20:50:41 +02:00
Tomas Lindquist Olsen
8c98499193 Fixed issue with internal real representation, incorrect for non x86-32 architectures.
Cleaned up CallExp::toElem, moved implementation to tocall.cpp providing a single procedure to call arbitrary D functions fairly easily.
2008-07-28 02:11:34 +02:00
Christian Kamm
8485be7238 Make RealEquals only compare the data bytes.
Fixes run/t/template_class_13_* regressions introduced in [r401].
2008-07-27 18:52:40 +02:00
Christian Kamm
2592d1caa6 Switch TypePointer::isunsigned from false to true, so CmpExp::toElem chooses the right operand for pointer comparisons.
Fixes run/t/typeinfo_03_A,B,C,D.
2008-07-27 17:10:47 +02:00
Christian Kamm
67d242272b Add back generated impcnvtab.c to make premake work the first time. 2008-07-27 16:27:44 +02:00
Christian Kamm
befaf511e6 Fix compile-time comparison of template value parameters of real type. 2008-07-27 13:29:31 +02:00
Christian Kamm
e6dd53b61c Made setup for runtime calls in dmd frontend allocate less. 2008-07-24 18:51:36 +02:00
Christian Kamm
169fe68a25 Fix argument types for wchar/char reverse and sort. 2008-07-24 18:20:40 +02:00
Christian Kamm
b1e8162b7b Mixed up argument types for aApply and aaApply. 2008-07-23 17:55:20 +02:00