| Index: src/compiler/js-inlining-heuristic.cc
|
| diff --git a/src/compiler/js-inlining-heuristic.cc b/src/compiler/js-inlining-heuristic.cc
|
| index 38595dbf95cb9b2d4e72be03aad76fb6d206d115..65531473ad22ead63ede7ace0d92b1aed5759d5b 100644
|
| --- a/src/compiler/js-inlining-heuristic.cc
|
| +++ b/src/compiler/js-inlining-heuristic.cc
|
| @@ -75,13 +75,18 @@ Reduction JSInliningHeuristic::Reduce(Node* node) {
|
|
|
| // Gather feedback on how often this call site has been hit before.
|
| int calls = -1; // Same default as CallICNexus::ExtractCallCount.
|
| - // TODO(turbofan): We also want call counts for constructor calls.
|
| if (node->opcode() == IrOpcode::kJSCallFunction) {
|
| CallFunctionParameters p = CallFunctionParametersOf(node->op());
|
| if (p.feedback().IsValid()) {
|
| CallICNexus nexus(p.feedback().vector(), p.feedback().slot());
|
| calls = nexus.ExtractCallCount();
|
| }
|
| + } else if (node->opcode() == IrOpcode::kJSCallConstruct) {
|
| + CallConstructParameters p = CallConstructParametersOf(node->op());
|
| + if (p.feedback().IsValid()) {
|
| + ConstructICNexus nexus(p.feedback().vector(), p.feedback().slot());
|
| + calls = nexus.ExtractCallCount();
|
| + }
|
| }
|
|
|
| // ---------------------------------------------------------------------------
|
|
|