Files
swift-mirror/lib/Sema/CMakeLists.txt
Konrad `ktoso` Malawski 6008b32789 [Distributed] initial distributed support, fixed availability (#37650)
* [Distributed] Initial distributed checking

* [Distributed] initial types shapes and conform to DistributedActor

* [Distributed] Require Codable params and return types

* [Distributed] initial synthesis of fields and constructors

* [Distributed] Field and initializer synthesis

* [Distributed] Codable requirement on distributed funcs; also handle <T: Codable>

* [Distributed] handle generic type params which are Codable in dist func

[Distributed] conformsToProtocol after all

* [Distributed] Implement remote flag on actors

* Implement remote flag on actors

* add test

* actor initializer that sets remote flag

[Distributed] conformances getting there

* [Distributed] dont require async throws; cleanup compile tests

* [Distributed] do not synthesize default implicit init, only our special ones

* [Distributed] properly synth inits and properties; mark actorTransport as _distributedActorIndependent

Also:

- do not synthesize default init() initializer for dist actor

* [Distributed] init(transport:) designated and typechecking

* [Distributed] dist actor initializers MUST delegate to local-init

* [Distributed] check if any ctors in delegation call init(transport:)

* [Distributed] check init(transport:) delegation through many inits; ban invoking init(resolve:using:) explicitly

* [Distributed] disable IRGen test for now

* [Distributed] Rebase cleanups

* [Concurrent] transport and address are concurrent value

* [Distributed] introduce -enable-experimental-distributed flag

* rebase adjustments again

* rebase again...

* [Distributed] distributed functions are implicitly async+throws outside the actor

* [Distributed] implicitly throwing and async distributed funcs

* remove printlns

* add more checks to implicit function test

* [Distributed] resolve initializer now marks the isRemote actor flag

* [Distributed] distributedActor_destroy invoked instead, rather than before normal

* [Distributed] Generate distributed thunk for actors

* [distributed] typechecking for _remote_ functions existing, add tests for remote funcs

* adding one XFAIL'ed task & actor lifetime test

The `executor_deinit1` test fails 100% of the time
(from what I've seen) so I thought we could track
and see when/if someone happens to fix this bug.

Also, added extra coverage for #36298 via `executor_deinit2`

* Fix a memory issue with actors in the runtime system, by @phausler

* add new test that now passes because of patch by @phausler

See previous commit in this PR.
Test is based on one from rdar://74281361

* fix all tests that require the _remote_ function stubs

* Do not infer @actorIndependent onto `let` decls

* REVERT_ME: remove some tests that hacky workarounds will fail

* another flaky test, help build toolchain

* [Distributed] experimental distributed implies experimental concurrency

* [Distributed] Allow distributed function that are not marked async or throws

* [Distributed] make attrs SIMPLE to get serialization generated

* [Distributed] ActorAddress must be Hashable

* [Distributed] Implement transport.actorReady call in local init

* cleanup after rebase

* [Distributed] add availability attributes to all distributed actor code

* cleanup - this fixed some things

* fixing up

* fixing up

* [Distributed] introduce new Distributed module

* [Distributed] diagnose when missing 'import _Distributed'

* [Distributed] make all tests import the module

* more docs on address

* [Distributed] fixup merge issues

* cleanup: remove unnecessary code for now SIMPLE attribute

* fix: fix getActorIsolationOfContext

* [Distributed] cmake: depend on _concurrency module

* fixing tests...

* Revert "another flaky test, help build toolchain"

This reverts commit 83ae6654dd.

* remove xfail

* clenup some IR and SIL tests

* cleanup

* [Distributed] fix cmake test and ScanDependencies/can_import_with_map.swift

* [Distributed] fix flags/build tests

* cleanup: use isDistributed wherever possible

* [Distributed] don't import Dispatch in tests

* dont link distributed in stdlib unittest

* trying always append distributed module

* cleanups

* [Distributed] move all tests to Distributed/ directory

* [lit] try to fix lit test discovery

* [Distributed] update tests after diagnostics for implicit async changed

* [Distributed] Disable remote func tests on Windows for now

* Review cleanups

* [Distributed] fix typo, fixes Concurrency/actor_isolation_objc.swift

* [Distributed] attributes are DistributedOnly (only)

* cleanup

* [Distributed] cleanup: rely on DistributedOnly for guarding the keyword

* Update include/swift/AST/ActorIsolation.h

Co-authored-by: Doug Gregor <dgregor@apple.com>

* introduce isAnyThunk, minor cleanup

* wip

* [Distributed] move some type checking to TypeCheckDistributed.cpp

* [TypeCheckAttr] remove extra debug info

* [Distributed/AutoDiff] fix SILDeclRef creation which caused AutoDiff issue

* cleanups

* [lit] remove json import from lit test suite, not needed after all

* [Distributed] distributed functions only in DistributedActor protocols

* [Distributed] fix flag overlap & build setting

* [Distributed] Simplify noteIsolatedActorMember to not take bool distributed param

* [Distributed] make __isRemote not public

* [Distributed] Fix availability and remove actor class tests

* [actorIndependent] do not apply actorIndependent implicitly to values where it would be illegal to apply

* [Distributed] disable tests until issue fixed

Co-authored-by: Dario Rexin <drexin@apple.com>
Co-authored-by: Kavon Farvardin <kfarvardin@apple.com>
Co-authored-by: Doug Gregor <dgregor@apple.com>
2021-05-28 07:22:03 +09:00

85 lines
2.1 KiB
CMake

add_swift_host_library(swiftSema STATIC
BuilderTransform.cpp
CSApply.cpp
CSBindings.cpp
CSClosure.cpp
CSGen.cpp
CSRanking.cpp
CSSimplify.cpp
CSSolver.cpp
CSStep.cpp
CSFix.cpp
CSDiagnostics.cpp
CodeSynthesis.cpp
CodeSynthesisDistributedActor.cpp
ConstantnessSemaDiagnostics.cpp
Constraint.cpp
ConstraintGraph.cpp
ConstraintLocator.cpp
ConstraintSystem.cpp
DebuggerTestingTransform.cpp
DerivedConformanceActor.cpp
DerivedConformanceDistributedActor.cpp
DerivedConformanceAdditiveArithmetic.cpp
DerivedConformanceCaseIterable.cpp
DerivedConformanceCodable.cpp
DerivedConformanceCodingKey.cpp
DerivedConformanceDifferentiable.cpp
DerivedConformanceEquatableHashable.cpp
DerivedConformanceComparable.cpp
DerivedConformanceError.cpp
DerivedConformanceRawRepresentable.cpp
DerivedConformances.cpp
ImportResolution.cpp
InstrumenterSupport.cpp
LookupVisibleDecls.cpp
MiscDiagnostics.cpp
PCMacro.cpp
PlaygroundTransform.cpp
PreCheckExpr.cpp
ResilienceDiagnostics.cpp
SourceLoader.cpp
TypeCheckAccess.cpp
TypeCheckAttr.cpp
TypeCheckAvailability.cpp
TypeCheckCaptures.cpp
TypeCheckCircularity.cpp
TypeCheckCodeCompletion.cpp
TypeCheckConcurrency.cpp
TypeCheckDistributed.cpp
TypeCheckConstraints.cpp
TypeCheckDecl.cpp
TypeCheckDeclObjC.cpp
TypeCheckDeclOverride.cpp
TypeCheckDeclPrimary.cpp
TypeCheckEffects.cpp
TypeCheckExpr.cpp
TypeCheckExprObjC.cpp
TypeCheckGeneric.cpp
TypeCheckNameLookup.cpp
TypeCheckPattern.cpp
TypeCheckPropertyWrapper.cpp
TypeCheckProtocol.cpp
TypeCheckProtocolInference.cpp
TypeCheckRequestFunctions.cpp
TypeCheckStmt.cpp
TypeCheckStorage.cpp
TypeCheckSwitchStmt.cpp
TypeCheckType.cpp
TypeChecker.cpp
IDETypeCheckingRequests.cpp)
if(SWIFT_FORCE_OPTIMIZED_TYPECHECKER)
if(CMAKE_CXX_COMPILER_ID STREQUAL MSVC OR CMAKE_CXX_SIMULATE_ID STREQUAL MSVC)
target_compile_options(swiftSema PRIVATE /O2 /Ob2)
else()
target_compile_options(swiftSema PRIVATE -O3)
endif()
endif()
target_link_libraries(swiftSema PRIVATE
swiftAST
swiftParse
swiftSerialization)
set_swift_llvm_is_available(swiftSema)