--- old/src/cpu/x86/vm/assembler_x86.hpp 2016-03-01 16:13:30.640281772 -0800 +++ new/src/cpu/x86/vm/assembler_x86.hpp 2016-03-01 16:13:30.556280362 -0800 @@ -1959,32 +1959,32 @@ void vpxor(XMMRegister dst, XMMRegister nds, Address src, int vector_len); // Copy low 128bit into high 128bit of YMM registers. - void vinsertf128h(XMMRegister dst, XMMRegister nds, XMMRegister src); - void vinserti128h(XMMRegister dst, XMMRegister nds, XMMRegister src); - void vextractf128h(XMMRegister dst, XMMRegister src); - void vextracti128h(XMMRegister dst, XMMRegister src); + void vinsertf128(XMMRegister dst, XMMRegister nds, XMMRegister src, int imm8); + void vinserti128(XMMRegister dst, XMMRegister nds, XMMRegister src, int imm8); + void vextractf128(XMMRegister dst, XMMRegister src, int imm8); + void vextracti128(XMMRegister dst, XMMRegister src, int imm8); // Load/store high 128bit of YMM registers which does not destroy other half. - void vinsertf128h(XMMRegister dst, Address src); - void vinserti128h(XMMRegister dst, Address src); - void vextractf128h(Address dst, XMMRegister src); - void vextracti128h(Address dst, XMMRegister src); + void vinsertf128(XMMRegister dst, XMMRegister nds, Address src, int imm8); + void vinserti128(XMMRegister dst, XMMRegister nds, Address src, int imm8); + void vextractf128(Address dst, XMMRegister src, int imm8); + void vextracti128(Address dst, XMMRegister src, int imm8); // Copy low 256bit into high 256bit of ZMM registers. - void vinserti64x4h(XMMRegister dst, XMMRegister nds, XMMRegister src, int value); - void vinsertf64x4h(XMMRegister dst, XMMRegister nds, XMMRegister src, int value); - void vextracti64x4h(XMMRegister dst, XMMRegister src, int value); - void vextractf64x4h(XMMRegister dst, XMMRegister src, int value); - void vextractf64x4h(Address dst, XMMRegister src, int value); - void vinsertf64x4h(XMMRegister dst, Address src, int value); + void vinserti64x4(XMMRegister dst, XMMRegister nds, XMMRegister src, int imm8); + void vinsertf64x4(XMMRegister dst, XMMRegister nds, XMMRegister src, int imm8); + void vextracti64x4(XMMRegister dst, XMMRegister src, int imm8); + void vextractf64x4(XMMRegister dst, XMMRegister src, int imm8); + void vextractf64x4(Address dst, XMMRegister src, int imm8); + void vinsertf64x4(XMMRegister dst, XMMRegister nds, Address src, int imm8); // Copy targeted 128bit segments of the ZMM registers - void vextracti64x2h(XMMRegister dst, XMMRegister src, int value); - void vextractf64x2h(XMMRegister dst, XMMRegister src, int value); - void vextractf32x4h(XMMRegister dst, XMMRegister src, int value); - void vextractf32x4h(Address dst, XMMRegister src, int value); - void vinsertf32x4h(XMMRegister dst, XMMRegister nds, XMMRegister src, int value); - void vinsertf32x4h(XMMRegister dst, Address src, int value); + void vextracti64x2(XMMRegister dst, XMMRegister src, int imm8); + void vextractf64x2(XMMRegister dst, XMMRegister src, int imm8); + void vextractf32x4(XMMRegister dst, XMMRegister src, int imm8); + void vextractf32x4(Address dst, XMMRegister src, int imm8); + void vinsertf32x4(XMMRegister dst, XMMRegister nds, XMMRegister src, int imm8); + void vinsertf32x4(XMMRegister dst, XMMRegister nds, Address src, int imm8); // duplicate 4-bytes integer data from src into 8 locations in dest void vpbroadcastd(XMMRegister dst, XMMRegister src);