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

Unified Diff: src/heap/heap.cc

Issue 1409123003: [runtime] Avoid @@isConcatSpreadable lookup for fast path Array.prototype.concat (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: fixing tests Created 4 years, 8 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/heap.cc
diff --git a/src/heap/heap.cc b/src/heap/heap.cc
index a2daab0925c8aed2c30842bf041bdf4583d60bdd..667134fc62c6c4cb92aa07f8f8cb378437fed82c 100644
--- a/src/heap/heap.cc
+++ b/src/heap/heap.cc
@@ -1242,7 +1242,7 @@ void Heap::ClearNormalizedMapCaches() {
if (!cache->IsUndefined()) {
NormalizedMapCache::cast(cache)->Clear();
}
- context = Context::cast(context)->get(Context::NEXT_CONTEXT_LINK);
+ context = Context::cast(context)->next_context_link();
}
}
@@ -2878,8 +2878,12 @@ void Heap::CreateInitialObjects() {
cell->set_value(the_hole_value());
set_empty_property_cell(*cell);
- Handle<PropertyCell> species_cell = factory->NewPropertyCell();
- species_cell->set_value(Smi::FromInt(Isolate::kArrayProtectorValid));
+ Handle<Cell> is_concat_spreadable_cell = factory->NewCell(
+ handle(Smi::FromInt(Isolate::kArrayProtectorValid), isolate()));
+ set_array_is_concat_spreadable_protector(*is_concat_spreadable_cell);
+
+ Handle<Cell> species_cell = factory->NewCell(
+ handle(Smi::FromInt(Isolate::kArrayProtectorValid), isolate()));
set_species_protector(*species_cell);
set_weak_stack_trace_list(Smi::FromInt(0));
« src/builtins.cc ('K') | « src/heap/heap.h ('k') | src/heap/incremental-marking.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698