[vm] Disallow simultaneous switchable call updates.

Note it is okay for the lookup part of a switchable call miss to race with the update of another thread's miss.

TEST=tsan
Bug: https://github.com/dart-lang/sdk/issues/61670
Bug: https://github.com/dart-lang/sdk/issues/61671
Change-Id: Iad28f0f180f311de69e982a64b872f773f9eaaba
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/453680
Reviewed-by: Alexander Aprelev <aam@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
This commit is contained in:
Ryan Macnak
2025-10-07 10:44:02 -07:00
committed by Commit Queue
parent cff98f605b
commit aea69bc76e
10 changed files with 30 additions and 57 deletions
-2
View File
@@ -79,8 +79,6 @@ class CodePatcher : public AllStatic {
const Code& target);
static ObjectPtr GetSwitchableCallDataAt(uword return_address,
const Code& caller_code);
static ObjectPtr GetSwitchableCallTargetAt(uword return_address,
const Code& caller_code);
static uword GetSwitchableCallTargetEntryAt(uword return_address,
const Code& caller_code);