[前][次][番号順一覧][スレッド一覧]

ruby-changes:33214

From: normal <ko1@a...>
Date: Sat, 8 Mar 2014 17:56:59 +0900 (JST)
Subject: [ruby-changes:33214] normal:r45293 (trunk): vm.c: cleanup to use rb_method_entry_at

normal	2014-03-08 17:56:50 +0900 (Sat, 08 Mar 2014)

  New Revision: 45293

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=45293

  Log:
    vm.c: cleanup to use rb_method_entry_at
    
    * vm.c (add_opt_method): cleanup to use rb_method_entry_at
      Easier experiments with a non-st method entry tables.

  Modified files:
    trunk/ChangeLog
    trunk/vm.c
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 45292)
+++ ChangeLog	(revision 45293)
@@ -1,3 +1,7 @@ https://github.com/ruby/ruby/blob/trunk/ChangeLog#L1
+Sat Mar  8 17:42:51 2014  Eric Wong  <e@8...>
+
+	* vm.c (add_opt_method): cleanup to use rb_method_entry_at
+
 Sat Mar  8 13:46:40 2014  Nobuyoshi Nakada  <nobu@r...>
 
 	* ext/dl/cptr.c (dlptr_free), ext/dl/handle.c (dlhandle_free),
Index: vm.c
===================================================================
--- vm.c	(revision 45292)
+++ vm.c	(revision 45293)
@@ -1147,8 +1147,9 @@ rb_vm_check_redefinition_by_prepend(VALU https://github.com/ruby/ruby/blob/trunk/vm.c#L1147
 static void
 add_opt_method(VALUE klass, ID mid, VALUE bop)
 {
-    rb_method_entry_t *me;
-    if (st_lookup(RCLASS_M_TBL(klass), mid, (void *)&me) && me->def &&
+    rb_method_entry_t *me = rb_method_entry_at(klass, mid);
+
+    if (me && me->def &&
 	me->def->type == VM_METHOD_TYPE_CFUNC) {
 	st_insert(vm_opt_method_table, (st_data_t)me, (st_data_t)bop);
     }

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]