src/hotspot/share/opto/vectornode.hpp
changeset 52779 a432469d2ed5
parent 49384 b242a1e3f9cf
child 52992 4bb6e0871bf7
equal deleted inserted replaced
52778:dbbf46b13d52 52779:a432469d2ed5
   551 class LoadVectorNode : public LoadNode {
   551 class LoadVectorNode : public LoadNode {
   552  public:
   552  public:
   553   LoadVectorNode(Node* c, Node* mem, Node* adr, const TypePtr* at, const TypeVect* vt, ControlDependency control_dependency = LoadNode::DependsOnlyOnTest)
   553   LoadVectorNode(Node* c, Node* mem, Node* adr, const TypePtr* at, const TypeVect* vt, ControlDependency control_dependency = LoadNode::DependsOnlyOnTest)
   554     : LoadNode(c, mem, adr, at, vt, MemNode::unordered, control_dependency) {
   554     : LoadNode(c, mem, adr, at, vt, MemNode::unordered, control_dependency) {
   555     init_class_id(Class_LoadVector);
   555     init_class_id(Class_LoadVector);
       
   556     set_mismatched_access();
   556   }
   557   }
   557 
   558 
   558   const TypeVect* vect_type() const { return type()->is_vect(); }
   559   const TypeVect* vect_type() const { return type()->is_vect(); }
   559   uint length() const { return vect_type()->length(); } // Vector length
   560   uint length() const { return vect_type()->length(); } // Vector length
   560 
   561 
   579  public:
   580  public:
   580   StoreVectorNode(Node* c, Node* mem, Node* adr, const TypePtr* at, Node* val)
   581   StoreVectorNode(Node* c, Node* mem, Node* adr, const TypePtr* at, Node* val)
   581     : StoreNode(c, mem, adr, at, val, MemNode::unordered) {
   582     : StoreNode(c, mem, adr, at, val, MemNode::unordered) {
   582     assert(val->is_Vector() || val->is_LoadVector(), "sanity");
   583     assert(val->is_Vector() || val->is_LoadVector(), "sanity");
   583     init_class_id(Class_StoreVector);
   584     init_class_id(Class_StoreVector);
       
   585     set_mismatched_access();
   584   }
   586   }
   585 
   587 
   586   const TypeVect* vect_type() const { return in(MemNode::ValueIn)->bottom_type()->is_vect(); }
   588   const TypeVect* vect_type() const { return in(MemNode::ValueIn)->bottom_type()->is_vect(); }
   587   uint length() const { return vect_type()->length(); } // Vector length
   589   uint length() const { return vect_type()->length(); } // Vector length
   588 
   590