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