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/