| Index: src/ast/ast.cc
|
| diff --git a/src/ast/ast.cc b/src/ast/ast.cc
|
| index e9c422e288343a7a740fd14ca585609fed3c67d7..d7bbc6f876065a47d7d54217e024f17f3466d7fe 100644
|
| --- a/src/ast/ast.cc
|
| +++ b/src/ast/ast.cc
|
| @@ -190,6 +190,10 @@ void CountOperation::AssignFeedbackVectorSlots(Isolate* isolate,
|
| AssignVectorSlots(expression(), spec, &slot_);
|
| }
|
|
|
| +bool DoExpression::IsAnonymousFunctionDefinition() const {
|
| + return represented_function_ != nullptr &&
|
| + represented_function_->raw_name()->length() == 0;
|
| +}
|
|
|
| Token::Value Assignment::binary_op() const {
|
| switch (op()) {
|
| @@ -282,26 +286,6 @@ bool ObjectLiteralProperty::NeedsSetFunctionName() const {
|
| IsConciseMethod(value_->AsFunctionLiteral()->kind())));
|
| }
|
|
|
| -void ClassLiteral::AssignFeedbackVectorSlots(Isolate* isolate,
|
| - FeedbackVectorSpec* spec,
|
| - FeedbackVectorSlotCache* cache) {
|
| - // This logic that computes the number of slots needed for vector store
|
| - // ICs must mirror FullCodeGenerator::VisitClassLiteral.
|
| - prototype_slot_ = spec->AddLoadICSlot();
|
| - if (NeedsProxySlot()) {
|
| - proxy_slot_ = spec->AddStoreICSlot();
|
| - }
|
| -
|
| - for (int i = 0; i < properties()->length(); i++) {
|
| - ObjectLiteral::Property* property = properties()->at(i);
|
| - Expression* value = property->value();
|
| - if (FunctionLiteral::NeedsHomeObject(value)) {
|
| - property->SetSlot(spec->AddStoreICSlot());
|
| - }
|
| - }
|
| -}
|
| -
|
| -
|
| bool ObjectLiteral::Property::IsCompileTimeValue() {
|
| return kind_ == CONSTANT ||
|
| (kind_ == MATERIALIZED_LITERAL &&
|
| @@ -1068,21 +1052,6 @@ void AstTraversalVisitor::VisitCompareOperation(CompareOperation* expr) {
|
|
|
| void AstTraversalVisitor::VisitThisFunction(ThisFunction* expr) {}
|
|
|
| -void AstTraversalVisitor::VisitClassLiteral(ClassLiteral* expr) {
|
| - if (expr->extends() != nullptr) {
|
| - RECURSE_EXPRESSION(Visit(expr->extends()));
|
| - }
|
| - RECURSE_EXPRESSION(Visit(expr->constructor()));
|
| - ZoneList<ObjectLiteralProperty*>* props = expr->properties();
|
| - for (int i = 0; i < props->length(); ++i) {
|
| - ObjectLiteralProperty* prop = props->at(i);
|
| - if (!prop->key()->IsLiteral()) {
|
| - RECURSE_EXPRESSION(Visit(prop->key()));
|
| - }
|
| - RECURSE_EXPRESSION(Visit(prop->value()));
|
| - }
|
| -}
|
| -
|
| void AstTraversalVisitor::VisitSpread(Spread* expr) {
|
| RECURSE_EXPRESSION(Visit(expr->expression()));
|
| }
|
|
|