Project

General

Profile

« Previous | Next » 

Revision 34096909

Added by tmm1 (Aman Karmani) over 11 years ago

ruby.h: swap iv_index_tbl and super for struct RClass

  • include/ruby/ruby.h (struct RClass): add super, remove iv_index_tbl.
    since RCLASS_SUPER() is commonly used inside while loops, we move it
    back inside struct RClass to improve cache hits. this provides a
    small improvement (1%) in hotspots like rb_obj_is_kind_of()
  • internal.h (struct rb_classext_struct): remove super, add
    iv_index_table
  • internal.h (RCLASS_SUPER): update for new location
  • internal.h (RCLASS_SET_SUPER): ditto
  • internal.h (RCLASS_IV_INDEX_TBL): ditto
  • object.c (rb_class_get_superclass): ditto
  • include/ruby/backward/classext.h (RCLASS_SUPER): ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e