Martin Kinkelin
a170aa4b2c
Don't let -unittest override -{enable,disable}-asserts
...
This conforms to a DMD breaking change too.
2018-12-21 22:16:45 +01:00
Martin Kinkelin
25dd4007e7
Don't let -release cmdline option override previous -{enable,disable}-{invariants,preconditions,postconditions,contracts}
...
This is a breaking change, conforming to new DMD semantics.
The previous semantics were inconsistent, as -{enable,disable}-asserts
and -boundscheck (as well as new -{enable,disable}-switch-errors)
weren't overridden.
2018-12-21 22:15:04 +01:00
Martin Kinkelin
389977d084
Add new cmdline option -mixin=<filename>
2018-12-21 20:17:50 +01:00
Martin Kinkelin
26c27c664d
Don't codegen header files (.di)
...
A port from dmd/mars.d.
2018-12-21 19:13:08 +01:00
Martin Kinkelin
32ecbdd266
Upgrade front-end & libs to v2.084.0-beta.1
2018-12-18 02:31:57 +01:00
Martin Kinkelin
c193ad8047
Upgrade to v2.083.0
2018-11-02 02:52:13 +01:00
Martin Kinkelin
4a23399236
Aim for consistent #includes (order + dir prefix)
...
I surely missed a few.
2018-10-20 16:19:46 +02:00
Martin Kinkelin
61a7e407ab
Add new command-line option -transition=<dtorfields|14246>
2018-10-20 16:19:46 +02:00
Martin Kinkelin
7776c4081b
Upgrade frontend & libs to v2.083.0-beta.1
2018-10-20 16:19:46 +02:00
Martin Kinkelin
5c24f60cf9
Raise min LLVM version to 3.9 ( #2872 )
2018-10-15 22:31:59 +02:00
Bernhard M. Wiedemann
3064d35c04
Don't print actual host CPU in version info with env variable SOURCE_DATE_EPOCH ( #2812 )
2018-09-27 23:13:02 +02:00
Martin Kinkelin
98707f0068
Add predef. versions D_{ModuleInfo,Exceptions,TypeInfo} for non-betterC
2018-08-18 15:08:17 +02:00
Martin Kinkelin
9a15cb6d35
Replace predefined versions WebAssembly{32,64} by general WebAssembly ( #2779 )
...
As that (+ D_LP64 for wasm64) is what DMD does, according to Petar
(https://github.com/ldc-developers/ldc/issues/2144#issuecomment-335181401 ).
See https://dlang.org/spec/version.html
2018-07-17 10:44:48 +02:00
Martin Kinkelin
631e29b761
Clang-format driver/main.cpp
2018-07-09 20:23:27 +02:00
Martin Kinkelin
22ec248c35
Add predefined version WebAssembly{32,64}
for WebAssembly targets
2018-07-09 20:23:27 +02:00
Johan Engelen
958a1b5b2e
Define D_AVX and D_AVX2 if the target support them. ( #2711 )
2018-05-25 18:38:57 +02:00
Martin Kinkelin
0cd14bf80e
Predefine version D_HardFloat instead of D_SoftFloat for -float-abi=softfp ( #2678 )
...
Matching the D_HardFloat semantics: 'the target hardware has a floating
point unit'.
2018-05-11 14:39:12 +02:00
Diederik de Groot
14fa5b9a3a
Set global.params.isDragonFlyBSD = triple->isOSDragonFly() ( #2690 )
2018-05-10 01:44:49 +02:00
Martin
6812e0bcd4
Merge branch 'master' into merge-2.079
...
Conflicts:
driver/cl_options.h
driver/configfile.h
ldc2.conf.in
ldc2_phobos.conf.in
2018-04-22 14:31:31 +02:00
Martin
82a6ccd293
Refactor default libs linker stuff to driver/linker.cpp
2018-04-21 18:23:59 +02:00
Martin
891234bbe4
Only set rpath when linking against shared default libs
2018-04-21 18:23:59 +02:00
Martin
025c69cc65
Merge branch 'master' into merge-2.079
...
Conflicts:
appveyor.yml
driver/main.cpp
runtime/druntime
runtime/phobos
2018-04-15 18:46:39 +02:00
Martin
5ac6c85655
Predefine version D_ObjectiveC _before_ printing predefs with -v
...
This fixes 64bit-macOS-exclusive runnable/test18335.sh.
2018-04-13 21:13:38 +02:00
Martin
eef57c8c10
Print _categorized_ help if there are no files in the cmdline
2018-04-12 00:12:59 +02:00
Martin
819073d90d
Enforce static default libs with cmdline option -static
2018-04-12 00:12:58 +02:00
Martin
3ff47b87cd
Support special case of -Xi=...
requiring no source file
...
This fixes dmd-testsuite's compilable/{test18367,json_nosource}.sh.
2018-03-31 02:11:36 +02:00
Martin
32b7637528
Include config file path in JSON output
...
Required for dmd-testsuite's compilable/json2.d.
Also fixes a bug regarding ConfigFile::path() with a null config file
path (e.g., when disabled explicitly via `-conf=`) - the
std::string(const char *) ctor segfaults for a null pointer arg,
whereas llvm::StringRef handles null pointers gracefully.
2018-03-30 23:56:42 +02:00
Martin
3d0f5c28ac
Implement (undocumented) cmdline option -Xi=<JSON field name>
2018-03-30 00:54:15 +02:00
Martin
b144fe1123
Merge branch 'master' into merge-2.079
...
Conflicts:
runtime/druntime
runtime/phobos
2018-03-30 00:06:01 +02:00
Martin
49f4200946
Implement cmdline option -i[=<pattern>] (include imports)
2018-03-30 00:02:02 +02:00
Radu Racariu
eebd2d4519
add MIPS32 predefined identifier
2018-03-26 17:59:59 +01:00
Radu Racariu
42ef1dd676
fixup abi for uclibc ( #2606 )
2018-03-24 16:19:23 +01:00
joakim-noah
04cd029bb9
Pull in Musl's assert function for betterC mode. ( #2604 )
2018-03-04 20:48:07 +01:00
Martin
5608825f6f
Merge branch 'master' into merge-2.079
2018-02-25 18:37:22 +01:00
Radu Racariu
af4ff423a1
Add the CRuntime_UClibc
version identifier ( #2597 )
...
Enable the `uclibc` in triple, example usage `arm-linux-uclibc`
2018-02-25 18:35:15 +01:00
Martin
df4f854dd5
Upgrade to D v2.079.0-beta.1
2018-02-20 02:04:41 +01:00
Johan Engelen
16ecb3e79f
Add LLVM-pass plugin support to LDC. Commandline flag: -plugin=...
. ( #2554 )
...
This adds functionality to load plugins such as the AFL llvm-mode plugin: https://github.com/mirrorer/afl/blob/master/llvm_mode/afl-llvm-pass.so.cc
Note that such plugins developed for Clang should also work for LDC !
2018-02-13 20:22:48 +01:00
David Nadlinger
68d3c64318
Merge pull request #2373 from kinke/musl
...
Add predefined version CRuntime_Musl
2018-01-31 00:05:47 +00:00
Martin
1b860e70d7
Merge branch 'master' into merge-2.078
2018-01-26 18:52:49 +01:00
Johan Engelen
8e0e688f5b
Explicitly pass triple to option initialization routine. [NFC] ( #2533 )
...
This removes the dependency on the global parameter / makes the dependency much more explicit.
2018-01-22 21:45:51 +01:00
Martin
197e65efde
Merge branch 'master' into merge-2.078
...
Conflicts:
driver/main.cpp
gen/cl_helpers.h
gen/declarations.cpp
runtime/druntime
tests/d2/dmd-testsuite
2018-01-20 11:20:17 +01:00
Johan Engelen
e8e28b33b2
PGO: Add IR-based PGO.
2018-01-16 00:02:49 +01:00
Martin Kinkelin
6b462b1018
Generalize defaultlibs cmdline help category to linking options ( #2496 )
2018-01-14 00:03:27 +01:00
Martin Kinkelin
0bfd332915
Forward user-specified shared libs to linker (issue #2445 ) ( #2485 )
2018-01-13 00:03:17 +01:00
Martin Kinkelin
1572c91fc0
Add -link-defaultlib-shared and rename -link-debuglib ( #2443 )
...
... to -link-defaultlib-debug (with alias for backwards compatibility).
-link-defaultlib-shared is to be used for switching between static and
shared default libs to be linked with.
It defaults to true when generating shared libraries (if shared
druntime/Phobos are supported for the target, i.e., not for Windows).
This is a benign breaking change!
2018-01-12 18:26:19 +01:00
Martin
d82b4a65e2
Add new switches -dip1008 and -transition=<intpromote|16997>
2018-01-06 03:20:36 +01:00
Martin
cfad799f48
Merge 2.078.0 front-end and stdlibs
2018-01-06 01:39:18 +01:00
Johan Engelen
7e7de7a69e
Move instrumentation options into their own .h/.cpp files. ( #2472 )
2017-12-28 11:44:51 +01:00
Nicholas Wilson
baf3654868
Fix compilation with most recent LLVM ( #2428 )
...
Fix LDC compilation with latest LLVM (Mostly renaming and moving headers).
2017-12-03 18:25:43 +08:00
Ivan
33c6cbb807
Renaming
2017-11-09 21:29:32 +03:00