[ruby-cvs:67009] ko1:r59831 (trunk): store ec instead of thread in rb_context_t.

ko1 at ruby-lang.org ko1 at ruby-lang.org
Mon Sep 11 04:00:08 JST 2017


ko1	2017-09-11 04:00:08 +0900 (Mon, 11 Sep 2017)

  New Revision: 59831

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

  Log:
    store ec instead of thread in rb_context_t.
    
    * cont.c (rb_context_t): introduce saved_ec instaad of saved_thread.
      We only need to transfer ec data (not all of thread data).
    
      Introduce `thread_value` field to point creation thread.
      To acccess this field, `cont_thread_value()` is introduced.
    
    * vm.c (rb_execution_context_mark): remove `static` and use it
      from cont.c (use this function instead of `rb_thread_mark`).
    
    * vm_insnhelper.c (rb_vm_push_frame): accept ec instead of th.

  Modified files:
    trunk/cont.c
    trunk/internal.h
    trunk/vm.c
    trunk/vm_core.h
    trunk/vm_insnhelper.c


More information about the ruby-cvs mailing list