YJIT: Count the number of dynamic send dispatches (#8122)

This commit is contained in:
Takashi Kokubun 2023-07-26 12:59:59 -07:00 коммит произвёл GitHub
Родитель 37160be439
Коммит 9bdd485972
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
3 изменённых файлов: 3 добавлений и 0 удалений

Просмотреть файл

@ -270,6 +270,7 @@ module RubyVM::YJIT
out.puts "num_send: " + format_number(13, stats[:num_send])
out.puts "num_send_known_class: " + format_number_pct(13, stats[:num_send_known_class], stats[:num_send])
out.puts "num_send_polymorphic: " + format_number_pct(13, stats[:num_send_polymorphic], stats[:num_send])
out.puts "num_send_dynamic: " + format_number_pct(13, stats[:num_send_dynamic], stats[:num_send])
if stats[:num_send_x86_rel32] != 0 || stats[:num_send_x86_reg] != 0
out.puts "num_send_x86_rel32: " + format_number(13, stats[:num_send_x86_rel32])
out.puts "num_send_x86_reg: " + format_number(13, stats[:num_send_x86_reg])

Просмотреть файл

@ -6488,6 +6488,7 @@ fn gen_send_dynamic<F: Fn(&mut Assembler) -> Opnd>(
// Fix the interpreter SP deviated by vm_sendish
asm.mov(Opnd::mem(64, CFP, RUBY_OFFSET_CFP_SP), SP);
gen_counter_incr(asm, Counter::num_send_dynamic);
Some(KeepCompiling)
}

Просмотреть файл

@ -410,6 +410,7 @@ make_counters! {
num_send_polymorphic,
num_send_x86_rel32,
num_send_x86_reg,
num_send_dynamic,
iseq_stack_too_large,
iseq_too_long,