summaryrefslogtreecommitdiff
path: root/object.c
diff options
context:
space:
mode:
authorTakashi Kokubun <takashikkbn@gmail.com>2020-06-23 23:49:03 -0700
committerGitHub <noreply@github.com>2020-06-23 23:49:03 -0700
commit946e5cc668f66a4a0b79461047d3fcba8b71eef0 (patch)
tree67419ab420a59f1ee795746941cd89ff5bac82b7 /object.c
parent3e02cd518fbe4d91c2aca7fbc3c5aafa387d3cb7 (diff)
Annotate Kernel#class as inline (#3250)
``` $ benchmark-driver -v --rbenv 'before;after;before --jit;after --jit' benchmark/mjit_class.yml --repeat-count=4 before: ruby 2.8.0dev (2020-06-23T07:09:54Z master 37a2e48d76) [x86_64-linux] after: ruby 2.8.0dev (2020-06-23T17:29:56Z inline-class 0ff147c007) [x86_64-linux] before --jit: ruby 2.8.0dev (2020-06-23T07:09:54Z master 37a2e48d76) +JIT [x86_64-linux] after --jit: ruby 2.8.0dev (2020-06-23T17:29:56Z inline-class 0ff147c007) +JIT [x86_64-linux] Calculating ------------------------------------- before after before --jit after --jit mjit_class(self) 39.219M 40.060M 53.502M 69.202M i/s - 40.000M times in 1.019915s 0.998495s 0.747631s 0.578021s mjit_class(1) 39.567M 41.242M 52.100M 68.895M i/s - 40.000M times in 1.010935s 0.969885s 0.767749s 0.580591s Comparison: mjit_class(self) after --jit: 69201690.7 i/s before --jit: 53502336.4 i/s - 1.29x slower after: 40060289.1 i/s - 1.73x slower before: 39218939.2 i/s - 1.76x slower mjit_class(1) after --jit: 68895358.6 i/s before --jit: 52100353.0 i/s - 1.32x slower after: 41241993.6 i/s - 1.67x slower before: 39567314.0 i/s - 1.74x slower ```
Notes
Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
Diffstat (limited to 'object.c')
-rw-r--r--object.c17
1 files changed, 0 insertions, 17 deletions
diff --git a/object.c b/object.c
index dafbcd0531..03cc51a473 100644
--- a/object.c
+++ b/object.c
@@ -291,22 +291,6 @@ rb_class_real(VALUE cl)
return cl;
}
-/**
- * call-seq:
- * obj.class -> class
- *
- * Returns the class of <i>obj</i>. This method must always be called
- * with an explicit receiver, as #class is also a reserved word in
- * Ruby.
- *
- * 1.class #=> Integer
- * self.class #=> Object
- *--
- * Equivalent to \c Object\#class in Ruby.
- *
- * Returns the class of \c obj, skipping singleton classes or module inclusions.
- *++
- */
VALUE
rb_obj_class(VALUE obj)
{
@@ -4606,7 +4590,6 @@ InitVM_Object(void)
rb_define_method(rb_mKernel, "hash", rb_obj_hash, 0); /* in hash.c */
rb_define_method(rb_mKernel, "<=>", rb_obj_cmp, 1);
- rb_define_method(rb_mKernel, "class", rb_obj_class, 0);
rb_define_method(rb_mKernel, "singleton_class", rb_obj_singleton_class, 0);
rb_define_method(rb_mKernel, "dup", rb_obj_dup, 0);
rb_define_method(rb_mKernel, "itself", rb_obj_itself, 0);