yarv-diff:32
From: ko1 atdot.net
Date: 29 Jun 2005 14:32:15 -0000
Subject: [yarv-diff:32] r187 - in trunk: . benchmark rb
Author: ko1
Date: 2005-06-29 23:32:14 +0900 (Wed, 29 Jun 2005)
New Revision: 187
Added:
trunk/benchmark/bm_app_raise.rb
trunk/benchmark/bm_app_strconcat.rb
trunk/benchmark/bm_vm1_ensure.rb
trunk/benchmark/bm_vm2_proc.rb
trunk/benchmark/bm_vm2_regexp.rb
trunk/rb/eval.rb
Removed:
trunk/benchmark/bm_vm1_proc.rb
trunk/benchmark/bm_vm1_regexp.rb
trunk/benchmark/bm_vm1_simpleiter.rb
trunk/benchmark/bm_vm2_ensure.rb
trunk/benchmark/bm_vm2_rescue2.rb
trunk/benchmark/bm_vm2_strconcat.rb
Modified:
trunk/ChangeLog
trunk/benchmark/bm_app_factorial.rb
trunk/benchmark/bm_app_fib.rb
trunk/benchmark/bm_loop_times.rb
trunk/benchmark/bm_so_ackermann.rb
trunk/benchmark/bm_so_concatenate.rb
trunk/benchmark/bm_so_lists.rb
trunk/benchmark/bm_so_sieve.rb
trunk/compile.c
trunk/extconf.rb
trunk/insnhelper.h
trunk/test.rb
trunk/version.h
trunk/vm.h
trunk/vm_evalbody.h
trunk/yarvcore.c
trunk/yarvcore.h
Log:
* yarvcore.h, extconf.rb, vm.h, compile.c :
DISPATCH_DIRECT_THREADED_CODE, DISPATCH_THREADED_CODE
-> OPT_DIRECT_THREADED_CODE, OPT_INDIRECT_THREADED_CODE.
if at least one of then is defined, OPT_THREADED_CODE is defined
* benchmark/* : fix name and parameters
* rb/eval.rb : added for YARV evaluation
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/ChangeLog 2005-06-29 14:32:14 UTC (rev 187)
@@ -4,6 +4,18 @@
# from Mon, 03 May 2004 01:24:19 +0900
#
+2005-06-29(Wed) 23:28:44 +0900 Koichi Sasada <ko1 atdot.net>
+
+ * yarvcore.h, extconf.rb, vm.h, compile.c :
+ DISPATCH_DIRECT_THREADED_CODE, DISPATCH_THREADED_CODE
+ -> OPT_DIRECT_THREADED_CODE, OPT_INDIRECT_THREADED_CODE.
+ if at least one of then is defined, OPT_THREADED_CODE is defined
+
+ * benchmark/* : fix name and parameters
+
+ * rb/eval.rb : added for YARV evaluation
+
+
2005-06-29(Wed) 16:16:52 +0900 Koichi Sasada <ko1 atdot.net>
* benchmark/run.rb : fix output format
Modified: trunk/benchmark/bm_app_factorial.rb
===================================================================
--- trunk/benchmark/bm_app_factorial.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_app_factorial.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -6,6 +6,6 @@
end
end
-30.times{
- fact(7300)
+6.times{
+ fact(7000)
}
\ No newline at end of file
Modified: trunk/benchmark/bm_app_fib.rb
===================================================================
--- trunk/benchmark/bm_app_fib.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_app_fib.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -6,5 +6,5 @@
end
end
-fib(32)
+fib(34)
Copied: trunk/benchmark/bm_app_raise.rb (from rev 186, trunk/benchmark/bm_vm2_rescue2.rb)
===================================================================
--- trunk/benchmark/bm_vm2_rescue2.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_app_raise.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -0,0 +1,8 @@
+i=0
+while i<300000
+ i+=1
+ begin
+ raise
+ rescue
+ end
+end
Copied: trunk/benchmark/bm_app_strconcat.rb (from rev 186, trunk/benchmark/bm_vm2_strconcat.rb)
===================================================================
--- trunk/benchmark/bm_vm2_strconcat.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_app_strconcat.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -0,0 +1,5 @@
+i=0
+while i<500000
+ "#{1+1} #{1+1} #{1+1}"
+ i+=1
+end
Modified: trunk/benchmark/bm_loop_times.rb
===================================================================
--- trunk/benchmark/bm_loop_times.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_loop_times.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -1,2 +1,2 @@
-10000000.times{|i|
+30000000.times{|i|
}
Modified: trunk/benchmark/bm_so_ackermann.rb
===================================================================
--- trunk/benchmark/bm_so_ackermann.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_so_ackermann.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -13,7 +13,7 @@
end
end
-NUM = 7
+NUM = 9
ack(3, NUM)
Modified: trunk/benchmark/bm_so_concatenate.rb
===================================================================
--- trunk/benchmark/bm_so_concatenate.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_so_concatenate.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -5,9 +5,13 @@
# based on code from Aristarkh A Zagorodnikov and Dat Nguyen
STUFF = "hello\n"
-hello = ''
-400000.times do |e|
+i=0
+while i<10
+ i+=1
+ hello = ''
+ 400000.times do |e|
hello << STUFF
+ end
end
# puts hello.length
Modified: trunk/benchmark/bm_so_lists.rb
===================================================================
--- trunk/benchmark/bm_so_lists.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_so_lists.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -1,6 +1,6 @@
#from http://www.bagley.org/~doug/shootout/bench/lists/lists.ruby
-NUM = 10
+NUM = 100
SIZE = 10000
def test_lists()
Modified: trunk/benchmark/bm_so_sieve.rb
===================================================================
--- trunk/benchmark/bm_so_sieve.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_so_sieve.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -1,5 +1,5 @@
# from http://www.bagley.org/~doug/shootout/bench/sieve/sieve.ruby
-num = 100
+num = 400
count = i = j = 0
flags0 = Array.new(8192,1)
k = 0
Copied: trunk/benchmark/bm_vm1_ensure.rb (from rev 186, trunk/benchmark/bm_vm2_ensure.rb)
Deleted: trunk/benchmark/bm_vm1_proc.rb
===================================================================
--- trunk/benchmark/bm_vm1_proc.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_vm1_proc.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -1,14 +0,0 @@
-def m &b
- b
-end
-
-pr = m{
- a = 1
-}
-
-i=0
-while i<30000000 # while loop 1
- i+=1
- pr.call
-end
-
Deleted: trunk/benchmark/bm_vm1_regexp.rb
===================================================================
--- trunk/benchmark/bm_vm1_regexp.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_vm1_regexp.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -1,6 +0,0 @@
-i=0
-str = 'xxxhogexxx'
-while i<30000000 # while loop 1
- /hoge/ =~ str
- i+=1
-end
Deleted: trunk/benchmark/bm_vm1_simpleiter.rb
===================================================================
--- trunk/benchmark/bm_vm1_simpleiter.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_vm1_simpleiter.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -1,3 +0,0 @@
-1000000.times{|simpleiter|
- simpleiter
-}
Deleted: trunk/benchmark/bm_vm2_ensure.rb
===================================================================
--- trunk/benchmark/bm_vm2_ensure.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_vm2_ensure.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -1,11 +0,0 @@
-i=0
-while i<30000000 # benchmark loop 1
- i+=1
- begin
- begin
- ensure
- end
- ensure
- end
-end
-
Copied: trunk/benchmark/bm_vm2_proc.rb (from rev 186, trunk/benchmark/bm_vm1_proc.rb)
===================================================================
--- trunk/benchmark/bm_vm1_proc.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_vm2_proc.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -0,0 +1,14 @@
+def m &b
+ b
+end
+
+pr = m{
+ a = 1
+}
+
+i=0
+while i<6000000 # benchmark loop 2
+ i+=1
+ pr.call
+end
+
Copied: trunk/benchmark/bm_vm2_regexp.rb (from rev 186, trunk/benchmark/bm_vm1_regexp.rb)
===================================================================
--- trunk/benchmark/bm_vm1_regexp.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_vm2_regexp.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -0,0 +1,6 @@
+i=0
+str = 'xxxhogexxx'
+while i<6000000 # benchmark loop 2
+ /hoge/ =~ str
+ i+=1
+end
Deleted: trunk/benchmark/bm_vm2_rescue2.rb
===================================================================
--- trunk/benchmark/bm_vm2_rescue2.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_vm2_rescue2.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -1,8 +0,0 @@
-i=0
-while i<6000000 # benchmark loop 2
- i+=1
- begin
- raise
- rescue
- end
-end
Deleted: trunk/benchmark/bm_vm2_strconcat.rb
===================================================================
--- trunk/benchmark/bm_vm2_strconcat.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/benchmark/bm_vm2_strconcat.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -1,5 +0,0 @@
-i=0
-while i<6000000 # benchmark loop 2
- "#{1+1} #{1+1} #{1+1}"
- i+=1
-end
Modified: trunk/compile.c
===================================================================
--- trunk/compile.c 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/compile.c 2005-06-29 14:32:14 UTC (rev 187)
@@ -205,7 +205,7 @@
VALUE thread_eval_body(VALUE);
static int iseq_translate_direct_threaded_code(struct iseq_object *iseqobj){
-#ifdef DISPATCH_DIRECT_THREADED_CODE
+#ifdef OPT_DIRECT_THREADED_CODE
void **table = (void **)thread_eval_body(0);
int i;
@@ -2941,7 +2941,7 @@
}
-#ifdef OPT_REGEXP_MATCH
+#ifdef OPT_BASIC_OPERATIONS
/* TODO: detect by node */
if((&recv)->last == (&recv)->anchor.next &&
INSN_OF((&recv)->last) == BIN(putobject)){
Modified: trunk/extconf.rb
===================================================================
--- trunk/extconf.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/extconf.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -6,21 +6,18 @@
--enable-OPTION enable yarv option
--disable-OPTION disable yarv option
- OPTION:
+OPTION:
- dispatch option (default enable):
- * dispatch-threaded-code
- * dispatch-direct-threaded-code
-
optimization option (default enable):
+ * opt-direct-threaded-code
* opt-basic-operations
- * opt-regexp-match
* opt-operands-unification
* opt-instructions-unification
* opt-stack-caching
* opt-inline-method-cache
others (default disable):
+ * opt-indirect-threaded-code
* opt-jit-compile (experimental, support only few insns)
* test-aot-compile (experimental)
* fake-inline-method-cache (dengerous)
@@ -49,18 +46,13 @@
end
end
-# dispatcher
-check_arg('dispatch-threaded-code', true)
-check_arg('dispatch-direct-threaded-code', true)
-
# optimizer
+check_arg('opt-direct-threaded-code', true)
+check_arg('opt-indirect-threaded-code', false)
check_arg('opt-basic-operations', true)
-check_arg('opt-regexp-match' , true)
-
check_arg('opt-operands-unification', true)
check_arg('opt-instructions-unification', true)
check_arg('opt-stack-caching' , true)
-
check_arg('opt-inline-method-cache', true)
# danger
Modified: trunk/insnhelper.h
===================================================================
--- trunk/insnhelper.h 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/insnhelper.h 2005-06-29 14:32:14 UTC (rev 187)
@@ -57,7 +57,7 @@
#define GET_OPERAND(n) (GET_PC()[(n)])
#define ADD_PC(n) (SET_PC(REG_PC + (n)))
-#ifdef DISPATCH_DIRECT_THREADED_CODE
+#ifdef OPT_DIRECT_THREADED_CODE
#define GET_PC_COUNT() (REG_PC - GET_ISEQ()->iseq_dt)
#else
#define GET_PC_COUNT() (REG_PC - GET_ISEQ()->iseq)
Added: trunk/rb/eval.rb
===================================================================
--- trunk/rb/eval.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/rb/eval.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -0,0 +1,80 @@
+
+require 'rbconfig'
+require 'fileutils'
+require 'pp'
+
+Ruby = ENV['RUBY'] ||
+ File.join(Config::CONFIG["bindir"],
+ Config::CONFIG["ruby_install_name"] + Config::CONFIG["EXEEXT"])
+#
+
+OPTIONS = %w{
+ opt-direct-threaded-code
+ opt-basic-operations
+ opt-operands-unification
+ opt-instructions-unification
+ opt-inline-method-cache
+ opt-stack-caching
+}.map{|opt|
+ '--disable-' + opt
+}
+
+opts = OPTIONS.dup
+Configs = OPTIONS.map{|opt|
+ o = opts.dup
+ opts.delete(opt)
+ o
+} + []
+
+pp Configs if $DEBUG
+
+def exec_cmd(cmd)
+ unless system(cmd)
+ p cmd
+ raise "error"
+ end
+end
+
+def dirname idx
+ "ev-#{idx}"
+end
+
+def build
+ Configs.each_with_index{|config, idx|
+ dir = dirname(idx)
+ FileUtils.rm_rf(dir) if FileTest.exist?(dir)
+ Dir.mkdir(dir)
+ FileUtils.cd(dir){
+ exec_cmd("#{Ruby} ../extconf.rb " + config.join(" "))
+ exec_cmd("make clean test-all")
+ }
+ }
+end
+
+def check
+ Configs.each_with_index{|c, idx|
+ puts "= #{idx}"
+ system("#{Ruby} -r ev-#{idx}/yarvcore -e 'puts YARVCore::OPTS'")
+ }
+end
+
+def bench
+ Configs.each_with_index{|c, idx|
+ puts "= #{idx}"
+ FileUtils.cd(dirname(idx)){
+ exec_cmd("make benchmark BOPT=-y > ../b#{idx}")
+ }
+ }
+end
+
+ARGV.each{|cmd|
+ case cmd
+ when 'build'
+ build
+ when 'check'
+ check
+ when 'bench'
+ bench
+ end
+}
+
Modified: trunk/test.rb
===================================================================
--- trunk/test.rb 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/test.rb 2005-06-29 14:32:14 UTC (rev 187)
@@ -9,6 +9,13 @@
###########################################################
$prog =<<'__EOP__'
+p :a, :b
+p 1+2
+p(/a/ =~ 'b')
+
+
+__END__
+
def m
end
Modified: trunk/version.h
===================================================================
--- trunk/version.h 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/version.h 2005-06-29 14:32:14 UTC (rev 187)
@@ -9,8 +9,8 @@
#define _VERSION_H_INCLUDED_
#define MAJOR_VER 0
-#define MINOR_VER 2
-#define DEVEL_VER 1
+#define MINOR_VER 3
+#define DEVEL_VER 0
/*****************/
/* configuration */
@@ -19,14 +19,26 @@
/* gcc ver. check */
#if defined(__GNUC__) && __GNUC__ >= 2
+#ifdef OPT_INDIRECT_THREADED_CODE
+#ifdef OPT_DIRECT_THREADED_CODE
+#undef OPT_DIRECT_THREADED_CODE
+#endif
+#endif
+
+#if defined(OPT_DIRECT_THREADED_CODE) || defined(OPT_INDIRECT_THREADED_CODE)
+#define OPT_THREADED_CODE 1
+#endif
+
#else
-#ifdef DISPATCH_THREADED_CODE
-#undef DISPATCH_THREADED_CODE
+/* disable threaded code options */
+
+#ifdef OPT_DIRECT_THREADED_CODE
+#undef OPT_DIRECT_THREADED_CODE
#endif
-#ifdef DISPATCH_DIRECT_THREADED_CODE
-#undef DISPATCH_DIRECT_THREADED_CODE
+#ifdef OPT_INDIRECT_THREADED_CODE
+#undef OPT_INDIRECT_THREADED_CODE
#endif
#endif
Modified: trunk/vm.h
===================================================================
--- trunk/vm.h 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/vm.h 2005-06-29 14:32:14 UTC (rev 187)
@@ -83,57 +83,56 @@
error!
/************************************************/
-#elif defined(DISPATCH_THREADED_CODE)
+#elif defined(OPT_THREADED_CODE)
/* threaded code with gcc */
#define LABEL(x) INSN_LABEL_##x
#define ELABEL(x) INSN_ELABEL_##x
#define INSN_ENTRY_SIG(insn) \
- asm volatile ( "; *****************************************************\n" \
- "\t; [start] " # insn "\n") \
+ asm volatile ( "; #**************************************************\n" \
+ "\t; #[start] " # insn "\n") \
#define INSN_DISPATCH_SIG(insn) \
- asm volatile ( "; [end ] " # insn "\n"\
- "\t; =====================================================\n") \
+ asm volatile ( "; #[end ] " # insn "\n"\
+ "\t; #==================================================\n") \
#define INSN_ENTRY(insn) \
LABEL(insn): \
INSN_ENTRY_SIG(insn); \
-/**********************************/
-#ifdef DISPATCH_DIRECT_THREADED_CODE
-
-#define x86_dispatch(addr) \
+/* dispather */
+#if __GNUC__ && __i386__
+#define DISPATCH_ARCH_DEPEND_WAY(addr) \
asm volatile("jmp *%0;" : : "r" (addr))
-/* direct threaded code */
-#if __GNUC__ && __i386__
+#else
+#define DISPATCH_ARCH_DEPEND_WAY(addr) \
+ /* do nothing */
+#endif
+
+
+/**********************************/
+#ifdef OPT_DIRECT_THREADED_CODE
+
+
/* for GCC 3.4.x */
#define TC_DISPATCH(insn) \
- x86_dispatch(*((void **)reg_pc)); \
+ DISPATCH_ARCH_DEPEND_WAY(GET_CURRENT_INSN()); \
INSN_DISPATCH_SIG(insn); \
goto *GET_CURRENT_INSN(); \
;
-#else
-#define TC_DISPATCH(insn) \
- goto *GET_CURRENT_INSN();
-
-#endif
-
-// goto *GET_CURRENT_INSN(); \
-// rb_bug("dtc error");
-
#define GET_SEQ(iseq) (iseq)->iseq_dt
-/**********************************/
-#else /* DISPATCH_DIRECT_THREADED_CODE */
-#error "unsupported"
-/* indirect threaded code */
-#define TC_DISPATCH() \
+#else
+/* indirect threade code */
+
+#define TC_DISPATCH(insn) \
+ DISPATCH_ARCH_DEPEND_WAY(insns_address_table[GET_CURRENT_INSN()]); \
+ INSN_DISPATCH_SIG(insn); \
goto *insns_address_table[GET_CURRENT_INSN()]; \
rb_bug("tc error");
@@ -146,8 +145,8 @@
DEBUG_END_INSN(); \
TC_DISPATCH(insn); \
-#define INSN_DISPATCH() \
- TC_DISPATCH(__START__) \
+#define INSN_DISPATCH() \
+ TC_DISPATCH(__START__) \
{
#define END_INSNS_DISPATCH() \
@@ -157,7 +156,7 @@
#define NEXT_INSN() TC_DISPATCH(__NEXT_INSN__)
/************************************************/
-#else
+#else /* no threaded code */
/* most common method */
#define GET_SEQ(is) (is)->iseq
Modified: trunk/vm_evalbody.h
===================================================================
--- trunk/vm_evalbody.h 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/vm_evalbody.h 2005-06-29 14:32:14 UTC (rev 187)
@@ -57,11 +57,11 @@
int state;
struct tag _tag;
-#ifdef DISPATCH_THREADED_CODE
+#ifdef OPT_THREADED_CODE
#include "vmtc.inc"
#endif
-#ifdef DISPATCH_DIRECT_THREADED_CODE
+#ifdef OPT_THREADED_CODE
if(self == 0){
return (VALUE)insns_address_table;
}
Modified: trunk/yarvcore.c
===================================================================
--- trunk/yarvcore.c 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/yarvcore.c 2005-06-29 14:32:14 UTC (rev 187)
@@ -301,7 +301,7 @@
if(ptr){
iseqobj = ptr;
FREE_UNLESS_NULL(iseqobj->iseq);
-#ifdef DISPATCH_DIRECT_THREADED_CODE
+#ifdef OPT_DIRECT_THREADED_CODE
FREE_UNLESS_NULL(iseqobj->iseq_dt);
#endif
FREE_UNLESS_NULL(iseqobj->insn_info_tbl);
@@ -738,11 +738,12 @@
VALUE insns_name_array();
void Init_yarvcore(){
- char opts[] =
-#if defined(DISPATCH_DIRECT_THREADED_CODE)
+ char opts[] = ""
+
+#if defined(OPT_DIRECT_THREADED_CODE)
"[direct threaded code] "
-#elif defined(DISPATCH_THREADED_CODE)
- "[threaded code] "
+#elif defined(OPT_INDIRECT_THREADED_CODE)
+ "[indirect threaded code] "
#endif
#ifdef FAKE_INLINE_METHOD_CACHE
@@ -753,15 +754,19 @@
"[optimize basic operation] "
#endif
-#ifdef OPT_REGEXP_MATCH
- "[optimize regexp match] "
-#endif
-
#ifdef OPT_STACK_CACHING
"[stack caching] "
#endif
-#ifdef INLINE_METHOD_CACHE
+#ifdef OPT_OPERANDS_UNIFICATION
+ "[operands unification] "
+#endif
+
+#ifdef OPT_INSTRUCTIONS_UNIFICATION
+ "[instructions unification] "
+#endif
+
+#ifdef OPT_INLINE_METHOD_CACHE
"[inline method cache] "
#endif
;
Modified: trunk/yarvcore.h
===================================================================
--- trunk/yarvcore.h 2005-06-29 13:38:12 UTC (rev 186)
+++ trunk/yarvcore.h 2005-06-29 14:32:14 UTC (rev 187)
@@ -153,7 +153,7 @@
NODE *node;
-#ifdef DISPATCH_DIRECT_THREADED_CODE
+#ifdef OPT_DIRECT_THREADED_CODE
VALUE *iseq_dt;
#endif
--
ML: yarv-diff quickml.atdot.net
Info: http://www.atdot.net/~ko1/quickml