summaryrefslogtreecommitdiffhomepage
path: root/src/vm.c
diff options
context:
space:
mode:
authorcremno <[email protected]>2015-05-15 13:04:55 +0200
committercremno <[email protected]>2015-05-15 13:04:55 +0200
commit2106d4d4464e1eea98e981fffcc19d91e67abc0f (patch)
tree633472d50289bdb4bc4013340f9357e53124092c /src/vm.c
parentbc8308ba8d04f9038df032fd95e4b359f75106e0 (diff)
downloadmruby-2106d4d4464e1eea98e981fffcc19d91e67abc0f.tar.gz
mruby-2106d4d4464e1eea98e981fffcc19d91e67abc0f.zip
remove mrb_define_method_vm() function
It isn't needed as it's very similar to mrb_define_method_raw() and also there's only one place where mrb_proc_ptr() actually has to be called. Inspired by @furunkel's method cache patch (#2764).
Diffstat (limited to 'src/vm.c')
-rw-r--r--src/vm.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/vm.c b/src/vm.c
index f7103243d..a6324cf93 100644
--- a/src/vm.c
+++ b/src/vm.c
@@ -2303,8 +2303,9 @@ RETRY_TRY_BLOCK:
/* A B R(A).newmethod(Syms(B),R(A+1)) */
int a = GETARG_A(i);
struct RClass *c = mrb_class_ptr(regs[a]);
+ struct RProc *p = mrb_proc_ptr(regs[a+1]);
- mrb_define_method_vm(mrb, c, syms[GETARG_B(i)], regs[a+1]);
+ mrb_define_method_raw(mrb, c, syms[GETARG_B(i)], p);
ARENA_RESTORE(mrb, ai);
NEXT;
}