Commit Graph

  • 2e1a2bfe4a Fixed problem with parameterized intrinsics taking bools. Tomas Lindquist Olsen 2008-08-20 19:01:56 +02:00
  • 5bf3e8911a Added support for overloaded intrinsics. Added atomic intrinsics in the intrinsics.di header. Tomas Lindquist Olsen 2008-08-20 01:02:22 +02:00
  • 3346a78e71 First step towards D abi compliance. Framepointer elimination is now disabled for functions using inline asm (with a hack from aKor). Tomas Lindquist Olsen 2008-08-19 20:18:01 +02:00
  • 9caf74c59b Fix binops change for OpAssign. Christian Kamm 2008-08-17 13:16:35 +02:00
  • 521a988e43 Binary ops had the wrong result type for real op imaginary. Christian Kamm 2008-08-17 12:21:53 +02:00
  • d0fec06c7d Abstract functions may have bodies. Christian Kamm 2008-08-17 11:39:36 +02:00
  • fe9b2b7efc Fix TypeInfo_Tuple array initialization. Christian Kamm 2008-08-16 19:29:56 +02:00
  • 6a81f7e66f Do not need to allocate temporary for function literal. Christian Kamm 2008-08-16 14:01:23 +02:00
  • 7a535a1798 Fix function literals. They never carry a context. Christian Kamm 2008-08-16 13:33:37 +02:00
  • 981da466b7 Don't assert on empty foreach body. Christian Kamm 2008-08-16 12:38:53 +02:00
  • e5568d62af Prevent cast error for cast(void) around expression statements. Christian Kamm 2008-08-16 12:32:22 +02:00
  • ceb292ed85 Fix continue inside dowhile statements. Christian Kamm 2008-08-16 11:19:34 +02:00
  • 406cefb53f Fix delegate equality. Christian Kamm 2008-08-16 10:48:25 +02:00
  • 6c117e4301 Get rid of module declaration for one of the tests I added. Would confuse mini test runner. Christian Kamm 2008-08-15 23:15:21 +02:00
  • d375735f55 Add test case for broken delegates. Also still needs fixing! Christian Kamm 2008-08-15 23:13:55 +02:00
  • b74cd47016 Add minitest for broken empty template tuple parameters. Fix this one! Christian Kamm 2008-08-15 23:11:59 +02:00
  • 60617d5444 Add interface comparison to EqualExp: just do pointer comparison. Christian Kamm 2008-08-15 22:41:47 +02:00
  • 2b2291952c Fixed problem when instantiating a template with private global variables. Tomas Lindquist Olsen 2008-08-15 05:08:33 +02:00
  • 5aae7a6bee Merged DMD 1.034, array operations are not yet implemented ;) Tomas Lindquist Olsen 2008-08-14 06:55:41 +02:00
  • c092165b3a Fixed mini/missingti.d Tomas Lindquist Olsen 2008-08-14 03:09:26 +02:00
  • c31d07e23f Reverted bad change [506]. Added test case for remaining bug. Christian Kamm 2008-08-13 23:54:09 +02:00
  • 53f8542719 Got rid of improper static array compile time index check. It had caused tango.core.Variant to fail to compile. Christian Kamm 2008-08-13 22:31:46 +02:00
  • 575ae2ea33 Provided overload to TypeClass::builtinTypeInfo to return true. Christian Kamm 2008-08-13 22:14:43 +02:00
  • 8efde8d38d Do not assert if there's a struct-this nested context. Christian Kamm 2008-08-13 20:50:54 +02:00
  • 7ffb43fdc6 Fixed uncaught, invalid use of nesting introduced in rev [498] Tomas Lindquist Olsen 2008-08-13 17:11:03 +02:00
  • aae027961c merge Tomas Lindquist Olsen 2008-08-13 15:43:34 +02:00
  • 0eeedba887 Fixed problems constant multidimensional static array initializers. Tomas Lindquist Olsen 2008-08-13 15:43:13 +02:00
  • 878faff7fb Revert accidental change to toobj.cpp. Christian Kamm 2008-08-12 19:50:41 +02:00
  • 57cd1b4445 Get rid of 'static function cannot access nested' error. It is caught again later. Christian Kamm 2008-08-12 19:48:42 +02:00
  • 3e064bdb19 Change web statistics layout, thanks anders! Christian Kamm 2008-08-12 18:33:34 +02:00
  • 85a122a53f missed one phobos test Tomas Lindquist Olsen 2008-08-12 00:56:09 +02:00
  • bec4e850e4 fixed some failing minitests (badly classified / phobos) Tomas Lindquist Olsen 2008-08-12 00:54:32 +02:00
  • 148534637e Removed debug info per default from the runtime makefiles, since llvm 2.4svn is currently buggy. Tomas Lindquist Olsen 2008-08-12 00:20:04 +02:00
  • 983a1b18a1 Fixed EH fatalerror printf'ing. Tomas Lindquist Olsen 2008-08-10 22:05:30 +02:00
  • 7d7c9059d3 Get rid of exception usage in exception handling code. Christian Kamm 2008-08-10 21:57:29 +02:00
  • 8b1903c0b3 Make llvmdc work with llvm 2.4svn revision 54614. Breaks compatibility with llvm 2.3. Christian Kamm 2008-08-10 21:09:23 +02:00
  • b3ce162a54 Elrood's proposed directory layout changes. Christian Kamm 2008-08-10 18:35:27 +02:00
  • cf0dc983f5 Add .orig files created during a revert to .hgignore. Christian Kamm 2008-08-10 18:34:57 +02:00
  • 43567aca3b Fixed a critical bug in the runtime, where _d_allocmemoryT would mark the memory block as having pointers (for scanning) opposite of what it should. So pointers would not be seen and freed. Should fix a bunch of regressions with AAs. Tomas Lindquist Olsen 2008-08-10 17:28:01 +02:00
  • d81aeb0d28 Make the alignment computations of the frontend match the llvm default alignment. Christian Kamm 2008-08-10 13:42:08 +02:00
  • 1284721437 Error if there is no this in a call requiring this. Christian Kamm 2008-08-10 10:50:53 +02:00
  • 646679fd44 Make struct literals work with typedefs. Christian Kamm 2008-08-10 10:40:26 +02:00
  • 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. Tomas Lindquist Olsen 2008-08-10 08:37:38 +02:00
  • b2d860374b Default initialize temporary struct generated from struct literal. Christian Kamm 2008-08-09 09:03:52 +02:00
  • 6e78763b3f Get rid of predefined Unix version Christian Kamm 2008-08-07 18:59:23 +02:00
  • 4ee26b350a Forgot return in DtoInitializer Christian Kamm 2008-08-07 18:17:59 +02:00
  • f7cd3cf969 Move zero init of padding to DtoInitializer in order to respect void initializers. Christian Kamm 2008-08-07 18:15:27 +02:00
  • 14c3e022e4 Use llvmdc helpers for store and bitcast in fp80 padding init code. Christian Kamm 2008-08-05 20:23:44 +02:00
  • b2efd0d317 Zero out padding of fp80. Christian Kamm 2008-08-05 20:10:12 +02:00
  • 8362b86c5a Move AllocaInst creation into DtoAlloca helper. Will enable special zero-init of fp80 reals' padding. Christian Kamm 2008-08-05 19:28:19 +02:00
  • 866360c23b Update readme. Christian Kamm 2008-08-05 08:08:00 +02:00
  • cc7e5e63b1 Make sure to initialize isBranchToLabel to zero. Christian Kamm 2008-08-04 21:34:53 +02:00
  • 323c45e768 Added missing llvmdc-build script in lphobos, added llvmdc.conf to lphobos. Tomas Lindquist Olsen 2008-08-04 20:05:42 +02:00
  • 641523be79 Added bash style rebuild to the lphobos dir Tomas Lindquist Olsen 2008-08-04 20:01:36 +02:00
  • 6fc52fd86b Removed old moduleinit_backend from lphobos it's useless now. Tomas Lindquist Olsen 2008-08-04 19:38:59 +02:00
  • 3f1767fd49 Applied downs' lphobos update Tomas Lindquist Olsen 2008-08-04 19:28:49 +02:00
  • 9500e89eeb Added 'Unix' predefined version identifier. Tomas Lindquist Olsen 2008-08-04 19:08:39 +02:00
  • 691a922850 Changed DMD to make a copy of the TypeFunction in DelegateExp. Tomas Lindquist Olsen 2008-08-04 17:32:13 +02:00
  • 7988ecb8be added testcase for taking address of function as constant expr. Tomas Lindquist Olsen 2008-08-04 03:40:08 +02:00
  • 800497f2be Fixed constant expression taking address of function. Tomas Lindquist Olsen 2008-08-04 03:38:23 +02:00
  • 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. Tomas Lindquist Olsen 2008-08-04 02:59:34 +02:00
  • b0a5f554d6 Fixed problem in AssignExp where the result value might be uninitialized. see mini/assign1.d Tomas Lindquist Olsen 2008-08-03 16:59:28 +02:00
  • 996c197aa8 stupid merges Tomas Lindquist Olsen 2008-08-03 16:16:16 +02:00
  • 0640b52d3e Added a mini test case for nested stuff Tomas Lindquist Olsen 2008-08-03 16:11:38 +02:00
  • dedc0f4829 Fixed problem with using the variable names _arguments and _argptr in non D-style vararg functions. Fixed problem with compiling with LLVM 2.3 Tomas Lindquist Olsen 2008-08-03 16:10:00 +02:00
  • 90693b23b1 Use path separator to make minitests work on windows. Christian Kamm 2008-08-03 14:03:15 +02:00
  • d87a3cd4ee Path combining on Windows didn't work with / properly. Christian Kamm 2008-08-03 12:27:11 +02:00
  • 0613b47df9 Windows build changes proposed by Elrood. Christian Kamm 2008-08-03 12:26:43 +02:00
  • aff505ea6e Automated merge with http://hg.dsource.org/projects/llvmdc Christian Kamm 2008-08-02 22:54:46 +02:00
  • ad8e9ae852 Implement a rough AddrExp::toConstElem() Christian Kamm 2008-08-02 22:54:36 +02:00
  • 1ee9104354 Fixed AA Rvalue-only access (like indexing an AA return value immediately). Tomas Lindquist Olsen 2008-08-02 22:35:24 +02:00
  • 00072e5fd0 Fixed debug info and lazy arguments. Tomas Lindquist Olsen 2008-08-02 21:51:49 +02:00
  • 41d6279a64 Make sure DtoType has been run on the DType before assembling a call. Christian Kamm 2008-08-02 21:20:31 +02:00
  • 55639e01ea Fixed inserting an AA entry with 'this' as key. Fixed debug info for aggregate parameters. Only seems to work on byval arguments. Tomas Lindquist Olsen 2008-08-02 17:24:10 +02:00
  • 18b376ba66 Added generation of the llvm 'sret' parameter attribute where applicable. Fixed some wrong argument handling code when setting parameter attributes. Updated the tango unittest script in the tango patch, does not work yet, all modules don't compile... Tomas Lindquist Olsen 2008-08-02 02:54:57 +02:00
  • 0251a1e720 Fixed regressions Tomas Lindquist Olsen 2008-08-02 01:23:53 +02:00
  • e31070a437 Fixed problems with nested 'this'. Fixes #39 . Fixed problem with debug info order of intrinsic calls (func.start after declare). Tomas Lindquist Olsen 2008-08-02 00:50:39 +02:00
  • 3c5e28d6c7 merge ... Tomas Lindquist Olsen 2008-08-01 21:56:13 +02:00
  • 24386e4d3b Trying to get the old QD demo to work. Tomas Lindquist Olsen 2008-08-01 21:55:57 +02:00
  • 885a805d26 Fixed problem where global variables did not resolve type before using it. Tomas Lindquist Olsen 2008-08-01 21:54:40 +02:00
  • 0ec9cf626b Updates to .hgignore for new runtime scheme. Christian Kamm 2008-08-01 21:21:08 +02:00
  • 65406bba25 Fixed problem with invoking intrinsics, which llvm doesn't allow. Tomas Lindquist Olsen 2008-08-01 19:54:31 +02:00
  • fd2fac6aa7 Fixed param attrs for return values (not really broken, but would be if more return attrs were added) Tomas Lindquist Olsen 2008-08-01 18:07:33 +02:00
  • 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. Tomas Lindquist Olsen 2008-08-01 17:59:58 +02:00
  • 858dd3e4fa Updated tango patch. tango.math.Math was incorrect. Tomas Lindquist Olsen 2008-08-01 01:12:33 +02:00
  • 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. Tomas Lindquist Olsen 2008-08-01 00:32:06 +02:00
  • 8f14ece3af Move DtoArrayBoundsCheck from llvmhelpers to arrays. Christian Kamm 2008-07-31 19:14:49 +02:00
  • fcd784d14f Forgot a ->toBasetype() in the array bound code. Christian Kamm 2008-07-30 20:25:46 +02:00
  • 5b5d7404b4 Insert array bound checks for slices. Christian Kamm 2008-07-30 19:02:13 +02:00
  • 7882f4858e Enable array bounds check and emit them in IndexExp. Christian Kamm 2008-07-30 18:38:56 +02:00
  • fc9ccb9f6a Rework complex divison. Christian Kamm 2008-07-30 16:48:35 +02:00
  • a8bf4e9579 Reverted bad cfg merge stuff Tomas Lindquist Olsen 2008-07-30 10:45:20 +02:00
  • 660290f640 stupid merge ... :/ Tomas Lindquist Olsen 2008-07-30 10:41:31 +02:00
  • 905ca019dd Added type param to DVarValue as DMD sometimes overrides the type of the VarDeclaration. Added support for align(1)/packed structs, other alignments are still ignored. Fixed some problems with accessing lazy arguments. Tomas Lindquist Olsen 2008-07-30 10:12:55 +02:00
  • ba23db32ea Add license text. Christian Kamm 2008-07-30 09:55:45 +02:00
  • 3b21ae25be Move DeclarationExp code into a helper function so it can call itself for template mixin members. Christian Kamm 2008-07-30 09:21:06 +02:00
  • dbe905604b fixed configuration file loading issues on windows elrood 2008-07-29 21:52:25 +02:00
  • f439de46ab Another fix to DMD's path code. Christian Kamm 2008-07-29 18:00:01 +02:00
  • fe76eeee4e Missed a line in the dmdfe path code. Christian Kamm 2008-07-29 17:45:28 +02:00
  • 62e1d77cc1 Allow / as a path separator on Windows. Christian Kamm 2008-07-29 17:35:33 +02:00