| Index: src/code-stub-assembler.cc
|
| diff --git a/src/code-stub-assembler.cc b/src/code-stub-assembler.cc
|
| index 1fb8a2152ee587eb5176e6c46707fbf7f679efd5..385c09d662e71f19dfc7e2b18c84772b99e3368f 100644
|
| --- a/src/code-stub-assembler.cc
|
| +++ b/src/code-stub-assembler.cc
|
| @@ -8174,6 +8174,23 @@ Node* CodeStubAssembler::AllocateJSArrayIterator(Node* array, Node* array_map,
|
| return iterator;
|
| }
|
|
|
| +Node* CodeStubAssembler::AllocateJSIteratorResult(Node* context, Node* value,
|
| + Node* done) {
|
| + Node* const iter_result = Allocate(JSIteratorResult::kSize);
|
| + Node* const map = LoadContextElement(LoadNativeContext(context),
|
| + Context::ITERATOR_RESULT_MAP_INDEX);
|
| + StoreMapNoWriteBarrier(iter_result, map);
|
| + StoreObjectFieldRoot(iter_result, JSIteratorResult::kPropertiesOffset,
|
| + Heap::kEmptyFixedArrayRootIndex);
|
| + StoreObjectFieldRoot(iter_result, JSIteratorResult::kElementsOffset,
|
| + Heap::kEmptyFixedArrayRootIndex);
|
| + StoreObjectFieldNoWriteBarrier(iter_result, JSIteratorResult::kValueOffset,
|
| + value);
|
| + StoreObjectFieldNoWriteBarrier(iter_result, JSIteratorResult::kDoneOffset,
|
| + done);
|
| + return iter_result;
|
| +}
|
| +
|
| Node* CodeStubAssembler::IsDetachedBuffer(Node* buffer) {
|
| CSA_ASSERT(this, HasInstanceType(buffer, JS_ARRAY_BUFFER_TYPE));
|
|
|
|
|