summaryrefslogtreecommitdiff
path: root/benchmark/vm_ivar_set_subclass.yml
diff options
context:
space:
mode:
authorJemma Issroff <jemmaissroff@gmail.com>2022-07-15 10:12:51 -0400
committerPeter Zhu <peter@peterzhu.ca>2022-07-15 10:29:42 -0400
commitc53439294e390595c88c6f3094021ffc7c0147e1 (patch)
treed3e12af53c5aa22cdab92cd0c94da7935d41418c /benchmark/vm_ivar_set_subclass.yml
parent7424ea184f9d67c1c7f3ee97494ed3bd1aa60833 (diff)
Fixes ivar benchmarks to not depend on object allocation
Prior to this change, we were measuring object allocation as well as setting instance variables within ivar benchmarks. With this change, we now only measure setting instance variables within ivar benchmarks.
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/6142
Diffstat (limited to 'benchmark/vm_ivar_set_subclass.yml')
-rw-r--r--benchmark/vm_ivar_set_subclass.yml9
1 files changed, 6 insertions, 3 deletions
diff --git a/benchmark/vm_ivar_set_subclass.yml b/benchmark/vm_ivar_set_subclass.yml
index 2653d36ded..bc8bf5bf6b 100644
--- a/benchmark/vm_ivar_set_subclass.yml
+++ b/benchmark/vm_ivar_set_subclass.yml
@@ -1,6 +1,6 @@
prelude: |
class A
- def initialize
+ def set_ivars
@a = nil
@b = nil
@c = nil
@@ -10,8 +10,11 @@ prelude: |
end
class B < A; end
class C < A; end
+
+ b = B.new
+ c = C.new
benchmark:
vm_ivar_init_subclass: |
- B.new
- C.new
+ b.set_ivars
+ c.set_ivars
loop_count: 3000000