mirror of
https://github.com/openjdk/jdk.git
synced 2026-04-12 16:09:15 +00:00
7198084: NPG: distance is too big for short branches in test_invocation_counter_for_mdp()
Use long branches in test_invocation_counter_for_mdp() Reviewed-by: twisti
This commit is contained in:
parent
d5d2e78faa
commit
d560ac115b
@ -1395,12 +1395,17 @@ void InterpreterMacroAssembler::test_invocation_counter_for_mdp(Register invocat
|
||||
AddressLiteral profile_limit((address) &InvocationCounter::InterpreterProfileLimit);
|
||||
sethi(profile_limit, Rtmp);
|
||||
ld(Rtmp, profile_limit.low10(), Rtmp);
|
||||
cmp_and_br_short(invocation_count, Rtmp, Assembler::lessUnsigned, Assembler::pn, profile_continue);
|
||||
cmp(invocation_count, Rtmp);
|
||||
// Use long branches because call_VM() code and following code generated by
|
||||
// test_backedge_count_for_osr() is large in debug VM.
|
||||
br(Assembler::lessUnsigned, false, Assembler::pn, profile_continue);
|
||||
delayed()->nop();
|
||||
|
||||
// Build it now.
|
||||
call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::profile_method));
|
||||
set_method_data_pointer_for_bcp();
|
||||
ba_short(profile_continue);
|
||||
ba(profile_continue);
|
||||
delayed()->nop();
|
||||
bind(done);
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user