hotspot/src/cpu/x86/vm/assembler_x86.hpp
changeset 14132 3c1437abcefd
parent 13969 d2a189b83b87
child 14625 b02f361c324e
equal deleted inserted replaced
14131:e376e3d428c9 14132:3c1437abcefd
   873 
   873 
   874   // Add Scalar Single-Precision Floating-Point Values
   874   // Add Scalar Single-Precision Floating-Point Values
   875   void addss(XMMRegister dst, Address src);
   875   void addss(XMMRegister dst, Address src);
   876   void addss(XMMRegister dst, XMMRegister src);
   876   void addss(XMMRegister dst, XMMRegister src);
   877 
   877 
       
   878   // AES instructions
       
   879   void aesdec(XMMRegister dst, Address src);
       
   880   void aesdec(XMMRegister dst, XMMRegister src);
       
   881   void aesdeclast(XMMRegister dst, Address src);
       
   882   void aesdeclast(XMMRegister dst, XMMRegister src);
       
   883   void aesenc(XMMRegister dst, Address src);
       
   884   void aesenc(XMMRegister dst, XMMRegister src);
       
   885   void aesenclast(XMMRegister dst, Address src);
       
   886   void aesenclast(XMMRegister dst, XMMRegister src);
       
   887 
       
   888 
   878   void andl(Address  dst, int32_t imm32);
   889   void andl(Address  dst, int32_t imm32);
   879   void andl(Register dst, int32_t imm32);
   890   void andl(Register dst, int32_t imm32);
   880   void andl(Register dst, Address src);
   891   void andl(Register dst, Address src);
   881   void andl(Register dst, Register src);
   892   void andl(Register dst, Register src);
   882 
   893 
  1421   void prefetchr(Address src);
  1432   void prefetchr(Address src);
  1422   void prefetcht0(Address src);
  1433   void prefetcht0(Address src);
  1423   void prefetcht1(Address src);
  1434   void prefetcht1(Address src);
  1424   void prefetcht2(Address src);
  1435   void prefetcht2(Address src);
  1425   void prefetchw(Address src);
  1436   void prefetchw(Address src);
       
  1437 
       
  1438   // Shuffle Bytes
       
  1439   void pshufb(XMMRegister dst, XMMRegister src);
       
  1440   void pshufb(XMMRegister dst, Address src);
  1426 
  1441 
  1427   // Shuffle Packed Doublewords
  1442   // Shuffle Packed Doublewords
  1428   void pshufd(XMMRegister dst, XMMRegister src, int mode);
  1443   void pshufd(XMMRegister dst, XMMRegister src, int mode);
  1429   void pshufd(XMMRegister dst, Address src,     int mode);
  1444   void pshufd(XMMRegister dst, Address src,     int mode);
  1430 
  1445 
  2609 
  2624 
  2610   void divss(XMMRegister dst, XMMRegister src)    { Assembler::divss(dst, src); }
  2625   void divss(XMMRegister dst, XMMRegister src)    { Assembler::divss(dst, src); }
  2611   void divss(XMMRegister dst, Address src)        { Assembler::divss(dst, src); }
  2626   void divss(XMMRegister dst, Address src)        { Assembler::divss(dst, src); }
  2612   void divss(XMMRegister dst, AddressLiteral src);
  2627   void divss(XMMRegister dst, AddressLiteral src);
  2613 
  2628 
       
  2629   // Move Unaligned Double Quadword
       
  2630   void movdqu(Address     dst, XMMRegister src)   { Assembler::movdqu(dst, src); }
       
  2631   void movdqu(XMMRegister dst, Address src)       { Assembler::movdqu(dst, src); }
       
  2632   void movdqu(XMMRegister dst, XMMRegister src)   { Assembler::movdqu(dst, src); }
       
  2633   void movdqu(XMMRegister dst, AddressLiteral src);
       
  2634 
  2614   void movsd(XMMRegister dst, XMMRegister src) { Assembler::movsd(dst, src); }
  2635   void movsd(XMMRegister dst, XMMRegister src) { Assembler::movsd(dst, src); }
  2615   void movsd(Address dst, XMMRegister src)     { Assembler::movsd(dst, src); }
  2636   void movsd(Address dst, XMMRegister src)     { Assembler::movsd(dst, src); }
  2616   void movsd(XMMRegister dst, Address src)     { Assembler::movsd(dst, src); }
  2637   void movsd(XMMRegister dst, Address src)     { Assembler::movsd(dst, src); }
  2617   void movsd(XMMRegister dst, AddressLiteral src);
  2638   void movsd(XMMRegister dst, AddressLiteral src);
  2618 
  2639 
  2656   // Bitwise Logical XOR of Packed Single-Precision Floating-Point Values
  2677   // Bitwise Logical XOR of Packed Single-Precision Floating-Point Values
  2657   void xorps(XMMRegister dst, XMMRegister src) { Assembler::xorps(dst, src); }
  2678   void xorps(XMMRegister dst, XMMRegister src) { Assembler::xorps(dst, src); }
  2658   void xorps(XMMRegister dst, Address src)     { Assembler::xorps(dst, src); }
  2679   void xorps(XMMRegister dst, Address src)     { Assembler::xorps(dst, src); }
  2659   void xorps(XMMRegister dst, AddressLiteral src);
  2680   void xorps(XMMRegister dst, AddressLiteral src);
  2660 
  2681 
       
  2682   // Shuffle Bytes
       
  2683   void pshufb(XMMRegister dst, XMMRegister src) { Assembler::pshufb(dst, src); }
       
  2684   void pshufb(XMMRegister dst, Address src)     { Assembler::pshufb(dst, src); }
       
  2685   void pshufb(XMMRegister dst, AddressLiteral src);
  2661   // AVX 3-operands instructions
  2686   // AVX 3-operands instructions
  2662 
  2687 
  2663   void vaddsd(XMMRegister dst, XMMRegister nds, XMMRegister src) { Assembler::vaddsd(dst, nds, src); }
  2688   void vaddsd(XMMRegister dst, XMMRegister nds, XMMRegister src) { Assembler::vaddsd(dst, nds, src); }
  2664   void vaddsd(XMMRegister dst, XMMRegister nds, Address src)     { Assembler::vaddsd(dst, nds, src); }
  2689   void vaddsd(XMMRegister dst, XMMRegister nds, Address src)     { Assembler::vaddsd(dst, nds, src); }
  2665   void vaddsd(XMMRegister dst, XMMRegister nds, AddressLiteral src);
  2690   void vaddsd(XMMRegister dst, XMMRegister nds, AddressLiteral src);