From d4f4ba6f032f1de0db75cf1d1c4d794ef6d50c3f Mon Sep 17 00:00:00 2001 From: naruse Date: Sat, 11 Mar 2017 15:03:50 +0000 Subject: merge revision(s) 57283,57284: [Backport #13113] benchmarks for [Bug #13113] [ci skip] variable.c: resolve permanent name only * variable.c (rb_const_set): resolve and cache class name immediately only if the outer class/module has the name, otherwise just set the ID. [ruby-core:79007] [Bug #13113] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_4@57850 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- benchmark/bm_vm2_module_ann_const_set.rb | 5 +++++ benchmark/bm_vm2_module_const_set.rb | 8 ++++++++ 2 files changed, 13 insertions(+) create mode 100644 benchmark/bm_vm2_module_ann_const_set.rb create mode 100644 benchmark/bm_vm2_module_const_set.rb (limited to 'benchmark') diff --git a/benchmark/bm_vm2_module_ann_const_set.rb b/benchmark/bm_vm2_module_ann_const_set.rb new file mode 100644 index 0000000000..12ccfd2ff3 --- /dev/null +++ b/benchmark/bm_vm2_module_ann_const_set.rb @@ -0,0 +1,5 @@ +i = 0 +while i<6_000_000 # benchmark loop 2 + i += 1 + Module.new.const_set(:X, Module.new) +end diff --git a/benchmark/bm_vm2_module_const_set.rb b/benchmark/bm_vm2_module_const_set.rb new file mode 100644 index 0000000000..f4d4c1b2e7 --- /dev/null +++ b/benchmark/bm_vm2_module_const_set.rb @@ -0,0 +1,8 @@ +i = 0 +module M +end +$VERBOSE = nil +while i<6_000_000 # benchmark loop 2 + i += 1 + M.const_set(:X, Module.new) +end -- cgit v1.2.3