OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 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 #ifndef V8_CODE_STUB_ASSEMBLER_H_ | 5 #ifndef V8_CODE_STUB_ASSEMBLER_H_ |
6 #define V8_CODE_STUB_ASSEMBLER_H_ | 6 #define V8_CODE_STUB_ASSEMBLER_H_ |
7 | 7 |
8 #include <functional> | 8 #include <functional> |
9 | 9 |
10 #include "src/compiler/code-assembler.h" | 10 #include "src/compiler/code-assembler.h" |
(...skipping 569 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
580 Node* AllocateFixedArray(ElementsKind kind, Node* capacity, | 580 Node* AllocateFixedArray(ElementsKind kind, Node* capacity, |
581 ParameterMode mode = INTPTR_PARAMETERS, | 581 ParameterMode mode = INTPTR_PARAMETERS, |
582 AllocationFlags flags = kNone); | 582 AllocationFlags flags = kNone); |
583 | 583 |
584 // Perform CreateArrayIterator (ES6 #sec-createarrayiterator). | 584 // Perform CreateArrayIterator (ES6 #sec-createarrayiterator). |
585 Node* CreateArrayIterator(Node* array, Node* array_map, Node* array_type, | 585 Node* CreateArrayIterator(Node* array, Node* array_map, Node* array_type, |
586 Node* context, IterationKind mode); | 586 Node* context, IterationKind mode); |
587 | 587 |
588 Node* AllocateJSArrayIterator(Node* array, Node* array_map, Node* map); | 588 Node* AllocateJSArrayIterator(Node* array, Node* array_map, Node* map); |
589 | 589 |
| 590 // Perform ArraySpeciesCreate (ES6 #sec-arrayspeciescreate). |
| 591 Node* ArraySpeciesCreate(Node* context, Node* originalArray, Node* len); |
| 592 |
590 void FillFixedArrayWithValue(ElementsKind kind, Node* array, Node* from_index, | 593 void FillFixedArrayWithValue(ElementsKind kind, Node* array, Node* from_index, |
591 Node* to_index, | 594 Node* to_index, |
592 Heap::RootListIndex value_root_index, | 595 Heap::RootListIndex value_root_index, |
593 ParameterMode mode = INTPTR_PARAMETERS); | 596 ParameterMode mode = INTPTR_PARAMETERS); |
594 | 597 |
595 // Copies all elements from |from_array| of |length| size to | 598 // Copies all elements from |from_array| of |length| size to |
596 // |to_array| of the same size respecting the elements kind. | 599 // |to_array| of the same size respecting the elements kind. |
597 void CopyFixedArrayElements( | 600 void CopyFixedArrayElements( |
598 ElementsKind kind, Node* from_array, Node* to_array, Node* length, | 601 ElementsKind kind, Node* from_array, Node* to_array, Node* length, |
599 WriteBarrierMode barrier_mode = UPDATE_WRITE_BARRIER, | 602 WriteBarrierMode barrier_mode = UPDATE_WRITE_BARRIER, |
(...skipping 870 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1470 } | 1473 } |
1471 #else | 1474 #else |
1472 #define CSA_SLOW_ASSERT(csa, x) ((void)0) | 1475 #define CSA_SLOW_ASSERT(csa, x) ((void)0) |
1473 #endif | 1476 #endif |
1474 | 1477 |
1475 DEFINE_OPERATORS_FOR_FLAGS(CodeStubAssembler::AllocationFlags); | 1478 DEFINE_OPERATORS_FOR_FLAGS(CodeStubAssembler::AllocationFlags); |
1476 | 1479 |
1477 } // namespace internal | 1480 } // namespace internal |
1478 } // namespace v8 | 1481 } // namespace v8 |
1479 #endif // V8_CODE_STUB_ASSEMBLER_H_ | 1482 #endif // V8_CODE_STUB_ASSEMBLER_H_ |
OLD | NEW |