| Index: src/deoptimizer.cc
|
| diff --git a/src/deoptimizer.cc b/src/deoptimizer.cc
|
| index 03c06b983a182abfb0f00777008e7fe8b92ed621..6339e39b8fc65523fbcd2acc1e787aebbc692ff5 100644
|
| --- a/src/deoptimizer.cc
|
| +++ b/src/deoptimizer.cc
|
| @@ -4061,6 +4061,23 @@ Handle<Object> TranslatedState::MaterializeCapturedObjectAt(
|
| object->set_length(*array_length);
|
| return object;
|
| }
|
| + case JS_BOUND_FUNCTION_TYPE: {
|
| + Handle<JSBoundFunction> object = Handle<JSBoundFunction>::cast(
|
| + isolate_->factory()->NewJSObjectFromMap(map, NOT_TENURED));
|
| + slot->value_ = object;
|
| + Handle<Object> properties = materializer.FieldAt(value_index);
|
| + Handle<Object> elements = materializer.FieldAt(value_index);
|
| + Handle<Object> bound_target_function = materializer.FieldAt(value_index);
|
| + Handle<Object> bound_this = materializer.FieldAt(value_index);
|
| + Handle<Object> bound_arguments = materializer.FieldAt(value_index);
|
| + object->set_properties(FixedArray::cast(*properties));
|
| + object->set_elements(FixedArrayBase::cast(*elements));
|
| + object->set_bound_target_function(
|
| + JSReceiver::cast(*bound_target_function));
|
| + object->set_bound_this(*bound_this);
|
| + object->set_bound_arguments(FixedArray::cast(*bound_arguments));
|
| + return object;
|
| + }
|
| case CONS_STRING_TYPE: {
|
| Handle<ConsString> object = Handle<ConsString>::cast(
|
| isolate_->factory()
|
| @@ -4178,7 +4195,6 @@ Handle<Object> TranslatedState::MaterializeCapturedObjectAt(
|
| case JS_WEAK_SET_TYPE:
|
| case JS_PROMISE_CAPABILITY_TYPE:
|
| case JS_PROMISE_TYPE:
|
| - case JS_BOUND_FUNCTION_TYPE:
|
| case JS_PROXY_TYPE:
|
| case MAP_TYPE:
|
| case ALLOCATION_SITE_TYPE:
|
|
|