yarv-diff:81
From: ko1 atdot.net
Date: 15 Aug 2005 18:55:25 -0000
Subject: [yarv-diff:81] r237 - in trunk: . rb yarvtest
Author: ko1
Date: 2005-08-16 03:55:24 +0900 (Tue, 16 Aug 2005)
New Revision: 237
Added:
trunk/rb/diff.rb
Modified:
trunk/ChangeLog
trunk/Makefile.in
trunk/common.mk
trunk/configure
trunk/error.c
trunk/yarvtest/yarvtest.rb
Log:
* common.mk, Makefile.in : move some rules to common.mk
* rb/diff.rb : added
* yarvtest/yarvtest.rb : fix to compare output last value
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2005-08-15 09:34:46 UTC (rev 236)
+++ trunk/ChangeLog 2005-08-15 18:55:24 UTC (rev 237)
@@ -4,6 +4,15 @@
# from Mon, 03 May 2004 01:24:19 +0900
#
+2005-08-16(Tue) 03:54:17 +0900 Koichi Sasada <ko1 atdot.net>
+
+ * common.mk, Makefile.in : move some rules to common.mk
+
+ * rb/diff.rb : added
+
+ * yarvtest/yarvtest.rb : fix to compare output last value
+
+
2005-08-15(Mon) 18:27:58 +0900 Koichi Sasada <ko1 atdot.net>
* Changes : 0.3.0
Modified: trunk/Makefile.in
===================================================================
--- trunk/Makefile.in 2005-08-15 09:34:46 UTC (rev 236)
+++ trunk/Makefile.in 2005-08-15 18:55:24 UTC (rev 237)
@@ -166,66 +166,3 @@
ext/extinit.$(OBJEXT): ext/extinit.c $(SETUP)
$(CC) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) -o$@ -c ext/extinit.c
-
-
-BASERUBY = ruby
-
-INSNS2VMOPT = $(CPPFLAGS) --srcdir=$(srcdir)
-
-minsns.inc:
- $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT)
-
-opt_sc.inc:
- $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT)
-
-optinsn.inc:
- $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT) optinsn.inc
-
-optunifs.inc:
- $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT) optunifs.inc
-
-insns.inc:
- $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT)
-
-vmtc.inc:
- $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT) vmtc.inc
-
-vm.inc: $(srcdir)/insns.def
- $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT) vm.inc
-
-vm_macro.inc: $(srcdir)/vm_macro.def
- $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT) vm_macro.inc
-
-rev.inc: $(srcdir)/ChangeLog
- $(BASERUBY) $(srcdir)/rb/getrev.rb $(srcdir)/ChangeLog > rev.inc
-
-incs:
- $(BASERUBY) $(srcdir)/rb/getrev.rb $(srcdir)/ChangeLog > rev.inc
- $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT)
-
-docs:
- $(BASERUBY) -I$(srcdir) $(srcdir)/rb/makedocs.rb $(INSNS2VMOPT)
-
-yarv-test-all: all
- $(BASERUBY) -I$(srcdir) $(srcdir)/yarvtest/runner.rb $(OPT) yarv=$(MINIRUBY) ruby=$(BASERUBY)
-
-yarv-test-each: all
- $(BASERUBY) -I$(srcdir) $(srcdir)/yarvtest/test_$(ITEM).rb $(OPT) yarv=$(MINIRUBY) ruby=$(BASERUBY)
-
-run: all
- $(BASERUBY) $(srcdir)/test.rb $(RUNOPT) $(MINIRUBY) $(BASERUBY)
-
-benchmark: all
- $(BASERUBY) -I$(srcdir) $(srcdir)/benchmark/run_rite.rb $(OPT) $(ITEMS) --yarv-program=$(MINIRUBY) --ruby-program=$(BASERUBY)
-
-ITEM=bmx_temp
-tbench: all
- $(RUBY) -I$(srcdir) $(srcdir)/benchmark/run_rite.rb $(ITEM) $(OPT) --yarv-program=$(MINIRUBY) --ruby-program=$(BASERUBY)
-aotc:
- $(RUBY) -I$(srcdir) -I. $(srcdir)/rb/aotcompile.rb $(INSNS2VMOPT)
-
-run.gdb:
- echo run > run.gdb
-
-gdb: all run.gdb
- gdb -x run.gdb --quiet --args $(MINIRUBY) -I$(srcdir) $(srcdir)/test.rb
Modified: trunk/common.mk
===================================================================
--- trunk/common.mk 2005-08-15 09:34:46 UTC (rev 236)
+++ trunk/common.mk 2005-08-15 18:55:24 UTC (rev 237)
@@ -350,3 +350,64 @@
yarvsubst.o: {$(VPATH)}yarv.h
+BASERUBY = ruby
+
+INSNS2VMOPT = $(CPPFLAGS) --srcdir=$(srcdir)
+
+minsns.inc:
+ $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT)
+
+opt_sc.inc:
+ $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT)
+
+optinsn.inc:
+ $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT) optinsn.inc
+
+optunifs.inc:
+ $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT) optunifs.inc
+
+insns.inc:
+ $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT)
+
+vmtc.inc:
+ $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT) vmtc.inc
+
+vm.inc: $(srcdir)/insns.def
+ $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT) vm.inc
+
+vm_macro.inc: $(srcdir)/vm_macro.def
+ $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT) vm_macro.inc
+
+rev.inc: $(srcdir)/ChangeLog
+ $(BASERUBY) $(srcdir)/rb/getrev.rb $(srcdir)/ChangeLog > rev.inc
+
+incs:
+ $(BASERUBY) $(srcdir)/rb/getrev.rb $(srcdir)/ChangeLog > rev.inc
+ $(BASERUBY) $(srcdir)/rb/insns2vm.rb $(INSNS2VMOPT)
+
+docs:
+ $(BASERUBY) -I$(srcdir) $(srcdir)/rb/makedocs.rb $(INSNS2VMOPT)
+
+yarv-test-all: all
+ $(BASERUBY) -I$(srcdir) $(srcdir)/yarvtest/runner.rb $(OPT) yarv=$(MINIRUBY) ruby=$(BASERUBY)
+
+yarv-test-each: all
+ $(BASERUBY) -I$(srcdir) $(srcdir)/yarvtest/test_$(ITEM).rb $(OPT) yarv=$(MINIRUBY) ruby=$(BASERUBY)
+
+run: all
+ $(BASERUBY) $(srcdir)/test.rb $(RUNOPT) $(MINIRUBY) $(BASERUBY)
+
+benchmark: all
+ $(BASERUBY) -I$(srcdir) $(srcdir)/benchmark/run_rite.rb $(OPT) $(ITEMS) --yarv-program=$(MINIRUBY) --ruby-program=$(BASERUBY)
+
+ITEM=bmx_temp
+tbench: all
+ $(RUBY) -I$(srcdir) $(srcdir)/benchmark/run_rite.rb $(ITEM) $(OPT) --yarv-program=$(MINIRUBY) --ruby-program=$(BASERUBY)
+aotc:
+ $(RUBY) -I$(srcdir) -I. $(srcdir)/rb/aotcompile.rb $(INSNS2VMOPT)
+
+run.gdb:
+ echo run > run.gdb
+
+gdb: all run.gdb
+ gdb -x run.gdb --quiet --args $(MINIRUBY) -I$(srcdir) $(srcdir)/test.rb
Modified: trunk/configure
===================================================================
--- trunk/configure 2005-08-15 09:34:46 UTC (rev 236)
+++ trunk/configure 2005-08-15 18:55:24 UTC (rev 237)
@@ -11125,6 +11125,8 @@
+
+
for ac_header in stdlib.h string.h unistd.h limits.h sys/file.h sys/ioctl.h\
fcntl.h sys/fcntl.h sys/select.h sys/time.h sys/times.h sys/param.h\
syscall.h pwd.h grp.h a.out.h utime.h memory.h direct.h sys/resource.h \
@@ -13113,6 +13115,7 @@
+
for ac_func in fmod killpg wait4 waitpid fork spawnv syscall chroot fsync getcwd\
truncate chsize times utimes fcntl lockf lstat link symlink readlink\
setitimer setruid seteuid setreuid setresuid setproctitle\
Modified: trunk/error.c
===================================================================
--- trunk/error.c 2005-08-15 09:34:46 UTC (rev 236)
+++ trunk/error.c 2005-08-15 18:55:24 UTC (rev 237)
@@ -33,7 +33,7 @@
int ruby_nerrs;
/* TODO */
-int ruby_in_eval;
+RUBY_EXTERN int ruby_in_eval;
static ID rb_get_callee_id(){
return rb_intern("<TODO>");
}
Added: trunk/rb/diff.rb
===================================================================
--- trunk/rb/diff.rb 2005-08-15 09:34:46 UTC (rev 236)
+++ trunk/rb/diff.rb 2005-08-15 18:55:24 UTC (rev 237)
@@ -0,0 +1,11 @@
+rubydir = ARGV.shift
+
+IGNORE = ['eval.c', 'version.c', 'inits.c']
+
+Dir.glob('*.[ch]'){|f|
+ rubyfile = File.join(rubydir, f)
+ if FileTest.exist?(rubyfile) && !IGNORE.include?(f)
+ system("diff -bu #{f} #{rubyfile}")
+ end
+}
+
Modified: trunk/yarvtest/yarvtest.rb
===================================================================
--- trunk/yarvtest/yarvtest.rb 2005-08-15 09:34:46 UTC (rev 236)
+++ trunk/yarvtest/yarvtest.rb 2005-08-15 18:55:24 UTC (rev 237)
@@ -69,12 +69,20 @@
end
def ae str
- # puts str
- # puts YARVUtil.parse(str, $0, 0).disasm
-
+ str = %{
+ p eval(%q{
+ #{str}
+ })
+ }
+
ruby = exec(@ruby, str)
yarv = exec(@yarv, str)
+ if $DEBUG
+ puts "yarv (#@yarv): #{yarv}"
+ puts "ruby (#@ruby): #{ruby}"
+ end
+
assert_equal(ruby, yarv)
end
--
ML: yarv-diff quickml.atdot.net
Info: http://www.atdot.net/~ko1/quickml