[builtins] Move more files into v8_builtins_generators source set

BUG=v8:6055

Review-Url: https://codereview.chromium.org/2760953002
Cr-Commit-Position: refs/heads/master@{#43975}
This commit is contained in:
jkummerow 2017-03-21 04:17:41 -07:00 committed by Commit bot
parent fa3f8c6fb0
commit f8c707305b
40 changed files with 184 additions and 152 deletions

View File

@ -902,19 +902,20 @@ v8_source_set("v8_builtins_generators") {
sources = [
### gcmole(all) ###
"src/builtins/builtins-arguments-gen.cc",
"src/builtins/builtins-arguments.h",
"src/builtins/builtins-arguments-gen.h",
"src/builtins/builtins-array-gen.cc",
"src/builtins/builtins-async-function-gen.cc",
"src/builtins/builtins-async-gen.cc",
"src/builtins/builtins-async-gen.h",
"src/builtins/builtins-async-iterator-gen.cc",
"src/builtins/builtins-async.h",
"src/builtins/builtins-boolean-gen.cc",
"src/builtins/builtins-constructor-gen.cc",
"src/builtins/builtins-constructor-gen.h",
"src/builtins/builtins-constructor.h",
"src/builtins/builtins-conversion-gen.cc",
"src/builtins/builtins-date-gen.cc",
"src/builtins/builtins-forin-gen.cc",
"src/builtins/builtins-forin.h",
"src/builtins/builtins-forin-gen.h",
"src/builtins/builtins-function-gen.cc",
"src/builtins/builtins-generator-gen.cc",
"src/builtins/builtins-global-gen.cc",
@ -925,7 +926,7 @@ v8_source_set("v8_builtins_generators") {
"src/builtins/builtins-number-gen.cc",
"src/builtins/builtins-object-gen.cc",
"src/builtins/builtins-promise-gen.cc",
"src/builtins/builtins-promise.h",
"src/builtins/builtins-promise-gen.h",
"src/builtins/builtins-regexp-gen.cc",
"src/builtins/builtins-regexp-gen.h",
"src/builtins/builtins-sharedarraybuffer-gen.cc",
@ -934,10 +935,61 @@ v8_source_set("v8_builtins_generators") {
"src/builtins/builtins-typedarray-gen.cc",
"src/builtins/builtins-utils-gen.h",
"src/builtins/builtins-wasm-gen.cc",
"src/ic/accessor-assembler.cc",
"src/ic/accessor-assembler.h",
"src/ic/keyed-store-generic.cc",
"src/ic/keyed-store-generic.h",
"src/interpreter/interpreter-generator.cc",
"src/interpreter/interpreter-generator.h",
]
if (v8_current_cpu == "x86") {
sources += [
### gcmole(arch:ia32) ###
"src/builtins/ia32/builtins-ia32.cc",
]
} else if (v8_current_cpu == "x64") {
sources += [
### gcmole(arch:x64) ###
"src/builtins/x64/builtins-x64.cc",
]
} else if (v8_current_cpu == "arm") {
sources += [
### gcmole(arch:arm) ###
"src/builtins/arm/builtins-arm.cc",
]
} else if (v8_current_cpu == "arm64") {
sources += [
### gcmole(arch:arm64) ###
"src/builtins/arm64/builtins-arm64.cc",
]
} else if (v8_current_cpu == "mips" || v8_current_cpu == "mipsel") {
sources += [
### gcmole(arch:mipsel) ###
"src/builtins/mips/builtins-mips.cc",
]
} else if (v8_current_cpu == "mips64" || v8_current_cpu == "mips64el") {
sources += [
### gcmole(arch:mips64el) ###
"src/builtins/mips64/builtins-mips64.cc",
]
} else if (v8_current_cpu == "ppc" || v8_current_cpu == "ppc64") {
sources += [
### gcmole(arch:ppc) ###
"src/builtins/ppc/builtins-ppc.cc",
]
} else if (v8_current_cpu == "s390" || v8_current_cpu == "s390x") {
sources += [
### gcmole(arch:s390) ###
"src/builtins/s390/builtins-s390.cc",
]
} else if (v8_current_cpu == "x87") {
sources += [
### gcmole(arch:x87) ###
"src/builtins/x87/builtins-x87.cc",
]
}
configs = [ ":internal_config" ]
}
@ -1042,7 +1094,6 @@ v8_source_set("v8_base") {
"src/bootstrapper.cc",
"src/bootstrapper.h",
"src/builtins/builtins-api.cc",
"src/builtins/builtins-arguments.h",
"src/builtins/builtins-array.cc",
"src/builtins/builtins-arraybuffer.cc",
"src/builtins/builtins-boolean.cc",
@ -1054,7 +1105,6 @@ v8_source_set("v8_base") {
"src/builtins/builtins-debug.cc",
"src/builtins/builtins-descriptors.h",
"src/builtins/builtins-error.cc",
"src/builtins/builtins-forin.h",
"src/builtins/builtins-function.cc",
"src/builtins/builtins-global.cc",
"src/builtins/builtins-internal.cc",
@ -1063,10 +1113,8 @@ v8_source_set("v8_base") {
"src/builtins/builtins-math.cc",
"src/builtins/builtins-number.cc",
"src/builtins/builtins-object.cc",
"src/builtins/builtins-promise.h",
"src/builtins/builtins-proxy.cc",
"src/builtins/builtins-reflect.cc",
"src/builtins/builtins-regexp-gen.h",
"src/builtins/builtins-regexp.cc",
"src/builtins/builtins-sharedarraybuffer.cc",
"src/builtins/builtins-string.cc",
@ -1532,8 +1580,6 @@ v8_source_set("v8_base") {
"src/ic/access-compiler-data.h",
"src/ic/access-compiler.cc",
"src/ic/access-compiler.h",
"src/ic/accessor-assembler.cc",
"src/ic/accessor-assembler.h",
"src/ic/call-optimization.cc",
"src/ic/call-optimization.h",
"src/ic/handler-compiler.cc",
@ -1547,8 +1593,6 @@ v8_source_set("v8_base") {
"src/ic/ic-stats.h",
"src/ic/ic.cc",
"src/ic/ic.h",
"src/ic/keyed-store-generic.cc",
"src/ic/keyed-store-generic.h",
"src/ic/stub-cache.cc",
"src/ic/stub-cache.h",
"src/icu_util.cc",
@ -1912,7 +1956,6 @@ v8_source_set("v8_base") {
if (v8_current_cpu == "x86") {
sources += [ ### gcmole(arch:ia32) ###
"src/builtins/ia32/builtins-ia32.cc",
"src/compiler/ia32/code-generator-ia32.cc",
"src/compiler/ia32/instruction-codes-ia32.h",
"src/compiler/ia32/instruction-scheduler-ia32.cc",
@ -1951,7 +1994,6 @@ v8_source_set("v8_base") {
]
} else if (v8_current_cpu == "x64") {
sources += [ ### gcmole(arch:x64) ###
"src/builtins/x64/builtins-x64.cc",
"src/compiler/x64/code-generator-x64.cc",
"src/compiler/x64/instruction-codes-x64.h",
"src/compiler/x64/instruction-scheduler-x64.cc",
@ -2018,7 +2060,6 @@ v8_source_set("v8_base") {
"src/arm/macro-assembler-arm.h",
"src/arm/simulator-arm.cc",
"src/arm/simulator-arm.h",
"src/builtins/arm/builtins-arm.cc",
"src/compiler/arm/code-generator-arm.cc",
"src/compiler/arm/instruction-codes-arm.h",
"src/compiler/arm/instruction-scheduler-arm.cc",
@ -2072,7 +2113,6 @@ v8_source_set("v8_base") {
"src/arm64/simulator-arm64.h",
"src/arm64/utils-arm64.cc",
"src/arm64/utils-arm64.h",
"src/builtins/arm64/builtins-arm64.cc",
"src/compiler/arm64/code-generator-arm64.cc",
"src/compiler/arm64/instruction-codes-arm64.h",
"src/compiler/arm64/instruction-scheduler-arm64.cc",
@ -2098,7 +2138,6 @@ v8_source_set("v8_base") {
]
} else if (v8_current_cpu == "mips" || v8_current_cpu == "mipsel") {
sources += [ ### gcmole(arch:mipsel) ###
"src/builtins/mips/builtins-mips.cc",
"src/compiler/mips/code-generator-mips.cc",
"src/compiler/mips/instruction-codes-mips.h",
"src/compiler/mips/instruction-scheduler-mips.cc",
@ -2138,7 +2177,6 @@ v8_source_set("v8_base") {
]
} else if (v8_current_cpu == "mips64" || v8_current_cpu == "mips64el") {
sources += [ ### gcmole(arch:mips64el) ###
"src/builtins/mips64/builtins-mips64.cc",
"src/compiler/mips64/code-generator-mips64.cc",
"src/compiler/mips64/instruction-codes-mips64.h",
"src/compiler/mips64/instruction-scheduler-mips64.cc",
@ -2178,7 +2216,6 @@ v8_source_set("v8_base") {
]
} else if (v8_current_cpu == "ppc" || v8_current_cpu == "ppc64") {
sources += [ ### gcmole(arch:ppc) ###
"src/builtins/ppc/builtins-ppc.cc",
"src/compiler/ppc/code-generator-ppc.cc",
"src/compiler/ppc/instruction-codes-ppc.h",
"src/compiler/ppc/instruction-scheduler-ppc.cc",
@ -2218,7 +2255,6 @@ v8_source_set("v8_base") {
]
} else if (v8_current_cpu == "s390" || v8_current_cpu == "s390x") {
sources += [ ### gcmole(arch:s390) ###
"src/builtins/s390/builtins-s390.cc",
"src/compiler/s390/code-generator-s390.cc",
"src/compiler/s390/instruction-codes-s390.h",
"src/compiler/s390/instruction-scheduler-s390.cc",
@ -2258,7 +2294,6 @@ v8_source_set("v8_base") {
]
} else if (v8_current_cpu == "x87") {
sources += [ ### gcmole(arch:x87) ###
"src/builtins/x87/builtins-x87.cc",
"src/compiler/x87/code-generator-x87.cc",
"src/compiler/x87/instruction-codes-x87.h",
"src/compiler/x87/instruction-scheduler-x87.cc",

View File

@ -687,8 +687,8 @@ bool ObjectLiteral::IsFastCloningSupported() const {
// literals don't support copy-on-write (COW) elements for now.
// TODO(mvstanton): make object literals support COW elements.
return fast_elements() && has_shallow_properties() &&
properties_count() <= ConstructorBuiltinsAssembler::
kMaximumClonedShallowObjectProperties;
properties_count() <=
ConstructorBuiltins::kMaximumClonedShallowObjectProperties;
}
ElementsKind ArrayLiteral::constant_elements_kind() const {
@ -792,7 +792,7 @@ void ArrayLiteral::BuildConstantElements(Isolate* isolate) {
bool ArrayLiteral::IsFastCloningSupported() const {
return depth() <= 1 &&
values()->length() <=
ConstructorBuiltinsAssembler::kMaximumClonedShallowArrayElements;
ConstructorBuiltins::kMaximumClonedShallowArrayElements;
}
void ArrayLiteral::RewindSpreads() {

View File

@ -2,7 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/builtins/builtins-arguments.h"
#include "src/builtins/builtins-arguments-gen.h"
#include "src/builtins/builtins-utils-gen.h"
#include "src/builtins/builtins.h"
#include "src/code-factory.h"

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/builtins/builtins-async.h"
#include "src/builtins/builtins-async-gen.h"
#include "src/builtins/builtins-utils-gen.h"
#include "src/builtins/builtins.h"
#include "src/code-stub-assembler.h"

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/builtins/builtins-async.h"
#include "src/builtins/builtins-async-gen.h"
namespace v8 {
namespace internal {

View File

@ -5,7 +5,7 @@
#ifndef V8_BUILTINS_BUILTINS_ASYNC_H_
#define V8_BUILTINS_BUILTINS_ASYNC_H_
#include "src/builtins/builtins-promise.h"
#include "src/builtins/builtins-promise-gen.h"
namespace v8 {
namespace internal {

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/builtins/builtins-async.h"
#include "src/builtins/builtins-async-gen.h"
#include "src/builtins/builtins-utils-gen.h"
#include "src/builtins/builtins.h"
#include "src/code-factory.h"

View File

@ -2,6 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/builtins/builtins-constructor-gen.h"
#include "src/ast/ast.h"
#include "src/builtins/builtins-constructor.h"
#include "src/builtins/builtins-utils-gen.h"
@ -330,7 +332,7 @@ Node* ConstructorBuiltinsAssembler::EmitFastNewFunctionContext(
slots = ChangeUint32ToWord(slots);
// TODO(ishell): Use CSA::OptimalParameterMode() here.
CodeStubAssembler::ParameterMode mode = CodeStubAssembler::INTPTR_PARAMETERS;
ParameterMode mode = INTPTR_PARAMETERS;
Node* min_context_slots = IntPtrConstant(Context::MIN_CONTEXT_SLOTS);
Node* length = IntPtrAdd(slots, min_context_slots);
Node* size = GetFixedArrayAllocationSize(length, FAST_ELEMENTS, mode);
@ -379,12 +381,6 @@ Node* ConstructorBuiltinsAssembler::EmitFastNewFunctionContext(
return function_context;
}
// static
int ConstructorBuiltinsAssembler::MaximumFunctionContextSlots() {
return FLAG_test_small_max_function_context_stub_size ? kSmallMaximumSlots
: kMaximumSlots;
}
TF_BUILTIN(FastNewFunctionContextEval, ConstructorBuiltinsAssembler) {
Node* function = Parameter(FastNewFunctionContextDescriptor::kFunction);
Node* slots = Parameter(FastNewFunctionContextDescriptor::kSlots);
@ -406,10 +402,6 @@ Node* ConstructorBuiltinsAssembler::EmitFastCloneRegExp(Node* closure,
Node* pattern,
Node* flags,
Node* context) {
typedef CodeStubAssembler::Label Label;
typedef CodeStubAssembler::Variable Variable;
typedef compiler::Node Node;
Label call_runtime(this, Label::kDeferred), end(this);
Variable result(this, MachineRepresentation::kTagged);
@ -455,8 +447,6 @@ TF_BUILTIN(FastCloneRegExp, ConstructorBuiltinsAssembler) {
Node* ConstructorBuiltinsAssembler::NonEmptyShallowClone(
Node* boilerplate, Node* boilerplate_map, Node* boilerplate_elements,
Node* allocation_site, Node* capacity, ElementsKind kind) {
typedef CodeStubAssembler::ParameterMode ParameterMode;
ParameterMode param_mode = OptimalParameterMode();
Node* length = LoadJSArrayLength(boilerplate);
@ -589,9 +579,6 @@ Node* ConstructorBuiltinsAssembler::EmitFastCloneShallowArray(
void ConstructorBuiltinsAssembler::CreateFastCloneShallowArrayBuiltin(
AllocationSiteMode allocation_site_mode) {
typedef compiler::Node Node;
typedef CodeStubAssembler::Label Label;
Node* closure = Parameter(FastCloneShallowArrayDescriptor::kClosure);
Node* literal_index =
Parameter(FastCloneShallowArrayDescriptor::kLiteralIndex);
@ -623,18 +610,6 @@ TF_BUILTIN(FastCloneShallowArrayDontTrack, ConstructorBuiltinsAssembler) {
CreateFastCloneShallowArrayBuiltin(DONT_TRACK_ALLOCATION_SITE);
}
// static
int ConstructorBuiltinsAssembler::FastCloneShallowObjectPropertiesCount(
int literal_length) {
// This heuristic of setting empty literals to have
// kInitialGlobalObjectUnusedPropertiesCount must remain in-sync with the
// runtime.
// TODO(verwaest): Unify this with the heuristic in the runtime.
return literal_length == 0
? JSObject::kInitialGlobalObjectUnusedPropertiesCount
: literal_length;
}
Node* ConstructorBuiltinsAssembler::EmitFastCloneShallowObject(
Label* call_runtime, Node* closure, Node* literals_index,
Node* properties_count) {
@ -705,13 +680,15 @@ Node* ConstructorBuiltinsAssembler::EmitFastCloneShallowObject(
void ConstructorBuiltinsAssembler::CreateFastCloneShallowObjectBuiltin(
int properties_count) {
DCHECK_GE(properties_count, 0);
DCHECK_LE(properties_count, kMaximumClonedShallowObjectProperties);
DCHECK_LE(properties_count,
ConstructorBuiltins::kMaximumClonedShallowObjectProperties);
Label call_runtime(this);
Node* closure = Parameter(0);
Node* literals_index = Parameter(1);
Node* properties_count_node =
IntPtrConstant(FastCloneShallowObjectPropertiesCount(properties_count));
IntPtrConstant(ConstructorBuiltins::FastCloneShallowObjectPropertiesCount(
properties_count));
Node* copy = EmitFastCloneShallowObject(
&call_runtime, closure, literals_index, properties_count_node);
Return(copy);

View File

@ -0,0 +1,51 @@
// Copyright 2017 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef V8_BUILTINS_BUILTINS_CONSTRUCTOR_GEN_H_
#define V8_BUILTINS_BUILTINS_CONSTRUCTOR_GEN_H_
#include "src/code-stub-assembler.h"
namespace v8 {
namespace internal {
class ConstructorBuiltinsAssembler : public CodeStubAssembler {
public:
explicit ConstructorBuiltinsAssembler(compiler::CodeAssemblerState* state)
: CodeStubAssembler(state) {}
Node* EmitFastNewClosure(Node* shared_info, Node* feedback_vector, Node* slot,
Node* context);
Node* EmitFastNewFunctionContext(Node* closure, Node* slots, Node* context,
ScopeType scope_type);
Node* EmitFastCloneRegExp(Node* closure, Node* literal_index, Node* pattern,
Node* flags, Node* context);
Node* EmitFastCloneShallowArray(Node* closure, Node* literal_index,
Node* context, Label* call_runtime,
AllocationSiteMode allocation_site_mode);
void CreateFastCloneShallowArrayBuiltin(
AllocationSiteMode allocation_site_mode);
Node* EmitFastCloneShallowObject(Label* call_runtime, Node* closure,
Node* literals_index,
Node* properties_count);
void CreateFastCloneShallowObjectBuiltin(int properties_count);
Node* EmitFastNewObject(Node* context, Node* target, Node* new_target);
Node* EmitFastNewObject(Node* context, Node* target, Node* new_target,
Label* call_runtime);
private:
Node* NonEmptyShallowClone(Node* boilerplate, Node* boilerplate_map,
Node* boilerplate_elements, Node* allocation_site,
Node* capacity, ElementsKind kind);
};
} // namespace internal
} // namespace v8
#endif // V8_BUILTINS_BUILTINS_CONSTRUCTOR_GEN_H_

View File

@ -2,57 +2,43 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/code-stub-assembler.h"
#ifndef V8_BUILTINS_BUILTINS_CONSTRUCTOR_H_
#define V8_BUILTINS_BUILTINS_CONSTRUCTOR_H_
#include "src/contexts.h"
#include "src/objects.h"
namespace v8 {
namespace internal {
class ConstructorBuiltinsAssembler : public CodeStubAssembler {
class ConstructorBuiltins {
public:
explicit ConstructorBuiltinsAssembler(compiler::CodeAssemblerState* state)
: CodeStubAssembler(state) {}
Node* EmitFastNewClosure(Node* shared_info, Node* feedback_vector, Node* slot,
Node* context);
Node* EmitFastNewFunctionContext(Node* closure, Node* slots, Node* context,
ScopeType scope_type);
static int MaximumFunctionContextSlots();
Node* EmitFastCloneRegExp(Node* closure, Node* literal_index, Node* pattern,
Node* flags, Node* context);
Node* EmitFastCloneShallowArray(Node* closure, Node* literal_index,
Node* context, Label* call_runtime,
AllocationSiteMode allocation_site_mode);
static int MaximumFunctionContextSlots() {
return FLAG_test_small_max_function_context_stub_size ? kSmallMaximumSlots
: kMaximumSlots;
}
// Maximum number of elements in copied array (chosen so that even an array
// backed by a double backing store will fit into new-space).
static const int kMaximumClonedShallowArrayElements =
JSArray::kInitialMaxFastElementArray * kPointerSize / kDoubleSize;
void CreateFastCloneShallowArrayBuiltin(
AllocationSiteMode allocation_site_mode);
// Maximum number of properties in copied objects.
static const int kMaximumClonedShallowObjectProperties = 6;
static int FastCloneShallowObjectPropertiesCount(int literal_length);
Node* EmitFastCloneShallowObject(Label* call_runtime, Node* closure,
Node* literals_index,
Node* properties_count);
void CreateFastCloneShallowObjectBuiltin(int properties_count);
Node* EmitFastNewObject(Node* context, Node* target, Node* new_target);
Node* EmitFastNewObject(Node* context, Node* target, Node* new_target,
Label* call_runtime);
static int FastCloneShallowObjectPropertiesCount(int literal_length) {
// This heuristic of setting empty literals to have
// kInitialGlobalObjectUnusedPropertiesCount must remain in-sync with the
// runtime.
// TODO(verwaest): Unify this with the heuristic in the runtime.
return literal_length == 0
? JSObject::kInitialGlobalObjectUnusedPropertiesCount
: literal_length;
}
private:
static const int kMaximumSlots = 0x8000;
static const int kSmallMaximumSlots = 10;
Node* NonEmptyShallowClone(Node* boilerplate, Node* boilerplate_map,
Node* boilerplate_elements, Node* allocation_site,
Node* capacity, ElementsKind kind);
// FastNewFunctionContext can only allocate closures which fit in the
// new space.
STATIC_ASSERT(((kMaximumSlots + Context::MIN_CONTEXT_SLOTS) * kPointerSize +
@ -61,3 +47,5 @@ class ConstructorBuiltinsAssembler : public CodeStubAssembler {
} // namespace internal
} // namespace v8
#endif // V8_BUILTINS_BUILTINS_CONSTRUCTOR_H_

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/builtins/builtins-forin.h"
#include "src/builtins/builtins-forin-gen.h"
#include "src/builtins/builtins-utils-gen.h"
#include "src/builtins/builtins.h"

View File

@ -2,8 +2,9 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/builtins/builtins-constructor.h"
#include "src/builtins/builtins-promise.h"
#include "src/builtins/builtins-promise-gen.h"
#include "src/builtins/builtins-constructor-gen.h"
#include "src/builtins/builtins-utils-gen.h"
#include "src/builtins/builtins.h"
#include "src/code-factory.h"

View File

@ -4,7 +4,7 @@
#include "src/builtins/builtins-regexp-gen.h"
#include "src/builtins/builtins-constructor.h"
#include "src/builtins/builtins-constructor-gen.h"
#include "src/builtins/builtins-utils-gen.h"
#include "src/builtins/builtins.h"
#include "src/code-factory.h"

View File

@ -392,8 +392,7 @@ void JSGenericLowering::LowerJSCreateFunctionContext(Node* node) {
ScopeType scope_type = parameters.scope_type();
CallDescriptor::Flags flags = FrameStateFlagForCall(node);
if (slot_count <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slot_count <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable =
CodeFactory::FastNewFunctionContext(isolate(), scope_type);
node->InsertInput(zone(), 1, jsgraph()->Int32Constant(slot_count));
@ -422,8 +421,7 @@ void JSGenericLowering::LowerJSCreateLiteralArray(Node* node) {
// Use the FastCloneShallowArray builtin only for shallow boilerplates without
// properties up to the number of elements that the stubs can handle.
if ((p.flags() & ArrayLiteral::kShallowElements) != 0 &&
p.length() <
ConstructorBuiltinsAssembler::kMaximumClonedShallowArrayElements) {
p.length() < ConstructorBuiltins::kMaximumClonedShallowArrayElements) {
Callable callable = CodeFactory::FastCloneShallowArray(
isolate(), DONT_TRACK_ALLOCATION_SITE);
ReplaceWithStubCall(node, callable, flags);
@ -445,7 +443,7 @@ void JSGenericLowering::LowerJSCreateLiteralObject(Node* node) {
// without elements up to the number of properties that the stubs can handle.
if ((p.flags() & ObjectLiteral::kShallowProperties) != 0 &&
p.length() <=
ConstructorBuiltinsAssembler::kMaximumClonedShallowObjectProperties) {
ConstructorBuiltins::kMaximumClonedShallowObjectProperties) {
Callable callable =
CodeFactory::FastCloneShallowObject(isolate(), p.length());
ReplaceWithStubCall(node, callable, flags);

View File

@ -167,8 +167,7 @@ void LCodeGen::DoPrologue(LPrologue* instr) {
__ CallRuntime(Runtime::kNewScriptContext);
deopt_mode = Safepoint::kLazyDeopt;
} else {
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info()->scope()->scope_type());
__ mov(FastNewFunctionContextDescriptor::SlotsRegister(),

View File

@ -621,8 +621,7 @@ void LCodeGen::DoPrologue(LPrologue* instr) {
__ CallRuntime(Runtime::kNewScriptContext);
deopt_mode = Safepoint::kLazyDeopt;
} else {
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info()->scope()->scope_type());
__ Mov(FastNewFunctionContextDescriptor::SlotsRegister(), slots);

View File

@ -177,8 +177,7 @@ void LCodeGen::DoPrologue(LPrologue* instr) {
__ CallRuntime(Runtime::kNewScriptContext);
deopt_mode = Safepoint::kLazyDeopt;
} else {
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info()->scope()->scope_type());
__ mov(FastNewFunctionContextDescriptor::SlotsRegister(),

View File

@ -203,8 +203,7 @@ void LCodeGen::DoPrologue(LPrologue* instr) {
__ CallRuntime(Runtime::kNewScriptContext);
deopt_mode = Safepoint::kLazyDeopt;
} else {
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info()->scope()->scope_type());
__ li(FastNewFunctionContextDescriptor::SlotsRegister(),

View File

@ -179,8 +179,7 @@ void LCodeGen::DoPrologue(LPrologue* instr) {
__ CallRuntime(Runtime::kNewScriptContext);
deopt_mode = Safepoint::kLazyDeopt;
} else {
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info()->scope()->scope_type());
__ li(FastNewFunctionContextDescriptor::SlotsRegister(),

View File

@ -187,8 +187,7 @@ void LCodeGen::DoPrologue(LPrologue* instr) {
__ CallRuntime(Runtime::kNewScriptContext);
deopt_mode = Safepoint::kLazyDeopt;
} else {
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info()->scope()->scope_type());
__ mov(FastNewFunctionContextDescriptor::SlotsRegister(),

View File

@ -178,8 +178,7 @@ void LCodeGen::DoPrologue(LPrologue* instr) {
__ CallRuntime(Runtime::kNewScriptContext);
deopt_mode = Safepoint::kLazyDeopt;
} else {
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info()->scope()->scope_type());
__ mov(FastNewFunctionContextDescriptor::SlotsRegister(),

View File

@ -181,8 +181,7 @@ void LCodeGen::DoPrologue(LPrologue* instr) {
__ CallRuntime(Runtime::kNewScriptContext);
deopt_mode = Safepoint::kLazyDeopt;
} else {
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info()->scope()->scope_type());
__ Set(FastNewFunctionContextDescriptor::SlotsRegister(), slots);

View File

@ -147,8 +147,7 @@ void LCodeGen::DoPrologue(LPrologue* instr) {
__ CallRuntime(Runtime::kNewScriptContext);
deopt_mode = Safepoint::kLazyDeopt;
} else {
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info()->scope()->scope_type());
__ mov(FastNewFunctionContextDescriptor::SlotsRegister(),

View File

@ -202,8 +202,7 @@ void FullCodeGenerator::Generate() {
if (info->scope()->new_target_var() != nullptr) {
__ push(r3); // Preserve new target.
}
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info->scope()->scope_type());
__ mov(FastNewFunctionContextDescriptor::SlotsRegister(),

View File

@ -204,8 +204,7 @@ void FullCodeGenerator::Generate() {
if (info->scope()->new_target_var() != nullptr) {
__ Push(x3); // Preserve new target.
}
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info->scope()->scope_type());
__ Mov(FastNewFunctionContextDescriptor::SlotsRegister(), slots);

View File

@ -188,8 +188,7 @@ void FullCodeGenerator::Generate() {
if (info->scope()->new_target_var() != nullptr) {
__ push(edx); // Preserve new target.
}
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info->scope()->scope_type());
__ mov(FastNewFunctionContextDescriptor::SlotsRegister(),

View File

@ -209,8 +209,7 @@ void FullCodeGenerator::Generate() {
if (info->scope()->new_target_var() != nullptr) {
__ push(a3); // Preserve new target.
}
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info->scope()->scope_type());
__ li(FastNewFunctionContextDescriptor::SlotsRegister(),

View File

@ -208,8 +208,7 @@ void FullCodeGenerator::Generate() {
if (info->scope()->new_target_var() != nullptr) {
__ push(a3); // Preserve new target.
}
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info->scope()->scope_type());
__ li(FastNewFunctionContextDescriptor::SlotsRegister(),

View File

@ -206,8 +206,7 @@ void FullCodeGenerator::Generate() {
if (info->scope()->new_target_var() != nullptr) {
__ push(r6); // Preserve new target.
}
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info->scope()->scope_type());
__ mov(FastNewFunctionContextDescriptor::SlotsRegister(),

View File

@ -210,8 +210,7 @@ void FullCodeGenerator::Generate() {
if (info->scope()->new_target_var() != nullptr) {
__ push(r5); // Preserve new target.
}
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info->scope()->scope_type());
__ mov(FastNewFunctionContextDescriptor::SlotsRegister(),

View File

@ -190,8 +190,7 @@ void FullCodeGenerator::Generate() {
if (info->scope()->new_target_var() != nullptr) {
__ Push(rdx); // Preserve new target.
}
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info->scope()->scope_type());
__ Set(FastNewFunctionContextDescriptor::SlotsRegister(), slots);

View File

@ -188,8 +188,7 @@ void FullCodeGenerator::Generate() {
if (info->scope()->new_target_var() != nullptr) {
__ push(edx); // Preserve new target.
}
if (slots <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slots <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
Callable callable = CodeFactory::FastNewFunctionContext(
isolate(), info->scope()->scope_type());
__ mov(FastNewFunctionContextDescriptor::SlotsRegister(),

View File

@ -29,11 +29,10 @@ uint8_t CreateObjectLiteralFlags::Encode(bool fast_clone_supported,
uint8_t result = FlagsBits::encode(runtime_flags);
if (fast_clone_supported) {
STATIC_ASSERT(
ConstructorBuiltinsAssembler::kMaximumClonedShallowObjectProperties <=
ConstructorBuiltins::kMaximumClonedShallowObjectProperties <=
1 << CreateObjectLiteralFlags::FastClonePropertiesCountBits::kShift);
DCHECK_LE(
properties_count,
ConstructorBuiltinsAssembler::kMaximumClonedShallowObjectProperties);
DCHECK_LE(properties_count,
ConstructorBuiltins::kMaximumClonedShallowObjectProperties);
result |= CreateObjectLiteralFlags::FastClonePropertiesCountBits::encode(
properties_count);
}

View File

@ -1674,7 +1674,7 @@ void BytecodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) {
// Deep-copy the literal boilerplate.
uint8_t flags = CreateObjectLiteralFlags::Encode(
expr->IsFastCloningSupported(),
ConstructorBuiltinsAssembler::FastCloneShallowObjectPropertiesCount(
ConstructorBuiltins::FastCloneShallowObjectPropertiesCount(
expr->properties_count()),
expr->ComputeFlags());
@ -3212,8 +3212,7 @@ void BytecodeGenerator::BuildNewLocalActivationContext() {
} else {
DCHECK(scope->is_function_scope() || scope->is_eval_scope());
int slot_count = scope->num_heap_slots() - Context::MIN_CONTEXT_SLOTS;
if (slot_count <=
ConstructorBuiltinsAssembler::MaximumFunctionContextSlots()) {
if (slot_count <= ConstructorBuiltins::MaximumFunctionContextSlots()) {
switch (scope->scope_type()) {
case EVAL_SCOPE:
builder()->CreateEvalContext(slot_count);

View File

@ -7,9 +7,9 @@
#include <array>
#include <tuple>
#include "src/builtins/builtins-arguments.h"
#include "src/builtins/builtins-constructor.h"
#include "src/builtins/builtins-forin.h"
#include "src/builtins/builtins-arguments-gen.h"
#include "src/builtins/builtins-constructor-gen.h"
#include "src/builtins/builtins-forin-gen.h"
#include "src/code-events.h"
#include "src/code-factory.h"
#include "src/factory.h"

View File

@ -475,19 +475,20 @@
'bootstrapper.h',
'builtins/builtins-api.cc',
'builtins/builtins-arguments-gen.cc',
'builtins/builtins-arguments.h',
'builtins/builtins-arguments-gen.h',
'builtins/builtins-arraybuffer.cc',
'builtins/builtins-array.cc',
'builtins/builtins-array-gen.cc',
'builtins/builtins-async-function-gen.cc',
'builtins/builtins-async-iterator-gen.cc',
'builtins/builtins-async-gen.cc',
'builtins/builtins-async.h',
'builtins/builtins-async-gen.h',
'builtins/builtins-boolean.cc',
'builtins/builtins-boolean-gen.cc',
'builtins/builtins-call.cc',
'builtins/builtins-callsite.cc',
'builtins/builtins-constructor-gen.cc',
'builtins/builtins-constructor-gen.h',
'builtins/builtins-constructor.h',
'builtins/builtins-conversion-gen.cc',
'builtins/builtins-dataview.cc',
@ -497,7 +498,7 @@
'builtins/builtins-descriptors.h',
'builtins/builtins-error.cc',
'builtins/builtins-forin-gen.cc',
'builtins/builtins-forin.h',
'builtins/builtins-forin-gen.h',
'builtins/builtins-function.cc',
'builtins/builtins-function-gen.cc',
'builtins/builtins-generator-gen.cc',
@ -516,7 +517,7 @@
'builtins/builtins-object.cc',
'builtins/builtins-object-gen.cc',
'builtins/builtins-promise-gen.cc',
'builtins/builtins-promise.h',
'builtins/builtins-promise-gen.h',
'builtins/builtins-proxy.cc',
'builtins/builtins-reflect.cc',
'builtins/builtins-regexp.cc',

View File

@ -4,7 +4,7 @@
#include "src/api.h"
#include "src/base/utils/random-number-generator.h"
#include "src/builtins/builtins-promise.h"
#include "src/builtins/builtins-promise-gen.h"
#include "src/code-factory.h"
#include "src/code-stub-assembler.h"
#include "src/compiler/node.h"