YJIT: Add counter for megamorphic send (#7274)
This commit is contained in:
parent
b78f871d83
commit
0601ba6a1b
Notes:
git
2023-02-09 15:38:51 +00:00
Merged-By: maximecb <maximecb@ruby-lang.org>
@ -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,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user