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())); |
} |