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

Unified Diff: src/heap/object-stats.cc

Issue 2626863004: Revert of [TypeFeedbackVector] Root literal arrays in function literals slots (Closed)
Patch Set: Created 3 years, 11 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
« no previous file with comments | « src/debug/liveedit.cc ('k') | src/objects.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/heap/object-stats.cc
diff --git a/src/heap/object-stats.cc b/src/heap/object-stats.cc
index 67751696e06b69c0e455df571239861a7e3463bd..9f534a20e4ccf8850dc6ea5fd25e906a4eb63eb1 100644
--- a/src/heap/object-stats.cc
+++ b/src/heap/object-stats.cc
@@ -551,6 +551,26 @@
RecordFixedArrayHelper(sfi, optimized_code_map, OPTIMIZED_CODE_MAP_SUB_TYPE,
0);
// Optimized code map should be small, so skip accounting.
+ int len = optimized_code_map->length();
+ for (int i = SharedFunctionInfo::kEntriesStart; i < len;
+ i += SharedFunctionInfo::kEntryLength) {
+ Object* slot =
+ optimized_code_map->get(i + SharedFunctionInfo::kLiteralsOffset);
+ LiteralsArray* literals = nullptr;
+ if (slot->IsWeakCell()) {
+ WeakCell* cell = WeakCell::cast(slot);
+ if (!cell->cleared()) {
+ literals = LiteralsArray::cast(cell->value());
+ }
+ } else {
+ literals = LiteralsArray::cast(slot);
+ }
+ if (literals != nullptr) {
+ RecordFixedArrayHelper(sfi, literals, LITERALS_ARRAY_SUB_TYPE, 0);
+ RecordFixedArrayHelper(sfi, literals->feedback_vector(),
+ TYPE_FEEDBACK_VECTOR_SUB_TYPE, 0);
+ }
+ }
}
}
« no previous file with comments | « src/debug/liveedit.cc ('k') | src/objects.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698