Commit Graph

246 Commits

Author SHA1 Message Date
Christian Kamm
6594665d5d Remove optimizer syntax copies where they weren't proven to be necessary.
Copying without calling semantic() leads to issues for more complicated
expressions.
2009-01-18 14:14:40 +01:00
Christian Kamm
4e05607355 Change custom allocator new size argument to size_t instead of uint. See #175. 2009-01-18 13:10:19 +01:00
Christian Kamm
71a5ff83c7 Fix #164. 2009-01-17 17:41:03 +01:00
Tomas Lindquist Olsen
6f3aff87df Fixed 64bit problem in mtype.c with _adReverse runtime call, fixes #161 . 2009-01-10 14:35:48 +01:00
Tomas Lindquist Olsen
b3884c6d15 Removed extraneous "|| __APPLE__" in dmd/man.c, 1.039 adds an __APPLE__ specific implementation, thanx Scriptor. 2009-01-09 19:36:56 +01:00
Tomas Lindquist Olsen
dcb9628849 Merged DMD 1.039 2009-01-07 19:34:48 +01:00
Tomas Lindquist Olsen
16409a3367 Merged DMD 1.038 2009-01-06 16:33: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
8f62c080e2 Add more toConstElem stubs to get better error messages. 2008-12-18 07:59:03 +01:00
Christian Kamm
dff06d0f15 Add Elrood's patch to output LDC and LLVM source revs. 2008-12-14 16:51:36 +01:00
Christian Kamm
6600ef0a86 Automated merge with http://hg.dsource.org/projects/ldc 2008-12-14 16:30:20 +01:00
Christian Kamm
dabe5d3efd Remove unportable env-sanitizing code. If it is really needed, it needs to be
rethought. Closes #131.
2008-12-14 16:30:06 +01:00
Tomas Lindquist Olsen
b7bea99dbb Merged DMD 2.021 frontend.
Removed generated files from dmd/dmd2 dirs.
2008-12-13 16:14:37 +01:00
Tomas Lindquist Olsen
6716aecc52 Merged DMD 1.037 frontend 2008-12-13 13:15:31 +01:00
Tomas Lindquist Olsen
c14996f39e Removed insufficient fix for DMD bug 1161, it was causing problems with instantiating imported templates, and passing private variables as aliases. I failed to come up with a proper fix! 2008-12-10 13:56:10 +01:00
Tomas Lindquist Olsen
6997919627 Removed PAGESIZE part of Tango patch, it works for me when the check is removed.
Updated Tango patch to latest Tango revision.
2008-12-02 02:45:31 +01:00
Tomas Lindquist Olsen
e5d688834d Fixed printf formatting flag problem on mingw (missed one) 2008-12-01 19:51:45 +01:00
Tomas Lindquist Olsen
2788a2a0f1 Made ClassInfo.interfaces generation consistent with DMD, fixes #134
Removed unneeded includes from dmd/attrib.c
2008-12-01 18:34:02 +01:00
Tomas Lindquist Olsen
e0972b0793 Fixed ModuleInfo generation to no longer use the ModuleInfo class' default initializer for types/defaults, it's unsafe as initializers don't necesarily match the "formal" type. There might be explicit padding.
Changed -g switch to emit DW_LANG_D debug info, make demangling work with a patched GDB, still more work to do for full support of D's Dwarf extensions.
Added getNullValue helper method.
2008-12-01 02:10:16 +01:00
Tomas Lindquist Olsen
577237e073 Changed some hardcoded offset/alignment for classes in DMD, broke offsets for 64bits.
Changed ClassInfo generation to no longer access the default initializer of ClassInfo, fixes problems with index mismatch.
2008-11-30 20:22:09 +01:00
Christian Kamm
f14d97d786 Move storage of final vtbl from BaseClass to IrInterface: BaseClass instances are shared!
Always use the target's irstruct interfaceMap when building the const initializer.
Tango helloworld works again.
2008-11-30 11:25:40 +01:00
Tomas Lindquist Olsen
f46f865375 Removed KDevelop3 project files, CMake can generate them just fine!
Fixed function literals in static initializers.
Changed alignment of delegates from 2*PTRSIZE to just PTRSIZE.
Changed errors to go to stderr instead of stdout.
Fairly major rewriting of struct/union/class handling, STILL A BIT BUGGY !!!
2008-11-29 21:25:43 +01:00
Christian Kamm
cdbc4f84d2 Fix warnings on x86-64. By fvbommel. 2008-11-28 21:24:08 +01:00
Christian Kamm
d260cab7e9 Print llvm package string in version header. See #128. 2008-11-26 19:40:11 +01:00
Christian Kamm
375b6cd888 Apply Elrood's CMake changes from #124. Thanks a lot! 2008-11-24 18:17:58 +01:00
Christian Kamm
cb3e057631 Move tuple syntax copy for function arguments after semantic, to make sure
->ty contains the final value. Fixes run/t/tuple_20_A again.
2008-11-22 18:45:09 +01:00
Christian Kamm
ac28509bde Fix return type of OrOr and AndAndExp being set incorrectly if rhs is void. Thanks wilsonk! 2008-11-22 18:38:13 +01:00
Christian Kamm
ccd8810e68 Fix bug reported by downs. Related to delegate types within tuple template parameters. 2008-11-18 17:14:57 +01:00
Tomas Lindquist Olsen
41d9e79780 Fixed 64bit problem with aaValues runtime calls (assumed 32bits) 2008-11-16 20:42:45 +01:00
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