From dd8779537b5d159d8cda04bfa11deb5bef4ca42f Mon Sep 17 00:00:00 2001 From: "mstarzinger@chromium.org" Date: Fri, 5 Sep 2014 15:01:51 +0000 Subject: [PATCH] Fix typer to actually visit the entire graph. R=titzer@chromium.org TEST=mjsunit Review URL: https://codereview.chromium.org/545223002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23740 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- src/compiler/pipeline.cc | 1 + src/compiler/typer.cc | 8 -------- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/src/compiler/pipeline.cc b/src/compiler/pipeline.cc index f1d986afa3..6b5fdcfddf 100644 --- a/src/compiler/pipeline.cc +++ b/src/compiler/pipeline.cc @@ -221,6 +221,7 @@ Handle Pipeline::GenerateCode() { // Type the graph. PhaseStats typer_stats(info(), PhaseStats::CREATE_GRAPH, "typer"); typer.Run(&graph, info()->context()); + VerifyAndPrintGraph(&graph, "Typed"); } // All new nodes must be typed. typer.DecorateGraph(&graph); diff --git a/src/compiler/typer.cc b/src/compiler/typer.cc index e898eb323d..a23d37aefb 100644 --- a/src/compiler/typer.cc +++ b/src/compiler/typer.cc @@ -117,14 +117,6 @@ class Typer::RunVisitor : public Typer::Visitor { : Visitor(typer, context), phis(NodeSet::key_compare(), NodeSet::allocator_type(typer->zone())) {} - GenericGraphVisit::Control Pre(Node* node) { - return NodeProperties::IsControl(node) - && node->opcode() != IrOpcode::kEnd - && node->opcode() != IrOpcode::kMerge - && node->opcode() != IrOpcode::kReturn - ? GenericGraphVisit::SKIP : GenericGraphVisit::CONTINUE; - } - GenericGraphVisit::Control Post(Node* node) { Bounds bounds = TypeNode(node); if (node->opcode() == IrOpcode::kPhi) {