Konrad `ktoso` Malawski
b666fc672e
[Executors] Remote distributed actors get "crash on enqueue" default executor ( #64969 )
2023-04-10 19:12:03 +09:00
Konrad `ktoso` Malawski
854b889781
Fix test using assume APIs, which landed concurrently to API renames
2023-04-04 13:16:52 +09:00
Konrad `ktoso` Malawski
10b49bcb85
[Executors] Ensure we treat DA older than 5.9 always as DefaultActor ( #64800 )
2023-04-04 11:04:53 +09:00
Konrad `ktoso` Malawski
b8780c9d9e
[Executors] Move assert/assume APIs onto actors; assumeIsolated() ( #64812 )
2023-04-04 07:44:43 +09:00
Konrad `ktoso` Malawski
ac6f569a21
Fix matching in distributed_actor_executor_ast.swift
2023-04-01 10:07:22 +09:00
Konrad `ktoso` Malawski
47676f9a71
[Distributed] AST test was too picky about asserting the shape; ( #64809 )
...
depending on configuration some attributes may not be present in the AST
here it seems, causing the test to fail in some configurations
2023-03-31 21:29:09 +09:00
Konrad `ktoso` Malawski
345c221f56
[Concurrency] Distributed actor's unownedExecutor should be optional ( #64499 )
2023-03-22 08:40:41 +09:00
Saleem Abdulrasool
06725cca3d
IRGen: correct field counting for distributed actors ( #64439 )
2023-03-17 13:31:19 +09:00
Allan Shortlidge
b2a1e16a80
Disable distributed_actor_assume_executor.swift because it is failing on Windows.
2023-03-16 13:17:07 -07:00
Konrad `ktoso` Malawski
5d2a311dda
[Executors] assumeOnLocalDistributedActorExecutor (isolated Act) ->
2023-03-16 13:23:47 +09:00
Konrad `ktoso` Malawski
41f99fc2ae
[Executors][Distributed] custom executors for distributed actor ( #64237 )
...
* [Executors][Distributed] custom executors for distributed actor
* harden ordering guarantees of synthesised fields
* the issue was that a non-default actor must implement the is remote check differently
* NonDefaultDistributedActor to complete support and remote flag handling
* invoke nonDefaultDistributedActorInitialize when necessary in SILGen
* refactor inline assertion into method
* cleanup
* [Executors][Distributed] Update module version for NonDefaultDistributedActor
* Minor docs cleanup
* we solved those fixme's
* add mangling test for non-def-dist-actor
2023-03-15 23:42:55 +09:00
Anthony Latsis
14b70f306b
DiagnosticVerifier: Default expected fix-it start line to the diagnostic's
2023-03-08 12:10:27 +03:00
Kyungwoo Lee
68563d9028
Fix Test in Release Build
...
This fixes `ninja check-swift-validation` in the Release+Distribution build as the block name is set under `#ifndef NDEBUG`.
2023-02-21 21:37:22 -08:00
Konrad `ktoso` Malawski
629ac65eb0
[Distributed] better test for SIL lifetime with AddressOnly types
2023-02-21 14:20:52 +09:00
Konrad `ktoso` Malawski
7ecfc8292b
[Distributed] correct take semantics for synthesized ID assignments
...
cleanup: no need to dump input always
2023-02-20 22:47:29 +09:00
Erik Eckstein
d25b1ed834
Optimizer: Replace the MandatoryCombine pass with a Simplification pass, which is implemented in Swift
...
The Swift Simplification pass can do more than the old MandatoryCombine pass: simplification of more instruction types and dead code elimination.
The result is a better -Onone performance while still keeping debug info consistent.
Currently following code patterns are simplified:
* `struct` -> `struct_extract`
* `enum` -> `unchecked_enum_data`
* `partial_apply` -> `apply`
* `br` to a 1:1 related block
* `cond_br` with a constant condition
* `isConcrete` and `is_same_metadata` builtins
More simplifications can be added in the future.
rdar://96708429
rdar://104562580
2023-02-09 06:50:05 +01:00
Konrad `ktoso` Malawski
f35cd69d4c
update accessor tests for 32bit
2023-02-06 21:32:07 +09:00
Konrad `ktoso` Malawski
af6eed9d5f
distributed_actor_accessor_thunks_64bit needed fixups
2023-02-06 21:29:20 +09:00
Konrad `ktoso` Malawski
0ffaf17509
[Distributed] move test file to more logical place
2022-12-02 12:58:56 +09:00
Konrad `ktoso` Malawski
b9e1b9cbc2
[Distributed] Fix dist property being implicitly async after refactor ( #61995 )
2022-11-10 19:23:47 +09:00
Allan Shortlidge
b3403ff9fc
Sema: Improve derived conformance diagnostics for actors.
...
Previously, actor declarations were identified by the diagnostics as classes.
2022-11-08 19:33:32 -08:00
Konrad `ktoso` Malawski
ae23892276
Merge branch 'main' into wip-prevent-async-overloads-dist
2022-09-20 20:31:04 +09:00
Hamish Knight
b12015c343
[SIL] Introduce the increment_profiler_counter instruction
...
This is a dedicated instruction for incrementing a
profiler counter, which lowers to the
`llvm.instrprof.increment` intrinsic. This
replaces the builtin instruction that was
previously used, and ensures that its arguments
are statically known. This ensures that SIL
optimization passes do not invalidate the
instruction, fixing some code coverage cases in
`-O`.
rdar://39146527
2022-09-07 17:55:13 +01:00
Hamish Knight
ab7b691cca
[Profiler] Fix distributed deinit crash when emitting coverage
...
We need to emit the profiler increment in the
`deinitBodyBB` if we're within a distributed
actor.
2022-09-01 20:29:50 +01:00
Holly Borla
8713d78704
[PrintOptions] Print explicit 'any' in SIL.
2022-08-18 01:15:12 -04:00
Duo Wang
21154d56f7
fix missing test codesign
2022-08-04 10:36:13 -07:00
Mishal Shah
a436f98fff
Merge pull request #60286 from wd-doylle/fix/test_codesign
...
[test] fix missing codesign in test files
2022-08-01 13:14:53 -07:00
Konrad `ktoso` Malawski
96462980fe
improve error reporting
2022-07-29 10:44:38 +09:00
Konrad `ktoso` Malawski
fbc829fbbd
[Distributed] Don't hang, but throw when target accessor not found
2022-07-29 09:33:38 +09:00
Duo Wang
72e0ac2819
[tests] fix missing codesign in test files
2022-07-28 13:59:44 -07:00
Pavel Yaskevich
ae0c942089
[Distributed] NFC: Re-enable two test-cases that used to fail on arm64e
2022-07-21 14:33:06 -07:00
Konrad `ktoso` Malawski
ac32323fbe
Disable test while we fix it; the SIL assertions are too detailed
2022-07-21 20:45:17 +09:00
Konrad `ktoso` Malawski
027c4a69c9
[Distributed] Prevent remote distributed actor from running deinit body
2022-07-14 17:56:03 +09:00
Konrad `ktoso` Malawski
db64d5a961
[Distributed] Disable test while we investigate arm64e issue
2022-07-07 12:58:12 +09:00
Konrad `ktoso` Malawski
6b8642cdf2
[Distributed] Prevent overloading on async in distributed methods, for wire compat
2022-07-05 18:49:42 +09:00
Konrad `ktoso` Malawski
728c007fb9
[Distributed] Implement witnesses for sync or non-throw dist reqs
...
[Distributed] generic and inner test; without one edge case
[Distributed] fix distributed_thunk test; unsure about those extra hops, could remove later
[Distributed] Remove type pretending in getSILFunctionType; it is not needed
It seems our constant replacement in the earlier phases is enough, and
we don't need this trick at all.
[Distributed] Use thunk when calling cross-actor on DA protocols
2022-07-04 19:02:11 +09:00
swift-ci
9aa2de4137
Merge pull request #41083 from kavon/inconvenienced-actors
...
[SE-327] Remove need for `convenience` for delegating initializers of an actor.
2022-06-30 14:56:32 -07:00
Konrad `ktoso` Malawski
ef525424f6
Merge pull request #59700 from xedin/distributed-computed-properties-via-accessor-thunk
...
[Distributed] Implement distributed computed properties via special accessor
2022-06-30 16:04:36 +09:00
Pavel Yaskevich
3006e92d56
[Distributed] NFC: XFAIL a couple of incorrect attr use tests
2022-06-29 14:49:10 -07:00
Pavel Yaskevich
84fa2322d3
[Distributed] Synthesize 'distributed thunk' accessor for distributed computed properties
2022-06-29 14:49:10 -07:00
Konrad `ktoso` Malawski
febfef97d4
[Distributed] Skeleton implementation of distributed computed properties
2022-06-29 14:49:04 -07:00
Kavon Farvardin
41134ea8a0
Remove the need for convenience on actor inits to delegate.
...
This is possible because actors do not support inheritance. There
is one specific exception to that rule, which is that an actor
can inherit from `NSObject` just to support ObjC interop.
This means an actor is effectively a final class.
resolves rdar://87568153
2022-06-27 16:01:08 -07:00
Konrad `ktoso` Malawski
fa077c1390
[Distributed] distributed func checks now work in protocols & dont crash
2022-06-27 17:17:45 +09:00
Konrad `ktoso` Malawski
22b20afce6
[Distributed] make witness be the distributed thunk
2022-06-27 17:08:55 +09:00
Konrad `ktoso` Malawski
6a2778645f
Revert "Merge pull request #59481 from xedin/distributed-computed-properties"
...
This reverts commit 8125a85a8f , reversing
changes made to 728971c5b7 .
2022-06-25 08:49:00 +09:00
Konrad `ktoso` Malawski
bfb69d7ef0
[Distributed] Unlock test which was ASAN failures in the past (2)
...
This was very very likely solved by our ID/ActorSystem property ordering, this would have indeed triggered ASAN.
Resolves rdar://92277271
2022-06-23 10:18:10 +09:00
Konrad `ktoso` Malawski
5b899e5fac
Merge pull request #59627 from apple/wip-asan-ok
...
[Distributed] Unlock test which was ASAN failures in the past
2022-06-23 10:17:03 +09:00
Konrad `ktoso` Malawski
1c58ee654d
[Distributed] Unlock test which was ASAN failures in the past
2022-06-22 09:30:59 +09:00
Konrad `ktoso` Malawski
53168355f0
[Distributed] Explicitly ban a class extending AnyActor as well
2022-06-22 09:21:55 +09:00
Pavel Yaskevich
fa2e64c1fd
[Distributed] Sema: Add a new distributed-thunk attribute
...
The attribute comes handy during solution application to
determine whether the call is using a distributed thunk.
2022-06-17 12:35:54 -07:00