Commit Graph

1198 Commits

Author SHA1 Message Date
David Nadlinger
3e28eecfea Quick workaround for a LLVM 2.9 crash with higher optimization levels.
createFunctionAttrsPass() is a LLVM pass and the crash is deep in LLVM code, maybe something is wrong with the pass manager state.
2011-04-20 20:44:49 +02:00
David Nadlinger
8d545a18c1 Fix crash when declaration is coming without Loc from the front-end. 2011-04-20 19:30:43 +02:00
Kelly Wilson
72ea043124 Recommit klickverbot's patch for LLVM-2.9. 2011-04-20 09:28:37 -06:00
Kelly Wilson
7c81278b9c Backed out changeset 5253bfbb3890 2011-04-20 00:28:23 -06:00
Kelly Wilson
b26b0f4196 Upgrade to LLVM-2.9. Thanks to David Nadlinger for the patch. 2011-04-19 21:57:15 -06:00
Moritz Warning
dbd267cc95 merge 2011-04-07 01:12:27 +02:00
Alexey Prokhin
7f0ecdf7b9 More X86_64 ABI 2011-03-26 19:30:17 +03:00
Alexey Prokhin
375dcb095c Fix array comparison 2011-03-26 17:58:08 +03:00
Alexey Prokhin
3a2aedc9ac Fix building of the runtime as a shared library 2011-03-26 17:58:05 +03:00
Moritz Warning
fbb32c24cb another merge 2011-02-27 20:11:13 +01:00
Alexey Prokhin
a684dd2df9 ldc1 compiles again 2011-02-27 21:00:01 +03:00
Alexey Prokhin
063020fae6 Don't run postblit on references 2011-02-27 12:27:38 +03:00
Alexey Prokhin
70aee84c70 Fix passing of a padded struct to a function 2011-02-26 20:16:01 +03:00
Alexey Prokhin
20e6c65200 To follow D ABI, swap real and imaginary parts of a complex return value on X86_64
TODO: should we disable this transformation for ldc1 in order to keep its ABI unchanged?
2011-02-26 13:04:09 +03:00
Alexey Prokhin
1653abbbc9 Use StdCall calling convention on X86_64 2011-02-25 22:29:40 +03:00
Alexey Prokhin
e21fbc26e8 Fix imul and mul asm opcodes on X86_64 2011-02-25 22:29:34 +03:00
Alexey Prokhin
53fe662957 Fix a bunch of incorrect assert 2011-02-25 22:29:34 +03:00
Alexey Prokhin
28aa0e2bf3 Add missing postblit call 2011-02-25 22:29:28 +03:00
Alexey Prokhin
5fb97f3d3f Fix argument types of dvariadic functions 2011-02-25 22:28:59 +03:00
Alexey Prokhin
12984d9cc7 Fix size of classes 2011-02-25 22:28:59 +03:00
Alexey Prokhin
b03babcab6 Fixes in X86_64 ABI 2011-02-25 22:28:45 +03:00
Moritz Warning
b752882184 merge from alexeys branch 2011-02-24 13:22:17 +01:00
Moritz Warning
8275ffeb98 Fix casting of associative arrays; thanks to alexey 2011-02-24 13:08:36 +01:00
Moritz Warning
fb418bf2e6 Added -disable-red-zone flag.
This will disable the usage of the 'red-zone' in ABIs that make use of it (like x86). This mimics the exact flag used by clang. It is comparable to the -mno-red-zone flag in gcc. - thanks to wilkie
2011-02-23 23:50:53 +01:00
Alexey Prokhin
e921998d75 A few fixes for 64bit 2011-02-23 12:49:57 +03:00
Alexey Prokhin
aa5dfdfd4d Fix casting of associative arrays 2011-02-20 19:00:54 +03:00
Alexey Prokhin
f0a183f0e8 Fix a crash when compiling a file which contains an immutable class declaration 2011-02-20 19:00:53 +03:00
Alexey Prokhin
b0d97b139a It is probably wrong, but it fixes compilation of phobos with -g flag 2011-02-20 19:00:48 +03:00
Alexey Prokhin
6d89bfa961 Use _d_assocarrayliteralTX to initialize associative arrays. Replace depricated _d_arrayappendcT() by _d_arrayappendcTX(). Make sure that a l-value of a binassign expressions is only evaluated once (reapllied 1784 but only for D2) 2011-02-20 19:00:45 +03:00
Moritz Warning
89aeb05042 apply fixed debug info fix, see #452; thanks to sokol 2011-01-14 14:38:38 +01:00
Moritz Warning
ec2ea65977 revert 1784 2011-01-11 03:20:35 +01:00
Moritz Warning
9ca6717b5b revert 1826 2011-01-11 03:15:40 +01:00
Moritz Warning
f48f98c474 another ldc2 merge 2011-01-10 19:45:00 +01:00
Alexey Prokhin
38fe715638 Work on debug 2011-01-08 18:00:04 +03:00
Alexey Prokhin
553d5518b3 Implemented casting of a global variable to a pointer in an initializer. Implemented adding to a pointer in an initializer 2011-01-08 13:01:54 +03:00
Alexey Prokhin
e01aed4327 Fixed passing of static arrays into functions.
This patch finally do what commit 99ee6091cc5e supposed to do...
2011-01-07 09:46:46 +03:00
Alexey Prokhin
54e3121ad9 Reverted "Fixed passing of structs and static arrays into functions." 2011-01-06 20:06:27 +03:00
Alexey Prokhin
cbd0296328 Implemented CommaExp::cacheLvalue(). Fixed CallExp::chackLvalue(). 2011-01-06 19:41:54 +03:00
Alexey Prokhin
e9dacd97e2 Fixed passing of structs and static arrays into functions.
Not sure if it is correct, though.
2011-01-06 17:07:44 +03:00
Alexey Prokhin
81e0203a6c Fixed -oq flag 2011-01-06 15:50:47 +03:00
Alexey Prokhin
34987f71e2 Fixed some issues with phobos. 2011-01-06 13:00:06 +03:00
Alexey Prokhin
66edce9058 Reverted "Fixed a bunch of ldc1 regressions". Because there is a better way to fix them. 2011-01-06 11:45:38 +03:00
Robert Clipsham
2234264acf Merged klickverbot's off-by-one fixes for D optimisation passes. Thanks. 2011-01-05 23:39:32 +00:00
Alexey Prokhin
c5e9784863 Updated to dmdfe 2.051 2011-01-05 18:21:40 +03:00
Moritz Warning
f6b7d2a030 merge from ldc2 branch 2011-01-04 20:54:46 +01:00
Alexey Prokhin
8a4ee0ede5 Fixed a bunch of ldc1 regressions (thanks to mwarning) 2011-01-04 22:32:20 +03:00
Alexey Prokhin
02b307c0e9 Detect circular definition of typedef's 2011-01-04 20:03:29 +03:00
Alexey Prokhin
3ceb476d32 Inline assembler is not allowed in @safe functions 2011-01-04 19:18:53 +03:00
Alexey Prokhin
21659b6a5d Check in DtoNestedVariable() whether the needed frame can be accessed 2011-01-04 19:06:25 +03:00
Alexey Prokhin
67daf2fe0a Fix for variadic functions 2011-01-04 14:18:50 +03:00