hotspot/src/share/vm/opto/memnode.hpp
changeset 15242 695bb216be99
parent 13974 791cba24758f
child 15813 6efd4c793e47
equal deleted inserted replaced
15241:87d217c2d183 15242:695bb216be99
   884 public:
   884 public:
   885   AryEqNode(Node* control, Node* char_array_mem, Node* s1, Node* s2):
   885   AryEqNode(Node* control, Node* char_array_mem, Node* s1, Node* s2):
   886     StrIntrinsicNode(control, char_array_mem, s1, s2) {};
   886     StrIntrinsicNode(control, char_array_mem, s1, s2) {};
   887   virtual int Opcode() const;
   887   virtual int Opcode() const;
   888   virtual const Type* bottom_type() const { return TypeInt::BOOL; }
   888   virtual const Type* bottom_type() const { return TypeInt::BOOL; }
       
   889 };
       
   890 
       
   891 
       
   892 //------------------------------EncodeISOArray--------------------------------
       
   893 // encode char[] to byte[] in ISO_8859_1
       
   894 class EncodeISOArrayNode: public Node {
       
   895 public:
       
   896   EncodeISOArrayNode(Node *control, Node* arymem, Node* s1, Node* s2, Node* c): Node(control, arymem, s1, s2, c) {};
       
   897   virtual int Opcode() const;
       
   898   virtual bool depends_only_on_test() const { return false; }
       
   899   virtual const Type* bottom_type() const { return TypeInt::INT; }
       
   900   virtual const TypePtr* adr_type() const { return TypePtr::BOTTOM; }
       
   901   virtual uint match_edge(uint idx) const;
       
   902   virtual uint ideal_reg() const { return Op_RegI; }
       
   903   virtual Node *Ideal(PhaseGVN *phase, bool can_reshape);
       
   904   virtual const Type *Value(PhaseTransform *phase) const;
   889 };
   905 };
   890 
   906 
   891 //------------------------------MemBar-----------------------------------------
   907 //------------------------------MemBar-----------------------------------------
   892 // There are different flavors of Memory Barriers to match the Java Memory
   908 // There are different flavors of Memory Barriers to match the Java Memory
   893 // Model.  Monitor-enter and volatile-load act as Aquires: no following ref
   909 // Model.  Monitor-enter and volatile-load act as Aquires: no following ref