Commit Graph

1260 Commits

Author SHA1 Message Date
Doug Gregor
f03685b6d0 Introduce a command-line option to limit the # of typo corrections.
Typo correction can be particularly expensive, so introduce a
command-line flag to limit the number of typo corrections we will
perform per type-checker instance. Default this limit to 10.

Addresses rdar://problem/28469270 to some extent.
2017-07-10 11:40:35 -07:00
swift-ci
ad02e41239 Merge remote-tracking branch 'origin/master' into master-next 2017-07-02 13:06:41 -07:00
Carl Brown
dacbb8750f Linux Address and Thread Sanitizer Support (#6446) 2017-07-02 12:42:01 -07:00
swift-ci
609f493fcd Merge remote-tracking branch 'origin/master' into master-next 2017-06-30 16:08:53 -07:00
Graydon Hoare
411b13309a Merge pull request #10733 from graydon/rdar-32984579-emit-bc-depends-on-bridging-pch-as-well
[Bridging PCH] Move dependency-on-bridging-PCH to -emit-bc JobAction itself
2017-06-30 16:06:16 -07:00
Graydon Hoare
d4ff4537b9 [Bridging PCH] Move dependency-on-bridging-PCH to -emit-bc JobAction itself. 2017-06-30 15:13:41 -07:00
Arnold Schwaighofer
a72b685927 Merge remote-tracking branch 'origin/master' into master-next 2017-06-30 12:21:33 -07:00
David Farler
645aaad551 [index/build] Upstream indexing while building changes
This patch upstreams previously AppleInternal changes for
indexing while building.
2017-06-29 16:20:06 -07:00
Simon Evans
3ac5e12c67 [Linux] Reorder the -Xlinker and -l arguments
- Move the -Xlinker and -l options to just before swift_end.o

- Add testcase to check linker option ordering.
2017-06-29 13:10:04 +01:00
Simon Evans
03b067b949 [Linux] Reorder arguments for autolink files from swift-autolink-extract
- Reordering the auto link files when linking in static libraries
  and object files is required because the ordering of arguments
  is important, and the dependant libraries need to come after the
  objects/libs that require them. This is not a problem for
  libswiftCore.a but can be an issue with libs that sit on top of
  it, e.g. libFoundation.a

- Dont add an -rpath to the Swift dynamic libraries if using
  -static-stdlib
2017-06-29 13:08:15 +01:00
Greg Parker
7b009eccde Merge remote-tracking branch 'origin/master' into master-next 2017-06-28 15:25:17 -07:00
Michael Gottesman
3617134b69 [upstream-update] llvm::opt::filtered_{begin,end} => llvm::opt::filtered. 2017-06-22 21:17:01 -07:00
Jordan Rose
ad3c773446 Merge pull request #10381 from keith/ks/no-linking-rpath
Don't add rpath to swift with statically linking.
2017-06-20 09:01:18 -07:00
Keith Smiley
607312663b Don't add rpath to swift with statically linking
This updates the rpath linking logic to only add the rpath that points
to the swift dylibs in the case that the libraries are not statically
linked into the binary.
2017-06-19 13:36:47 -07:00
George Karpenkov
071f23eb63 Code review comments. 2017-06-16 13:26:46 -07:00
George Karpenkov
479aeca88c Addressing code review comments. 2017-06-16 13:26:46 -07:00
George Karpenkov
9637bd2c36 Change driver logic for sanitizers support.
With this patch different sanitizers (tsan/asan) will be enabled or
disabled on the driver level on a particular OS depending on whether
the required library is present.

The current patch only supports Darwin architectures, but Linux support
should not be hard to add.
2017-06-16 13:26:46 -07:00
swift-ci
e057a05fbe Merge remote-tracking branch 'origin/master' into master-next 2017-06-14 16:28:39 -07:00
Mishal Shah
c5ff1f2cac Update master to build with Xcode 9 beta 1, OS X 10.13, iOS 11, tvOS 11, and watchOS 4 SDKs. 2017-06-14 16:20:35 -07:00
swift-ci
6a0b7391f8 Merge remote-tracking branch 'origin/master' into master-next 2017-06-14 14:08:42 -07:00
Erik Verbruggen
97b9886a70 Do stricter checking of -D command-line arguments
Check if the condition "name" is a proper identifier, and generate an
error when assigning specific values in -D conditions.

Fixes SR-2404.
2017-06-13 23:19:08 -07:00
swift-ci
6afda14ba8 Merge remote-tracking branch 'origin/master' into master-next 2017-06-07 15:48:34 -07:00
Argyrios Kyrtzidis
ffd9e952d8 Merge pull request #10158 from akyrtzi/persistent-pch-diag-file
[driver] For the persistent bridging PCH job action, make sure to pass a serialized diagnostics path in the PCH output directory
2017-06-07 15:34:24 -07:00
Argyrios Kyrtzidis
563a37f053 [driver] For the persistent bridging PCH job action, make sure to pass a serialized diagnostics path in the PCH output directory
Previously it was passing a relative filename and the invocation was creating .dia files in the source directory.
If a filename is not determined for inside the PCH output directory, it fallsback to creating a temporary for the diagnostics file,
similarly to the non-persistent bridging PCH job.

rdar://32594291
2017-06-07 15:08:05 -07:00
swift-ci
54af467191 Merge remote-tracking branch 'origin/master' into master-next 2017-06-03 00:28:33 -07:00
Graydon Hoare
7fc8bd270b [Stats] Tidy up stray characters in filenames. 2017-06-02 23:42:38 -07:00
swift-ci
6366c9fe1c Merge remote-tracking branch 'origin/master' into master-next 2017-06-02 20:28:33 -07:00
Graydon Hoare
e10f483477 [Stats] Mangle a little more information into the file & timer names.
This helps disambiguate files that might otherwise be hard to sort through
if multiple runs output stats together in a single directory. The names
don't have to be perfect, just contain sufficient hints (and be parseable)
to differentiate module, arch, opt and output-type variation in jobs.
2017-06-02 18:08:31 -07:00
swift-ci
090239586a Merge remote-tracking branch 'origin/master' into master-next 2017-05-26 11:48:34 -07:00
Doug Gregor
dc2159c170 [Driver] Pass -warn-swift3-objc-inference-(minimal|complete) to the frontend.
Fixes rdar://problem/32428233.
2017-05-26 10:29:25 -07:00
swift-ci
d07f8e33e7 Merge remote-tracking branch 'origin/master' into master-next 2017-05-23 14:28:33 -07:00
Jordan Rose
45e5116683 [Driver] Don't remove temporary PCH files on crashes either. (#9881)
Follow-up to a875d8c7c.
2017-05-23 14:20:31 -07:00
swift-ci
fd4dcf4d21 Merge remote-tracking branch 'origin/master' into master-next 2017-05-22 17:28:34 -07:00
Jordan Rose
a875d8c7c7 [Driver] Preserve filelists when a subprocess crashes. (#9849)
This should make it easier to rerun crashed jobs that use filelists;
previously you'd have to run the top-level driver command again with
-save-temps. I didn't want to save /all/ temporary files because that
often includes things like .o files, which could fill up your disk
pretty quickly. But we can always tweak this later.
2017-05-22 17:14:20 -07:00
swift-ci
dd9f187a12 Merge remote-tracking branch 'origin/master' into master-next 2017-05-19 16:08:40 -07:00
Michael Ilseman
4640246263 Revert "[stdlib] Static stdlib requires explicit -licucore"
This reverts commit 0de2425112.
2017-05-18 19:41:55 -07:00
Michael Ilseman
116b5330bb Revert "[stdlib] Static linking test case"
This reverts commit f1a7c3df5b.
2017-05-18 19:41:45 -07:00
swift-ci
59a0f65617 Merge remote-tracking branch 'origin/master' into master-next 2017-05-18 16:49:07 -07:00
Michael Ilseman
f1a7c3df5b [stdlib] Static linking test case
Adds a test case that the compiler driver will properly insert
-licucore for static standard library builds. This test runs even on
builds that don't build a static standard library, so PR testing can
regressions here.
2017-05-18 14:33:09 -07:00
swift-ci
aedd24e637 Merge remote-tracking branch 'origin/master' into master-next 2017-05-18 12:28:41 -07:00
Michael Ilseman
0de2425112 [stdlib] Static stdlib requires explicit -licucore 2017-05-18 12:08:17 -07:00
swift-ci
0b164991ae Merge remote-tracking branch 'origin/master' into master-next 2017-05-13 16:48:31 -07:00
Argyrios Kyrtzidis
a6a3ebee6c [Driver] For the persistent PCH job there is no output path, the frontend determines the filename to use.
Previously the parseable output would have an empty string as the output of the PCH job, this fixes the issue.
2017-05-13 14:59:18 -07:00
swift-ci
4c56317e58 Merge remote-tracking branch 'origin/master' into master-next 2017-05-12 07:48:34 -07:00
Argyrios Kyrtzidis
4391ecc802 [Driver] For the 'emit persistent PCH' job, don't set an output filename. 2017-05-11 16:24:51 -07:00
Argyrios Kyrtzidis
c4b5b60d00 [Driver/ClangImporter] Changes for the driver to recognize -pch-output-dir and propagate to the frontend invocations
For the multiple-files mode -emit-pch is still invoked in separate frontend invocation but with using a persistent PCH.
Subsequent frontend invocations use the persistent PCH but they don't need to validate it.

For all-files mode (e.g. WMO) the frontend invocation uses a persistent PCH that it also validates.
2017-05-11 11:44:12 -07:00
swift-ci
502bda365b Merge remote-tracking branch 'origin/master' into master-next 2017-05-05 13:48:34 -07:00
practicalswift
492f5cd35a [gardening] Remove redundant repetition of type names (DRY): RepeatedTypeName foo = dyn_cast<RepeatedTypeName>(bar)
Replace `NameOfType foo = dyn_cast<NameOfType>(bar)` with DRY version `auto foo = dyn_cast<NameOfType>(bar)`.

The DRY auto version is by far the dominant form already used in the repo, so this PR merely brings the exceptional cases (redundant repetition form) in line with the dominant form (auto form).

See the [C++ Core Guidelines](https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#es11-use-auto-to-avoid-redundant-repetition-of-type-names) for a general discussion on why to use `auto` to avoid redundant repetition of type names.
2017-05-05 09:45:53 +02:00
swift-ci
33c6939430 Merge remote-tracking branch 'origin/master' into master-next 2017-04-28 22:51:25 -07:00
David Farler
bf52ff032a [Migrator] Conservative and Minimal @objc inference workflows
Based on recommendations in SE-0160, there are two migration workflows:

- Conservative: Maintain @objc visibility that was inferred in Swift 3
  by adding @objc to all declarations that were implicitily visible to
  the Objective-C runtime. This is invoked in the migrator by adding the
  -migrate-keep-objc-visibility flag.
- Minimal: Only declarations that must be visible to Objective-C based
  on their uses (or in cases like dynamic vars) are migrated.

rdar://problem/31876357
2017-04-28 18:28:34 -07:00