356 AbsVDNode(Node* in, const TypeVect* vt) : VectorNode(in,vt) {}
357 virtual int Opcode() const;
358 };
359
360 //------------------------------NegVFNode--------------------------------------
361 // Vector Neg float
362 class NegVFNode : public VectorNode {
363 public:
364 NegVFNode(Node* in, const TypeVect* vt) : VectorNode(in,vt) {}
365 virtual int Opcode() const;
366 };
367
368 //------------------------------NegVDNode--------------------------------------
369 // Vector Neg double
370 class NegVDNode : public VectorNode {
371 public:
372 NegVDNode(Node* in, const TypeVect* vt) : VectorNode(in,vt) {}
373 virtual int Opcode() const;
374 };
375
376 //------------------------------SqrtVDNode--------------------------------------
377 // Vector Sqrt double
378 class SqrtVDNode : public VectorNode {
379 public:
380 SqrtVDNode(Node* in, const TypeVect* vt) : VectorNode(in,vt) {}
381 virtual int Opcode() const;
382 };
383
384 //------------------------------LShiftVBNode-----------------------------------
385 // Vector left shift bytes
386 class LShiftVBNode : public VectorNode {
387 public:
388 LShiftVBNode(Node* in1, Node* in2, const TypeVect* vt) : VectorNode(in1,in2,vt) {}
389 virtual int Opcode() const;
390 };
391
392 //------------------------------LShiftVSNode-----------------------------------
393 // Vector left shift shorts
394 class LShiftVSNode : public VectorNode {
395 public:
|
356 AbsVDNode(Node* in, const TypeVect* vt) : VectorNode(in,vt) {}
357 virtual int Opcode() const;
358 };
359
360 //------------------------------NegVFNode--------------------------------------
361 // Vector Neg float
362 class NegVFNode : public VectorNode {
363 public:
364 NegVFNode(Node* in, const TypeVect* vt) : VectorNode(in,vt) {}
365 virtual int Opcode() const;
366 };
367
368 //------------------------------NegVDNode--------------------------------------
369 // Vector Neg double
370 class NegVDNode : public VectorNode {
371 public:
372 NegVDNode(Node* in, const TypeVect* vt) : VectorNode(in,vt) {}
373 virtual int Opcode() const;
374 };
375
376 //------------------------------SqrtVFNode--------------------------------------
377 // Vector Sqrt float
378 class SqrtVFNode : public VectorNode {
379 public:
380 SqrtVFNode(Node* in, const TypeVect* vt) : VectorNode(in,vt) {}
381 virtual int Opcode() const;
382 };
383
384 //------------------------------SqrtVDNode--------------------------------------
385 // Vector Sqrt double
386 class SqrtVDNode : public VectorNode {
387 public:
388 SqrtVDNode(Node* in, const TypeVect* vt) : VectorNode(in,vt) {}
389 virtual int Opcode() const;
390 };
391
392 //------------------------------LShiftVBNode-----------------------------------
393 // Vector left shift bytes
394 class LShiftVBNode : public VectorNode {
395 public:
396 LShiftVBNode(Node* in1, Node* in2, const TypeVect* vt) : VectorNode(in1,in2,vt) {}
397 virtual int Opcode() const;
398 };
399
400 //------------------------------LShiftVSNode-----------------------------------
401 // Vector left shift shorts
402 class LShiftVSNode : public VectorNode {
403 public:
|