< prev index next >

src/hotspot/share/opto/movenode.hpp

Print this page

        

@@ -103,37 +103,41 @@
   MoveI2FNode( Node *value ) : Node(0,value) {}
   virtual int Opcode() const;
   virtual const Type *bottom_type() const { return Type::FLOAT; }
   virtual uint ideal_reg() const { return Op_RegF; }
   virtual const Type* Value(PhaseGVN* phase) const;
+  virtual Node* Identity(PhaseGVN* phase);
 };
 
 class MoveL2DNode : public Node {
   public:
   MoveL2DNode( Node *value ) : Node(0,value) {}
   virtual int Opcode() const;
   virtual const Type *bottom_type() const { return Type::DOUBLE; }
   virtual uint ideal_reg() const { return Op_RegD; }
   virtual const Type* Value(PhaseGVN* phase) const;
+  virtual Node* Identity(PhaseGVN* phase);
 };
 
 class MoveF2INode : public Node {
   public:
   MoveF2INode( Node *value ) : Node(0,value) {}
   virtual int Opcode() const;
   virtual const Type *bottom_type() const { return TypeInt::INT; }
   virtual uint ideal_reg() const { return Op_RegI; }
   virtual const Type* Value(PhaseGVN* phase) const;
+  virtual Node* Identity(PhaseGVN* phase);
 };
 
 class MoveD2LNode : public Node {
   public:
   MoveD2LNode( Node *value ) : Node(0,value) {}
   virtual int Opcode() const;
   virtual const Type *bottom_type() const { return TypeLong::LONG; }
   virtual uint ideal_reg() const { return Op_RegL; }
   virtual const Type* Value(PhaseGVN* phase) const;
+  virtual Node* Identity(PhaseGVN* phase);
 };
 
 //------------------------------BinaryNode-------------------------------------
 // Place holder for the 2 conditional inputs to a CMove.  CMove needs 4
 // inputs: the Bool (for the lt/gt/eq/ne bits), the flags (result of some
< prev index next >