--- a/hotspot/src/cpu/x86/vm/assembler_x86.hpp Wed Sep 30 04:35:39 2015 -0400
+++ b/hotspot/src/cpu/x86/vm/assembler_x86.hpp Mon Oct 05 20:02:40 2015 -0700
@@ -1679,10 +1679,14 @@
// SSE 4.1 extract
void pextrd(Register dst, XMMRegister src, int imm8);
void pextrq(Register dst, XMMRegister src, int imm8);
+ // SSE 2 extract
+ void pextrw(Register dst, XMMRegister src, int imm8);
// SSE 4.1 insert
void pinsrd(XMMRegister dst, Register src, int imm8);
void pinsrq(XMMRegister dst, Register src, int imm8);
+ // SSE 2 insert
+ void pinsrw(XMMRegister dst, Register src, int imm8);
// SSE4.1 packed move
void pmovzxbw(XMMRegister dst, XMMRegister src);
@@ -1933,6 +1937,7 @@
// Multiply Packed Floating-Point Values
void mulpd(XMMRegister dst, XMMRegister src);
+ void mulpd(XMMRegister dst, Address src);
void mulps(XMMRegister dst, XMMRegister src);
void vmulpd(XMMRegister dst, XMMRegister nds, XMMRegister src, int vector_len);
void vmulps(XMMRegister dst, XMMRegister nds, XMMRegister src, int vector_len);
@@ -1959,6 +1964,9 @@
void vandpd(XMMRegister dst, XMMRegister nds, Address src, int vector_len);
void vandps(XMMRegister dst, XMMRegister nds, Address src, int vector_len);
+ void unpckhpd(XMMRegister dst, XMMRegister src);
+ void unpcklpd(XMMRegister dst, XMMRegister src);
+
// Bitwise Logical XOR of Packed Floating-Point Values
void xorpd(XMMRegister dst, XMMRegister src);
void xorps(XMMRegister dst, XMMRegister src);
@@ -2054,6 +2062,9 @@
void vpand(XMMRegister dst, XMMRegister nds, XMMRegister src, int vector_len);
void vpand(XMMRegister dst, XMMRegister nds, Address src, int vector_len);
+ // Andn packed integers
+ void pandn(XMMRegister dst, XMMRegister src);
+
// Or packed integers
void por(XMMRegister dst, XMMRegister src);
void vpor(XMMRegister dst, XMMRegister nds, XMMRegister src, int vector_len);