Commit graph

152 commits

Author SHA1 Message Date
David Nadlinger
e1ffd58732 Merge branch 'master' into merge-2.066
Conflicts:
	gen/functions.cpp
2014-09-14 15:29:43 +02:00
David Nadlinger
3ec1a01e8a [cleanup] Fix a couple of typos. 2014-09-14 14:54:17 +02:00
Kai Nacke
382ad184d8 Merge branch 'master' into merge-2.066
Conflicts:
	dmd2/builtin.c
	gen/classes.cpp
	gen/functions.cpp
	gen/llvmhelpers.cpp
	gen/statements.cpp
	gen/toir.cpp
	runtime/druntime
	runtime/phobos
2014-09-13 23:11:54 +02:00
Alexey Prokhin
a81c6c6f48 Add -enable-color/-disable-color switches 2014-09-06 20:30:19 +04:00
kai
fc4821ac7e More name clash fixes 2014-09-04 07:55:03 +02:00
kai
df0d302d5b Fix MingW build with LLVM 3.5
Starting with LLVM 3.5 it is better/required to use Triple.isWindowsGNUEnvironment().
Reported by Daniel N.
2014-08-26 18:57:12 +02:00
kai
aa35307f54 Fix LLVM 3.6 build 2014-08-23 20:02:43 +02:00
Alexey Prokhin
4be264848e Initialize traits string table 2014-08-22 16:26:16 +04:00
Alexey Prokhin
4d39ed89b4 Implement -boundscheck=on|safeonly|off 2014-08-22 16:01:35 +04:00
Alexey Prokhin
76dec46df5 WIP: merge dmdfe 2.066 2014-08-22 16:01:28 +04:00
kai
6aebfbdd0a Fix LLVM 3.6 build 2014-08-11 12:37:54 +02:00
kai
b73e5fb5ef Fix LLVM 3.6 build 2014-08-06 07:18:00 +02:00
Andreas Hollandt
6702954cda llvm API changes 2014-07-31 18:18:06 +02:00
Andreas Hollandt
a1b42f28ae fix for llvm trunk 2014-07-17 00:11:09 +02:00
David Nadlinger
b40099d96b driver: Emit __bss_start/_end as weak symbols to work around linker bug.
A similar problem as in upstream issue 13025 has been
observerd for LDC on Arch Linux (GNU ld 2.24) as well. This
is essentially the same workaround as Martin came up with in
D-Programming-Language/druntime#889. Because the linker
defines the symbols anyway as part of the default linker
script, the weak linkage actually makes no difference.
2014-07-14 02:36:42 +02:00
David Nadlinger
3503206ccc Do not try to verify/emit LLVM module on codegen error. 2014-07-11 18:11:16 +02:00
David Nadlinger
7ac8e17e2d Do not emit ModuleInfo for the implicit __entrypoint module.
This is in line with what DMD does, if of course with a
different implementation.
2014-07-10 01:20:43 +02:00
David Nadlinger
4abdec752e driver: Support code for shared library collision detection. 2014-07-10 00:45:10 +02:00
David Nadlinger
36e9465b7a driver: Factor out entry point module emission code. 2014-07-09 15:35:06 +02:00
David Nadlinger
3563225a5e Paste flags from config file in front of command line arguments.
This way, the user can override any defaults defined in the
config file.
2014-07-04 18:54:28 +02:00
David Nadlinger
d895c7f26d Make -defaultlib/-debuglib override instead of append; deprecate -nodefaultlib.
This is necessary as the only point of having -defaultlib
and -debuglib is to enable the user to customize the defaults
set in the configuration, for example to avoid linking to
Phobos.

GitHub: Fixes #416.
GitHub: Fixes #601.
2014-07-04 18:54:28 +02:00
David Nadlinger
407adffa9e Hide '-disable-debug-info-verifier'. 2014-06-30 18:15:37 +02:00
David Nadlinger
d8a7ae1841 Use --gc-sections on Linux.
This was painful.
2014-06-30 16:18:15 +02:00
David Nadlinger
5e5e25a1ce Hide some more LLVM-internal command line args. 2014-06-30 00:32:39 +02:00
kai
e62bbc97a2 Add more cpu architectures for LLVM 3.5
ppc64le, amd64, amd64_eb and armeb have been added to LLVM 3.5.
2014-06-28 18:15:46 +02:00
kai
8abfc2f35c Merge branch 'release-0.13.0' 2014-06-27 23:38:03 +02:00
kai
57419a59b4 Fix build with LLVM 3.5
Method codegenModule() used a FunctionPassManager instead of a PassManager. This results in an assertion failure.
Also initialize one more pass.
2014-06-27 22:26:33 +02:00
kai
b7615f6a28 Merge branch 'master' into merge-2.065
Conflicts:
	dmd2/declaration.h
	dmd2/dsymbol.h
	dmd2/func.c
	gen/functions.cpp
	gen/toir.cpp
	runtime/druntime
2014-06-23 07:57:30 +02:00
kai
7c289fd673 Introduce needsCodegen.
This is a backport of the code from 2.065.
2014-06-19 13:20:28 +02:00
Kai Nacke
92c06dede0 Merge branch 'merge-2.064' into merge-2.065
Conflicts:
	runtime/druntime
2014-05-10 21:38:37 +02:00
kai
e2a0b93645 Add binary and version information to verbose output.
The same information is printed by DMD. Also format list of predefined version identifiers to (roughly) 80 columns.
2014-04-29 07:07:52 +02:00
kai
456924116b Merge branch 'merge-2.064' into merge-2.065 2014-04-05 22:37:27 +02:00
Kai Nacke
38ab450c56 Print target information, version identifiers and linker commands in verbose output (-v). 2014-04-05 22:13:39 +02:00
Kai Nacke
a1e73fa609 Merge branch 'merge-2.064' into merge-2.065 2014-03-30 22:59:15 +02:00
Kai Nacke
38c98c3584 Add version identifiers of MIPS ABI.
Parses the feature string and appends the required ABI feature.
Uses the feature string to define the version identifier.
2014-03-30 22:39:05 +02:00
Kai Nacke
fa289d9e0c Remove long deprecated version identifiers 2014-03-29 23:33:15 +01:00
Kai Nacke
87d07a8f32 Merge branch 'merge-2.064' into merge-2.065 2014-03-29 23:14:28 +01:00
Kai Nacke
f85d2e071f Fix an annoying warning 2014-03-29 23:14:03 +01:00
Kai Nacke
7669191636 Merge branch 'merge-2.064' into merge-2.065 2014-03-23 15:38:46 +01:00
Kai Nacke
3eda031fe8 Dump all predefined version identifiers if logger is enabled. 2014-03-23 15:36:14 +01:00
Kai Nacke
230e174c5f Add predefined version identifier for float ABI. 2014-03-23 15:27:07 +01:00
kai
f8a53ab3dc Merge branch 'merge-2.064' into merge-2.065
Conflicts:
	runtime/druntime
2014-03-12 18:27:43 +01:00
kai
6442d79b8b Finally enable the vectorizer (at least in LLVM 3.5).
It still requires verification if this works with LLVM 3.4. Problem was the changed
initialisation of passes in LLVM 3.4/3.5.
2014-03-12 17:12:25 +01:00
kai
2f2fa92df3 Fix includes for LLVM 3.5 2014-03-07 06:40:39 +01:00
Kai Nacke
82ec8e9468 Merge branch 'merge-2.064' into merge-2.065
Conflicts:
	dmd2/cond.c
2014-03-05 19:10:46 +01:00
Kai Nacke
5b14a5e5c4 Merge branch 'master' into merge-2.064 2014-03-05 19:08:50 +01:00
Kai Nacke
6e908ff525 Add new architecture aarch64_be. 2014-03-05 19:01:43 +01:00
Kai Nacke
860ac74415 NVPTX/NVPTX64 is not available in LLVM 3.1. 2014-03-05 18:54:01 +01:00
Kai Nacke
7f44320dd0 Merge branch 'master' into merge-2.064 2014-03-05 18:48:11 +01:00
Kai Nacke
e735efc6aa Add version identifier for Nvidia PTX. 2014-03-05 18:47:28 +01:00