David Nadlinger
618051022f
Fixed crash in DtoCreateNestedContextType().
...
In some cases, like the following, DtoDeclareFunction() hasn't already been called when DtoCreateNestedContextType() is invoked. This seems to have been anticipated when the function was originally written, but DtoDeclareFunction() was previously called after the ir func was already accessed in fd->ir.irFunc->nestedContextCreated.
---
void main() {
mixin({
string foo() {
return "";
}
string bar()() {
return foo();
}
return bar();
}());
}
---
2011-07-28 23:17:20 +02:00
David Nadlinger
e397b29722
Fixed #448 for D2 and restored opOpAssign expression cache for D1.
...
When clearing the lvalue cache, the added-then-backed-out-then-added-back-for-D2-only code by Alexey permanently removed all casts from e1 (e1 is a member variable!), instead of only skipping them for the cachedLvalue assignment.
2011-07-28 23:10:22 +02:00
Alexey Prokhin
71a0a968ef
Fixed #6
2011-07-26 09:48:10 +04:00
Alexey Prokhin
a41b822420
Fixed ldc1 compilation
2011-07-26 09:30:36 +04:00
Alexey Prokhin
46c241009d
Fixed a segfault when compiling fail_compilation/fail105.d
2011-07-23 14:06:59 +04:00
Alexey Prokhin
79edefdc37
Fixed compilation of functions that does not have return statement but contain inline asm
2011-07-19 22:22:49 +04:00
Alexey Prokhin
06baaacdc0
Fixed an undefined reference if a postblit is annotated with @disabled
2011-07-19 20:20:00 +04:00
Alexey Prokhin
6576b68dfd
Added empty ImportStatement::toIR(). That fixes import from a function
2011-07-19 20:02:39 +04:00
Alexey Prokhin
4cc10019ee
Fixed an assertion in DtoType()
2011-07-19 19:58:38 +04:00
Alexey Prokhin
edd1ed5b09
DMD issue 693 & 5946 - Allow using 'this' for alias template parameter
2011-07-19 19:43:05 +04:00
Alexey Prokhin
ce799e9974
Fixed postblit call
2011-07-19 19:20:43 +04:00
Alexey Prokhin
2cc34c4005
Call desctructors on temporary variables
2011-07-19 19:20:42 +04:00
Alexey Prokhin
2220dd0559
'even' opcode on x86_64
2011-07-19 19:20:40 +04:00
Alexey Prokhin
c470a715a0
DMD issue 1570 - Wrong return for address operator
2011-07-19 19:20:39 +04:00
Alexey Prokhin
7a31b599cc
Updated to dmdfe 2.054
2011-07-19 19:20:38 +04:00
Alexey Prokhin
99f5a73125
Allow nonconstants in associative array initializers
2011-07-19 10:14:15 +04:00
Alexey Prokhin
bb2676dbe3
Fix unresolved symbol in the runnable/mixin2 test
2011-07-19 10:14:14 +04:00
Alexey Prokhin
596aad3738
DMD issue 3086 - TypeInfo opEquals returns incorrect results
2011-07-19 10:14:13 +04:00
Alexey Prokhin
aef7e0ee36
Fix array append with dollar op
2011-07-19 10:14:12 +04:00
Alexey Prokhin
4210f4285a
Fixed a few interpret regressions
2011-07-19 10:14:11 +04:00
Alexey Prokhin
462cdda4ae
Merge dmdfe 2.053beta
2011-07-19 10:14:04 +04:00
Alexey Prokhin
f3bf9fd277
Improve _d_arrayappendT call
2011-05-11 21:13:43 +04:00
Kelly Wilson
5d0f918e9e
Fix cmpxchg16b instruction for asm blocks. Thanks to wolfwood from the Xomb project for this fix.
2011-05-05 20:56:46 -06:00
Alexey Prokhin
3a0dfac597
Fix file paths in debug info
2011-04-30 17:35:40 +04:00
Alexey Prokhin
6548ce2e79
Fix a crash in OrOrExp::toElem
2011-04-30 15:30:58 +04:00
Alexey Prokhin
8da0d673cf
Rework vaarg support on X86_64
2011-04-30 15:30:57 +04:00
Alexey Prokhin
805fb5cfc1
D2: pass static arrays into functions by value
2011-04-30 15:30:57 +04:00
Alexey Prokhin
069f0a6262
Merged changes in TypeDArray::builtinTypeInfo() from dmdfe.
2011-04-30 15:30:57 +04:00
Alexey Prokhin
6bc2431b6b
Skip unittests in imported modules
2011-04-30 15:30:57 +04:00
Alexey Prokhin
73e498ace1
Do not use internal linkage for a function nested in a small function that can be inlined from other modules
2011-04-30 15:30:57 +04:00
David Nadlinger
7a24e12736
Cleanup: Remove unused code in backend, silence some warnings.
...
This removed quite some clutter that has presumably piled up because LDC is seldom built with a lot of warnings enabled due to DMDFE.
2011-04-24 12:21:33 +02:00
David Nadlinger
8f5f93057c
Changed DtoResolveNestedContext() return type to void – it didn't even have a return statement!
2011-04-24 11:39:53 +02:00
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