| OLD | NEW | 
|---|
| 1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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 <limits> | 5 #include <limits> | 
| 6 | 6 | 
| 7 #include "src/ast/scopes.h" | 7 #include "src/ast/scopes.h" | 
| 8 #include "src/compiler/access-builder.h" | 8 #include "src/compiler/access-builder.h" | 
| 9 #include "src/compiler/change-lowering.h" | 9 #include "src/compiler/change-lowering.h" | 
| 10 #include "src/compiler/control-builders.h" | 10 #include "src/compiler/control-builders.h" | 
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 60   void LowerAllNodesAndLowerChanges() { | 60   void LowerAllNodesAndLowerChanges() { | 
| 61     this->End(); | 61     this->End(); | 
| 62     typer.Run(); | 62     typer.Run(); | 
| 63     lowering.LowerAllNodes(); | 63     lowering.LowerAllNodes(); | 
| 64 | 64 | 
| 65     Schedule* schedule = Scheduler::ComputeSchedule(this->zone(), this->graph(), | 65     Schedule* schedule = Scheduler::ComputeSchedule(this->zone(), this->graph(), | 
| 66                                                     Scheduler::kNoFlags); | 66                                                     Scheduler::kNoFlags); | 
| 67     EffectControlLinearizer linearizer(&jsgraph, schedule, this->zone()); | 67     EffectControlLinearizer linearizer(&jsgraph, schedule, this->zone()); | 
| 68     linearizer.Run(); | 68     linearizer.Run(); | 
| 69 | 69 | 
| 70     ChangeLowering lowering(&jsgraph); |  | 
| 71     GraphReducer reducer(this->zone(), this->graph()); | 70     GraphReducer reducer(this->zone(), this->graph()); | 
|  | 71     ChangeLowering lowering(&reducer, &jsgraph); | 
| 72     reducer.AddReducer(&lowering); | 72     reducer.AddReducer(&lowering); | 
| 73     reducer.ReduceGraph(); | 73     reducer.ReduceGraph(); | 
| 74     Verifier::Run(this->graph()); | 74     Verifier::Run(this->graph()); | 
| 75   } | 75   } | 
| 76 | 76 | 
| 77   void CheckNumberCall(double expected, double input) { | 77   void CheckNumberCall(double expected, double input) { | 
| 78     // TODO(titzer): make calls to NewNumber work in cctests. | 78     // TODO(titzer): make calls to NewNumber work in cctests. | 
| 79     if (expected <= Smi::kMinValue) return; | 79     if (expected <= Smi::kMinValue) return; | 
| 80     if (expected >= Smi::kMaxValue) return; | 80     if (expected >= Smi::kMaxValue) return; | 
| 81     Handle<Object> num = factory()->NewNumber(input); | 81     Handle<Object> num = factory()->NewNumber(input); | 
| (...skipping 649 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 731 | 731 | 
| 732   void LowerAllNodesAndLowerChanges() { | 732   void LowerAllNodesAndLowerChanges() { | 
| 733     SourcePositionTable table(jsgraph.graph()); | 733     SourcePositionTable table(jsgraph.graph()); | 
| 734     SimplifiedLowering(&jsgraph, jsgraph.zone(), &table).LowerAllNodes(); | 734     SimplifiedLowering(&jsgraph, jsgraph.zone(), &table).LowerAllNodes(); | 
| 735 | 735 | 
| 736     Schedule* schedule = Scheduler::ComputeSchedule(this->zone(), this->graph(), | 736     Schedule* schedule = Scheduler::ComputeSchedule(this->zone(), this->graph(), | 
| 737                                                     Scheduler::kNoFlags); | 737                                                     Scheduler::kNoFlags); | 
| 738     EffectControlLinearizer linearizer(&jsgraph, schedule, this->zone()); | 738     EffectControlLinearizer linearizer(&jsgraph, schedule, this->zone()); | 
| 739     linearizer.Run(); | 739     linearizer.Run(); | 
| 740 | 740 | 
| 741     ChangeLowering lowering(&jsgraph); |  | 
| 742     GraphReducer reducer(this->zone(), this->graph()); | 741     GraphReducer reducer(this->zone(), this->graph()); | 
|  | 742     ChangeLowering lowering(&reducer, &jsgraph); | 
| 743     reducer.AddReducer(&lowering); | 743     reducer.AddReducer(&lowering); | 
| 744     reducer.ReduceGraph(); | 744     reducer.ReduceGraph(); | 
| 745     Verifier::Run(this->graph()); | 745     Verifier::Run(this->graph()); | 
| 746   } | 746   } | 
| 747 | 747 | 
| 748   // Inserts the node as the return value of the graph. | 748   // Inserts the node as the return value of the graph. | 
| 749   Node* Return(Node* node) { | 749   Node* Return(Node* node) { | 
| 750     ret->ReplaceInput(0, node); | 750     ret->ReplaceInput(0, node); | 
| 751     return node; | 751     return node; | 
| 752   } | 752   } | 
| (...skipping 1186 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1939     t.Return(use); | 1939     t.Return(use); | 
| 1940     t.Lower(); | 1940     t.Lower(); | 
| 1941 | 1941 | 
| 1942     CHECK_EQ(d.expected, PhiRepresentationOf(phi->op())); | 1942     CHECK_EQ(d.expected, PhiRepresentationOf(phi->op())); | 
| 1943   } | 1943   } | 
| 1944 } | 1944 } | 
| 1945 | 1945 | 
| 1946 }  // namespace compiler | 1946 }  // namespace compiler | 
| 1947 }  // namespace internal | 1947 }  // namespace internal | 
| 1948 }  // namespace v8 | 1948 }  // namespace v8 | 
| OLD | NEW | 
|---|