diff options
author | 卜部昌平 <shyouhei@ruby-lang.org> | 2019-10-29 11:37:25 +0900 |
---|---|---|
committer | 卜部昌平 <shyouhei@ruby-lang.org> | 2019-11-05 11:39:35 +0900 |
commit | 6ff1250739c57ce7f234a2148d3f6214da01b7e5 (patch) | |
tree | 169447ceb51f397b202994104a514a8b1764ecd3 /bin/bundler | |
parent | 1390d56ecfac2e430df94c4d4a60d8fa80d11166 (diff) |
rb_method_basic_definition_p with CC
Noticed that rb_method_basic_definition_p is frequently called.
Its callers include vm_caller_setup_args_block(),
rb_hash_default_value(), rb_num_neative_int_p(), and a lot more.
It seems worth caching the method resolution part. Majority of
rb_method_basic_definion_p() usages take fixed class and fixed
method id combinations.
Calculating -------------------------------------
ours trunk
so_matrix 2.379 2.115 i/s - 1.000 times in 0.420409s 0.472879s
Comparison:
so_matrix
ours: 2.4 i/s
trunk: 2.1 i/s - 1.12x slower
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/2629
Diffstat (limited to 'bin/bundler')
0 files changed, 0 insertions, 0 deletions