Tomas Lindquist Olsen
dc5944df99
Implemented proper support for naked asm using llvm module level asm. Still not 100% complete, but already 1000 times better that what we had before. Don's BignumX86 implementation from Tango (when turned into a standalone unittest) seems to fully work with no changes, and great performance :)
...
Fixed align N; in asm blocks.
Fixed inreg parameter passing on x86 for ref/out params.
Removed support for lazy initialization of function local static variables, I have no idea why I ever implemented this, it's not in the D spec, and DMD doesn't support it :P
Some of the global variable related changes might cause minor regressions, but they should be easily fixable.
2009-02-03 08:54:57 +01:00
Tomas Lindquist Olsen
75591b3c16
Changed templates and typeinfo to use linkonce linkage instead of weak linkage, this should fix inlining problems, fixing bug #197 . If problems show up, it's easy to change it back by changing the define in mars.h . I'm 95% sure this is safe, given how we handle templates.
2009-02-02 01:44:51 +01:00
Tomas Lindquist Olsen
9b85a345e9
Removed use of TARGET_LINUX and replaced with POSIX, fixes bug [172]
2009-02-02 00:58:36 +01:00
Christian Kamm
01f19c466c
Fix #198 and #199 by making CTFE on static struct initializers work.
...
Renamed SymbolDeclaration to StaticStructInitDeclaration to make its usage clearer.
2009-02-01 20:20:56 +01:00
Christian Kamm
f2ce0df11c
Port some LDC1 portability fixes to LDC2. Fixes #196 .
2009-01-29 17:19:48 +01:00
Christian Kamm
c433e6fbbb
Apply patch for #193 . Thanks fvbommel.
2009-01-29 16:56:48 +01:00
Christian Kamm
320c22810a
Fix #174 .
2009-01-22 21:46:40 +01:00
Christian Kamm
ab9b9cc2e9
Solaris compatibility and proc map parsing #183 , thanks BlueZeniX!
2009-01-22 18:53:32 +01:00
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