src/hotspot/cpu/x86/stubGenerator_x86_64.cpp
changeset 51756 4bd35a5ec694
parent 50860 480a96a43b62
child 51784 fbec908e2783
equal deleted inserted replaced
51755:6c394ed56b07 51756:4bd35a5ec694
  1904                                          bool dest_uninitialized = false) {
  1904                                          bool dest_uninitialized = false) {
  1905     __ align(CodeEntryAlignment);
  1905     __ align(CodeEntryAlignment);
  1906     StubCodeMark mark(this, "StubRoutines", name);
  1906     StubCodeMark mark(this, "StubRoutines", name);
  1907     address start = __ pc();
  1907     address start = __ pc();
  1908 
  1908 
  1909     Label L_copy_bytes, L_copy_8_bytes, L_copy_2_bytes, L_exit;
  1909     Label L_copy_bytes, L_copy_8_bytes, L_exit;
  1910     const Register from        = rdi;  // source array address
  1910     const Register from        = rdi;  // source array address
  1911     const Register to          = rsi;  // destination array address
  1911     const Register to          = rsi;  // destination array address
  1912     const Register count       = rdx;  // elements count
  1912     const Register count       = rdx;  // elements count
  1913     const Register dword_count = rcx;
  1913     const Register dword_count = rcx;
  1914     const Register qword_count = count;
  1914     const Register qword_count = count;
  3846     Label L_multiBlock_loopTop[3];
  3846     Label L_multiBlock_loopTop[3];
  3847     Label L_singleBlockLoopTop[3];
  3847     Label L_singleBlockLoopTop[3];
  3848     Label L__incCounter[3][6]; //for 6 blocks
  3848     Label L__incCounter[3][6]; //for 6 blocks
  3849     Label L__incCounter_single[3]; //for single block, key128, key192, key256
  3849     Label L__incCounter_single[3]; //for single block, key128, key192, key256
  3850     Label L_processTail_insr[3], L_processTail_4_insr[3], L_processTail_2_insr[3], L_processTail_1_insr[3], L_processTail_exit_insr[3];
  3850     Label L_processTail_insr[3], L_processTail_4_insr[3], L_processTail_2_insr[3], L_processTail_1_insr[3], L_processTail_exit_insr[3];
  3851     Label L_processTail_extr[3], L_processTail_4_extr[3], L_processTail_2_extr[3], L_processTail_1_extr[3], L_processTail_exit_extr[3];
  3851     Label L_processTail_4_extr[3], L_processTail_2_extr[3], L_processTail_1_extr[3], L_processTail_exit_extr[3];
  3852 
  3852 
  3853     Label L_exit;
  3853     Label L_exit;
  3854 
  3854 
  3855     __ enter(); // required for proper stackwalking of RuntimeStub frame
  3855     __ enter(); // required for proper stackwalking of RuntimeStub frame
  3856 
  3856