| Index: src/compiler/change-lowering.h | 
| diff --git a/src/compiler/change-lowering.h b/src/compiler/change-lowering.h | 
| index 3e16d800de73f76b3afa83c5692a4c783977444f..93ba14206203aa754b89370f3a6b50c4a7c8a7c0 100644 | 
| --- a/src/compiler/change-lowering.h | 
| +++ b/src/compiler/change-lowering.h | 
| @@ -5,71 +5,47 @@ | 
| #ifndef V8_COMPILER_CHANGE_LOWERING_H_ | 
| #define V8_COMPILER_CHANGE_LOWERING_H_ | 
|  | 
| -#include "include/v8.h" | 
| -#include "src/compiler/common-operator.h" | 
| #include "src/compiler/graph-reducer.h" | 
| -#include "src/compiler/machine-operator.h" | 
|  | 
| namespace v8 { | 
| namespace internal { | 
| namespace compiler { | 
|  | 
| // Forward declarations. | 
| -class CommonNodeCache; | 
| +class CommonOperatorBuilder; | 
| +class JSGraph; | 
| class Linkage; | 
| +class MachineOperatorBuilder; | 
|  | 
| -class ChangeLoweringBase : public Reducer { | 
| +class ChangeLowering V8_FINAL : public Reducer { | 
| public: | 
| -  ChangeLoweringBase(Graph* graph, Linkage* linkage, CommonNodeCache* cache); | 
| -  virtual ~ChangeLoweringBase(); | 
| +  ChangeLowering(JSGraph* jsgraph, Linkage* linkage, | 
| +                 MachineOperatorBuilder* machine) | 
| +      : jsgraph_(jsgraph), linkage_(linkage), machine_(machine) {} | 
| +  virtual ~ChangeLowering(); | 
| + | 
| +  virtual Reduction Reduce(Node* node) V8_OVERRIDE; | 
|  | 
| protected: | 
| -  Node* ExternalConstant(ExternalReference reference); | 
| -  Node* HeapConstant(PrintableUnique<HeapObject> value); | 
| -  Node* ImmovableHeapConstant(Handle<HeapObject> value); | 
| -  Node* Int32Constant(int32_t value); | 
| -  Node* NumberConstant(double value); | 
| -  Node* CEntryStubConstant(); | 
| -  Node* TrueConstant(); | 
| -  Node* FalseConstant(); | 
| +  Node* HeapNumberValueIndexConstant(); | 
| +  Node* SmiShiftBitsConstant(); | 
|  | 
| Reduction ChangeBitToBool(Node* val, Node* control); | 
| +  Reduction ChangeBoolToBit(Node* val); | 
| +  Reduction ChangeInt32ToTagged(Node* val, Node* effect, Node* control); | 
| +  Reduction ChangeTaggedToFloat64(Node* val, Node* effect, Node* control); | 
|  | 
| -  Graph* graph() const { return graph_; } | 
| -  Isolate* isolate() const { return isolate_; } | 
| +  Graph* graph() const; | 
| +  Isolate* isolate() const; | 
| +  JSGraph* jsgraph() const { return jsgraph_; } | 
| Linkage* linkage() const { return linkage_; } | 
| -  CommonNodeCache* cache() const { return cache_; } | 
| -  CommonOperatorBuilder* common() { return &common_; } | 
| -  MachineOperatorBuilder* machine() { return &machine_; } | 
| +  CommonOperatorBuilder* common() const; | 
| +  MachineOperatorBuilder* machine() const { return machine_; } | 
|  | 
| private: | 
| -  Graph* graph_; | 
| -  Isolate* isolate_; | 
| +  JSGraph* jsgraph_; | 
| Linkage* linkage_; | 
| -  CommonNodeCache* cache_; | 
| -  CommonOperatorBuilder common_; | 
| -  MachineOperatorBuilder machine_; | 
| - | 
| -  SetOncePointer<Node> c_entry_stub_constant_; | 
| -  SetOncePointer<Node> true_constant_; | 
| -  SetOncePointer<Node> false_constant_; | 
| -}; | 
| - | 
| - | 
| -template <size_t kPointerSize = kApiPointerSize> | 
| -class ChangeLowering V8_FINAL : public ChangeLoweringBase { | 
| - public: | 
| -  ChangeLowering(Graph* graph, Linkage* linkage); | 
| -  ChangeLowering(Graph* graph, Linkage* linkage, CommonNodeCache* cache) | 
| -      : ChangeLoweringBase(graph, linkage, cache) {} | 
| -  virtual ~ChangeLowering() {} | 
| - | 
| -  virtual Reduction Reduce(Node* node) V8_OVERRIDE; | 
| - | 
| - private: | 
| -  Reduction ChangeBoolToBit(Node* val); | 
| -  Reduction ChangeInt32ToTagged(Node* val, Node* effect, Node* control); | 
| -  Reduction ChangeTaggedToFloat64(Node* val, Node* effect, Node* control); | 
| +  MachineOperatorBuilder* machine_; | 
| }; | 
|  | 
| }  // namespace compiler | 
|  |