зеркало из https://github.com/github/ruby.git
YJIT: Add counter for megamorphic send (#7274)
This commit is contained in:
Родитель
b78f871d83
Коммит
0601ba6a1b
|
@ -5931,6 +5931,8 @@ fn gen_send_general(
|
||||||
// Points to the receiver operand on the stack
|
// Points to the receiver operand on the stack
|
||||||
let recv = ctx.stack_opnd(recv_idx);
|
let recv = ctx.stack_opnd(recv_idx);
|
||||||
let recv_opnd = StackOpnd(recv_idx.try_into().unwrap());
|
let recv_opnd = StackOpnd(recv_idx.try_into().unwrap());
|
||||||
|
|
||||||
|
let megamorphic_exit = counted_exit!(ocb, side_exit, send_klass_megamorphic);
|
||||||
jit_guard_known_klass(
|
jit_guard_known_klass(
|
||||||
jit,
|
jit,
|
||||||
ctx,
|
ctx,
|
||||||
|
@ -5941,7 +5943,7 @@ fn gen_send_general(
|
||||||
recv_opnd,
|
recv_opnd,
|
||||||
comptime_recv,
|
comptime_recv,
|
||||||
SEND_MAX_DEPTH,
|
SEND_MAX_DEPTH,
|
||||||
side_exit,
|
megamorphic_exit,
|
||||||
);
|
);
|
||||||
|
|
||||||
// Do method lookup
|
// Do method lookup
|
||||||
|
|
|
@ -168,6 +168,7 @@ make_counters! {
|
||||||
exec_instruction,
|
exec_instruction,
|
||||||
|
|
||||||
send_keywords,
|
send_keywords,
|
||||||
|
send_klass_megamorphic,
|
||||||
send_kw_splat,
|
send_kw_splat,
|
||||||
send_args_splat_super,
|
send_args_splat_super,
|
||||||
send_iseq_zsuper,
|
send_iseq_zsuper,
|
||||||
|
|
Загрузка…
Ссылка в новой задаче