OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 #include "src/ast/prettyprinter.h" | 5 #include "src/ast/prettyprinter.h" |
6 | 6 |
7 #include <stdarg.h> | 7 #include <stdarg.h> |
8 | 8 |
9 #include "src/ast/ast-value-factory.h" | 9 #include "src/ast/ast-value-factory.h" |
10 #include "src/ast/scopes.h" | 10 #include "src/ast/scopes.h" |
(...skipping 1590 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1601 if (literal != NULL && literal->value()->IsInternalizedString()) { | 1601 if (literal != NULL && literal->value()->IsInternalizedString()) { |
1602 PrintLiteralIndented("NAME", literal->value(), false); | 1602 PrintLiteralIndented("NAME", literal->value(), false); |
1603 } else { | 1603 } else { |
1604 PrintIndentedVisit("KEY", node->key()); | 1604 PrintIndentedVisit("KEY", node->key()); |
1605 } | 1605 } |
1606 } | 1606 } |
1607 | 1607 |
1608 | 1608 |
1609 void AstPrinter::VisitCall(Call* node) { | 1609 void AstPrinter::VisitCall(Call* node) { |
1610 EmbeddedVector<char, 128> buf; | 1610 EmbeddedVector<char, 128> buf; |
1611 FormatSlotNode(&buf, node, "CALL", node->CallFeedbackICSlot()); | 1611 const char* name = |
| 1612 node->tail_call_mode() == TailCallMode::kAllow ? "TAIL CALL" : "CALL"; |
| 1613 FormatSlotNode(&buf, node, name, node->CallFeedbackICSlot()); |
1612 IndentedScope indent(this, buf.start()); | 1614 IndentedScope indent(this, buf.start()); |
1613 | 1615 |
1614 Visit(node->expression()); | 1616 Visit(node->expression()); |
1615 PrintArguments(node->arguments()); | 1617 PrintArguments(node->arguments()); |
1616 } | 1618 } |
1617 | 1619 |
1618 | 1620 |
1619 void AstPrinter::VisitCallNew(CallNew* node) { | 1621 void AstPrinter::VisitCallNew(CallNew* node) { |
1620 IndentedScope indent(this, "CALL NEW", node->position()); | 1622 IndentedScope indent(this, "CALL NEW", node->position()); |
1621 Visit(node->expression()); | 1623 Visit(node->expression()); |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1689 void AstPrinter::VisitRewritableAssignmentExpression( | 1691 void AstPrinter::VisitRewritableAssignmentExpression( |
1690 RewritableAssignmentExpression* node) { | 1692 RewritableAssignmentExpression* node) { |
1691 Visit(node->expression()); | 1693 Visit(node->expression()); |
1692 } | 1694 } |
1693 | 1695 |
1694 | 1696 |
1695 #endif // DEBUG | 1697 #endif // DEBUG |
1696 | 1698 |
1697 } // namespace internal | 1699 } // namespace internal |
1698 } // namespace v8 | 1700 } // namespace v8 |
OLD | NEW |