hotspot/src/share/vm/opto/opaquenode.hpp
changeset 35551 36ef3841fb34
parent 28912 27fac2f8fdbe
child 46525 3a5c833a43de
equal deleted inserted replaced
35550:633a22d66bd7 35551:36ef3841fb34
    48     C->add_macro_node(this);
    48     C->add_macro_node(this);
    49   }
    49   }
    50   Node* original_loop_limit() { return req()==3 ? in(2) : NULL; }
    50   Node* original_loop_limit() { return req()==3 ? in(2) : NULL; }
    51   virtual int Opcode() const;
    51   virtual int Opcode() const;
    52   virtual const Type *bottom_type() const { return TypeInt::INT; }
    52   virtual const Type *bottom_type() const { return TypeInt::INT; }
    53   virtual Node *Identity( PhaseTransform *phase );
    53   virtual Node* Identity(PhaseGVN* phase);
    54 };
    54 };
    55 
    55 
    56 //------------------------------Opaque2Node------------------------------------
    56 //------------------------------Opaque2Node------------------------------------
    57 // A node to prevent unwanted optimizations.  Allows constant folding.  Stops
    57 // A node to prevent unwanted optimizations.  Allows constant folding.  Stops
    58 // value-numbering, most Ideal calls or Identity functions.  This Node is
    58 // value-numbering, most Ideal calls or Identity functions.  This Node is
   107 
   107 
   108   void consume() { _consumed = true;  }
   108   void consume() { _consumed = true;  }
   109 
   109 
   110   virtual int Opcode() const;
   110   virtual int Opcode() const;
   111   virtual Node *Ideal(PhaseGVN *phase, bool can_reshape);
   111   virtual Node *Ideal(PhaseGVN *phase, bool can_reshape);
   112   virtual Node *Identity(PhaseTransform *phase);
   112   virtual Node* Identity(PhaseGVN* phase);
   113   virtual const Type *bottom_type() const { return TypeInt::BOOL; }
   113   virtual const Type *bottom_type() const { return TypeInt::BOOL; }
   114 };
   114 };
   115 
   115 
   116 #endif // SHARE_VM_OPTO_OPAQUENODE_HPP
   116 #endif // SHARE_VM_OPTO_OPAQUENODE_HPP
   117 
   117