Commit Graph

1260 Commits

Author SHA1 Message Date
Jordan Rose
e9f71fd61c [Driver] We don't need arclite on pre-10.14 after all
Reverts the effects of df974b2190, but keeps the refactoring and nicer
tests.
2018-07-18 18:28:12 -07:00
swift-ci
718f53eae6 Merge remote-tracking branch 'origin/master' into master-next 2018-07-16 09:29:05 -07:00
Jordan Rose
851c0e0883 Merge pull request #16458 from dabelknap/verbose_linker
Run clang++ in verbose mode during linking if swiftc is called with "-v"
2018-07-16 09:16:22 -07:00
swift-ci
e6011356fb Merge remote-tracking branch 'origin/master' into master-next 2018-07-13 14:39:37 -07:00
Robert Widmann
2282065197 Rename "Name Binding" action to "Resolve Imports" 2018-07-13 11:00:48 -07:00
Robert Widmann
cb1e9dd821 Introduce Name Binding as a Frontend Action
Introduces the -name-bind frontend action that is intended as an intermediary between the parse-only actions and a full typechecking pass.  In this phase, module imports will be validated and resolved, making it possible to emit full make-style dependencies files among other things.

Note that all information available to a parse-only pass is available to name binding, but because it does not continue-on to typecheck input files, full semantic information is not.
2018-07-13 10:56:03 -07:00
swift-ci
829e88f371 Merge remote-tracking branch 'origin/master' into master-next 2018-07-13 09:19:33 -07:00
Jordan Rose
df974b2190 [Driver] Always link arclite when deploying earlier than macOS 10.14
For the upcoming hook in the ObjC runtime for class_getImageName
(see previous commit).
2018-07-12 15:48:58 -07:00
swift-ci
f1db8dec9f Merge remote-tracking branch 'origin/master' into master-next 2018-07-11 17:49:17 -07:00
Jordan Rose
b02d5543d4 Merge pull request #17843 from jrose-apple/batteries-included
[Driver] Always link compiler_rt on Darwin (when available)

rdar://problem/41911599
2018-07-11 17:35:06 -07:00
Austin Belknap
7dd3800a6b Make sure -o is the last option. 2018-07-11 15:29:52 -07:00
Jordan Rose
d11704bcc9 Add swift::getNonSimulatorPlatform for DarwinPlatformKind
And use it in getDarwinLibraryNameSuffixForTriple, making the logic
there clearer.

Suggested by David U!
2018-07-11 15:09:53 -07:00
Austin Belknap
16fdb8f03a Merge branch 'master' into verbose_linker 2018-07-11 09:22:34 -07:00
swift-ci
19195280d3 Merge remote-tracking branch 'origin/master' into master-next 2018-07-10 17:09:20 -07:00
Robert Widmann
81e9a3f660 [NFC] Drop PerformJobsState as a friend class
Make the coupling between PerformJobsState and Compilation indirect.
2018-07-10 14:57:01 -07:00
Jordan Rose
d4668833e0 [Driver] Only link to compiler_rt if present for the target platform
Tweak the tests to check this correctly.
2018-07-10 12:45:59 -07:00
Jordan Rose
64b3d88d93 [Driver] Always link compiler_rt on Darwin
Turns out it's needed for normal builtins that can appear in inlinable
functions, including Objective-C's @available. Clang always links it
unconditionally, so so should Swift.

Note that this does mean you have to build compiler_rt to get a
successful test run on Apple platforms. That was always true if you
wanted the sanitizer tests to work, though.

rdar://problem/41911599
2018-07-09 13:42:02 -07:00
Bob Wilson
e468fae196 Merge remote-tracking branch 'origin/master' into master-next 2018-07-04 11:13:51 -07:00
Ben Cohen
2b04e9f105 Suppress a number of warnings in no-assert builds (#17721)
* Supress a number of warnings about things used only in asserts

* Re-use a couple of variables instead of supressing the warning
2018-07-04 07:15:14 -07:00
swift-ci
3406cebee3 Merge remote-tracking branch 'origin/master' into master-next 2018-07-03 16:09:00 -07:00
Huon Wilson
0113ed01ce Merge pull request #17415 from huonw/remove-emit-public-type-metadata-accessors-flag
[Driver] Completely remove -emit-public-type-metadata-accessors.
2018-07-04 09:04:23 +10:00
Tony Allevato
78edd30ddf Implement -debug-prefix-map flag.
This flag is based on Clang's -fdebug-prefix-map, which lets the user remap absolute paths in debug info. This is necessary for reproducible builds and allows debugging to work on a different machine than the one that built the code when paths to the source may be different.
2018-07-01 18:22:15 -07:00
swift-ci
fc21b40f24 Merge remote-tracking branch 'origin/master' into master-next 2018-06-27 14:09:22 -07:00
David Ungar
c1c9cb8f5d Merge pull request #16762 from davidungar/buildCompilation-refactor-1
NFC: Some small refactoring in `buildCompilation`
2018-06-27 13:57:34 -07:00
David Ungar
62d8501f03 Remove unneeded comment. 2018-06-27 13:05:26 -07:00
David Ungar
3045a25e9c Fix wrong comment. 2018-06-22 13:47:30 -07:00
David Ungar
77ec1e1c36 Clarify lifetime of result of computeWorkingDirectory. 2018-06-22 13:41:53 -07:00
swift-ci
b9a3c06f2f Merge remote-tracking branch 'origin/master' into master-next 2018-06-22 10:29:41 -07:00
David Ungar
794a3d748d Merge pull request #16669 from davidungar/refdep-refactor
NFC, [Incremental Compilation] Refactor ReferenceDependencies
2018-06-22 10:14:36 -07:00
Bob Wilson
44712233c3 Merge remote-tracking branch 'origin/master' into master-next 2018-06-21 23:36:03 -07:00
Huon Wilson
db476ba5cd [Driver] Completely remove -emit-public-type-metadata-accessors.
This was retained to help ease migration between versions of the 4.2 compiler
between when the flag was originally introduced and the full fix landed. It's
not longer needed and there's no reason to retain it in the full release.

Fixes rdar://problem/40502379.
2018-06-22 11:31:27 +10:00
Jordan Rose
7d8e40b0bb Merge pull request #16362 from dabelknap/frontend_responsefile
Wrap Command Line Arguments in a Response File if System Limits are Exceeded

https://bugs.swift.org/browse/SR-4517
2018-06-21 16:31:20 -07:00
swift-ci
9092ac1caf Merge remote-tracking branch 'origin/master' into master-next 2018-06-20 10:10:28 -07:00
Ellis Hoag
c93a5a5776 Add -debug-info-format=[dwarf|codeview] option (#16888) 2018-06-20 09:52:57 -07:00
Austin Belknap
d6ec8fad74 Replace accessor methods in getArgumentsForTaskExecution. 2018-06-19 13:26:35 -07:00
Austin Belknap
9d51350ed8 Use an ArrayRef insead of a const reference. 2018-06-19 11:33:45 -07:00
Austin Belknap
d71373c95c Encapsulate the logic for returning a response file or the full arg vector. 2018-06-15 15:16:35 -07:00
David Ungar
43cad63742 clang-format 2018-06-15 11:18:16 -07:00
David Ungar
a9d7ef18e1 Centralize string constants. 2018-06-15 11:15:22 -07:00
David Ungar
272c5d87ed Small improvements from Jordan’s review. 2018-06-15 11:09:19 -07:00
David Ungar
9fd23bbeec Minor refactor of buildCompilation
1. Compute things closer to use, and use const, and
2. Factor out some computations into subroutines in order to shorten buildCompilation.
2018-06-15 10:51:05 -07:00
swift-ci
f71dc72e79 Merge remote-tracking branch 'origin/master' into master-next 2018-06-15 10:09:02 -07:00
Jordan Rose
8d43ec3ad7 Merge pull request #17087 from allevato/dwarf-command-line-flags
Make DWARF debug flag behavior match Clang.
2018-06-15 09:52:26 -07:00
Bob Wilson
5df3d1f100 Merge remote-tracking branch 'origin/master' into master-next 2018-06-14 20:51:48 -07:00
Graydon Hoare
dcc4373dab [BatchMode] <rdar://40526328> Emit signalled message (SIGINT) for batch constituents cancelled due to errors elsewhere. 2018-06-14 11:51:31 -07:00
Graydon Hoare
8be2c53b24 [BatchMode] Add -driver-batch-count to allow overriding batch count inferred by -j 2018-06-14 11:51:31 -07:00
Tony Allevato
0acc73ae4c Update flag name to -debug-info-store-invocation. 2018-06-12 18:32:35 -07:00
Bob Wilson
c3e02955bb [master-next] Adjust for VersionTuple moving from clang to llvm.
LLVM r334399 (and related Clang changes) moved clang::VersionTuple to
llvm::VersionTuple. Update Swift to match.

Patch by Jason Molenda.
rdar://problem/41025046
2018-06-12 16:44:11 -07:00
swift-ci
0a303788c9 Merge remote-tracking branch 'origin/master' into master-next 2018-06-11 10:29:22 -07:00
Tony Allevato
22ac700154 Make DWARF debug flag behavior match Clang.
Only write the compilation flags to debug info for Mach-O targets, and only
if the RC_DEBUG_OPTIONS environment variable is set.
2018-06-09 20:05:06 -07:00