1 // Copyright 2013 the V8 project authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef V8_CRANKSHAFT_HYDROGEN_REPRESENTATION_CHANGES_H_ 6 #define V8_CRANKSHAFT_HYDROGEN_REPRESENTATION_CHANGES_H_ 7 8 #include "src/crankshaft/hydrogen.h" 9 10 namespace v8 { 11 namespace internal { 12 13 14 class HRepresentationChangesPhase : public HPhase { 15 public: HRepresentationChangesPhase(HGraph * graph)16 explicit HRepresentationChangesPhase(HGraph* graph) 17 : HPhase("H_Representation changes", graph) { } 18 19 void Run(); 20 21 private: 22 void InsertRepresentationChangeForUse(HValue* value, 23 HValue* use_value, 24 int use_index, 25 Representation to); 26 void InsertRepresentationChangesForValue(HValue* value); 27 }; 28 29 30 } // namespace internal 31 } // namespace v8 32 33 #endif // V8_CRANKSHAFT_HYDROGEN_REPRESENTATION_CHANGES_H_ 34