Skip to content

Commit

Permalink
8281815: x86: Use short jumps in TIG::generate_slow_signature_handler
Browse files Browse the repository at this point in the history
Reviewed-by: rrich, dholmes, jiefu
  • Loading branch information
shipilev committed Feb 21, 2022
1 parent d7f31d0 commit d28b048
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions src/hotspot/cpu/x86/templateInterpreterGenerator_x86_64.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ address TemplateInterpreterGenerator::generate_slow_signature_handler() {
Label isfloatordouble, isdouble, next;

__ testl(c_rarg3, 1 << (i*2)); // Float or Double?
__ jcc(Assembler::notZero, isfloatordouble);
__ jccb(Assembler::notZero, isfloatordouble);

// Do Int register here
switch ( i ) {
Expand All @@ -88,15 +88,15 @@ address TemplateInterpreterGenerator::generate_slow_signature_handler() {
break;
}

__ jmp (next);
__ jmpb(next);

__ bind(isfloatordouble);
__ testl(c_rarg3, 1 << ((i*2)+1)); // Double?
__ jcc(Assembler::notZero, isdouble);
__ jccb(Assembler::notZero, isdouble);

// Do Float Here
__ movflt(floatreg, Address(rsp, i * wordSize));
__ jmp(next);
__ jmpb(next);

// Do Double here
__ bind(isdouble);
Expand Down Expand Up @@ -150,9 +150,9 @@ address TemplateInterpreterGenerator::generate_slow_signature_handler() {
Label d, done;

__ testl(c_rarg3, 1 << i);
__ jcc(Assembler::notZero, d);
__ jccb(Assembler::notZero, d);
__ movflt(r, Address(rsp, (6 + i) * wordSize));
__ jmp(done);
__ jmpb(done);
__ bind(d);
__ movdbl(r, Address(rsp, (6 + i) * wordSize));
__ bind(done);
Expand Down

1 comment on commit d28b048

@openjdk-notifier
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.