Skip to content

Commit 8b87e73

Browse files
committed
Merge commit 'f7dab643ff254ead592d7bd038d858ebc9f2570c' into analyzer
2 parents 443a5de + f7dab64 commit 8b87e73

15 files changed

+171
-122
lines changed

runtime/vm/flag_list.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,8 @@ constexpr bool kDartPrecompiledRuntime = false;
6868
P(compilation_counter_threshold, int, 10, \
6969
"Function's usage-counter value before interpreted function is compiled, " \
7070
"-1 means never") \
71+
P(concurrent_mark, bool, USING_MULTICORE, \
72+
"Concurrent mark for old generation.") \
7173
P(concurrent_sweep, bool, USING_MULTICORE, \
7274
"Concurrent sweep for old generation.") \
7375
R(dedup_instructions, true, bool, false, \

runtime/vm/heap/become.h

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -80,17 +80,16 @@ class Become : public AllStatic {
8080
// Useful for atomically applying behavior and schema changes.
8181
static void ElementsForwardIdentity(const Array& before, const Array& after);
8282

83-
// Update any references pointing to forwarding objects to point the
84-
// forwarding objects' targets. Used by the implementation of become and the
85-
// simplistic compactor.
86-
static void FollowForwardingPointers(Thread* thread);
87-
8883
// Convert and instance object into a dummy object,
8984
// making the instance independent of its class.
9085
// (used for morphic instances during reload).
9186
static void MakeDummyObject(const Instance& instance);
9287

9388
private:
89+
// Update any references pointing to forwarding objects to point the
90+
// forwarding objects' targets.
91+
static void FollowForwardingPointers(Thread* thread);
92+
9493
static void CrashDump(RawObject* before_obj, RawObject* after_obj);
9594
};
9695

runtime/vm/heap/pages.cc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1002,7 +1002,8 @@ void PageSpace::CollectGarbage(bool compact, bool finalize) {
10021002
#if defined(TARGET_ARCH_IA32)
10031003
return; // Barrier not implemented.
10041004
#else
1005-
if (FLAG_marker_tasks == 0) return; // Concurrent marking disabled.
1005+
if (!FLAG_concurrent_mark) return; // Disabled.
1006+
if (FLAG_marker_tasks == 0) return; // Disabled.
10061007
if (FLAG_write_protect_code) return; // Not implemented.
10071008
#endif
10081009
}

runtime/vm/isolate.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,9 +82,9 @@ DEFINE_FLAG_HANDLER(CheckedModeHandler, checked, "Enable checked mode.");
8282

8383
static void DeterministicModeHandler(bool value) {
8484
if (value) {
85-
FLAG_marker_tasks = 0; // Timing dependent.
8685
FLAG_background_compilation = false; // Timing dependent.
8786
FLAG_collect_code = false; // Timing dependent.
87+
FLAG_concurrent_mark = false; // Timing dependent.
8888
FLAG_concurrent_sweep = false; // Timing dependent.
8989
FLAG_random_seed = 0x44617274; // "Dart"
9090
#if !defined(PRODUCT) && !defined(DART_PRECOMPILED_RUNTIME)

0 commit comments

Comments
 (0)