Commit Graph
3258 Commits
Author SHA1 Message Date
David Nadlinger d17aa2aaac Disentangle -march and -mcpu.
-mcpu=native now actually works.

GitHub: Fixes #414.
2013-10-06 01:48:12 +02:00
David Nadlinger 02abf028f8 Don't require -triple when using -march.
There is really no reason we should, and I couldn't find out
why that check was added back in 2009.

Also cleaned up the code a bit now that the LLVM 3.0 branches
are gone.
2013-10-06 01:35:20 +02:00
David Nadlinger b2b56203a9 Use llvm::Triple::isArch64Bit (LLVM 3.1+). 2013-10-06 01:33:29 +02:00
David Nadlinger 639bc0ab71 Removed a few fatal() calls in argument parsing code.
global.errors is checked immediately after return anyway.
2013-10-06 01:33:29 +02:00
David Nadlinger b94ed4092e De-ancient-C-ification, spelled out EXIT_SUCCESS. 2013-10-06 01:33:29 +02:00
David Nadlinger 7e74f65b32 Also factored out argument parsing to separate function.
The code is still messy, but we have to start somewhere...
2013-10-06 01:33:28 +02:00
David Nadlinger cc11af3473 Factored predefined version handling code out of main(). 2013-10-06 01:33:28 +02:00
David Nadlinger 71c67457c3 Cleanup: Kill backend_init/term. 2013-10-06 01:33:28 +02:00
David Nadlinger 177b892bf0 Cleanup: We don't support DMC. 2013-10-06 01:33:28 +02:00
David Nadlinger 68c272d6d9 Renamed driver/target to .../targetmachine to avoid confusion with the frontend file. 2013-10-06 01:33:28 +02:00
David Nadlinger c5643219d4 Merge pull request #486 from klickverbot/dmd-diff
Low-hanging DMD diff reduction fruit
2013-10-05 15:43:17 -07:00
David Nadlinger b6a73fbd65 More trivial diff reduction now that #484 is in. 2013-10-05 22:04:54 +02:00
David Nadlinger ee7fe16e40 Low-hanging DMD diff reduction fruit.
The trailing whitespace isn't pretty, but removes the
files completly from the diff.
2013-10-05 21:19:35 +02:00
AlexeyProkhin 0e249c028e Merge pull request #484 from AlexeyProkhin/mtypeDiff2
Reduce mtype diff
2013-10-05 09:16:56 -07:00
Alexey Prokhin 19d8845bef DtoType doc 2013-10-05 19:41:43 +04:00
Alexey Prokhin 8d54cc539f Clean up mtype 2013-10-05 19:04:18 +04:00
Alexey Prokhin 8fea7484fe Don't use TypeFunction::funcdecl as it is about to be removed 2013-10-05 19:04:18 +04:00
Alexey Prokhin b819975c84 Eliminate the need for TypeFunction::funcdecl 2013-10-05 19:03:03 +04:00
David Nadlinger ca82589e25 Merge pull request #482 from klickverbot/ldmd-create-directory
LDMD: Create output directories if they do not exist.
2013-10-03 19:21:23 -07:00
David Nadlinger 7f20de16cf LDMD: Create output directories if they do not exist.
There might be other cases using the LLVM output code as well
that I haven't handled here, but the changes are sufficient to
make LDC work with rdmd on Linux.

GitHub: Fixes #480.
2013-10-02 18:09:47 +02:00
David Nadlinger c58c833be9 Trivial indentation fix. 2013-10-02 18:02:41 +02:00
David Nadlinger 75f990aa08 Merge pull request #478 from klickverbot/symoffexp-toconstelem
Fix SymOffExp::toConstElem.
2013-09-25 03:51:50 -07:00
David Nadlinger 20cc082413 Merge pull request #479 from klickverbot/ldmd-quiet
LDMD: Ignore -quiet, it is the default.
2013-09-21 10:00:08 -07:00
David Nadlinger f35176efad Fix SymOffExp::toConstElem.
I am surprised and horrified at the same time that the test suite
(on platforms other than Windows, where the code path is triggered
in core.stdc.stdio) did not catch this at all.

The elemSize-dependent path probably doesn't make too much sense for
global variables, as it always refers to the total size of the global.
Should add a special case for arrays for clearer codegen in those cases.

GitHub: Fixes #477.
2013-09-21 18:53:26 +02:00
David Nadlinger cf18366c46 LDMD: Ignore -quiet, it is the default.
GitHub: Fixes #472.
2013-09-21 18:31:14 +02:00
David Nadlinger b17a6421a4 Merge pull request #475 from klickverbot/assert-release-trap
Emit trap for assert(0) in release mode.
2013-09-15 23:46:26 -07:00
David Nadlinger fe20a7dfac Merge pull request #474 from klickverbot/mingw-invariant
Fix _d_invariant mangling on MinGW/Win32.
2013-09-15 14:54:22 -07:00
David Nadlinger 945f4882c2 Emit trap for assert(0) in release mode. 2013-09-15 23:53:52 +02: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 3556f52b95 Fix _d_invariant mangling on MinGW/Win32.
This is getting uglier and uglier, should probably just switch back
to extern(C) irrespective of what upstream DMD does.
2013-09-15 19:57:25 +02:00
David Nadlinger 286770ed7b Only use long double replacements on Win64; the MinGW runtime has them.
GitHub: Fixes #411.
2013-09-15 19:28:02 +02:00
David Nadlinger 61bc9eba52 Merge pull request #473 from klickverbot/assemble-temp-file
Use PathV1 for creating temporary files on pre-3.4 LLVM.
2013-09-15 08:59:35 -07: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
David Nadlinger dd2a2a6cf9 Merge pull request #456 from klickverbot/issue-447
Properly handle delegate literals in nested context code.
2013-09-12 14:38:03 -07:00
David Nadlinger 243146199f Function literals start again at nesting depth zero.
GitHub: Fixes #447.
2013-09-12 13:47:54 +02:00
David Nadlinger e5463f77b7 FuncDeclaration::nestedVars should only be filled in DtoCreateNestedContextType. 2013-09-12 13:46:45 +02:00
David Nadlinger 0063546bc3 Added newline at end of file. 2013-09-12 10:23:21 +02:00
David Nadlinger 90127ab87a Fix broken indentation in debug log output. 2013-09-12 10:21:01 +02:00
David Nadlinger 14bc59f31a Nested context creation code beautification. 2013-09-12 10:14:17 +02:00
kai e0288564a8 Fix annoying clang warning about missing newline 2013-09-11 06:56:08 +02:00
kai 22749e45b8 Add missing types for Linux/ARM 2013-09-08 18:54:45 +02:00
kai e205eafe74 Enabling multi-lib build for LLVM 3.3.
The required libs are only installed if OPTS contains the string "MULTILIB=ON".
In order to get the curl tests working with the dynamic lib an additional ln
is necessary.
2013-09-08 12:34:56 +02:00
kai d38448d664 Changed mangling for naked assembler on Win32.
Reported by Temtaime on the newsgroup!
2013-09-08 12:30:04 +02:00
kai f627fbbdb3 Fix broken merge 2013-09-08 00:27:04 +02:00
kai 269f8b08db Add types for Linux/AArch64. 2013-09-08 00:02:25 +02:00
David Nadlinger b3d8c497e1 Remove leftover D1-only comment. 2013-09-07 22:14:07 +02:00
kai fc24bd15ca Add version identifier for AArch64 2013-09-07 18:17:02 +02:00
kai 399a0396d2 Fix for issue #467 and partial fir for issue #455 2013-09-06 22:46:06 +02:00
kai ecf40bef59 Reverting last commit as it breaks a test 2013-09-06 22:30:02 +02:00
kai 1ce6e18a6e Fix for issue #467 2013-09-06 21:58:50 +02:00