hotspot/src/share/vm/opto/node.hpp
changeset 35551 36ef3841fb34
parent 35539 9a687b686976
child 35574 2b25eb88c8d6
equal deleted inserted replaced
35550:633a22d66bd7 35551:36ef3841fb34
   924   virtual const class TypePtr *adr_type() const { return NULL; }
   924   virtual const class TypePtr *adr_type() const { return NULL; }
   925 
   925 
   926   // Return an existing node which computes the same function as this node.
   926   // Return an existing node which computes the same function as this node.
   927   // The optimistic combined algorithm requires this to return a Node which
   927   // The optimistic combined algorithm requires this to return a Node which
   928   // is a small number of steps away (e.g., one of my inputs).
   928   // is a small number of steps away (e.g., one of my inputs).
   929   virtual Node *Identity( PhaseTransform *phase );
   929   virtual Node* Identity(PhaseGVN* phase);
   930 
   930 
   931   // Return the set of values this Node can take on at runtime.
   931   // Return the set of values this Node can take on at runtime.
   932   virtual const Type *Value( PhaseTransform *phase ) const;
   932   virtual const Type* Value(PhaseGVN* phase) const;
   933 
   933 
   934   // Return a node which is more "ideal" than the current node.
   934   // Return a node which is more "ideal" than the current node.
   935   // The invariants on this call are subtle.  If in doubt, read the
   935   // The invariants on this call are subtle.  If in doubt, read the
   936   // treatise in node.cpp above the default implemention AND TEST WITH
   936   // treatise in node.cpp above the default implemention AND TEST WITH
   937   // +VerifyIterativeGVN!
   937   // +VerifyIterativeGVN!
  1694   }
  1694   }
  1695   const Type* type() const { assert(_type != NULL, "sanity"); return _type; };
  1695   const Type* type() const { assert(_type != NULL, "sanity"); return _type; };
  1696   TypeNode( const Type *t, uint required ) : Node(required), _type(t) {
  1696   TypeNode( const Type *t, uint required ) : Node(required), _type(t) {
  1697     init_class_id(Class_Type);
  1697     init_class_id(Class_Type);
  1698   }
  1698   }
  1699   virtual const Type *Value( PhaseTransform *phase ) const;
  1699   virtual const Type* Value(PhaseGVN* phase) const;
  1700   virtual const Type *bottom_type() const;
  1700   virtual const Type *bottom_type() const;
  1701   virtual       uint  ideal_reg() const;
  1701   virtual       uint  ideal_reg() const;
  1702 #ifndef PRODUCT
  1702 #ifndef PRODUCT
  1703   virtual void dump_spec(outputStream *st) const;
  1703   virtual void dump_spec(outputStream *st) const;
  1704   virtual void dump_compact_spec(outputStream *st) const;
  1704   virtual void dump_compact_spec(outputStream *st) const;