Martin
241dc9135f
Fix error message formatting
2016-02-02 22:31:54 +01:00
Martin
2dfa5e8569
Some more cosmetic fixes
...
Found by searching for lines > 80 chars.
2015-11-05 19:12:32 +01:00
David Nadlinger
51afced357
Also clang-tidy driver/
2015-11-02 11:30:40 +02:00
David Nadlinger
44b0f7b615
driver/gen/ir: clang-format the world
...
This uses the LLVM style, which makes sense for sharing code
with other LLVM projects. The DMD code we use will soon all
be in D anyway.
2015-11-02 00:28:01 +02:00
Martin
60d676e2a1
Drop support for LLVM < 3.5
...
This allows to clean up the code a little.
2015-10-30 22:24:05 +01:00
David Nadlinger
0647f49aa5
driver: Mention size of allocas, do not repeat obvious types
...
The latter is particularly helpful for readability of code with
deeply nested templates, i.e. huge type names.
2015-09-15 18:15:49 +02:00
Kai Nacke
bb32dcd6de
Add new hidden option -no-integrated-as.
...
This is useful if the integrated assembler causes problems.
Also adds an architecture to the assembler command line in case
of compiling for MIPS.
2015-05-25 22:54:56 +02:00
Kai Nacke
90f7debeb2
Remove a wrong space in argument.
2015-05-24 19:42:59 +02:00
Kai Nacke
2331889669
MIPS: Implement ABI handling.
...
Adds a new command line option -mabi= and uses the value to compute
the ABI to use. Adds the ABI to linker and assembler invocation, too.
Allows consistent invocation of the whole tool chain.
2015-05-24 18:11:24 +02:00
kai
6ab801361a
LLVM 3.7: Debug info classes changed again.
...
The solution is to use a typedef to hide the differences in most cases.
2015-04-30 22:43:31 +02:00
Martin
fdd449c4e5
LLVM 3.7: Metadata refactoring continues
2015-04-22 12:17:42 +02:00
Kai Nacke
7a3ef8323b
LLVM 3.7: More metadata and output stream changes.
2015-04-16 07:19:28 +02:00
Kai Nacke
76a34f2e35
LLVM 3.7: More metadata changes
2015-04-09 22:14:12 +02:00
kai
f8bddb3e99
Add AssemblyAnnotationWriter.
...
Outputs debug information as comments in .ll file.
Provided by Trass3r.
2015-04-03 15:53:06 +02:00
Kai Nacke
1b7bca65b2
LLVM 3.7: Include of <llvm/Support/Path.h> is required
2015-03-25 19:05:12 +01:00
kai
6cb787aa6d
LLVM 3.7: Fix yet another DataLayoutPass reference.
2015-03-06 21:18:54 +01:00
unknown
e56ef8b86e
copy paste error fix
2015-02-16 15:27:19 -08:00
unknown
674b614807
Update of PassManager interface to match the corresponding deprecation in LLVM's trunk for 3.7
2015-02-16 15:11:42 -08:00
kai
4de1414c41
LLVM 3.7: Use new TargetMachine.getTargetIRAnalysis() analysis pass.
...
This replaces the TargetMachine.addAnalysisPasses() method.
2015-02-04 07:28:50 +01:00
kai
b8aed4538a
Another set of changes for AIX.
...
AIX uses the XCOFF format which is not supported by LLVM.
An external assembler must be used.
2014-11-16 06:11:27 +01:00
kai
bef163f559
Fix latest LLVM 3.6 changes
2014-09-19 06:49:34 +02:00
kai
1609cb4714
Enable integrated assembler on MinGW with LLVM 3.5 or later
2014-09-04 06:36:31 +02:00
kai
d6569c496e
LLVM 3.6 fix: stream constructor now takes std::error_code instead of std::string
2014-08-28 07:55:48 +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
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
a1b42f28ae
fix for llvm trunk
2014-07-17 00:11:09 +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
f8a53ab3dc
Merge branch 'merge-2.064' into merge-2.065
...
Conflicts:
runtime/druntime
2014-03-12 18:27:43 +01:00
kai
08b51f836a
Add code for the new DataLayoutPass in LLVM 3.5
2014-03-10 06:51:07 +01:00
kai
be1baa877a
Fix file reading modes for LLVM 3.5
2014-03-07 06:40:42 +01:00
Kai Nacke
fe39da53e3
Merge of 2.065.0-b3.
...
The new visitor class is used for IR generation. This removes some modifications from DMD source.
2014-02-10 08:47:25 +01:00
Kai Nacke
87afa717ae
Fix more files for LLVM 3.5.
2014-01-13 18:16:22 +01:00
David Nadlinger
0a8e1f78b7
Do not append unique suffix to asm file when -output-s is given.
...
This fixes a regression introduced by commit 50f145640
(pull request #473 ).
2013-09-15 23:41:55 +02:00
David Nadlinger
50f145640f
Use PathV1 for creating temporary files on pre-3.4 LLVM.
...
GitHub: Fixes #471 .
2013-09-15 17:03:39 +02:00
kai
81bf8c19a5
Fix a typo in keyowrd
2013-07-20 18:20:24 +02:00
kai
4e8acf7eb6
Fix for LLVM 3.4
2013-07-20 20:23:31 +02:00
kai
02d40239aa
unique_file was renamed to createUniqueFile in LLVM.
...
Fixes yet another LLVM 3.4 compile error.
2013-07-07 14:33:47 +02:00
kai
272230fe59
Make driver/toobj.cpp compatible with LLVM 3.4.
2013-06-29 17:11:14 +02:00
kai
cf88271ab9
Replace llvm::sys::Path with std::string.
...
In many cases this is straightforward. It makes the source LLVM 3.4 compatible without using #idef's.
2013-06-29 14:20:44 +02:00
kai
f1c71e4bac
Make ldc compatible with LLVM 3.4
...
Development of LLVM 3.4 started with a cleanup of the path class (PathV1).
The changes here let ldc compile at least with rev. 184039 of LLVM.
2013-06-15 19:52:29 +02:00
David Nadlinger
251607a1df
LLVM 3.3+: Initialize TargetTransformInfo.
2013-05-09 19:51:57 +02:00
David Nadlinger
8fd3eda728
Use the system assembler on MinGW.
...
MC does not support writing out the exception handling tables
to COFF files yet.
2013-02-13 00:07:55 +01:00
David Nadlinger
ccffe99b8a
Minor cleanup (avoid forward decl).
2013-02-13 00:07:54 +01:00
David Nadlinger
0a96aea868
Sort includes according to style guidelines:
...
1. Main include corresponding to .cpp file, if any.
2. DMD and LDC includes.
3. LLVM includes.
4. System includes.
Also updated a few include guards to match the default format.
2013-02-07 21:20:55 +01:00
David Nadlinger
8ff3a8060a
Use llvm_unreachable instead of assert(0).
...
Also removed some unused functions.
2013-02-07 03:38:15 +01:00
kai
272e7b7a55
Follow "The Great Renaming" in LLVM 3.3
...
This time VMCore was renamed to IR. Several top level include
files were moved to new subfolder IR.
2013-01-03 08:52:23 +01:00
David Nadlinger
9458911839
Added LLVM-style license headers to all our files.
2012-12-16 17:19:14 +01:00
David Nadlinger
8b7320c7c2
Removed last instance of CRLF newlines.
2012-12-16 17:19:14 +01:00