Commit Graph
67 Commits
Author SHA1 Message Date
Tomas Lindquist Olsen 3fb2cb0322 Okay... Fix the assertion as well, since 20 really is enough yet it wanted MORE... Despite the message. 2009-05-10 17:31:56 +02:00
Tomas Lindquist Olsen 0ab77de246 Increased a buffer size in TypeInfo_StaticArray from 10 to 20 to avoid assertion failures! Thanks LeoD. 2009-05-10 17:25:47 +02:00
Tomas Lindquist Olsen dfea022a86 Changed array slice copying to call a runtime function when assertions or array bound checks are enabled instead of just doing a memcpy. This makes sure an exception is thrown if the copy is invalid (ie. different lengths or overlap). Fixes ticket #283 . Rebuilding the runtime is necessary. 2009-05-10 02:23:05 +02:00
Benjamin Kramer 0cc01f160f Add runtime support for darwin x86_64 2009-05-02 16:39:26 +02:00
Tomas Lindquist Olsen ea2279b11a Updated the interal runtime's ClassInfo type to match the one in object.di .
Runtime now compiles and runminitest is back to normal except for typeinfo10.d .
2009-04-17 02:54:16 +02:00
Christian Kamm 253e743d05 Apply fawzi's stacktracing update from #254. 2009-04-05 15:02:44 +02:00
Tomas Lindquist Olsen 36f6ebc77f - Versioned Expresssion::toElem with #if IN_DMD/IN_LLVM.
- Eliminated the DLRValue DValue.

- Implemented proactive handling of l-value CastExpS.

- Minor tweak in runtime memory.d .
2009-03-28 05:00:43 +01:00
Christian Kamm ef62f7965c Bring FrameInfo definition up to date with recent Tango developments. Thanks fawzi! 2009-03-22 14:51:03 +01:00
Frits van Bommel d1911d40d6 Fix some issues with fawzi's patch.
- It now actually compiles:
   - import stdc.stdio for string formatting functions)
   - remove extra '{'
 - Use snprintf() instead of sprintf().
 - Use return value from snprintf instead of strlen().
 - Don't print the filename in Exception.writeOut() if it has zero length and
   the line number is 0
   (It would previously only skip these if the filename was null, but not if it
   was a different empty string)
 - Ignore empty filename + line number 0 in FrameInfo.writeOut() as well.
2009-03-18 15:33:19 +01:00
Frits van Bommel e847f60fb1 Apply fawzi's patch from #235.
This has some issues which are addressed in my next commit.
2009-03-18 15:20:07 +01:00
Tomas Lindquist Olsen f84a2fb84a Updated lifetime.d with a 32bit faster codepath for overflow checks. 2009-03-03 19:47:39 +01:00
Tomas Lindquist Olsen d845b11dbd Removed inline asm for overflow checking in runtime that wasn't working. 2009-03-03 19:37:47 +01:00
Christian Kamm 07649678db _d_delarray also had one of the array consistency asserts mentioned in #184
and dmd2632.
2009-01-30 07:51:50 +01:00
Christian Kamm d958535969 Remove asserts on array consistancy in arraysetlength. Fixes #184, thanks Deewiant. 2009-01-29 17:45:12 +01:00
Christian Kamm 921a326865 Applied doob's patch to port GDC's Dyld data segment tracking for Mac. 2009-01-24 00:33:06 +01:00
Christian Kamm 783ec2799d Further Solaris data segment detection fixes. Thanks BlueZeniX! 2009-01-23 10:13:27 +01:00
Christian Kamm ab9b9cc2e9 Solaris compatibility and proc map parsing #183, thanks BlueZeniX! 2009-01-22 18:53:32 +01:00
Christian Kamm f4f5c58a44 Add wilsonk's static data segment finding code for x86-64 from #181. Thanks! 2009-01-22 18:23:30 +01:00
Christian Kamm ba9eb478dd Add headers for HP's libunwind, currently unused though. 2009-01-22 17:57:38 +01:00
Christian Kamm bbf21853b4 Fix x86-64 exception handling #180. Thanks pcwalton! 2009-01-22 17:50:38 +01:00
Christian Kamm 8ac2aecf42 Apply pcwalton's eh runtime portability fix. 2009-01-19 19:42:00 +01:00
Christian Kamm 33fe431ffe Don't use /proc/self/map for finding the static data segment on x86-64 for
now. Probably breaks shared libraries. Parsing the file needs to be rewritten!
2009-01-19 19:34:51 +01:00
Christian Kamm e7f750aee1 Apply BlueZeniX's patch for OpenSolaris compatibility. Fixes #158. 2009-01-04 15:49:28 +01:00
Christian Kamm 68de00f6c4 Backed out changeset 1fcba307fd28
Wasn't the right thing to do.
2008-12-27 16:07:23 +01:00
Christian Kamm 20b85089a7 Changed bswap intrinsic definition in compiler specific runtime to actually
implement a linkable bswap.
2008-12-27 15:54:24 +01:00
Christian Kamm a272b01df6 Apply fix for #151. 2008-12-15 21:09:33 +01:00
Tomas Lindquist Olsen b6781a8eae Added proper "need 'this' to access member foo" errors instead of "variable foo not resolved" for some cases, added FIXME for the old error!
Added a bit more information to the runtime's cyclic dependency detection exception.
2008-12-09 01:56:39 +01:00
Christian Kamm cdbc4f84d2 Fix warnings on x86-64. By fvbommel. 2008-11-28 21:24:08 +01:00
Christian Kamm 437aa0d4aa Fix bug in array_cast_len. Makes tango.text.Regex work. 2008-11-02 18:36:28 +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 0e5d9f970b Add explicit uint->char cast to get rid of warning. 2008-10-30 10:15:42 +01:00
Christian Kamm b3b98c3284 Fix broken indentation from last commit. 2008-10-26 21:18:24 +01:00
Christian Kamm d3bb0b74bd Enable arg reversal on x86 by default. Make change to TypeInfo_Struct.compare to accomodate for it. 2008-10-26 21:16:21 +01:00
Christian Kamm cfcda83291 Change _d_newclass into _d_allocclass. Add initialization to ClassInfo.create. 2008-10-26 14:12:03 +01: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 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 e1283d80d2 Updates to makefiles. It's not robust with regard to the .bc files, but it works. 2008-10-12 10:42:54 +02:00
Christian Kamm 6d1768967e Fix makefile for runtime/internal. 2008-10-11 21:23:41 +02:00
Christian Kamm 45fc733717 Renames. 2008-10-06 22:56:54 +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 1165edee29 One more update of Tango Rebuild profile.
Made the inp/outp intrinsics throw exceptions instead of doing nothing silently.
2008-10-06 16:39:47 +02:00
Christian Kamm 40d0df8769 Portability changes to dmain2.d 2008-10-04 23:28:49 +02:00
Christian Kamm 35f6672bb6 Adjust dmain catch to print exception trace info. 2008-10-04 13:35:27 +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
Tomas Lindquist Olsen 14e9384b23 Removed dmdintrinsic.d from the runtime, we already have llvmdc.bitmanip.
Updated tango patch to import tango.core.BitManip instead of std.intrinsic.
2008-09-18 21:14:37 +02:00
Christian Kamm 441253b416 Add implementations for dmd intrinsics. Fixes #92. 2008-09-17 19:54:37 +02:00
Christian Kamm 9c514a7afe Undid some of the previous changes: DtoArrayInit has issues with arrays
similar to T[n][].
2008-09-14 13:47:38 +02:00
Christian Kamm 30c9af1945 Add _d_newarrayvT and _d_newarraymvT to create arrays without initialization.
Adjust DtoNewDynArray to use DtoArrayInit for initialization of new arrays.
Make Type::tvoid->defaultInit() not error.
2008-09-14 10:13:50 +02:00
Tomas Lindquist Olsen d474fa027a Fixed most regressions from last commit. 2008-09-10 12:33:33 -07:00