Commit Graph

3608 Commits

Author SHA1 Message Date
swift-ci
62782f1c05 Merge remote-tracking branch 'origin/main' into rebranch 2021-09-07 10:34:06 -07:00
Arnold Schwaighofer
ed6d1f49ff Don't optionally enable arm64_32 GlobalISel 2021-09-07 07:47:44 -07:00
swift-ci
88d5cced81 Merge remote-tracking branch 'origin/main' into rebranch 2021-09-02 16:33:04 -07:00
Artem Chikin
842b90939f Merge pull request #39139 from artemcm/DoNotBuildOnCanImport
Do not build Swift interface files into binary modules when performing a `canImport` query.
2021-09-02 16:21:39 -07:00
swift-ci
0fa1de5cd3 Merge remote-tracking branch 'origin/main' into rebranch 2021-09-02 16:14:41 -07:00
Doug Gregor
a6c88ee52c Disable availability checking when type-checking the _Concurrency interface
Swift 5.5 didn't support back deployment of concurrency features, so a
Swift 5.5 compiler processing the _Concurrency .swiftinterface will
produce errors for each `async` function and actor with pre-macOS
12/iOS 15 availability. Emit `-disable-availability-checking` into the
generated `.swiftinterface` files to allow Swift 5.5 to continue to
build them.

Finishes rdar://82602353.
2021-09-02 12:56:20 -07:00
Artem Chikin
1b7d55582d Do not build Swift interface files into binary modules when performing a canImport query.
We should hold off actually building the binary module file until it is imported.
`canImport` queries can happen, for example, during dependency scanning, when we do not wish to have the scanner tool execute any module builds.

Resolves rdar://82603098
2021-09-02 12:09:57 -07:00
Argyrios Kyrtzidis
d3ba531e64 [frontend] Support passing the optimization record file via the supplemental outputs map
The Swift driver is passing the optimization record file path via the supplementals output, instead of the flag, on certain circumstances.
Enhance the frontend to check supplemental outputs otherwise the record file will not get emitted when using the new swift driver.
2021-09-02 11:13:34 -07:00
swift-ci
961a676ef7 Merge remote-tracking branch 'origin/main' into rebranch 2021-08-30 16:04:20 -07:00
Arnold Schwaighofer
a864d4ed04 Don't enable GlobalISel on arm64e
It is not well supported

rdar://82082527
2021-08-30 13:06:49 -07:00
swift-ci
f436e69b01 Merge remote-tracking branch 'origin/main' into rebranch 2021-08-29 14:33:12 -07:00
swift-ci
aa5595e132 Merge remote-tracking branch 'origin/main' into rebranch 2021-08-28 22:53:46 -07:00
Doug Gregor
599974367e Enable concurrency back-deployment in the compiler by default.
Remove the option that explicitly enables concurrency back-deployment,
and instead always enable its support in the compiler. Remove the use
of the extraneous CMake option as well.
2021-08-28 22:43:41 -07:00
Doug Gregor
9d4ce58ed6 Merge pull request #38930 from DougGregor/concurrency-compatibility-library
[concurrency] Implement a compatibility .a library for Concurrency.
2021-08-28 22:40:37 -07:00
swift-ci
3c18ac16ca Merge remote-tracking branch 'origin/main' into rebranch 2021-08-25 12:34:12 -07:00
Doug Gregor
76c4ac8263 Add a temporary flag to stage in back-deployment of concurrency.
Add a frontend-only flag `-enable-experimental-back-deploy-concurrency`
to be used to stage in the back deployment of concurrency. At present,
all it does is lower the availability minimums for use of concurrency
features.
2021-08-23 12:55:58 -07:00
swift-ci
86f6f2e622 Merge remote-tracking branch 'origin/main' into rebranch 2021-08-22 14:34:00 -07:00
Xi Ge
00124eaca1 Merge pull request #38979 from nkcsgexi/compile-interface-gen-abi-baseline 2021-08-22 14:31:11 -07:00
Xi Ge
1a660c08ca Frontend: teach -compile-module-from-interface action to emit ABI descriptor as byproduct
We have implemented a libSwiftDriver-based tool to generate prebuilt module cache for
entire SDKs. Anchored on the same infrastructure, we could also generate ABI baselines
for entire SDKs.
2021-08-20 15:47:10 -07:00
swift-ci
13c2f68f85 Merge remote-tracking branch 'origin/main' into rebranch 2021-08-20 10:13:10 -07:00
Slava Pestov
ad1a9c0472 Merge pull request #38967 from slavapestov/clean-up-merged-assoc-types
RequirementMachine: Clean up merged associated type processing
2021-08-20 12:53:45 -04:00
swift-ci
13a25aa85b Merge remote-tracking branch 'origin/main' into rebranch 2021-08-20 09:13:20 -07:00
Slava Pestov
399a600e32 RequirementMachine: Add -debug-requirement-machine= flag to control debug output 2021-08-20 01:29:22 -04:00
Xi Ge
35cb97b8ad ABIChecker: minor refactoring to move code to APIDigester lib. NFC 2021-08-19 22:27:14 -07:00
Slava Pestov
fe2f42bc72 RequirementMachine: Rename -debug-requirement-machine flag to -dump-requirement-machine 2021-08-19 22:14:58 -04:00
swift-ci
49bbcaa5a0 Merge remote-tracking branch 'origin/main' into rebranch 2021-08-19 10:13:40 -07:00
Alexis Laferrière
f90f06dd59 Merge pull request #38939 from xymus/emit-module-separately-interface-hash
[Frontend] Generate an interface hash for emit-module-separately jobs
2021-08-19 09:57:07 -07:00
swift-ci
c47e426d5d Merge remote-tracking branch 'origin/main' into rebranch 2021-08-19 05:33:49 -07:00
Hamish Knight
7fd4406e0c Merge pull request #38915 from hamishknight/refactor-evaluate-print-loop
[test] Use %refactor-check-compiles in more places
2021-08-19 13:21:08 +01:00
Alexis Laferrière
fdc748591a [Frontend] Generate an interface has for emit-module-separately jobs 2021-08-18 13:58:16 -07:00
Michael Gottesman
1bc94bfa6a [concurrency] Implement a compatibility .a library for Concurrency.
In a back deployment scenario, this will provide a place where one could provide
function implementations that are not available in the relevant stdlib.

This is just setting up for future work and isn't doing anything interesting
beyond wiring it up/making sure that it is wired up correctly with tests.
2021-08-18 09:35:37 -07:00
swift-ci
e78b2363c1 Merge remote-tracking branch 'origin/main' into rebranch 2021-08-18 09:33:29 -07:00
Doug Gregor
725624fc1b [SE-0286] Disable backward scanning for trailing closures in Swift 6 mode. 2021-08-18 05:54:54 -07:00
swift-ci
0978b80f2c Merge remote-tracking branch 'origin/main' into rebranch 2021-08-18 05:53:25 -07:00
Doug Gregor
cafa2523d9 Merge pull request #38742 from beccadax/warring-triad
Start testing Swift 6 mode changes
2021-08-18 05:52:13 -07:00
Hamish Knight
71fb1691af [Frontend] Add -warn-on-editor-placeholder
This hidden frontend option lets us be more lax
when type-checking in the presence of editor
placeholders by treating them as holes during
constraint solving.
2021-08-18 13:21:05 +01:00
swift-ci
e30edb92c3 Merge remote-tracking branch 'origin/main' into rebranch 2021-08-17 17:53:24 -07:00
Arnold Schwaighofer
71f64ac348 Add option to enable global-isel on arm64 archs
LLVM will eventually switch over to using global-isel on arm64 archs.
Setting this option (SWIFT_ENABLE_GLOBAL_ISEL_ARM64) can be used to experiment
with that in Swift before the switch happens.
2021-08-17 13:41:46 -07:00
swift-ci
e0484efde8 Merge remote-tracking branch 'origin/main' into rebranch 2021-08-16 18:13:23 -07:00
swift-ci
1e5dc45cb7 Merge pull request #38889 from ktoso/wip-distributed-only-exp 2021-08-16 18:11:36 -07:00
swift-ci
4211b1bf1a Merge remote-tracking branch 'origin/main' into rebranch 2021-08-16 17:13:42 -07:00
Konrad `ktoso` Malawski
5617856ed0 [Distributed] remove DistributedAvailability, reuse Concurrency one 2021-08-17 07:29:51 +09:00
Konrad `ktoso` Malawski
fbd66e2b87 [Distributed] Only parse distributed when experimentla mode enabled 2021-08-16 18:11:06 +09:00
Doug Gregor
d54abea922 Implement customizable Sendable conformance diagnostics.
Rework Sendable checking to be completely based on "missing"
conformances, so that we can individually diagnose missing Sendable
conformances based on both the module in which the conformance check
happened as well as where the type was declared. The basic rules here
are to only diagnose if either the module where the non-Sendable type
was declared or the module where it was checked was compiled with a
mode that consistently diagnoses `Sendable`, either by virtue of
being Swift 6 or because `-warn-concurrency` was provided on the
command line. And have that diagnostic be an error in Swift 6 or
warning in Swift 5.x.

There is much tuning to be done here.
2021-08-14 08:13:10 -07:00
swift-ci
df9aa08965 Merge remote-tracking branch 'origin/main' into rebranch 2021-08-11 10:52:39 -07:00
Robert Widmann
d75b34be22 Merge pull request #38753 from CodaFi/modulo-modules
[NFC] Remove Unused Module Parameter to Conformance Lookup
2021-08-11 10:36:39 -07:00
swift-ci
1123f03d46 Merge remote-tracking branch 'origin/main' into rebranch 2021-08-09 14:33:42 -07:00
willtunnels
d2138d089e Rename --enable-experimental-opaque-return-types and gate structural … (#38780)
* Rename --enable-experimental-opaque-return-types and gate structural opaque types with a flag

* Separate out structural opaque type result builder tests
2021-08-09 17:27:59 -04:00
swift-ci
3934ec3ad1 Merge remote-tracking branch 'origin/main' into rebranch 2021-08-08 09:53:44 -07:00
Max Desiatov
d68fbe4f8c Wasm: add isOSWASI check for concurrency imports 2021-08-08 14:47:37 +01:00