Commit Graph

3287 Commits

Author SHA1 Message Date
David Nadlinger
946156742c Detab RTTIBuilder. 2013-06-07 03:20:39 +02:00
David Nadlinger
4369776b27 Minor DVarValue refactoring. 2013-06-07 03:20:39 +02:00
David Nadlinger
c7c1c25f15 DValue: struct->class.
This is in line with an incoming upstream change making all
polymorphic structs classes, and also matches common coding
conventions.
2013-06-07 03:20:39 +02:00
David Nadlinger
f35a4507d3 DValue: Do not uselessly inherit from Object. 2013-06-07 03:20:39 +02:00
David Nadlinger
b2f2afad29 LDMD: Made error message on compiler execution error clearer.
It is also triggered when the compiler exits with a signal, etc.
2013-06-07 03:20:32 +02:00
David Nadlinger
187899b5e6 Avoid emitting invalid IR for function type TypeInfo metadata.
This fixes LLVM debug builds of the DMD testsuite.
2013-06-07 02:58:04 +02:00
David Nadlinger
43e27d0dd1 Remove USE_METADATA.
It has been on by default for quite some time now.
2013-06-07 02:48:53 +02:00
David Nadlinger
9fbad3c4ba Removed tautological checks.
They were probably used during initial development of the
pass to be able to disable emission of the global reference
by setting TD_TypeInfo to -1.
2013-06-07 02:45:44 +02:00
David Nadlinger
af699bd76e Rename TD_Confirm to TD_TypeInfo.
The old name probably was a reference to the fact that the
metadata node is used to _confirm_ that a metadata record
found by name really belongs to a given TypeInfo instance,
but I found it to be rather non-intuitive.
2013-06-07 02:41:10 +02:00
David Nadlinger
1c883c5071 Do not generate invalid memcpy() for struct self assignment.
This catches only the most trivial case, need to investigate
this further.

See GitHub #385.
2013-06-07 02:23:00 +02:00
David Nadlinger
63759239fd Minor array copy refactoring. 2013-06-07 02:23:00 +02:00
David Nadlinger
a8ae435c69 Remove bogous DtoMemCpy assertion.
DtoMemCpy is called with identical pointer arguments in
some legal cases.
2013-06-07 02:23:00 +02:00
kai
23e21bedbb Merge branch 'vectordi' 2013-06-06 08:20:45 +02:00
kai
f589bb4271 Improve debug info for vector types and skeleton for enums.
Adds the missing array information. Printing vector values work now.
Also adds a skeleton for enum types.
2013-06-06 07:27:58 +02:00
David Nadlinger
25522ea8b0 Merge branch 'release-0.11.0'.
Conflicts:
	cmake/Modules/FindLLVM.cmake
	runtime/phobos
2013-06-05 17:50:16 +02:00
David Nadlinger
c41ef6b95e Fold in MinGW Phobos test update. v0.11.0 2013-06-05 17:46:40 +02:00
David Nadlinger
5423a90c25 Search LLVM_ROOT_DIR before system directories. 2013-06-05 17:11:08 +02:00
David Nadlinger
47a1815892 Try llvm-config binaries with version suffix.
This allows us to pick up the newest available version on
several common Debian derivatives.

[Cherry-picked 2b4f49b4e from master.]
2013-06-05 17:11:05 +02:00
kai
905da30ce1 Implement debug info for static arrays.
This fixes issue #356.
2013-06-05 07:19:55 +02:00
David Nadlinger
89f9c239fa Merge branch 'release-0.11.0' 2013-06-04 16:50:08 +02:00
David Nadlinger
b2bacba7f4 Correct wiki URL in debug info.
The wiki is not available using SSL; thanks to Kai for noticing
this.
2013-06-04 16:46:15 +02:00
David Nadlinger
e84b2692b1 Fold in missed MinGW math bug fix. 2013-06-04 16:45:04 +02:00
David Nadlinger
3b38d34698 Fix up botched merge in 005f993. 2013-06-02 22:02:09 +02:00
David Nadlinger
005f993982 Merge branch 'release-0.11.0'.
Conflicts:
	gen/llvmhelpers.cpp
2013-06-02 21:53:41 +02:00
David Nadlinger
98e8c37bf5 Merge pull request #379 from klickverbot/initializer-type-mismatch
Fix initializer type mismatch crash
v0.11.0-beta2
2013-06-02 12:44:02 -07:00
David Nadlinger
ec59399e21 Change all URLs to point to wiki.dlang.org for the time being. 2013-06-02 21:27:02 +02:00
David Nadlinger
c89d4809d6 Be more lenient with initializer type mismatch; zext as necessary.
The integer initializer width mismatch issue should really be
fixed in the frontend, but is related to forward referencing
and thus hard to track down.

Also fixes an unlisted regression since the 2.061 merge, where
there would be a const(char*) vs. immutable(char*) mismatch
reported for some string constants.

GitHub: Fixes #378.
2013-06-02 21:05:33 +02:00
David Nadlinger
ae48a19251 Refactoring-only part of DtoConstExpInit fix. 2013-06-02 21:05:33 +02:00
David Nadlinger
d9ce9ce67b Removed TODO-riddled DtoInitializer only used in DtoVarDeclaration. 2013-06-02 21:05:33 +02:00
David Nadlinger
0a7eec400f Removed dead global initializer code. 2013-06-02 21:05:33 +02:00
kai
ab829663d6 Fix failing outbuffer test on Linux/PPC64 2013-06-02 17:54:47 +02:00
kai
573fd140e2 Fix failing outbuffer test on Linux/PPC64 2013-06-02 17:32:21 +02:00
kai
f523583955 Add missing asm file to phobos lib 2013-06-01 23:44:13 +02:00
kai
0a749b142a Add -mminimal-toc if compiling with gcc on ppc64.
Also adds an utility function to append a new value to a variable.
2013-06-01 22:13:37 +02:00
kai
b2a63c534d MSVC: gnuc.c/.h are no longer there 2013-06-01 21:40:50 +02:00
David Nadlinger
feeb5e95cc Merge tag 'v0.11.0-beta1' into release-0.11.0
The merge of the MinGW Port updates accidentally didn't make
it into the GitHub version of the release branch, even though
the tag was correct.
2013-06-01 13:53:47 +02:00
David Nadlinger
b84fd60f6d Merge pull request #377 from klickverbot/minimize-dmd-diff
Pick some low-hanging DMD-diff reduction fruit
2013-06-01 03:56:03 -07:00
David Nadlinger
9dd573d96d Remove what seems to be an ancient LLVM-only issue 314 fix. 2013-05-31 22:42:21 +02:00
David Nadlinger
c0a5145829 Remove DMDV2 to align with 2.062 upstream source. 2013-05-31 22:42:21 +02:00
David Nadlinger
1b4f0c5d4a Remove LDC-only workaround for 2206.
The bug has been fixed in upstream at least since 2.052.
2013-05-31 22:42:21 +02:00
David Nadlinger
7e7af8c920 Prefer Port over #if-switching on the compiler.
The issue might have to be revisited (with proper testing)
for FreeBSD or ARM.
2013-05-31 22:42:21 +02:00
David Nadlinger
ca3cd82805 Removed obsolete html.{h, c}.
Gone from upstream in 2.062 as well.
2013-05-31 22:42:21 +02:00
David Nadlinger
54696e3d3c Reflect the LLVM 3.1+ requirement in the CMake build system. 2013-05-31 22:33:21 +02:00
David Nadlinger
2b4f49b4e7 Try llvm-config binaries with version suffix.
This allows us to pick up the newest available version on
several common Debian derivatives.

GitHub: Fixes #376.
2013-05-31 22:31:38 +02:00
David Nadlinger
b9722d6671 Merge branch 'release-0.11.0'.
GitHub: Closes #375.
2013-05-31 22:22:50 +02:00
kai
26eb95d91e Add debug info for vector types. 2013-05-31 22:22:19 +02:00
David Nadlinger
2617db0395 Merge pull request #346 from klickverbot/m32m64
Only specify -m32/-m64 for archs where the variants exist.
2013-05-31 12:10:49 -07:00
David Nadlinger
759f47f6bf Merge pull request #374 from klickverbot/remove-3.0
Remove LLVM 3.0 support
2013-05-31 12:09:44 -07:00
David Nadlinger
3f358ac57b Removed LLVM support from druntime as well. 2013-05-31 20:48:38 +02:00
David Nadlinger
c02b38fe9a Removed LLVM 3.0 compatibility code.
There might be still some pieces left here and there, and
there is certainly code that could be rewritten in a nicer
way with the 3.0 requirement out of the picture.
2013-05-31 20:48:38 +02:00