Files
sdk/runtime/vm
Martin Kustermann 759caec558 [vm/concurrency] Add patchable_call_mutex and take it in miss handlers
We serialize all changes to patchable call state to ensure we always
make progress (e.g. transition from Monomorphic -> Polymorphic).

Only if the miss handler actually needs to patch the patchable call do
we stop mutators - if it only updates ICData we don't have to do that.
=> In the future we might introduce a more clever mechanism to avoid
   stopping mutators.

The CL also moves some locks from Isolate to IsolateGroup to ensure
all mutators use the same lock, since they operate on shared data
structures.

Issue https://github.com/dart-lang/sdk/issues/36097

TEST=Existing isolate tests that --enable-isolate-groups.

Change-Id: I4a11a8b8bb65581c6aba11cdf73acdea0f24a502
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174469
Reviewed-by: Alexander Aprelev <aam@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2020-12-02 18:14:18 +00:00
..
2019-08-08 00:47:55 +00:00
2019-10-07 18:13:06 +00:00
2020-06-26 09:39:15 +00:00
2019-10-27 18:18:29 +00:00
2020-09-17 06:07:50 +00:00
2020-11-16 23:52:40 +00:00
2020-12-02 16:35:58 +00:00
2020-05-04 21:15:27 +00:00
2020-10-28 17:42:35 +00:00
2020-10-28 17:42:35 +00:00
2020-06-17 14:01:54 +00:00
2020-10-28 17:42:35 +00:00
2020-10-28 17:42:35 +00:00
2020-10-28 17:42:35 +00:00
2020-05-04 21:15:27 +00:00
2020-08-06 19:55:12 +00:00
2020-08-06 19:55:12 +00:00