Index: src/code-stubs.h |
diff --git a/src/code-stubs.h b/src/code-stubs.h |
index 3c007616cfd5b131322c587e3379cfb3247190e9..8e3fd81fcdf3806f6c193a58ad7a788bdb7b9310 100644 |
--- a/src/code-stubs.h |
+++ b/src/code-stubs.h |
@@ -57,7 +57,6 @@ namespace internal { |
V(VectorKeyedStoreIC) \ |
/* HydrogenCodeStubs */ \ |
V(ArrayNArgumentsConstructor) \ |
- V(ArraySingleArgumentConstructor) \ |
V(BinaryOpIC) \ |
V(BinaryOpWithAllocationSite) \ |
V(CreateAllocationSite) \ |
@@ -74,7 +73,6 @@ namespace internal { |
V(FastNewStrictArguments) \ |
V(GrowArrayElements) \ |
V(InternalArrayNArgumentsConstructor) \ |
- V(InternalArraySingleArgumentConstructor) \ |
V(KeyedLoadGeneric) \ |
V(LoadGlobalViaContext) \ |
V(LoadScriptContextField) \ |
@@ -104,6 +102,7 @@ namespace internal { |
V(AllocateUint8x16) \ |
V(AllocateBool8x16) \ |
V(ArrayNoArgumentConstructor) \ |
+ V(ArraySingleArgumentConstructor) \ |
V(StringLength) \ |
V(Add) \ |
V(Subtract) \ |
@@ -118,6 +117,7 @@ namespace internal { |
V(BitwiseXor) \ |
V(Inc) \ |
V(InternalArrayNoArgumentConstructor) \ |
+ V(InternalArraySingleArgumentConstructor) \ |
V(Dec) \ |
V(FastCloneShallowObject) \ |
V(InstanceOf) \ |
@@ -2911,25 +2911,39 @@ class InternalArrayNoArgumentConstructorStub |
CommonArrayConstructorStub); |
}; |
-class ArraySingleArgumentConstructorStub : public ArrayConstructorStubBase { |
+class ArraySingleArgumentConstructorStub : public CommonArrayConstructorStub { |
public: |
ArraySingleArgumentConstructorStub( |
- Isolate* isolate, |
- ElementsKind kind, |
+ Isolate* isolate, ElementsKind kind, |
AllocationSiteOverrideMode override_mode = DONT_OVERRIDE) |
- : ArrayConstructorStubBase(isolate, kind, override_mode) { |
- } |
+ : CommonArrayConstructorStub(isolate, kind, override_mode) {} |
private: |
void PrintName(std::ostream& os) const override { // NOLINT |
- BasePrintName(os, "ArraySingleArgumentConstructorStub"); |
+ os << "ArraySingleArgumentConstructorStub"; |
} |
- DEFINE_CALL_INTERFACE_DESCRIPTOR(ArrayConstructor); |
- DEFINE_HYDROGEN_CODE_STUB(ArraySingleArgumentConstructor, |
- ArrayConstructorStubBase); |
+ DEFINE_CALL_INTERFACE_DESCRIPTOR(ArraySingleArgumentConstructor); |
+ DEFINE_TURBOFAN_CODE_STUB(ArraySingleArgumentConstructor, |
+ CommonArrayConstructorStub); |
}; |
+class InternalArraySingleArgumentConstructorStub |
+ : public CommonArrayConstructorStub { |
+ public: |
+ InternalArraySingleArgumentConstructorStub(Isolate* isolate, |
+ ElementsKind kind) |
+ : CommonArrayConstructorStub(isolate, kind, DONT_OVERRIDE) {} |
+ |
+ private: |
+ void PrintName(std::ostream& os) const override { // NOLINT |
+ os << "InternalArraySingleArgumentConstructorStub"; |
+ } |
+ |
+ DEFINE_CALL_INTERFACE_DESCRIPTOR(ArraySingleArgumentConstructor); |
+ DEFINE_TURBOFAN_CODE_STUB(InternalArraySingleArgumentConstructor, |
+ CommonArrayConstructorStub); |
+}; |
class ArrayNArgumentsConstructorStub : public ArrayConstructorStubBase { |
public: |
@@ -2974,19 +2988,6 @@ class InternalArrayConstructorStubBase : public HydrogenCodeStub { |
}; |
-class InternalArraySingleArgumentConstructorStub : public |
- InternalArrayConstructorStubBase { |
- public: |
- InternalArraySingleArgumentConstructorStub(Isolate* isolate, |
- ElementsKind kind) |
- : InternalArrayConstructorStubBase(isolate, kind) { } |
- |
- DEFINE_CALL_INTERFACE_DESCRIPTOR(InternalArrayConstructor); |
- DEFINE_HYDROGEN_CODE_STUB(InternalArraySingleArgumentConstructor, |
- InternalArrayConstructorStubBase); |
-}; |
- |
- |
class InternalArrayNArgumentsConstructorStub : public |
InternalArrayConstructorStubBase { |
public: |