summaryrefslogtreecommitdiff
path: root/deps/v8/src/mark-compact.h
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/mark-compact.h')
-rw-r--r--deps/v8/src/mark-compact.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/deps/v8/src/mark-compact.h b/deps/v8/src/mark-compact.h
index 873534c2fa..ab3711a386 100644
--- a/deps/v8/src/mark-compact.h
+++ b/deps/v8/src/mark-compact.h
@@ -835,7 +835,7 @@ class MarkCompactCollector {
// Mark the string table specially. References to internalized strings from
// the string table are weak.
- void MarkStringTable();
+ void MarkStringTable(RootMarkingVisitor* visitor);
// Mark objects in implicit references groups if their parent object
// is marked.
@@ -853,6 +853,11 @@ class MarkCompactCollector {
// or implicit references' groups.
void ProcessEphemeralMarking(ObjectVisitor* visitor);
+ // If the call-site of the top optimized code was not prepared for
+ // deoptimization, then treat the maps in the code as strong pointers,
+ // otherwise a map can die and deoptimize the code.
+ void ProcessTopOptimizedFrame(ObjectVisitor* visitor);
+
// Mark objects reachable (transitively) from objects in the marking
// stack. This function empties the marking stack, but may leave
// overflowed objects in the heap, in which case the marking stack's
@@ -880,7 +885,7 @@ class MarkCompactCollector {
void ClearNonLiveMapTransitions(Map* map, MarkBit map_mark);
void ClearAndDeoptimizeDependentCode(Map* map);
- void ClearNonLiveDependentCode(Map* map);
+ void ClearNonLiveDependentCode(DependentCode* dependent_code);
// Marking detaches initial maps from SharedFunctionInfo objects
// to make this reference weak. We need to reattach initial maps