Revision: 23816
Author:   [email protected]
Date:     Wed Sep 10 06:39:25 2014 UTC
Log: Revert "Switch inlining to use simplified instead of machine loads.", "Fix size_t to int conversion compile error." and "Add copy support in inliner.".

This reverts commits r23813, r23805 and r23804 for Windows breakage.

[email protected],[email protected]

Review URL: https://codereview.chromium.org/562543002
https://code.google.com/p/v8/source/detail?r=23816

Modified:
 /branches/bleeding_edge/src/compiler/access-builder.cc
 /branches/bleeding_edge/src/compiler/access-builder.h
 /branches/bleeding_edge/src/compiler/change-lowering-unittest.cc
 /branches/bleeding_edge/src/compiler/generic-graph.h
 /branches/bleeding_edge/src/compiler/js-graph.h
 /branches/bleeding_edge/src/compiler/js-inlining.cc
 /branches/bleeding_edge/src/compiler/machine-operator-reducer-unittest.cc
 /branches/bleeding_edge/src/compiler/pipeline.cc
/branches/bleeding_edge/src/compiler/simplified-operator-reducer-unittest.cc
 /branches/bleeding_edge/test/cctest/cctest.status
 /branches/bleeding_edge/test/cctest/compiler/test-changes-lowering.cc
 /branches/bleeding_edge/test/cctest/compiler/test-js-constant-cache.cc
/branches/bleeding_edge/test/cctest/compiler/test-js-context-specialization.cc
 /branches/bleeding_edge/test/cctest/compiler/test-js-typed-lowering.cc
/branches/bleeding_edge/test/cctest/compiler/test-machine-operator-reducer.cc
 /branches/bleeding_edge/test/cctest/compiler/test-representation-change.cc
 /branches/bleeding_edge/test/cctest/compiler/test-run-inlining.cc
 /branches/bleeding_edge/test/cctest/compiler/test-simplified-lowering.cc

=======================================
--- /branches/bleeding_edge/src/compiler/access-builder.cc Tue Sep 9 15:55:47 2014 UTC +++ /branches/bleeding_edge/src/compiler/access-builder.cc Wed Sep 10 06:39:25 2014 UTC
@@ -28,13 +28,6 @@
   return {kTaggedBase, JSObject::kElementsOffset, Handle<Name>(),
           Type::Internal(), kMachAnyTagged};
 }
-
-
-// static
-FieldAccess AccessBuilder::ForJSFunctionContext() {
-  return {kTaggedBase, JSFunction::kContextOffset, Handle<Name>(),
-          Type::Internal(), kMachAnyTagged};
-}


 // static
=======================================
--- /branches/bleeding_edge/src/compiler/access-builder.h Tue Sep 9 15:55:47 2014 UTC +++ /branches/bleeding_edge/src/compiler/access-builder.h Wed Sep 10 06:39:25 2014 UTC
@@ -25,9 +25,6 @@
   // Provides access to JSObject::elements() field.
   static FieldAccess ForJSObjectElements();

-  // Provides access to JSFunction::context() field.
-  static FieldAccess ForJSFunctionContext();
-
   // Provides access to JSArrayBuffer::backing_store() field.
   static FieldAccess ForJSArrayBufferBackingStore();

=======================================
--- /branches/bleeding_edge/src/compiler/change-lowering-unittest.cc Tue Sep 9 13:20:09 2014 UTC +++ /branches/bleeding_edge/src/compiler/change-lowering-unittest.cc Wed Sep 10 06:39:25 2014 UTC
@@ -74,12 +74,10 @@

   Reduction Reduce(Node* node) {
     Typer typer(zone());
-    MachineOperatorBuilder machine(zone(), WordRepresentation());
-    JSOperatorBuilder javascript(zone());
-    JSGraph jsgraph(graph(), common(), &javascript, &typer, &machine);
+    JSGraph jsgraph(graph(), common(), &typer);
     CompilationInfo info(isolate(), zone());
     Linkage linkage(&info);
-
+    MachineOperatorBuilder machine(zone(), WordRepresentation());
     ChangeLowering reducer(&jsgraph, &linkage, &machine);
     return reducer.Reduce(node);
   }
=======================================
--- /branches/bleeding_edge/src/compiler/generic-graph.h Tue Sep 9 13:20:09 2014 UTC +++ /branches/bleeding_edge/src/compiler/generic-graph.h Wed Sep 10 06:39:25 2014 UTC
@@ -22,6 +22,7 @@

   NodeId NextNodeID() { return next_node_id_++; }
   NodeId NodeCount() const { return next_node_id_; }
+  void SetNextNodeId(NodeId next) { next_node_id_ = next; }

  private:
   Zone* zone_;
=======================================
--- /branches/bleeding_edge/src/compiler/js-graph.h Tue Sep 9 13:20:09 2014 UTC +++ /branches/bleeding_edge/src/compiler/js-graph.h Wed Sep 10 06:39:25 2014 UTC
@@ -9,7 +9,6 @@
 #include "src/compiler/common-operator.h"
 #include "src/compiler/graph.h"
 #include "src/compiler/js-operator.h"
-#include "src/compiler/machine-operator.h"
 #include "src/compiler/node-properties.h"

 namespace v8 {
@@ -23,14 +22,11 @@
 // constants, and various helper methods.
 class JSGraph : public ZoneObject {
  public:
-  JSGraph(Graph* graph, CommonOperatorBuilder* common,
-          JSOperatorBuilder* javascript, Typer* typer,
-          MachineOperatorBuilder* machine)
+  JSGraph(Graph* graph, CommonOperatorBuilder* common, Typer* typer)
       : graph_(graph),
         common_(common),
-        javascript_(javascript),
+        javascript_(zone()),
         typer_(typer),
-        machine_(machine),
         cache_(zone()) {}

   // Canonicalized global constants.
@@ -77,9 +73,8 @@
     return Constant(immediate);
   }

-  JSOperatorBuilder* javascript() { return javascript_; }
+  JSOperatorBuilder* javascript() { return &javascript_; }
   CommonOperatorBuilder* common() { return common_; }
-  MachineOperatorBuilder* machine() { return machine_; }
   Graph* graph() { return graph_; }
   Zone* zone() { return graph()->zone(); }
   Isolate* isolate() { return zone()->isolate(); }
@@ -87,9 +82,8 @@
  private:
   Graph* graph_;
   CommonOperatorBuilder* common_;
-  JSOperatorBuilder* javascript_;
+  JSOperatorBuilder javascript_;
   Typer* typer_;
-  MachineOperatorBuilder* machine_;

   SetOncePointer<Node> c_entry_stub_constant_;
   SetOncePointer<Node> undefined_constant_;
=======================================
--- /branches/bleeding_edge/src/compiler/js-inlining.cc Tue Sep 9 15:55:47 2014 UTC +++ /branches/bleeding_edge/src/compiler/js-inlining.cc Wed Sep 10 06:39:25 2014 UTC
@@ -2,7 +2,6 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.

-#include "src/compiler/access-builder.h"
 #include "src/compiler/ast-graph-builder.h"
 #include "src/compiler/common-operator.h"
 #include "src/compiler/generic-node-inl.h"
@@ -68,9 +67,14 @@
 // A facade on a JSFunction's graph to facilitate inlining. It assumes the
 // that the function graph has only one return statement, and provides
 // {UnifyReturn} to convert a function graph to that end.
+// InlineAtCall will create some new nodes using {graph}'s builders (and hence
+// those nodes will live in {graph}'s zone.
 class Inlinee {
  public:
-  Inlinee(Node* start, Node* end) : start_(start), end_(end) {}
+  explicit Inlinee(JSGraph* graph) : jsgraph_(graph) {}
+
+  Graph* graph() { return jsgraph_->graph(); }
+  JSGraph* jsgraph() { return jsgraph_; }

   // Returns the last regular control node, that is
   // the last control node before the end node.
@@ -88,25 +92,24 @@
   }
   // Return the unique return statement of the graph.
   Node* unique_return() {
-    Node* unique_return = NodeProperties::GetControlInput(end_);
+    Node* unique_return =
+        NodeProperties::GetControlInput(jsgraph_->graph()->end());
     DCHECK_EQ(IrOpcode::kReturn, unique_return->opcode());
     return unique_return;
   }
   // Inline this graph at {call}, use {jsgraph} and its zone to create
   // any new nodes.
   void InlineAtCall(JSGraph* jsgraph, Node* call);
-
   // Ensure that only a single return reaches the end node.
-  static void UnifyReturn(JSGraph* jsgraph);
+  void UnifyReturn();

  private:
-  Node* start_;
-  Node* end_;
+  JSGraph* jsgraph_;
 };


-void Inlinee::UnifyReturn(JSGraph* jsgraph) {
-  Graph* graph = jsgraph->graph();
+void Inlinee::UnifyReturn() {
+  Graph* graph = jsgraph_->graph();

   Node* final_merge = NodeProperties::GetControlInput(graph->end(), 0);
   if (final_merge->opcode() == IrOpcode::kReturn) {
@@ -117,11 +120,11 @@

   int predecessors =
       OperatorProperties::GetControlInputCount(final_merge->op());
-  Operator* op_phi = jsgraph->common()->Phi(kMachAnyTagged, predecessors);
-  Operator* op_ephi = jsgraph->common()->EffectPhi(predecessors);
+  Operator* op_phi = jsgraph_->common()->Phi(kMachAnyTagged, predecessors);
+  Operator* op_ephi = jsgraph_->common()->EffectPhi(predecessors);

-  NodeVector values(jsgraph->zone());
-  NodeVector effects(jsgraph->zone());
+  NodeVector values(jsgraph_->zone());
+  NodeVector effects(jsgraph_->zone());
   // Iterate over all control flow predecessors,
   // which must be return statements.
   InputIter iter = final_merge->inputs().begin();
@@ -147,104 +150,37 @@
   Node* ephi = graph->NewNode(op_ephi, static_cast<int>(effects.size()),
                               &effects.front());
   Node* new_return =
-      graph->NewNode(jsgraph->common()->Return(), phi, ephi, final_merge);
+      graph->NewNode(jsgraph_->common()->Return(), phi, ephi, final_merge);
   graph->end()->ReplaceInput(0, new_return);
 }


-class CopyVisitor : public NullNodeVisitor {
- public:
-  CopyVisitor(Graph* source_graph, Graph* target_graph, Zone* temp_zone)
-      : copies_(source_graph->NodeCount(), NULL, temp_zone),
-        sentinels_(source_graph->NodeCount(), NULL, temp_zone),
-        source_graph_(source_graph),
-        target_graph_(target_graph),
-        temp_zone_(temp_zone),
-        sentinel_op_(IrOpcode::kDead, Operator::kNoProperties, 0, 0,
-                     "sentinel") {}
+void Inlinee::InlineAtCall(JSGraph* jsgraph, Node* call) {
+  MachineOperatorBuilder machine(jsgraph->zone());

-  GenericGraphVisit::Control Post(Node* original) {
-    NodeVector inputs(temp_zone_);
-    for (InputIter it = original->inputs().begin();
-         it != original->inputs().end(); ++it) {
-      inputs.push_back(GetCopy(*it));
-    }
-
-    // Reuse the operator in the copy. This assumes that op lives in a zone
-    // that lives longer than graph()'s zone.
-    Node* copy = target_graph_->NewNode(
-        original->op(), static_cast<int>(inputs.size()), &inputs.front());
-    copies_[original->id()] = copy;
-    return GenericGraphVisit::CONTINUE;
-  }
-
-  Node* GetCopy(Node* original) {
-    Node* copy = copies_[original->id()];
-    if (copy == NULL) {
-      copy = GetSentinel(original);
-    }
-    return copy;
-  }
-
-  void CopyGraph() {
-    source_graph_->VisitNodeInputsFromEnd(this);
-    ReplaceSentinels();
-  }
-
-  const NodeVector& copies() { return copies_; }
-
- private:
-  void ReplaceSentinels() {
-    for (int id = 0; id < source_graph_->NodeCount(); ++id) {
-      Node* sentinel = sentinels_[id];
-      if (sentinel == NULL) continue;
-      Node* copy = copies_[id];
-      DCHECK_NE(NULL, copy);
-      sentinel->ReplaceUses(copy);
-    }
-  }
-
-  Node* GetSentinel(Node* original) {
-    Node* sentinel = sentinels_[original->id()];
-    if (sentinel == NULL) {
-      sentinel = target_graph_->NewNode(&sentinel_op_);
-    }
-    return sentinel;
-  }
-
-  NodeVector copies_;
-  NodeVector sentinels_;
-  Graph* source_graph_;
-  Graph* target_graph_;
-  Zone* temp_zone_;
-  SimpleOperator sentinel_op_;
-};
-
-
-void Inlinee::InlineAtCall(JSGraph* jsgraph, Node* call) {
// The scheduler is smart enough to place our code; we just ensure {control}
   // becomes the control input of the start of the inlinee.
   Node* control = NodeProperties::GetControlInput(call);

   // The inlinee uses the context from the JSFunction object. This will
// also be the effect dependency for the inlinee as it produces an effect.
-  SimplifiedOperatorBuilder simplified(jsgraph->zone());
+  // TODO(sigurds) Use simplified load once it is ready.
   Node* context = jsgraph->graph()->NewNode(
-      simplified.LoadField(AccessBuilder::ForJSFunctionContext()),
-      NodeProperties::GetValueInput(call, 0),
+      machine.Load(kMachAnyTagged), NodeProperties::GetValueInput(call, 0),
+      jsgraph->Int32Constant(JSFunction::kContextOffset - kHeapObjectTag),
       NodeProperties::GetEffectInput(call));

   // {inlinee_inputs} counts JSFunction, Receiver, arguments, context,
   // but not effect, control.
-  int inlinee_inputs = start_->op()->OutputCount();
+  int inlinee_inputs = graph()->start()->op()->OutputCount();
   // Context is last argument.
   int inlinee_context_index = inlinee_inputs - 1;
   // {inliner_inputs} counts JSFunction, Receiver, arguments, but not
   // context, effect, control.
   int inliner_inputs = OperatorProperties::GetValueInputCount(call->op());
   // Iterate over all uses of the start node.
-  UseIter iter = start_->uses().begin();
-  while (iter != start_->uses().end()) {
+  UseIter iter = graph()->start()->uses().begin();
+  while (iter != graph()->start()->uses().end()) {
     Node* use = *iter;
     switch (use->opcode()) {
       case IrOpcode::kParameter: {
@@ -298,10 +234,10 @@
 }


-void JSInliner::TryInlineCall(Node* call) {
-  DCHECK_EQ(IrOpcode::kJSCallFunction, call->opcode());
+void JSInliner::TryInlineCall(Node* node) {
+  DCHECK_EQ(IrOpcode::kJSCallFunction, node->opcode());

-  HeapObjectMatcher<JSFunction> match(call->InputAt(0));
+  HeapObjectMatcher<JSFunction> match(node->InputAt(0));
   if (!match.HasValue()) {
     return;
   }
@@ -339,20 +275,21 @@
            info_->shared_info()->DebugName()->ToCString().get());
   }

-  Graph graph(info.zone());
-  Typer typer(info.zone());
- JSGraph jsgraph(&graph, jsgraph_->common(), jsgraph_->javascript(), &typer,
-                  jsgraph_->machine());
+  Graph graph(info_->zone());
+  graph.SetNextNodeId(jsgraph_->graph()->NextNodeID());
+
+  Typer typer(info_->zone());
+  CommonOperatorBuilder common(info_->zone());
+  JSGraph jsgraph(&graph, &common, &typer);

   AstGraphBuilder graph_builder(&info, &jsgraph);
   graph_builder.CreateGraph();
-  Inlinee::UnifyReturn(&jsgraph);

-  CopyVisitor visitor(&graph, jsgraph_->graph(), info.zone());
-  visitor.CopyGraph();
+  Inlinee inlinee(&jsgraph);
+  inlinee.UnifyReturn();
+  inlinee.InlineAtCall(jsgraph_, node);

- Inlinee inlinee(visitor.GetCopy(graph.start()), visitor.GetCopy(graph.end()));
-  inlinee.InlineAtCall(jsgraph_, call);
+  jsgraph_->graph()->SetNextNodeId(inlinee.graph()->NextNodeID());
 }
 }
 }
=======================================
--- /branches/bleeding_edge/src/compiler/machine-operator-reducer-unittest.cc Tue Sep 9 14:18:17 2014 UTC +++ /branches/bleeding_edge/src/compiler/machine-operator-reducer-unittest.cc Wed Sep 10 06:39:25 2014 UTC
@@ -20,8 +20,7 @@
  protected:
   Reduction Reduce(Node* node) {
     Typer typer(zone());
-    JSOperatorBuilder javascript(zone());
-    JSGraph jsgraph(graph(), common(), &javascript, &typer, &machine_);
+    JSGraph jsgraph(graph(), common(), &typer);
     MachineOperatorReducer reducer(&jsgraph);
     return reducer.Reduce(node);
   }
=======================================
--- /branches/bleeding_edge/src/compiler/pipeline.cc Tue Sep 9 13:20:09 2014 UTC +++ /branches/bleeding_edge/src/compiler/pipeline.cc Wed Sep 10 06:39:25 2014 UTC
@@ -170,9 +170,7 @@
   // typer could sweep over later.
   Typer typer(zone());
   CommonOperatorBuilder common(zone());
-  JSOperatorBuilder javascript(zone());
-  MachineOperatorBuilder machine(zone());
-  JSGraph jsgraph(&graph, &common, &javascript, &typer, &machine);
+  JSGraph jsgraph(&graph, &common, &typer);
   Node* context_node;
   {
     PhaseStats graph_builder_stats(info(), PhaseStats::CREATE_GRAPH,
@@ -258,6 +256,7 @@
       SourcePositionTable::Scope pos(&source_positions,
                                      SourcePosition::Unknown());
       Linkage linkage(info());
+      MachineOperatorBuilder machine(zone());
       ValueNumberingReducer vn_reducer(zone());
       SimplifiedOperatorReducer simple_reducer(&jsgraph, &machine);
       ChangeLowering lowering(&jsgraph, &linkage, &machine);
@@ -282,6 +281,7 @@
                                 "generic lowering");
       SourcePositionTable::Scope pos(&source_positions,
                                      SourcePosition::Unknown());
+      MachineOperatorBuilder machine(zone());
       JSGenericLowering lowering(info(), &jsgraph, &machine);
       GraphReducer graph_reducer(&graph);
       graph_reducer.AddReducer(&lowering);
=======================================
--- /branches/bleeding_edge/src/compiler/simplified-operator-reducer-unittest.cc Tue Sep 9 13:20:09 2014 UTC +++ /branches/bleeding_edge/src/compiler/simplified-operator-reducer-unittest.cc Wed Sep 10 06:39:25 2014 UTC
@@ -23,8 +23,7 @@
   Reduction Reduce(Node* node) {
     Typer typer(zone());
     MachineOperatorBuilder machine(zone());
-    JSOperatorBuilder javascript(zone());
-    JSGraph jsgraph(graph(), common(), &javascript, &typer, &machine);
+    JSGraph jsgraph(graph(), common(), &typer);
     SimplifiedOperatorReducer reducer(&jsgraph, &machine);
     return reducer.Reduce(node);
   }
=======================================
--- /branches/bleeding_edge/test/cctest/cctest.status Tue Sep 9 15:55:47 2014 UTC +++ /branches/bleeding_edge/test/cctest/cctest.status Wed Sep 10 06:39:25 2014 UTC
@@ -94,10 +94,6 @@
   'test-run-machops/RunLoadImmIndex': [SKIP],
   'test-run-machops/RunSpillLotsOfThingsWithCall': [SKIP],

-  # TODO(sigurds): The schedule is borked with multiple inlinees.
-  'test-run-inlining/InlineTwiceDependentDiamond': [SKIP],
-  'test-run-inlining/InlineTwiceDependentDiamondDifferent': [SKIP],
-
   # Some tests are just too slow to run for now.
   'test-api/Threading*': [PASS, NO_VARIANTS],
'test-heap/IncrementalMarkingStepMakesBigProgressWithLargeObjects': [PASS, NO_VARIANTS],
=======================================
--- /branches/bleeding_edge/test/cctest/compiler/test-changes-lowering.cc Tue Sep 9 13:20:09 2014 UTC +++ /branches/bleeding_edge/test/cctest/compiler/test-changes-lowering.cc Wed Sep 10 06:39:25 2014 UTC
@@ -31,13 +31,10 @@
   explicit ChangesLoweringTester(MachineType p0 = kMachNone)
       : GraphBuilderTester<ReturnType>(p0),
         typer(this->zone()),
-        javascript(this->zone()),
-        jsgraph(this->graph(), this->common(), &javascript, &typer,
-                this->machine()),
+        jsgraph(this->graph(), this->common(), &typer),
         function(Handle<JSFunction>::null()) {}

   Typer typer;
-  JSOperatorBuilder javascript;
   JSGraph jsgraph;
   Handle<JSFunction> function;

=======================================
--- /branches/bleeding_edge/test/cctest/compiler/test-js-constant-cache.cc Tue Sep 9 13:20:09 2014 UTC +++ /branches/bleeding_edge/test/cctest/compiler/test-js-constant-cache.cc Wed Sep 10 06:39:25 2014 UTC
@@ -17,16 +17,10 @@
 class JSCacheTesterHelper {
  protected:
   explicit JSCacheTesterHelper(Zone* zone)
-      : main_graph_(zone),
-        main_common_(zone),
-        main_javascript_(zone),
-        main_typer_(zone),
-        main_machine_(zone) {}
+      : main_graph_(zone), main_common_(zone), main_typer_(zone) {}
   Graph main_graph_;
   CommonOperatorBuilder main_common_;
-  JSOperatorBuilder main_javascript_;
   Typer main_typer_;
-  MachineOperatorBuilder main_machine_;
 };


@@ -36,8 +30,7 @@
  public:
   JSConstantCacheTester()
       : JSCacheTesterHelper(main_zone()),
- JSGraph(&main_graph_, &main_common_, &main_javascript_, &main_typer_,
-                &main_machine_) {}
+        JSGraph(&main_graph_, &main_common_, &main_typer_) {}

   Type* upper(Node* node) { return NodeProperties::GetBounds(node).upper; }

=======================================
--- /branches/bleeding_edge/test/cctest/compiler/test-js-context-specialization.cc Tue Sep 9 13:20:09 2014 UTC +++ /branches/bleeding_edge/test/cctest/compiler/test-js-context-specialization.cc Wed Sep 10 06:39:25 2014 UTC
@@ -22,10 +22,9 @@
       : DirectGraphBuilder(new (main_zone()) Graph(main_zone())),
         common_(main_zone()),
         javascript_(main_zone()),
-        machine_(main_zone()),
         simplified_(main_zone()),
         typer_(main_zone()),
-        jsgraph_(graph(), common(), &javascript_, &typer_, &machine_),
+        jsgraph_(graph(), common(), &typer_),
         info_(main_isolate(), main_zone()) {}

   Factory* factory() { return main_isolate()->factory(); }
@@ -38,7 +37,6 @@
  private:
   CommonOperatorBuilder common_;
   JSOperatorBuilder javascript_;
-  MachineOperatorBuilder machine_;
   SimplifiedOperatorBuilder simplified_;
   Typer typer_;
   JSGraph jsgraph_;
=======================================
--- /branches/bleeding_edge/test/cctest/compiler/test-js-typed-lowering.cc Tue Sep 9 13:20:09 2014 UTC +++ /branches/bleeding_edge/test/cctest/compiler/test-js-typed-lowering.cc Wed Sep 10 06:39:25 2014 UTC
@@ -50,7 +50,7 @@
   }

   Node* reduce(Node* node) {
-    JSGraph jsgraph(&graph, &common, &javascript, &typer, &machine);
+    JSGraph jsgraph(&graph, &common, &typer);
     JSTypedLowering reducer(&jsgraph);
     Reduction reduction = reducer.Reduce(node);
     if (reduction.Changed()) return reduction.replacement();
=======================================
--- /branches/bleeding_edge/test/cctest/compiler/test-machine-operator-reducer.cc Tue Sep 9 13:20:09 2014 UTC +++ /branches/bleeding_edge/test/cctest/compiler/test-machine-operator-reducer.cc Wed Sep 10 06:39:25 2014 UTC
@@ -55,9 +55,8 @@
         machine(main_zone()),
         common(main_zone()),
         graph(main_zone()),
-        javascript(main_zone()),
         typer(main_zone()),
-        jsgraph(&graph, &common, &javascript, &typer, &machine),
+        jsgraph(&graph, &common, &typer),
         maxuint32(Constant<int32_t>(kMaxUInt32)) {
     Node* s = graph.NewNode(common.Start(num_parameters));
     graph.SetStart(s);
@@ -69,7 +68,6 @@
   MachineOperatorBuilder machine;
   CommonOperatorBuilder common;
   Graph graph;
-  JSOperatorBuilder javascript;
   Typer typer;
   JSGraph jsgraph;
   Node* maxuint32;
=======================================
--- /branches/bleeding_edge/test/cctest/compiler/test-representation-change.cc Tue Sep 9 13:20:09 2014 UTC +++ /branches/bleeding_edge/test/cctest/compiler/test-representation-change.cc Wed Sep 10 06:39:25 2014 UTC
@@ -25,16 +25,13 @@
   explicit RepresentationChangerTester(int num_parameters = 0)
       : GraphAndBuilders(main_zone()),
         typer_(main_zone()),
-        javascript_(main_zone()),
-        jsgraph_(main_graph_, &main_common_, &javascript_, &typer_,
-                 &main_machine_),
+        jsgraph_(main_graph_, &main_common_, &typer_),
changer_(&jsgraph_, &main_simplified_, &main_machine_, main_isolate()) {
     Node* s = graph()->NewNode(common()->Start(num_parameters));
     graph()->SetStart(s);
   }

   Typer typer_;
-  JSOperatorBuilder javascript_;
   JSGraph jsgraph_;
   RepresentationChanger changer_;

=======================================
--- /branches/bleeding_edge/test/cctest/compiler/test-run-inlining.cc Tue Sep 9 15:55:47 2014 UTC +++ /branches/bleeding_edge/test/cctest/compiler/test-run-inlining.cc Wed Sep 10 06:39:25 2014 UTC
@@ -42,8 +42,7 @@
       "function bar(s, t) { return foo(s); };"
       "return bar;})();",
       CompilationInfo::kInliningEnabled |
-          CompilationInfo::kContextSpecializing |
-          CompilationInfo::kTypingEnabled);
+          CompilationInfo::kContextSpecializing);

   InstallAssertStackDepthHelper(CcTest::isolate());
   T.CheckCall(T.Val(1), T.Val(1), T.Val(2));
@@ -58,8 +57,7 @@
       "return bar;"
       "})();",
       CompilationInfo::kInliningEnabled |
-          CompilationInfo::kContextSpecializing |
-          CompilationInfo::kTypingEnabled);
+          CompilationInfo::kContextSpecializing);

   InstallAssertStackDepthHelper(CcTest::isolate());
   T.CheckCall(T.Val(13), T.Val(1), T.Val(2));
@@ -75,8 +73,7 @@
       "})();"
       "(function (s) { return f(s)})",
       CompilationInfo::kInliningEnabled |
-          CompilationInfo::kContextSpecializing |
-          CompilationInfo::kTypingEnabled);
+          CompilationInfo::kContextSpecializing);

   InstallAssertStackDepthHelper(CcTest::isolate());
   T.CheckCall(T.Val(42 + 12), T.Val(12), T.undefined());
@@ -93,8 +90,7 @@
       "return bar;"
       "})();",
       CompilationInfo::kInliningEnabled |
-          CompilationInfo::kContextSpecializing |
-          CompilationInfo::kTypingEnabled);
+          CompilationInfo::kContextSpecializing);

   InstallAssertStackDepthHelper(CcTest::isolate());
   T.CheckCall(T.Val(42), T.Val("x"), T.undefined());
@@ -109,8 +105,7 @@
       "return (function (s,t) { return bar(s); });"
       "})();",
       CompilationInfo::kInliningEnabled |
-          CompilationInfo::kContextSpecializing |
-          CompilationInfo::kTypingEnabled);
+          CompilationInfo::kContextSpecializing);

   InstallAssertStackDepthHelper(CcTest::isolate());
   T.CheckCall(T.Val(42 + 12), T.Val(12), T.undefined());
@@ -126,8 +121,7 @@
       "return bar;"
       "})();",
       CompilationInfo::kInliningEnabled |
-          CompilationInfo::kContextSpecializing |
-          CompilationInfo::kTypingEnabled);
+          CompilationInfo::kContextSpecializing);

   InstallAssertStackDepthHelper(CcTest::isolate());
   T.CheckCall(T.Val(42 + 12), T.Val(12), T.undefined());
@@ -142,8 +136,7 @@
       "return (function (s,t) { return bar(s) + bar(t); });"
       "})();",
       CompilationInfo::kInliningEnabled |
-          CompilationInfo::kContextSpecializing |
-          CompilationInfo::kTypingEnabled);
+          CompilationInfo::kContextSpecializing);

   InstallAssertStackDepthHelper(CcTest::isolate());
   T.CheckCall(T.Val(2 * 42 + 12 + 4), T.Val(12), T.Val(4));
@@ -159,8 +152,7 @@
       "return bar;"
       "})();",
       CompilationInfo::kInliningEnabled |
-          CompilationInfo::kContextSpecializing |
-          CompilationInfo::kTypingEnabled);
+          CompilationInfo::kContextSpecializing);

   InstallAssertStackDepthHelper(CcTest::isolate());
   T.CheckCall(T.Val(42 + 42 + 12), T.Val(12), T.Val(4));
@@ -177,8 +169,7 @@
       "return bar;"
       "})();",
       CompilationInfo::kInliningEnabled |
-          CompilationInfo::kContextSpecializing |
-          CompilationInfo::kTypingEnabled);
+          CompilationInfo::kContextSpecializing);

   InstallAssertStackDepthHelper(CcTest::isolate());
   T.CheckCall(T.Val(-11), T.Val(11), T.Val(4));
@@ -195,8 +186,7 @@
       "return bar;"
       "})();",
       CompilationInfo::kInliningEnabled |
-          CompilationInfo::kContextSpecializing |
-          CompilationInfo::kTypingEnabled);
+          CompilationInfo::kContextSpecializing);

   InstallAssertStackDepthHelper(CcTest::isolate());
   T.CheckCall(T.Val(-329), T.Val(11), T.Val(4));
@@ -213,8 +203,7 @@
       "return bar;"
       "})();",
       CompilationInfo::kInliningEnabled |
-          CompilationInfo::kContextSpecializing |
-          CompilationInfo::kTypingEnabled);
+          CompilationInfo::kContextSpecializing);

   InstallAssertStackDepthHelper(CcTest::isolate());
   T.CheckCall(T.Val(0.0), T.Val(11), T.Val(4));
@@ -231,8 +220,7 @@
       "return bar;"
       "})();",
       CompilationInfo::kInliningEnabled |
-          CompilationInfo::kContextSpecializing |
-          CompilationInfo::kTypingEnabled);
+          CompilationInfo::kContextSpecializing);

   InstallAssertStackDepthHelper(CcTest::isolate());
   T.CheckThrows(T.undefined(), T.undefined());
@@ -248,8 +236,7 @@
       "return bar;"
       "})();",
       CompilationInfo::kInliningEnabled |
-          CompilationInfo::kContextSpecializing |
-          CompilationInfo::kTypingEnabled);
+          CompilationInfo::kContextSpecializing);

   InstallAssertStackDepthHelper(CcTest::isolate());
   T.CheckCall(T.Val(42), T.undefined(), T.undefined());
=======================================
--- /branches/bleeding_edge/test/cctest/compiler/test-simplified-lowering.cc Tue Sep 9 13:20:09 2014 UTC +++ /branches/bleeding_edge/test/cctest/compiler/test-simplified-lowering.cc Wed Sep 10 06:39:25 2014 UTC
@@ -36,13 +36,10 @@
                            MachineType p4 = kMachNone)
       : GraphBuilderTester<ReturnType>(p0, p1, p2, p3, p4),
         typer(this->zone()),
-        javascript(this->zone()),
-        jsgraph(this->graph(), this->common(), &javascript, &typer,
-                this->machine()),
+        jsgraph(this->graph(), this->common(), &typer),
         lowering(&jsgraph) {}

   Typer typer;
-  JSOperatorBuilder javascript;
   JSGraph jsgraph;
   SimplifiedLowering lowering;

@@ -629,7 +626,6 @@
 class TestingGraph : public HandleAndZoneScope, public GraphAndBuilders {
  public:
   Typer typer;
-  JSOperatorBuilder javascript;
   JSGraph jsgraph;
   Node* p0;
   Node* p1;
@@ -640,8 +636,7 @@
   explicit TestingGraph(Type* p0_type, Type* p1_type = Type::None())
       : GraphAndBuilders(main_zone()),
         typer(main_zone()),
-        javascript(main_zone()),
-        jsgraph(graph(), common(), &javascript, &typer, machine()) {
+        jsgraph(graph(), common(), &typer) {
     start = graph()->NewNode(common()->Start(2));
     graph()->SetStart(start);
     ret =

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to