src/share/vm/opto/vectornode.hpp

changeset 7859
c1c199dde5c9
parent 6479
2113136690bc
child 7994
04ff2f6cd0eb
equal deleted inserted replaced
7858:55d07ec5bde4 7859:c1c199dde5c9
353 353
354 //------------------------------LoadVectorNode--------------------------------- 354 //------------------------------LoadVectorNode---------------------------------
355 // Load Vector from memory 355 // Load Vector from memory
356 class LoadVectorNode : public LoadNode { 356 class LoadVectorNode : public LoadNode {
357 public: 357 public:
358 LoadVectorNode(Node* c, Node* mem, Node* adr, const TypePtr* at, const TypeVect* vt) 358 LoadVectorNode(Node* c, Node* mem, Node* adr, const TypePtr* at, const TypeVect* vt, ControlDependency control_dependency = LoadNode::DependsOnlyOnTest)
359 : LoadNode(c, mem, adr, at, vt, MemNode::unordered) { 359 : LoadNode(c, mem, adr, at, vt, MemNode::unordered, control_dependency) {
360 init_class_id(Class_LoadVector); 360 init_class_id(Class_LoadVector);
361 } 361 }
362 362
363 const TypeVect* vect_type() const { return type()->is_vect(); } 363 const TypeVect* vect_type() const { return type()->is_vect(); }
364 uint length() const { return vect_type()->length(); } // Vector length 364 uint length() const { return vect_type()->length(); } // Vector length
370 virtual int memory_size() const { return vect_type()->length_in_bytes(); } 370 virtual int memory_size() const { return vect_type()->length_in_bytes(); }
371 371
372 virtual int store_Opcode() const { return Op_StoreVector; } 372 virtual int store_Opcode() const { return Op_StoreVector; }
373 373
374 static LoadVectorNode* make(Compile* C, int opc, Node* ctl, Node* mem, 374 static LoadVectorNode* make(Compile* C, int opc, Node* ctl, Node* mem,
375 Node* adr, const TypePtr* atyp, uint vlen, BasicType bt); 375 Node* adr, const TypePtr* atyp, uint vlen, BasicType bt,
376 ControlDependency control_dependency = LoadNode::DependsOnlyOnTest);
376 }; 377 };
377 378
378 //------------------------------StoreVectorNode-------------------------------- 379 //------------------------------StoreVectorNode--------------------------------
379 // Store Vector to memory 380 // Store Vector to memory
380 class StoreVectorNode : public StoreNode { 381 class StoreVectorNode : public StoreNode {

mercurial