[ruby-cvs:62139] tarui:r54976 (trunk): * compile.c (iseq_compile_each): share InlineCache during same

tarui at ruby-lang.org tarui at ruby-lang.org
Wed May 11 21:50:38 JST 2016


tarui	2016-05-11 21:50:38 +0900 (Wed, 11 May 2016)

  New Revision: 54976

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=54976

  Log:
    * compile.c (iseq_compile_each): share InlineCache during same
      instance variable accesses. Reducing memory consumption,
      rasing cache hit rate and rasing branch prediction hit rate
      are expected. A part of [Bug #12274].
    
    * iseq.h (struct iseq_compile_data): introduce instance
      variable IC table for sharing.
    
    * iseq.c (prepare_iseq_build, compile_data_free):
      construct/destruct above table.

  Modified files:
    trunk/ChangeLog
    trunk/compile.c
    trunk/iseq.c
    trunk/iseq.h


More information about the ruby-cvs mailing list