Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(394)

Unified Diff: src/heap/objects-visiting.h

Issue 1252463002: [turbofan] Preserve cached code across GCs. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@local_opt-code-map-8
Patch Set: Flip default to "off", in our moment of triumph. Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/heap/objects-visiting.h
diff --git a/src/heap/objects-visiting.h b/src/heap/objects-visiting.h
index 1b788e893b7b23d0236d4acbe5e59ef61bee4f23..c52f066bbbef43ee2993fbf6aee141078d1b4be7 100644
--- a/src/heap/objects-visiting.h
+++ b/src/heap/objects-visiting.h
@@ -417,7 +417,6 @@ class StaticMarkingVisitor : public StaticVisitorBase {
// Skip the weak next code link in a code object.
INLINE(static void VisitNextCodeLink(Heap* heap, Object** slot)) {}
- // TODO(mstarzinger): This should be made protected once refactoring is done.
// Mark non-optimize code for functions inlined into the given optimized
// code. This will prevent it from being flushed.
static void MarkInlinedFunctionsCode(Heap* heap, Code* code);
@@ -440,6 +439,10 @@ class StaticMarkingVisitor : public StaticVisitorBase {
static void MarkMapContents(Heap* heap, Map* map);
static void MarkTransitionArray(Heap* heap, TransitionArray* transitions);
+ // Mark pointers in the optimized code map that should act as strong
+ // references, possibly treating some entries weak.
+ static void MarkOptimizedCodeMap(Heap* heap, FixedArray* code_map);
+
// Code flushing support.
INLINE(static bool IsFlushable(Heap* heap, JSFunction* function));
INLINE(static bool IsFlushable(Heap* heap, SharedFunctionInfo* shared_info));

Powered by Google App Engine
This is Rietveld 408576698