diff options
| author | Takashi Kokubun <takashi.kokubun@shopify.com> | 2025-09-30 08:15:06 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-09-30 08:15:06 -0700 |
| commit | d016595387069677c6b992dffe9322f67dc9bc73 (patch) | |
| tree | 792812ba332a7ae2700b04d0540592910979c931 /zjit.rb | |
| parent | d8c8623f50af8f5324e1679ff95b1a2071c0c61e (diff) | |
ZJIT: Unify fallback counters for send-ish insns (#14676)
Diffstat (limited to 'zjit.rb')
| -rw-r--r-- | zjit.rb | 10 |
1 files changed, 6 insertions, 4 deletions
@@ -39,12 +39,14 @@ class << RubyVM::ZJIT buf = +"***ZJIT: Printing ZJIT statistics on exit***\n" stats = self.stats - # Show non-exit counters - print_counters_with_prefix(prefix: 'dynamic_send_type_', prompt: 'dynamic send types', buf:, stats:, limit: 20) - print_counters_with_prefix(prefix: 'unspecialized_def_type_', prompt: 'send fallback unspecialized def_types', buf:, stats:, limit: 20) - print_counters_with_prefix(prefix: 'send_fallback_', prompt: 'dynamic send types', buf:, stats:, limit: 20) + # Show counters independent from exit_* or dynamic_send_* print_counters_with_prefix(prefix: 'not_optimized_cfuncs_', prompt: 'unoptimized sends to C functions', buf:, stats:, limit: 20) + # Show fallback counters, ordered by the typical amount of fallbacks for the prefix at the time + print_counters_with_prefix(prefix: 'unspecialized_def_type_', prompt: 'not optimized method types', buf:, stats:, limit: 20) + print_counters_with_prefix(prefix: 'not_optimized_yarv_insn_', prompt: 'not optimized instructions', buf:, stats:, limit: 20) + print_counters_with_prefix(prefix: 'send_fallback_', prompt: 'send fallback reasons', buf:, stats:, limit: 20) + # Show exit counters, ordered by the typical amount of exits for the prefix at the time print_counters_with_prefix(prefix: 'unhandled_yarv_insn_', prompt: 'unhandled YARV insns', buf:, stats:, limit: 20) print_counters_with_prefix(prefix: 'compile_error_', prompt: 'compile error reasons', buf:, stats:, limit: 20) |
