8199603: Build failures after JDK-8199421 "Add support for vector popcount"
authorshade
Wed, 14 Mar 2018 15:28:31 +0100
changeset 49396 647ee5457fd1
parent 49395 c382614abe59
child 49397 d3a8aa01f26f
8199603: Build failures after JDK-8199421 "Add support for vector popcount" Reviewed-by: thartmann
src/hotspot/cpu/x86/assembler_x86.cpp
src/hotspot/cpu/x86/assembler_x86.hpp
--- a/src/hotspot/cpu/x86/assembler_x86.cpp	Tue Mar 13 16:21:45 2018 -0400
+++ b/src/hotspot/cpu/x86/assembler_x86.cpp	Wed Mar 14 15:28:31 2018 +0100
@@ -3915,6 +3915,15 @@
   emit_int8((unsigned char)(0xC0 | encode));
 }
 
+void Assembler::vpopcntd(XMMRegister dst, XMMRegister src, int vector_len) {
+  assert(VM_Version::supports_vpopcntdq(), "must support vpopcntdq feature");
+  InstructionAttr attributes(vector_len, /* vex_w */ false, /* legacy_mode */ false, /* no_mask_reg */ false, /* uses_vl */ true);
+  attributes.set_is_evex_instruction();
+  int encode = vex_prefix_and_encode(dst->encoding(), 0, src->encoding(), VEX_SIMD_66, VEX_OPCODE_0F_38, &attributes);
+  emit_int8(0x55);
+  emit_int8((unsigned char)(0xC0 | encode));
+}
+
 void Assembler::popf() {
   emit_int8((unsigned char)0x9D);
 }
@@ -8709,15 +8718,6 @@
   emit_int8((unsigned char)(0xC0 | encode));
 }
 
-void Assembler::vpopcntd(XMMRegister dst, XMMRegister src, int vector_len) {
-  assert(VM_Version::supports_vpopcntdq(), "must support vpopcntdq feature");
-  InstructionAttr attributes(vector_len, /* vex_w */ false, /* legacy_mode */ false, /* no_mask_reg */ false, /* uses_vl */ true);
-  attributes.set_is_evex_instruction();
-  int encode = vex_prefix_and_encode(dst->encoding(), 0, src->encoding(), VEX_SIMD_66, VEX_OPCODE_0F_38, &attributes);
-  emit_int8(0x55);
-  emit_int8((unsigned char)(0xC0 | encode));
-}
-
 void Assembler::popq(Address dst) {
   InstructionMark im(this);
   prefixq(dst);
--- a/src/hotspot/cpu/x86/assembler_x86.hpp	Tue Mar 13 16:21:45 2018 -0400
+++ b/src/hotspot/cpu/x86/assembler_x86.hpp	Wed Mar 14 15:28:31 2018 +0100
@@ -1633,13 +1633,13 @@
   void popcntl(Register dst, Address src);
   void popcntl(Register dst, Register src);
 
+  void vpopcntd(XMMRegister dst, XMMRegister src, int vector_len);
+
 #ifdef _LP64
   void popcntq(Register dst, Address src);
   void popcntq(Register dst, Register src);
 #endif
 
-  void vpopcntd(XMMRegister dst, XMMRegister src, int vector_len);
-
   // Prefetches (SSE, SSE2, 3DNOW only)
 
   void prefetchnta(Address src);