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

Side by Side 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: merging with master 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 unified diff | Download patch
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/heap/heap.h" 5 #include "src/heap/heap.h"
6 6
7 #include "src/accessors.h" 7 #include "src/accessors.h"
8 #include "src/api.h" 8 #include "src/api.h"
9 #include "src/ast/scopeinfo.h" 9 #include "src/ast/scopeinfo.h"
10 #include "src/base/bits.h" 10 #include "src/base/bits.h"
(...skipping 2889 matching lines...) Expand 10 before | Expand all | Expand 10 after
2900 // Allocate the empty script. 2900 // Allocate the empty script.
2901 Handle<Script> script = factory->NewScript(factory->empty_string()); 2901 Handle<Script> script = factory->NewScript(factory->empty_string());
2902 script->set_type(Script::TYPE_NATIVE); 2902 script->set_type(Script::TYPE_NATIVE);
2903 set_empty_script(*script); 2903 set_empty_script(*script);
2904 2904
2905 Handle<PropertyCell> cell = factory->NewPropertyCell(); 2905 Handle<PropertyCell> cell = factory->NewPropertyCell();
2906 cell->set_value(Smi::FromInt(Isolate::kArrayProtectorValid)); 2906 cell->set_value(Smi::FromInt(Isolate::kArrayProtectorValid));
2907 set_array_protector(*cell); 2907 set_array_protector(*cell);
2908 2908
2909 cell = factory->NewPropertyCell(); 2909 cell = factory->NewPropertyCell();
2910 cell->set_value(
2911 Smi::FromInt(Isolate::kArrayIsConcatSpreadableProtectorValid));
2912 set_array_is_concat_spreadable_protector(*cell);
Toon Verwaest 2016/03/31 08:09:46 Unless you want to be able to add dependencies to
Camillo Bruni 2016/04/06 13:14:32 ok.
2913
2914 cell = factory->NewPropertyCell();
2910 cell->set_value(the_hole_value()); 2915 cell->set_value(the_hole_value());
2911 set_empty_property_cell(*cell); 2916 set_empty_property_cell(*cell);
2912 2917
2913 Handle<PropertyCell> species_cell = factory->NewPropertyCell(); 2918 Handle<PropertyCell> species_cell = factory->NewPropertyCell();
2914 species_cell->set_value(Smi::FromInt(Isolate::kArrayProtectorValid)); 2919 species_cell->set_value(Smi::FromInt(Isolate::kArrayProtectorValid));
2915 set_species_protector(*species_cell); 2920 set_species_protector(*species_cell);
2916 2921
2917 set_weak_stack_trace_list(Smi::FromInt(0)); 2922 set_weak_stack_trace_list(Smi::FromInt(0));
2918 2923
2919 set_noscript_shared_function_infos(Smi::FromInt(0)); 2924 set_noscript_shared_function_infos(Smi::FromInt(0));
(...skipping 3553 matching lines...) Expand 10 before | Expand all | Expand 10 after
6473 } 6478 }
6474 6479
6475 6480
6476 // static 6481 // static
6477 int Heap::GetStaticVisitorIdForMap(Map* map) { 6482 int Heap::GetStaticVisitorIdForMap(Map* map) {
6478 return StaticVisitorBase::GetVisitorId(map); 6483 return StaticVisitorBase::GetVisitorId(map);
6479 } 6484 }
6480 6485
6481 } // namespace internal 6486 } // namespace internal
6482 } // namespace v8 6487 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698