summaryrefslogtreecommitdiff
path: root/yjit/src/stats.rs
diff options
context:
space:
mode:
authorJimmy Miller <jimmy.miller@shopify.com>2022-09-14 10:32:22 -0400
committerGitHub <noreply@github.com>2022-09-14 10:32:22 -0400
commit758a1d730230ad0f4adfd7681c1fe4c8ac398bde (patch)
tree876164dea874742b50ad53ee14fa30473c20b930 /yjit/src/stats.rs
parent8f37e9c91814357f79911e208ef4d0d56dfa9433 (diff)
downloadruby-758a1d730230ad0f4adfd7681c1fe4c8ac398bde.tar.gz
Initial support for VM_CALL_ARGS_SPLAT (#6341)
* Initial support for VM_CALL_ARGS_SPLAT This implements support for calls with splat (*) for some methods. In benchmarks this made very little difference for most benchmarks, but a large difference for binarytrees. Looking at side exits, many benchmarks now don't exit for splat, but exit for some other reason. Binarytrees however had a number of calls that used splat args that are now much faster. In my non-scientific benchmarking this made splat args performance on par with not using splat args at all. * Fix wording and whitespace Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> * Get rid of side_effect reassignment Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
Diffstat (limited to 'yjit/src/stats.rs')
-rw-r--r--yjit/src/stats.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/yjit/src/stats.rs b/yjit/src/stats.rs
index 4843cecf92..56aa0b4081 100644
--- a/yjit/src/stats.rs
+++ b/yjit/src/stats.rs
@@ -164,7 +164,8 @@ make_counters! {
send_keywords,
send_kw_splat,
- send_args_splat,
+ send_args_splat_super,
+ send_iseq_zsuper,
send_block_arg,
send_ivar_set_method,
send_zsuper_method,
@@ -192,6 +193,10 @@ make_counters! {
send_getter_arity,
send_se_cf_overflow,
send_se_protected_check_failed,
+ send_splatarray_rhs_too_small,
+ send_splat_not_array,
+ send_args_splat_variadic,
+ send_iseq_ruby2_keywords,
traced_cfunc_return,