hotspot/src/cpu/x86/vm/macroAssembler_x86.hpp
changeset 34162 16b54851eaf6
parent 33628 09241459a8b8
child 34203 6817dadf6c7e
equal deleted inserted replaced
34159:f401f5b4327e 34162:16b54851eaf6
   960   void divss(XMMRegister dst, XMMRegister src)    { Assembler::divss(dst, src); }
   960   void divss(XMMRegister dst, XMMRegister src)    { Assembler::divss(dst, src); }
   961   void divss(XMMRegister dst, Address src)        { Assembler::divss(dst, src); }
   961   void divss(XMMRegister dst, Address src)        { Assembler::divss(dst, src); }
   962   void divss(XMMRegister dst, AddressLiteral src);
   962   void divss(XMMRegister dst, AddressLiteral src);
   963 
   963 
   964   // Move Unaligned Double Quadword
   964   // Move Unaligned Double Quadword
   965   void movdqu(Address     dst, XMMRegister src)   { Assembler::movdqu(dst, src); }
   965   void movdqu(Address     dst, XMMRegister src);
   966   void movdqu(XMMRegister dst, Address src)       { Assembler::movdqu(dst, src); }
   966   void movdqu(XMMRegister dst, Address src);
   967   void movdqu(XMMRegister dst, XMMRegister src)   { Assembler::movdqu(dst, src); }
   967   void movdqu(XMMRegister dst, XMMRegister src);
   968   void movdqu(XMMRegister dst, AddressLiteral src);
   968   void movdqu(XMMRegister dst, AddressLiteral src);
       
   969   // AVX Unaligned forms
       
   970   void vmovdqu(Address     dst, XMMRegister src);
       
   971   void vmovdqu(XMMRegister dst, Address src);
       
   972   void vmovdqu(XMMRegister dst, XMMRegister src);
       
   973   void vmovdqu(XMMRegister dst, AddressLiteral src);
   969 
   974 
   970   // Move Aligned Double Quadword
   975   // Move Aligned Double Quadword
   971   void movdqa(XMMRegister dst, Address src)       { Assembler::movdqa(dst, src); }
   976   void movdqa(XMMRegister dst, Address src)       { Assembler::movdqa(dst, src); }
   972   void movdqa(XMMRegister dst, XMMRegister src)   { Assembler::movdqa(dst, src); }
   977   void movdqa(XMMRegister dst, XMMRegister src)   { Assembler::movdqa(dst, src); }
   973   void movdqa(XMMRegister dst, AddressLiteral src);
   978   void movdqa(XMMRegister dst, AddressLiteral src);
  1022   void ucomisd(XMMRegister dst, XMMRegister src) { Assembler::ucomisd(dst, src); }
  1027   void ucomisd(XMMRegister dst, XMMRegister src) { Assembler::ucomisd(dst, src); }
  1023   void ucomisd(XMMRegister dst, Address src)     { Assembler::ucomisd(dst, src); }
  1028   void ucomisd(XMMRegister dst, Address src)     { Assembler::ucomisd(dst, src); }
  1024   void ucomisd(XMMRegister dst, AddressLiteral src);
  1029   void ucomisd(XMMRegister dst, AddressLiteral src);
  1025 
  1030 
  1026   // Bitwise Logical XOR of Packed Double-Precision Floating-Point Values
  1031   // Bitwise Logical XOR of Packed Double-Precision Floating-Point Values
  1027   void xorpd(XMMRegister dst, XMMRegister src) { Assembler::xorpd(dst, src); }
  1032   void xorpd(XMMRegister dst, XMMRegister src);
  1028   void xorpd(XMMRegister dst, Address src)     { Assembler::xorpd(dst, src); }
  1033   void xorpd(XMMRegister dst, Address src)     { Assembler::xorpd(dst, src); }
  1029   void xorpd(XMMRegister dst, AddressLiteral src);
  1034   void xorpd(XMMRegister dst, AddressLiteral src);
  1030 
  1035 
  1031   // Bitwise Logical XOR of Packed Single-Precision Floating-Point Values
  1036   // Bitwise Logical XOR of Packed Single-Precision Floating-Point Values
  1032   void xorps(XMMRegister dst, XMMRegister src) { Assembler::xorps(dst, src); }
  1037   void xorps(XMMRegister dst, XMMRegister src);
  1033   void xorps(XMMRegister dst, Address src)     { Assembler::xorps(dst, src); }
  1038   void xorps(XMMRegister dst, Address src)     { Assembler::xorps(dst, src); }
  1034   void xorps(XMMRegister dst, AddressLiteral src);
  1039   void xorps(XMMRegister dst, AddressLiteral src);
  1035 
  1040 
  1036   // Shuffle Bytes
  1041   // Shuffle Bytes
  1037   void pshufb(XMMRegister dst, XMMRegister src) { Assembler::pshufb(dst, src); }
  1042   void pshufb(XMMRegister dst, XMMRegister src) { Assembler::pshufb(dst, src); }
  1044   void vaddsd(XMMRegister dst, XMMRegister nds, AddressLiteral src);
  1049   void vaddsd(XMMRegister dst, XMMRegister nds, AddressLiteral src);
  1045 
  1050 
  1046   void vaddss(XMMRegister dst, XMMRegister nds, XMMRegister src) { Assembler::vaddss(dst, nds, src); }
  1051   void vaddss(XMMRegister dst, XMMRegister nds, XMMRegister src) { Assembler::vaddss(dst, nds, src); }
  1047   void vaddss(XMMRegister dst, XMMRegister nds, Address src)     { Assembler::vaddss(dst, nds, src); }
  1052   void vaddss(XMMRegister dst, XMMRegister nds, Address src)     { Assembler::vaddss(dst, nds, src); }
  1048   void vaddss(XMMRegister dst, XMMRegister nds, AddressLiteral src);
  1053   void vaddss(XMMRegister dst, XMMRegister nds, AddressLiteral src);
       
  1054 
       
  1055   void vabsss(XMMRegister dst, XMMRegister nds, XMMRegister src, AddressLiteral negate_field, int vector_len);
       
  1056   void vabssd(XMMRegister dst, XMMRegister nds, XMMRegister src, AddressLiteral negate_field, int vector_len);
       
  1057 
       
  1058   void vpaddb(XMMRegister dst, XMMRegister nds, XMMRegister src, int vector_len);
       
  1059   void vpaddb(XMMRegister dst, XMMRegister nds, Address src, int vector_len);
       
  1060 
       
  1061   void vpaddw(XMMRegister dst, XMMRegister nds, XMMRegister src, int vector_len);
       
  1062   void vpaddw(XMMRegister dst, XMMRegister nds, Address src, int vector_len);
       
  1063 
       
  1064   void vpsubb(XMMRegister dst, XMMRegister nds, XMMRegister src, int vector_len);
       
  1065   void vpsubb(XMMRegister dst, XMMRegister nds, Address src, int vector_len);
       
  1066 
       
  1067   void vpsubw(XMMRegister dst, XMMRegister nds, XMMRegister src, int vector_len);
       
  1068   void vpsubw(XMMRegister dst, XMMRegister nds, Address src, int vector_len);
       
  1069 
       
  1070   void vpmullw(XMMRegister dst, XMMRegister nds, XMMRegister src, int vector_len);
       
  1071   void vpmullw(XMMRegister dst, XMMRegister nds, Address src, int vector_len);
       
  1072 
       
  1073   void vpsraw(XMMRegister dst, XMMRegister nds, XMMRegister shift, int vector_len);
       
  1074   void vpsraw(XMMRegister dst, XMMRegister nds, int shift, int vector_len);
       
  1075 
       
  1076   void vpsrlw(XMMRegister dst, XMMRegister nds, XMMRegister shift, int vector_len);
       
  1077   void vpsrlw(XMMRegister dst, XMMRegister nds, int shift, int vector_len);
       
  1078 
       
  1079   void vpsllw(XMMRegister dst, XMMRegister nds, XMMRegister shift, int vector_len);
       
  1080   void vpsllw(XMMRegister dst, XMMRegister nds, int shift, int vector_len);
       
  1081 
       
  1082   void punpcklbw(XMMRegister dst, XMMRegister src);
       
  1083   void punpcklbw(XMMRegister dst, Address src) { Assembler::punpcklbw(dst, src); }
       
  1084 
       
  1085   void pshuflw(XMMRegister dst, XMMRegister src, int mode);
       
  1086   void pshuflw(XMMRegister dst, Address src, int mode) { Assembler::pshuflw(dst, src, mode); }
  1049 
  1087 
  1050   void vandpd(XMMRegister dst, XMMRegister nds, XMMRegister src, int vector_len) { Assembler::vandpd(dst, nds, src, vector_len); }
  1088   void vandpd(XMMRegister dst, XMMRegister nds, XMMRegister src, int vector_len) { Assembler::vandpd(dst, nds, src, vector_len); }
  1051   void vandpd(XMMRegister dst, XMMRegister nds, Address src, int vector_len)     { Assembler::vandpd(dst, nds, src, vector_len); }
  1089   void vandpd(XMMRegister dst, XMMRegister nds, Address src, int vector_len)     { Assembler::vandpd(dst, nds, src, vector_len); }
  1052   void vandpd(XMMRegister dst, XMMRegister nds, AddressLiteral src, int vector_len);
  1090   void vandpd(XMMRegister dst, XMMRegister nds, AddressLiteral src, int vector_len);
  1053 
  1091