Lines Matching refs:function
222 Handle<JSFunctionOrBoundFunctionOrWrappedFunction> function, in CopyNameAndLength() argument
251 LookupIterator it(isolate, function, isolate->factory()->length_string(), in CopyNameAndLength()
252 function); in CopyNameAndLength()
293 LookupIterator it(isolate, function, isolate->factory()->name_string()); in CopyNameAndLength()
306 Handle<JSBoundFunction> function) { in GetName() argument
311 while (function->bound_target_function().IsJSBoundFunction()) { in GetName()
315 function = handle(JSBoundFunction::cast(function->bound_target_function()), in GetName()
318 if (function->bound_target_function().IsJSWrappedFunction()) { in GetName()
320 JSWrappedFunction::cast(function->bound_target_function()), isolate); in GetName()
326 if (function->bound_target_function().IsJSFunction()) { in GetName()
328 JSFunction::cast(function->bound_target_function()), isolate); in GetName()
338 Handle<JSBoundFunction> function) { in GetLength() argument
339 int nof_bound_arguments = function->bound_arguments().length(); in GetLength()
340 while (function->bound_target_function().IsJSBoundFunction()) { in GetLength()
341 function = handle(JSBoundFunction::cast(function->bound_target_function()), in GetLength()
346 int length = function->bound_arguments().length(); in GetLength()
353 if (function->bound_target_function().IsJSWrappedFunction()) { in GetLength()
355 JSWrappedFunction::cast(function->bound_target_function()), isolate); in GetLength()
365 Handle<JSFunction> target(JSFunction::cast(function->bound_target_function()), in GetLength()
374 Handle<String> JSBoundFunction::ToString(Handle<JSBoundFunction> function) { in ToString() argument
375 Isolate* const isolate = function->GetIsolate(); in ToString()
381 Isolate* isolate, Handle<JSWrappedFunction> function) { in GetName() argument
386 handle(function->wrapped_target_function(), isolate); in GetName()
390 handle(JSBoundFunction::cast(function->wrapped_target_function()), in GetName()
395 handle(JSFunction::cast(function->wrapped_target_function()), isolate)); in GetName()
403 Handle<JSWrappedFunction> function) { in GetLength() argument
406 handle(function->wrapped_target_function(), isolate); in GetLength()
410 handle(JSBoundFunction::cast(function->wrapped_target_function()), in GetLength()
419 Handle<String> JSWrappedFunction::ToString(Handle<JSWrappedFunction> function) { in ToString() argument
420 Isolate* const isolate = function->GetIsolate(); in ToString()
481 Handle<JSFunction> function) { in GetName() argument
482 if (function->shared().name_should_print_as_anonymous()) { in GetName()
485 return handle(function->shared().Name(), isolate); in GetName()
490 Handle<JSFunction> function, bool reset_budget_for_feedback_allocation) { in EnsureClosureFeedbackCellArray() argument
491 Isolate* const isolate = function->GetIsolate(); in EnsureClosureFeedbackCellArray()
492 DCHECK(function->shared().is_compiled()); in EnsureClosureFeedbackCellArray()
493 DCHECK(function->shared().HasFeedbackMetadata()); in EnsureClosureFeedbackCellArray()
495 if (function->shared().HasAsmWasmData()) return; in EnsureClosureFeedbackCellArray()
498 Handle<SharedFunctionInfo> shared(function->shared(), isolate); in EnsureClosureFeedbackCellArray()
499 DCHECK(function->shared().HasBytecodeArray()); in EnsureClosureFeedbackCellArray()
502 (function->has_closure_feedback_cell_array() || in EnsureClosureFeedbackCellArray()
503 function->has_feedback_vector()); in EnsureClosureFeedbackCellArray()
511 function->SetInterruptBudget(isolate); in EnsureClosureFeedbackCellArray()
526 if (function->raw_feedback_cell() == isolate->heap()->many_closures_cell()) { in EnsureClosureFeedbackCellArray()
529 function->set_raw_feedback_cell(*feedback_cell, kReleaseStore); in EnsureClosureFeedbackCellArray()
530 function->SetInterruptBudget(isolate); in EnsureClosureFeedbackCellArray()
532 function->raw_feedback_cell().set_value(*feedback_cell_array, in EnsureClosureFeedbackCellArray()
539 Handle<JSFunction> function, in EnsureFeedbackVector() argument
542 DCHECK(function->shared().HasFeedbackMetadata()); in EnsureFeedbackVector()
543 if (function->has_feedback_vector()) return; in EnsureFeedbackVector()
545 if (function->shared().HasAsmWasmData()) return; in EnsureFeedbackVector()
548 CreateAndAttachFeedbackVector(isolate, function, compiled_scope); in EnsureFeedbackVector()
553 Isolate* isolate, Handle<JSFunction> function, in CreateAndAttachFeedbackVector() argument
556 DCHECK(function->shared().HasFeedbackMetadata()); in CreateAndAttachFeedbackVector()
557 DCHECK(!function->has_feedback_vector()); in CreateAndAttachFeedbackVector()
559 DCHECK(!function->shared().HasAsmWasmData()); in CreateAndAttachFeedbackVector()
562 Handle<SharedFunctionInfo> shared(function->shared(), isolate); in CreateAndAttachFeedbackVector()
563 DCHECK(function->shared().HasBytecodeArray()); in CreateAndAttachFeedbackVector()
565 EnsureClosureFeedbackCellArray(function, false); in CreateAndAttachFeedbackVector()
567 handle(function->closure_feedback_cell_array(), isolate); in CreateAndAttachFeedbackVector()
573 DCHECK(function->raw_feedback_cell() != in CreateAndAttachFeedbackVector()
575 function->raw_feedback_cell().set_value(*feedback_vector, kReleaseStore); in CreateAndAttachFeedbackVector()
576 function->SetInterruptBudget(isolate); in CreateAndAttachFeedbackVector()
581 Handle<JSFunction> function, IsCompiledScope* is_compiled_scope, in InitializeFeedbackCell() argument
583 Isolate* const isolate = function->GetIsolate(); in InitializeFeedbackCell()
590 if (function->shared().HasAsmWasmData()) return; in InitializeFeedbackCell()
593 if (function->has_feedback_vector()) { in InitializeFeedbackCell()
594 CHECK_EQ(function->feedback_vector().length(), in InitializeFeedbackCell()
595 function->feedback_vector().metadata().slot_count()); in InitializeFeedbackCell()
599 if (function->has_closure_feedback_cell_array()) { in InitializeFeedbackCell()
601 function->closure_feedback_cell_array().length(), in InitializeFeedbackCell()
602 function->shared().feedback_metadata().create_closure_slot_count()); in InitializeFeedbackCell()
613 CreateAndAttachFeedbackVector(isolate, function, is_compiled_scope); in InitializeFeedbackCell()
615 EnsureClosureFeedbackCellArray(function, in InitializeFeedbackCell()
622 void SetInstancePrototype(Isolate* isolate, Handle<JSFunction> function, in SetInstancePrototype() argument
626 if (function->has_initial_map()) { in SetInstancePrototype()
631 function->CompleteInobjectSlackTrackingIfActive(); in SetInstancePrototype()
633 Handle<Map> initial_map(function->initial_map(), isolate); in SetInstancePrototype()
640 function->set_prototype_or_initial_map(*value, kReleaseStore); in SetInstancePrototype()
644 JSFunction::SetInitialMap(isolate, function, new_map, value); in SetInstancePrototype()
646 *function != function->native_context().array_function()); in SetInstancePrototype()
656 function->set_prototype_or_initial_map(*value, kReleaseStore); in SetInstancePrototype()
666 void JSFunction::SetPrototype(Handle<JSFunction> function, in SetPrototype() argument
668 DCHECK(function->IsConstructor() || in SetPrototype()
669 IsGeneratorFunction(function->shared().kind())); in SetPrototype()
670 Isolate* isolate = function->GetIsolate(); in SetPrototype()
682 Map::Copy(isolate, handle(function->map(), isolate), "SetPrototype"); in SetPrototype()
686 JSObject::MigrateToMap(isolate, function, new_map); in SetPrototype()
688 FunctionKind kind = function->shared().kind(); in SetPrototype()
689 Handle<Context> native_context(function->native_context(), isolate); in SetPrototype()
700 function->map().set_has_non_instance_prototype(false); in SetPrototype()
703 SetInstancePrototype(isolate, function, construct_prototype); in SetPrototype()
706 void JSFunction::SetInitialMap(Isolate* isolate, Handle<JSFunction> function, in SetInitialMap() argument
708 SetInitialMap(isolate, function, map, prototype, function); in SetInitialMap()
711 void JSFunction::SetInitialMap(Isolate* isolate, Handle<JSFunction> function, in SetInitialMap() argument
718 function->set_prototype_or_initial_map(*map, kReleaseStore); in SetInitialMap()
722 handle(function->shared(), isolate)))); in SetInitialMap()
726 void JSFunction::EnsureHasInitialMap(Handle<JSFunction> function) { in EnsureHasInitialMap() argument
727 DCHECK(function->has_prototype_slot()); in EnsureHasInitialMap()
728 DCHECK(function->IsConstructor() || in EnsureHasInitialMap()
729 IsResumableFunction(function->shared().kind())); in EnsureHasInitialMap()
730 if (function->has_initial_map()) return; in EnsureHasInitialMap()
731 Isolate* isolate = function->GetIsolate(); in EnsureHasInitialMap()
734 CalculateExpectedNofProperties(isolate, function); in EnsureHasInitialMap()
739 if (function->has_initial_map()) return; in EnsureHasInitialMap()
744 if (IsResumableFunction(function->shared().kind())) { in EnsureHasInitialMap()
745 instance_type = IsAsyncGeneratorFunction(function->shared().kind()) in EnsureHasInitialMap()
763 if (function->has_instance_prototype()) { in EnsureHasInitialMap()
764 prototype = handle(function->instance_prototype(), isolate); in EnsureHasInitialMap()
766 prototype = isolate->factory()->NewFunctionPrototype(function); in EnsureHasInitialMap()
772 JSFunction::SetInitialMap(isolate, function, map, prototype); in EnsureHasInitialMap()
981 Handle<JSFunction> function = Handle<JSFunction>::cast(new_target); in GetDerivedMap() local
982 if (FastInitializeDerivedMap(isolate, function, constructor, in GetDerivedMap()
984 return handle(function->initial_map(), isolate); in GetDerivedMap()
993 Handle<JSFunction> function = Handle<JSFunction>::cast(new_target); in GetDerivedMap() local
994 if (function->has_prototype_slot()) { in GetDerivedMap()
996 EnsureHasInitialMap(function); in GetDerivedMap()
997 prototype = handle(function->prototype(), isolate); in GetDerivedMap()
1136 Handle<String> JSFunction::GetDebugName(Handle<JSFunction> function) { in GetDebugName() argument
1143 Isolate* isolate = function->GetIsolate(); in GetDebugName()
1144 if (!UseFastFunctionNameLookup(isolate, function->map())) { in GetDebugName()
1153 GetDataProperty(isolate, function, isolate->factory()->name_string()); in GetDebugName()
1156 return SharedFunctionInfo::DebugName(handle(function->shared(), isolate)); in GetDebugName()
1159 bool JSFunction::SetName(Handle<JSFunction> function, Handle<Name> name, in SetName() argument
1161 Isolate* isolate = function->GetIsolate(); in SetName()
1176 function, isolate->factory()->name_string(), function_name, in SetName()
1197 Handle<String> JSFunction::ToString(Handle<JSFunction> function) { in ToString() argument
1198 Isolate* const isolate = function->GetIsolate(); in ToString()
1199 Handle<SharedFunctionInfo> shared_info(function->shared(), isolate); in ToString()
1208 isolate, function, isolate->factory()->class_positions_symbol()); in ToString()
1258 Handle<JSFunction> function) { in CalculateExpectedNofProperties() argument
1260 for (PrototypeIterator iter(isolate, function, kStartAtReceiver); in CalculateExpectedNofProperties()