Commit graph

3545 commits

Author SHA1 Message Date
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
David Nadlinger
84a00b3fe9 Stop running Travis tests using LLVM 3.0.
Sets the stage for removal of 3.0 support.
2013-05-31 20:48:38 +02:00
David Nadlinger
f538dfc47f Merge branch 'klickverbot/shorten-readme' into release-0.11.0. 2013-05-31 20:00:46 +02:00
David Nadlinger
60bb550254 Merge pull request #369 from klickverbot/shorten-readme
Shorten readme
2013-05-31 08:53:36 -07:00
David Nadlinger
abfa498efb Merge pull request #370 from Uhlisys/master
Correct LDC Specific C++11 Violation
2013-05-31 08:42:14 -07:00
David Nadlinger
35b91f4e98 Merge pull request #371 from redstar/release-0.11.0
Change version number for release
2013-05-30 07:59:05 -07:00
kai
e0dd8ef8ef Change version number for release 2013-05-30 13:50:17 +02:00
David Nadlinger
fa7ad4cbc7 Merged in MinGW port updates.
This has been submitted to upstream DMD as GitHub pull
request #2086, but didn't make it in time for 2.063.
2013-05-29 22:19:13 +02:00
David Nadlinger
798a8e7822 MinGW: Fixed long double formatting. 2013-05-29 22:18:55 +02:00
David Nadlinger
0b5989c51a MinGW: Use actually working strtold.
Like their whole runtime in general, the MSVC version does
not handle 80 bit reals/long doubles.
2013-05-29 22:18:42 +02:00
David Nadlinger
bf4df5fcc4 Remove unnecessary #undefs in Port header.
The Port function names are actually camel-cased and
as such do not collide with the math macros, and undefining
the names in the header is just annoying on platforms where
you want to use the system macros in the implementation.
2013-05-29 22:18:27 +02:00
David Nadlinger
7ab407da38 Separate out MinGW Port implementation.
This explicit style is generally preferred in DMD for platform-
specific code, and makes sense here as long doubles are tricky
on MinGW.
2013-05-29 22:18:16 +02:00
Hans W. Uhlig
4f6204f191 Adding Space to Literal 2013-05-28 17:38:09 -07:00
Hans W. Uhlig
fb8bddd988 Correcting LDC Specific C++11 Violation 2013-05-28 17:23:54 -07:00
David Nadlinger
39313e7735 Ugly workaround for broken asm support in older CMake versions.
The only justification for this is the fact that we need it
to work for the release process.
2013-05-27 20:06:51 +02:00
David Nadlinger
00c073819f Avoid setting C compiler flags on threadasm.S. 2013-05-27 19:00:55 +02:00
David Nadlinger
9c4d6e2c5a *LLVM-based* D compiler. 2013-05-27 16:37:23 +02:00
kai
9a7e30a3f5 Add latest updates to exception handling code. 2013-05-24 16:09:32 +02:00
kai
4343965106 Use /LARGEADDRESSAWARE:NO only for debug builds with LLVM 3.4.
Most of the LLVM bugs regarding relocations are fixed now.
2013-05-24 16:07:25 +02:00
Kai Nacke
49de960952 Merge pull request #365 from redstar/todebug
Fix LLVM 3.4 change to DIBuilder.createFunction().
2013-05-24 03:48:18 -07:00
kai
1af71fa536 Fix LLVM 3.4 change to DIBuilder.createFunction().
DIBuilder.createFunction() now requires the return type to be of
subroutine type and consequently needs a DICompositeType.
2013-05-24 08:40:48 +02:00
David Nadlinger
a4a975df6c Rewrap to 70 characters. 2013-05-21 00:03:58 +02:00
David Nadlinger
6fcfa2db54 Removed brief build instructions. 2013-05-21 00:03:03 +02:00
David Nadlinger
6e57b6c213 Merge pull request #361 from klickverbot/osx
PIC by default on OS X; cleanups.
2013-05-19 15:33:11 -07:00
David Nadlinger
d402cd382e Always add 'uwtable' attribute on x86_64.
This is what Clang does, and omitting it could lead to problems
w.r.t. the System V ABI. Doesn't seem to have caused any issues
so far, though.
2013-05-19 21:47:15 +02:00
David Nadlinger
edbace8ae8 Default to PIC on OS X.
driver/target.h is due for a refactoring after the next
release is branched off.
2013-05-19 21:19:37 +02:00
David Nadlinger
4597423dc5 More IN_LLVM. 2013-05-19 20:52:51 +02:00
David Nadlinger
4ad1b94f11 Remove piece of dead code gone from upstream as well.
We do not support building with DMC anyway, so no
functionality change implied.
2013-05-19 20:52:42 +02:00
David Nadlinger
ad4eb1b6bd Align unused real alignment code to upstream source.
We set the target-specific values at runtime in Type::init().
2013-05-19 20:52:42 +02:00
David Nadlinger
8123c1c7b9 Pull in hack to reduce GC root ranges on Linux.
GitHub: #233.
2013-05-19 20:52:26 +02:00
David Nadlinger
8d0749c394 Merge pull request #360 from klickverbot/union-initializer
Unify struct initializer codegen, fix it for unions
2013-05-19 11:49:55 -07:00
David Nadlinger
87c8a96545 Check initializer type size in IrStruct::getDefaultInit(). 2013-05-19 20:25:16 +02:00
David Nadlinger
1fed92b9b7 VarExp::toElem refactoring and global size assertion.
Frontend errors shouldn't be used for glue layer consistency
checks – maybe the error was actually hit in ancient versions.
2013-05-19 20:25:16 +02:00
David Nadlinger
41e580a79f Get rid of now-obsolete DtoConstInitializerType. 2013-05-19 20:25:16 +02:00
David Nadlinger
eef05ba019 Do not try to guess exact initializer type.
This might have been required with the old (pre-3.0) LLVM
type system, but the module linker handles global type
resolution just fine now.

Also, it is virtually impossible to determine the type in
advance for some cases, e.g. an array of unions with an
initializer that contains pointers to the array itself.
2013-05-19 20:25:11 +02:00
David Nadlinger
f8f405000b Avoid confusing naming convention.
We generally do not really use underscore prefixes. But if
they are used in other codebases, they typically refer to
member variables.
2013-05-18 19:51:37 +02:00
David Nadlinger
7b435c2c87 Unify handling of struct initializers.
GitHub: Fixes #351.
2013-05-18 19:51:37 +02:00
David Nadlinger
b577d1cf0b Handle different element initializer types in array literals. 2013-05-18 16:46:57 +02:00
David Nadlinger
b49cbeaaf1 Factored out struct initializer constant generation. 2013-05-17 01:02:02 +02:00
David Nadlinger
beed5c3044 Get rid of empty IrBase class.
It isn't useful in any way now that the GC is out of the
picture, and the existance of a "dummy" toChars() method is
annoying when debugging.
2013-05-15 20:28:53 +02:00
David Nadlinger
f57eac796f Expand on IrType::get rationale. 2013-05-15 20:19:44 +02:00
kai
23df06a3ba Add <cctype> to asm-x86.h.
This removes a conditional block introduced for MSVC.
2013-05-13 21:19:01 +02:00
Kai Nacke
116432808b Merge pull request #352 from redstar/winldmd
Add missing include for Windows
2013-05-13 11:20:24 -07:00