From 59c061235f7bb39d6a33b7e2b7fb4e3db57305db Mon Sep 17 00:00:00 2001 From: ko1 Date: Sat, 24 May 2008 17:50:17 +0000 Subject: * eval_method.c: renamed from vm_method.c. "vm_method.c" is included by "vm.c". * vm_eval.c: added. Some codes are moved from "eval.c" * common.mk: fix for above changes. * compile.c: make a vm_eval(0) * eval.c, eval_error.c, eval_intern.h, eval_jump.c, proc.c, vm.c, id.c, id.h, vm_core.h, vm_dump.c, vm_evalbody.c, vm_insnhelper.c, blockinlining.c: fix for above changes. and do some refactoring. this changes improve rb_yield() performance. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- vm_evalbody.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'vm_evalbody.c') diff --git a/vm_evalbody.c b/vm_evalbody.c index 5810b94732..19029030c5 100644 --- a/vm_evalbody.c +++ b/vm_evalbody.c @@ -26,7 +26,7 @@ /* #define DECL_SC_REG(r, reg) VALUE reg_##r */ #if !OPT_CALL_THREADED_CODE -VALUE +static VALUE vm_eval(rb_thread_t *th, VALUE initial) { @@ -140,3 +140,9 @@ vm_eval(rb_thread_t *th, VALUE initial) return ret; } #endif + +const void ** +vm_get_insns_address_table(void) +{ + return (const void **)vm_eval(0, 0); +} -- cgit v1.2.3