1 # $Id: ChangeLog 590 2006-12-31 09:02:34Z ko1 $
4 # from Mon, 03 May 2004 01:24:19 +0900
7 Sun Dec 31 18:01:50 2006 Koichi Sasada <ko1@atdot.net>
9 * bin/* : ruby/trunk/bin 11437
12 Sun Dec 31 17:42:05 2006 Koichi Sasada <ko1@atdot.net>
14 * eval.c : remove old Kernel#funcall definition
17 2006-12-30(Sat) 07:59:26 +0900 Koichi Sasada <ko1@atdot.net>
19 * catch up ruby/trunk 11437
21 * eval_intern.h : reorder tag initialization
23 * eval.c : fix to support __send!, funcall and prohibit funcall as
26 * eval_error.h, eval_jump.h, eval_safe.h : fix prototypes
28 * eval_method.h, vm.c : check re-definition at rb_add_method()
30 * yarvcore.h : fix typo
32 * compile.c : fix white spaces
34 * lib/delegate.rb : fix to support __send, ...
36 * lib/getoptlong.rb : fix to work on YARV
38 * lib/rss/parser.rb : use __send! instead of __send__
40 * sample/test.rb : comment out codes which use |&b| type block parameter
42 * ext/ripper/extconf.rb : turn off
44 * test/ripper/test_files.rb, test_parser_events.rb,
45 test_scanner_events.rb : fix to check it has ripper module
47 * vm_dump.c : remove showing file path length limitation
49 * yarvtest/test_eval.rb : use __send! instead of __send__
52 2006-12-19(Tue) 11:46:08 +0900 Koichi Sasada <ko1@atdot.net>
60 * test/openssl : added
66 * rb/ -> tool/ : renamed
68 * common.mk : fixed for above change
70 * ruby_doc/* : move to topdir
77 2006-12-15(Fri) 09:42:46 +0900 Koichi Sasada <ko1@atdot.net>
79 * compile.c : remove obsolete codes
81 * insns.def : fix a comment of getconstant
84 2006-12-13(Wed) 16:26:06 +0900 Koichi Sasada <ko1@atdot.net>
86 * blockinlining.c, compile.c, compile.h, debug.c, debug.h,
87 insnhelper.h, insns.def, iseq.c, thread.c, thread_pthread.ci,
88 thread_pthread.h, thread_win32.ci, thread_win32.h, vm.c, vm.h,
89 vm_dump.c, vm_evalbody.ci, vm_opts.h.base, yarv.h,
90 yarv_version.h, yarvcore.c, yarvcore.h :
91 add a header includes copyright
94 2006-12-12(Tue) 13:13:32 +0900 Koichi Sasada <ko1@atdot.net>
96 * rb/insns2vm.rb : add PREFETCH() statement
100 * yarvcore.h : fix LIKELY(x) and
101 remove main_thread_val field from yarv_vm_t
105 * thread.c : support fork
107 * eval_thread.c : ditto
113 * test/ruby/test_signal.rb :
115 * thread_pthread.ci : rename timer thread functions
117 * thread_win32.ci : ditto
120 2006-11-10(Fri) 21:29:13 +0900 Koichi Sasada <ko1@atdot.net>
122 * compile.c : fix to compile arguments
124 * insns.def : fix to duplicate first array value on concatarray
127 * yarvtest/test_bin.rb : add a test for above change
129 * sample/test.rb : fix to catch up Ruby HEAD (fix to remove test about
133 2006-11-10(Fri) 12:49:11 +0900 Koichi Sasada <ko1@atdot.net>
135 * vm_macro.def : fix to inherit visibility on
136 NODE_SUPER method invocation
139 2006-11-10(Fri) 09:13:46 +0900 Koichi Sasada <ko1@atdot.net>
141 * class.c : revert module duplicate inclusion
143 * parse.y : catch up current Ruby HEAD
153 * eval_thread.c : define Continuation (null class)
155 * vm_dump.c : fix to output backtrae to stderr
157 * yarvtest/test_block.rb : remove unsupported test
159 * yarvtest/test_class.rb : add a test about super
161 * yarvtest/test_syntax.rb : add a test about case/when
164 2006-11-09(Thu) 10:22:59 +0900 Koichi Sasada <ko1@atdot.net>
166 * call_cfunc.h -> call_cfunc.ci : renamed
168 * vm_evalbody.h, vm_evalbody.ci : ditto
170 * thread_pthread.h, thread_pthread.ci : separate declaration and
173 * thread_win32.h, thread_win32.ci : ditto
175 * thread.c : use *.ci instead of *.c as implementation
179 * common.mk : fix rules for above changes
182 2006-11-08(Wed) 17:23:23 +0900 Koichi Sasada <ko1@atdot.net>
184 * vm_dump.c : show C level backtrace (pointer only) with
185 backtrace() function (glibc feature)
187 * configure.in : ditto
189 * yarvcore.c : add NSDR method (show C level backtrace)
191 * error.c : fix indent
194 2006-11-07(Tue) 13:17:10 +0900 Koichi Sasada <ko1@atdot.net>
196 * eval.c (rb_set_errinfo) : added
200 * version.h : fix version number
202 * lib/webrick/utils.rb : fix to remove Thread.critical
204 * ext/dbm, dl, gdbm, iconv, io, pty, sdbm : added
206 * test/dbm, gdbm, io, logger, net, readline, sdbm, soap,
207 webrick, win32ole, wsdl, xsd : added
210 2006-11-06(Mon) 22:32:18 +0900 Koichi Sasada <ko1@atdot.net>
212 * array.c : import Ruby HEAD
214 * ext/socket/extconf.rb : ditto
216 * ext/socket/socket.c : ditto
220 * lib/date.rb : ditto
222 * lib/net/imap.rb : ditto
224 * lib/rss/0.9.rb : ditto
228 * lib/soap/mapping/rubytypeFactory.rb : ditto
230 * lib/soap/mimemessage.rb : ditto
232 * lib/soap/property.rb : ditto
234 * lib/webrick/httprequest.rb : ditto
236 * lib/webrick/httputils.rb : ditto
238 * lib/xmlrpc/create.rb : ditto
240 * lib/xsd/codegen/gensupport.rb : ditto
250 * rb/ir.rb : fix to use "diffs" directory
252 * vm_dump.c : add "const"
255 2006-11-06(Mon) 16:36:47 +0900 Koichi Sasada <ko1@atdot.net>
257 * eval_proc.c : remove "static" from external global variables
259 * eval_thread.c : ditto
261 * array.c : fix indent
263 * insns.def : add a suitable cast
265 * vm_macro.def : allow scalar value on splat arguments
267 * yarvtest/test_block.rb : fix to synchronize Ruby HEAD
269 * rb/insns2vm.rb : remove String#each for 1.9
271 * template/vm.inc.tmpl : ditto (remove String#each_with_index)
274 2006-11-06(Mon) 13:22:34 +0900 Koichi Sasada <ko1@atdot.net>
276 * iseq.c : fixed GC debugging outputs
278 * rb/parse.rb : fixed output format
281 2006-11-04(Sat) 09:46:50 +0900 Koichi Sasada <ko1@atdot.net>
283 * compile.c : fix to duplicate "#{'foo'}" string
285 * yarvtest/test_bin.rb : add a test for above
287 * ext/readline/readline.c : import Ruby HEAD
295 * lib/mkmf.rb : ditto
297 * test/ruby/test_hash.rb : fix to current specification
299 * test/ruby/test_string.rb : ditto
302 2006-11-03(Fri) 20:58:36 +0900 Koichi Sasada <ko1@atdot.net>
304 * ext/nkf/nkf-utf8/utf8tbl.h : missed to add
306 * configure.in : import ruby HEAD
308 * test/ruby/test_array.rb : ditto
310 * test/ruby/test_assignment.rb : ditto
312 * test/ruby/test_clone.rb : ditto
314 * test/socket/test_socket.rb : ditto
316 * test/socket/test_unix.rb : ditto
318 * test/strscan/test_stringscanner.rb : ditto
320 * test/testunit/collector/test_dir.rb : ditto
323 2006-11-03(Fri) 20:22:24 +0900 Koichi Sasada <ko1@atdot.net>
325 * array.c : import current ruby HEAD and apply API changes
326 This version has some known bugs
330 * blockinlining.c : ditto
342 * enumerator.c : ditto
348 * eval_error.h : ditto
350 * eval_jump.h : ditto
352 * eval_load.c : ditto
354 * eval_proc.c : ditto
366 * instruby.rb : ditto
380 * missing/vsnprintf.c : ditto
382 * mkconfig.rb : ditto
390 * oniguruma.h : ditto
424 * rubytest.rb : ditto
428 * sample/test.rb : ditto
458 * vm_macro.def : ditto
463 2006-10-31(Tue) 22:47:50 +0900 Koichi Sasada <ko1@atdot.net>
465 * parse.y : fix NEWHEAP bugs (import HEAD)
467 * ruby.c, intern.h, yarvcore.c (rb_load_file) : change to
468 return parsed node pointer
470 * rb/ir.rb : add check mode
473 2006-09-01(Fri) 22:05:28 +0900 Koichi Sasada <ko1@atdot.net>
475 * compile.c : fix a bug of peephole optimization and enable
479 2006-08-21(Mon) 05:27:48 +0900 Koichi Sasada <ko1@atdot.net>
481 * lib/mathn.rb : remove "remove_method :gcd2"
483 * opt_insn_unif.def : unset opt setting
485 * opt_operand.def : ditto
488 2006-08-18(Fri) 17:55:31 +0900 Koichi Sasada <ko1@atdot.net>
490 * common.mk : add dependency of yarvcore.h to thread.o
492 * gc.c : change comment line
494 * thread.c : remove some line break
496 * yarvcore.c : reoder initialize sequence to mark main thread
499 2006-08-18(Fri) 16:51:34 +0900 Koichi Sasada <ko1@atdot.net>
501 * yarvcore.h : add a support for cache values per thread
507 * thread.c : move a expression after acquiring lock
509 * compile.c : add a cast to remove warning
512 2006-08-18(Fri) 02:07:45 +0900 Koichi Sasada <ko1@atdot.net>
514 * compile.c : fix to return rhs value on ATTRASGIN
516 * insns.def (setn) : add insn setn
518 * yarvtest/test_bin.rb : add tests for above
521 2006-08-17(Thu) 22:46:08 +0900 Koichi Sasada <ko1@atdot.net>
523 * vm.c : clear callee_id ([yarv-dev:1073])
526 2006-08-17(Thu) 22:14:15 +0900 Koichi Sasada <ko1@atdot.net>
528 * thread_pthread.h : fix error message
531 2006-08-17(Thu) 12:23:52 +0900 Koichi Sasada <ko1@atdot.net>
533 * eval.c : change initilize routine order ([yarv-dev:1067])
535 * yarvcore.c (Init_yarv) : init th->machine_stack_start
537 * thread_pthread.h : add malloc value check ([yarv-dev:1066])
539 * insns.def (opt_eq) : fix typo ([yarv-dev:1072])
541 * yarvtest/test_opts.rb : add a test for above
543 * yarvtest/test_class.rb : add a test for last commit
546 2006-08-17(Thu) 11:02:16 +0900 Koichi Sasada <ko1@atdot.net>
548 * class.c (clone_method) : check undef-ed method ([yarv-dev:1068])
551 2006-08-15(Tue) 15:07:43 +0900 Koichi Sasada <ko1@atdot.net>
553 * insns.def : fix opt_plus routine ([yarv-dev-en:149])
555 * yarvtest/test_opts.rb : add tests for above
558 2006-08-06(Sun) 06:24:51 +0900 Koichi Sasada <ko1@atdot.net>
560 * common.mk : fix build rule (build only ruby binary when benchmark)
562 * yarvcore.[ch] : fix and add yarv_iseq_new_with_* API
564 * blockinlining.c : ditto
572 * eval_method.h : check redefinition for specialized instruction
574 * insnhelper.h : ditto
582 * numeric.c : add Fixnum#succ
584 * thread.c : remove duplicated method Thread#current
586 * yarvcore.c : remove duplicated method Proc#clone
588 * yarvtest/test_opts.rb : added
591 2006-07-20(Thu) 04:10:13 +0900 Koichi Sasada <ko1@atdot.net>
593 * compile.c : fix [yarv-dev:1041] problem (raise TypeError)
595 * eval.c : rb_funcall2 send as NOEX_PRIVATE and check scope
598 2006-07-20(Thu) 03:38:46 +0900 Koichi Sasada <ko1@atdot.net>
600 * yarvcore.c : fix [yarv-dev:1040] bug
603 2006-07-18(Tue) 18:45:52 +0900 Koichi Sasada <ko1@atdot.net>
605 * some files : set property "svn:eol-style" as native
608 2006-07-18(Tue) 18:35:55 +0900 Koichi Sasada <ko1@atdot.net>
610 * gc.h : fix a static function name
612 * vm.c : remove Japanese comments
614 * yarvcore.c : add a comment
616 * some files : set property "svn:eol-style" as native
619 2006-07-18(Tue) 16:48:01 +0900 Koichi Sasada <ko1@atdot.net>
621 * vm.c : remove unused code
623 * compile.c : add checking value
627 * yarvcore.c : fix yarv_th_eval prototype declaration
629 * yarvtest/yarvtest.rb : use compile instead of parse method
632 2006-07-12(Wed) 15:18:58 +0900 Koichi Sasada <ko1@atdot.net>
634 * yarv_version.h : 0.4.1
639 2006-07-12(Wed) 13:38:03 +0900 Koichi Sasada <ko1@atdot.net>
641 * eval.c : fix indent
643 * gc.h : fix syntax bug
645 * thread_pthread.h : vanish warnning message
655 * yarvcore.c : prohibit tail call optimization to mark
658 * yarvcore.h : add some allocator function declaration
660 * yarvtest/test_eval.rb : remove output
663 2006-07-12(Wed) 05:01:23 +0900 Koichi Sasada <ko1@atdot.net>
665 * yarvcore.c : undef alloc funcs
667 * eval_proc.c : ditto (use factory faction)
673 * iseq.c : fix compile option creation
675 * rb/allload.rb : use compile_file method
677 * rb/compile.rb : ditto
679 * rb/parse.rb : ditto
681 * template/insnstbl.html : hide mail addr
684 2006-07-11(Tue) 21:34:29 +0900 Minero Aoki <aamine@loveruby.net>
686 * test/ruby/test_dir.rb: new test test_JVN_13947696.
689 2006-07-11(Tue) 21:26:41 +0900 Minero Aoki <aamine@loveruby.net>
691 * test/ruby/test_alias.rb: new test test_JVN_83768862.
694 2006-07-11(Tue) 11:33:49 +0900 Koichi Sasada <ko1@atdot.net>
696 * compile.c : fix compile error on C90
699 2006-07-11(Tue) 10:40:23 +0900 Koichi Sasada <ko1@atdot.net>
707 * blockinlining.c : Get*Val => Get*Ptr
713 * eval_proc.c : ditto
717 * vm_macro.def : ditto
725 * compile.c : rename local variable insnobj => iobj
727 * compile.c : support yarv_compile_option_t
731 * insns.def : use OPT_CHECKED_RUN instead of IGNORE_OPTIMIZE
733 * rb/compile.rb : use compile option
735 * template/optinsn.inc.tmpl : fix function name
737 * vm_opts.h.base : change macros
739 * rb/insns2vm.rb : ditto
741 * yarv.h : fix yarvcore_eval_parsed parameter type
743 * yarvcore.c : fix some interfaces (functions)
745 * yarvcore.h : add a type yarv_compile_option_t
748 2006-07-06(Thu) 13:45:20 +0900 Koichi Sasada <ko1@atdot.net>
750 * lib/yasm.rb : pass builder object if block arity == 1
753 2006-07-05(Wed) 11:23:50 +0900 Koichi Sasada <ko1@atdot.net>
755 * lib/yasm.rb : fix method name
757 * vm.c (th_set_top_stack) : check toplevel or not
760 2006-07-04(Tue) 20:05:38 +0900 Koichi Sasada <ko1@atdot.net>
762 * rb/compile.rb : added
764 * yarvtest/yarvtest.rb : disable load/store test
767 2006-07-04(Tue) 18:17:15 +0900 Koichi Sasada <ko1@atdot.net>
769 * compile.c : fix some bugs about load iseq data
771 * disasm.c : ditto (store)
773 * eval.c (rb_f_local_variables) : fix bugs
775 * insns.def : fix otp_ltlt condition bug
779 * yarvcore.c : rename some functions
781 * yarvtest/yarvtest.rb : add iseq load/store tests
782 (to enable this, remove comment)
785 2006-07-03(Mon) 01:54:23 +0900 Koichi Sasada <ko1@atdot.net>
787 * eval_thread.c : add parameter "th" to thread_set_raised
791 * eval_intern.h : ditto
795 * eval_error.h : declare with ANSI style
797 * disasm.c : rename iseq_iseq2simpledata() to iseq_data_to_ary
799 * lib/yasm.rb : rename Instruction#to_simpledata to
804 * vm.c : fix bug (Proc.new{|*args| p args}.call(1) #=> 1)
806 * yarvtest/test_proc.rb : add a tests for above
809 2006-06-21(Wed) 09:19:06 +0900 Koichi Sasada <ko1@atdot.net>
811 * compile.c : remove yarv_iseq_t#catch_table_ary and
812 add yarv_iseq_t#compile_data#catch_table_ary
820 * eval_thread.c : remove unused code
822 * thread.c : add rb_gc_mark_threads() (from eval_thread.c)
825 2006-05-31(Wed) 21:26:38 +0900 Koichi Sasada <ko1@atdot.net>
827 * parse.y : prohibit tail call optimization to mark vparsr
831 2006-05-25(Thu) 15:37:11 +0900 Koichi Sasada <ko1@atdot.net>
833 * blockinlining.c : support NEW_ATTRASGN node
835 * class.c : skip undefined method to collect ([yarv-dev:999])
837 * yarvtest/test_class.rb : add a test for above
839 * compile.c : fix opt_regexpmatch1 condition
841 * lib/monitor.rb : fix [yarv-dev:1009]
843 * rb/insns2vm.rb : fix typo
845 * thread.c : prohibit unlock by not mutex owner thread
847 * vm_opts.h.base : change default option
850 2006-05-18(Thu) 16:00:50 +0900 Koichi Sasada <ko1@atdot.net>
852 * intern.h : fix prototype declarations for last re.c change
855 2006-05-18(Thu) 12:12:03 +0900 Koichi Sasada <ko1@atdot.net>
857 * rb/runruby.rb : added
859 * thread.c (rb_thread_alone) : check if vm->living_threads
863 2006-05-18(Thu) 12:05:35 +0900 Koichi Sasada <ko1@atdot.net>
865 * signal.c : not mask SIGSEGV
867 * thread.c : fix debug output on Win32
869 * thread.c, thread_pthread.h : add some debug prints
871 * yarvcore.c : mark machine registers on thread_mark
874 2006-05-17(Wed) 18:09:20 +900 Yukihiro Matsumoto <matz@ruby-lang.org>
876 * dir.c (sys_warning): should not call a vararg function
877 rb_sys_warning() indirectly. [ruby-core:07886]
880 2006-05-17(Wed) 16:41:41 +900 Yukihiro Matsumoto <matz@ruby-lang.org>
882 * re.c (rb_reg_initialize): should not allow modifying literal
883 regexps. frozen check moved from rb_reg_initialize_m as well.
885 * re.c (rb_reg_initialize): should not modify untainted objects in
886 safe levels higher than 3.
888 * re.c (rb_memcmp): type change from char* to const void*.
890 * dir.c (dir_close): should not close untainted dir stream.
892 * dir.c (GetDIR): add tainted/frozen check for each dir operation.
895 2006-05-07(Sun) 21:06:28 +0900 Koichi Sasada <ko1@atdot.net>
897 * thread.c : remove Mutex#unlock_and_stop and add Mutex#sleep
899 * lib/monitor.rb : ditto
901 * lib/thread.rb : ditto
903 * thread_pthread.h : fix stack size
905 * thread_win32.h : fix sleep
907 * yarvcore.h : disable to use get/setcontext
909 * lib/webrick/server.rb : add experimental implementation
913 2006-05-05(Fri) 13:59:00 +0900 Koichi Sasada <ko1@atdot.net>
915 * test/ruby/test_signal.rb : disable a test
917 * thread.c : do trylock before lock on mutex_lock
919 * thread_win32.h : use CriticalSection instead of Mutex
922 2006-05-05(Fri) 03:03:22 +0900 Koichi Sasada <ko1@atdot.net>
924 * common.mk : vtune rule make run test.rb
926 * disasm.c : fix syntax errors (on VC)
930 * lib/thread.rb : Mutex#synchronize is defined here
934 * signal.c : separate pthread or not
936 * thread.c : support lightweight wakeup
938 * thread_pthread.h : ditto
940 * thread_win32.h : ditto
944 * yarvtest/test_thread.rb : restore last change
947 2006-05-04(Thu) 18:11:43 +0900 Koichi Sasada <ko1@atdot.net>
949 * eval_thread.c : remove rb_thread_interrupt
953 * signal.c : change signal transfer route
957 * thread_pthread.h : ditto
959 * thread_win32.h : ditto
961 * yarv.h : support GET_VM()
963 * yarvcore.h : change yarv_thread_t/yarv_vm_t structure
965 * yarvtest/test_thread.rb : decrease threads to test
968 2006-05-04(Thu) 00:26:18 +0900 Koichi Sasada <ko1@atdot.net>
970 * thread_pthread.h : experimental support of thread cache
973 2006-04-25(Tue) 22:30:14 +0900 Koichi Sasada <ko1@atdot.net>
975 * yarvcore.h : remove struct yarv_cmethod_info, add
976 data structure for profiling and extend yarv_control_frame_t
978 * vm.c : make pop_frame() and apply above change
984 * vm_macro.def : ditto
986 * insns.def (leave): use pop_frame() instead of
987 POP_CONTROL_STACK_FRAME() macro
989 * insnhelper.h : remove some macros
991 * yarvcore.c : change th_set_top_stack() prototype
994 2006-04-18(Tue) 18:37:08 +0900 Koichi Sasada <ko1@atdot.net>
996 * compile.c, disasm.c : support export/import exception
999 * yarvcore.h : change "struct catch_table_entry" member variable
1003 2006-04-13(Thu) 17:11:30 +0900 Koichi Sasada <ko1@atdot.net>
1005 * bignum.c : import ruby 1.9 HEAD (Ruby 1.9.0 2006-04-08)
1009 * enumerator.c : ditto
1011 * ext/.document : ditto
1013 * ext/extmk.rb : ditto
1015 * ext/nkf/lib/kconv.rb : ditto
1017 * ext/nkf/nkf-utf8/nkf.c : ditto
1019 * ext/nkf/nkf-utf8/utf8tbl.c : ditto
1021 * ext/nkf/nkf.c : ditto
1023 * ext/nkf/test.rb : ditto
1025 * ext/socket/.cvsignore : ditto
1027 * ext/win32ole/sample/excel2.rb : ditto
1029 * ext/win32ole/tests/testOLEMETHOD.rb : ditto
1031 * ext/win32ole/tests/testOLEPARAM.rb : ditto
1033 * ext/win32ole/tests/testOLETYPE.rb : ditto
1035 * ext/win32ole/tests/testOLETYPELIB.rb : ditto
1037 * ext/win32ole/tests/testOLEVARIABLE.rb : ditto
1039 * ext/win32ole/tests/testOLEVARIANT.rb : ditto
1041 * ext/win32ole/tests/testWIN32OLE.rb : ditto
1043 * ext/win32ole/tests/testall.rb : ditto
1045 * ext/win32ole/win32ole.c : ditto
1049 * instruby.rb : ditto
1053 * lib/delegate.rb : ditto
1055 * lib/fileutils.rb : ditto
1057 * lib/find.rb : ditto
1059 * lib/irb/ruby-lex.rb : ditto
1061 * lib/mkmf.rb : ditto
1063 * lib/net/http.rb : ditto
1065 * lib/open-uri.rb : ditto
1067 * lib/pathname.rb : ditto
1069 * lib/rational.rb : ditto
1071 * lib/rdoc/parsers/parse_rb.rb : ditto
1073 * lib/rdoc/ri/ri_paths.rb : ditto
1075 * lib/resolv.rb : ditto
1077 * lib/test/unit/collector/objectspace.rb : ditto
1079 * lib/webrick/httpservlet/cgihandler.rb : ditto
1083 * mkconfig.rb : ditto
1087 * oniguruma.h : ditto
1099 * regerror.c : ditto
1101 * regparse.c : ditto
1105 * rubytest.rb : ditto
1107 * runruby.rb : ditto
1111 * test/digest/test_digest.rb : ditto
1113 * test/pathname/test_pathname.rb : ditto
1115 * test/ruby/envutil.rb : ditto
1117 * test/ruby/test_float.rb : ditto
1119 * test/ruby/test_pack.rb : ditto
1127 * win32/mkexports.rb : ditto
1129 * win32/resource.rb : ditto
1131 * win32/win32.c : ditto
1134 2006-04-11(Tue) 11:26:53 +0900 Koichi Sasada <ko1@atdot.net>
1136 * rb/yasm.rb : move to lib/yasm.rb
1139 2006-04-09(Sun) 03:04:04 +0900 Koichi Sasada <ko1@atdot.net>
1141 * compile.c : change to accept method iseq object when loading from
1144 * yarvcore.c : add a debug output
1146 * rb/yasm.rb : change some interfaces
1149 2006-04-07(Fri) 20:25:03 +0900 Koichi Sasada <ko1@atdot.net>
1151 * compile.c : fix miss about range of catch "next"
1153 * eval.c : add braces
1156 2006-04-07(Fri) 11:09:43 +0900 Koichi Sasada <ko1@atdot.net>
1158 * common.mk : fix some make rules
1160 * insns.def : rename some instructions name
1162 * rb/insns2vm.rb : change some operand type name
1164 * vm_evalbody.h : ditto
1166 * template/insns.inc.tmpl : add YARV_MAX_INSTRUCTION_SIZE macro
1168 * compile.c, disasm.c, yarvcore.c : support load/store iseq from/to simple
1169 data structure such as array, literals, and so on
1171 * rb/yasm.rb : supported
1173 * vm.c : change interface of eval_define_method
1175 * yarvcore.h : remove unused externals
1178 2006-03-08(Wed) 10:31:29 +0900 Minero Aoki <aamine@loveruby.net>
1180 * lib/delegate.rb (DelegateClass): do not delegate #send and
1184 2006-02-27(Mon) 22:39:17 +0900 Minero Aoki <aamine@loveruby.net>
1186 * lib/thread.rb: last commit causes busy loop, revert it. [yarv-dev:990]
1188 * lib/thread.rb: non_block=true wrongly caused ThreadError.
1191 2006-02-27(Mon) 21:33:49 +0900 Koichi Sasada <ko1@atdot.net>
1193 * common.mk : fix to display command line
1195 * compile.c : fix comparison between a pointer and 0
1197 * debug.c : fix to output stder
1199 * disasm.c : add debug function
1203 * eval_proc.c : fix to skip class definition
1205 * ruby.h : fix T_VALUE to T_VALUES
1209 * node.h : fix prototypes
1211 * vm.c : add VM_DEBUG macro
1213 * vm.c : fix compile error on VC++
1215 * vm.c : fix to inherit last lfp[0] on th_set_finish_env
1217 * vm.c : fix to add one svar location for any frame
1219 * vm_macro.def : ditto
1221 * yarvcore.h : add YARV_CLASS_SPECIAL_P() and YARV_BLOCK_PTR_P()
1225 * insns.def : fix to propagete throw state
1228 2006-02-27(Mon) 13:54:47 +0900 Minero Aoki <aamine@loveruby.net>
1230 * ext/syslog: imported from Ruby CVS trunk HEAD.
1235 2006-02-27(Mon) 12:47:10 +0900 Minero Aoki <aamine@loveruby.net>
1237 * parse.y: follow coding style change.
1240 2006-02-27(Mon) 11:53:07 +0900 Minero Aoki <aamine@loveruby.net>
1242 * lib/README: imported from Ruby CVS trunk HEAD.
1244 * lib/gserver.rb: ditto.
1246 * lib/readbytes.rb: ditto.
1248 * lib/parsearg.rb: ditto.
1255 2006-02-27(Mon) 11:27:19 +0900 Minero Aoki <aamine@loveruby.net>
1257 * lib/thread.rb (Queue#pop): faster code. [yarv-dev:973]
1259 * lib/thread.rb (Queue#pop): avoid to push same thread in to
1263 2006-02-23(Thu) 23:32:53 +0900 Minero Aoki <aamine@loveruby.net>
1265 * lib/open3.rb: imported from Ruby CVS trunk HEAD (rev 1.12).
1268 2006-02-23(Thu) 15:10:09 +0900 Koichi Sasada <ko1@atdot.net>
1270 * eval.c : support rb_frame_self()
1272 * eval_intern.h (th_get_ruby_level_cfp) : return 0 if no cfp
1274 * eval_load.c : comment out scope set
1276 * yarvcore.c : fix to initialize/free process of iseq
1278 * vm.c (th_invoke_proc) : fix to set special cref always
1280 * yarvtest/test_proc.rb : add a test for above
1283 2006-02-22(Wed) 23:33:47 +0900 Koichi Sasada <ko1@atdot.net>
1285 * common.mk : add rule "runruby"
1287 * eval_thread.c : remove obsolete comment
1289 * eval.c : remove unused functions
1293 * gc.c : add rb_register_mark_object() and use it
1295 * eval_load.c : ditto
1297 * eval_proc.c : ditto
1299 * ext/etc/etc.c : ditto
1301 * ext/win32ole/win32ole.c : ditto
1305 * yarvcore.h : ditto
1307 * thread.c : add rb_thread_run_parallel()
1309 * yarvcore.c : change bootstrap
1312 2006-02-22(Wed) 19:27:33 +0900 Koichi Sasada <ko1@atdot.net>
1314 * ext/win32ole/.cvsignore : removed
1316 * ext/win32ole/.document : ditto
1319 2006-02-22(Wed) 18:17:06 +0900 Koichi Sasada <ko1@atdot.net>
1321 * yarvcore.c : set Binding as YARVCore::VM::Binding
1324 2006-02-22(Wed) 12:54:45 +0900 Koichi Sasada <ko1@atdot.net>
1326 * ChangeLog : remove needless line
1329 2006-02-22(Wed) 12:49:02 +0900 Koichi Sasada <ko1@atdot.net>
1331 * rubysig.h : remove CHECK_INTS
1335 * eval_load.c : ditto
1337 * ext/readline/readline.c : ditto
1341 * win32/win32.c : ditto
1343 * yarv_version.h : 0.4.0
1348 2006-02-22(Wed) 11:36:04 +0900 Koichi Sasada <ko1@atdot.net>
1353 2006-02-22(Wed) 11:12:17 +0900 Koichi Sasada <ko1@atdot.net>
1357 * version.c : fixed version message
1359 * yarvext/ : removed
1362 2006-02-22(Wed) 10:33:04 +0900 Koichi Sasada <ko1@atdot.net>
1364 * lib/.document : imported from Ruby 1.9 HEAD
1368 * ext/.document : ditto
1370 * lib/ftools.rb : ditto
1374 * eval_thread.c : remove unused functions
1378 * rb/insns2vm.rb : compare modified date of vm_opts.h and
1381 * ruby.h : rename RValue to RValues
1388 2006-02-22(Wed) 06:32:10 +0900 Koichi Sasada <ko1@atdot.net>
1390 * configure.in : remove last commit
1393 2006-02-22(Wed) 06:18:53 +0900 Koichi Sasada <ko1@atdot.net>
1395 * configure.in : add default program prefix "-yarv"
1398 2006-02-22(Wed) 06:11:36 +0900 Koichi Sasada <ko1@atdot.net>
1400 * common.mk : change default rule (same as HEAD)
1402 * configure : removed
1404 * eval.c : remove last commit
1406 * vm.c : fix stack traverse
1408 * yarvcore.c : initialize top of control frame
1415 2006-02-22(Wed) 04:50:42 +0900 Koichi Sasada <ko1@atdot.net>
1417 * eval.c : change to rewind C level control frame
1419 * vm.c : change to initialize cfp#proc and fix comparison of
1422 * yarvcore.c : remove last commit
1425 2006-02-22(Wed) 03:25:56 +0900 Koichi Sasada <ko1@atdot.net>
1427 * yarvcore.c : initialize each stack of thread
1430 2006-02-22(Wed) 00:02:08 +0900 Koichi Sasada <ko1@atdot.net>
1432 * thread.c : fix synchornize return value ([yarv-dev:957])
1433 and some synchornization error
1435 * thread_pthread.h : add debug helper function
1438 2006-02-21(Tue) 20:54:28 +0900 Koichi Sasada <ko1@atdot.net>
1440 * eval.c : fix place of rb_thread_terminate_all()
1442 * eval_thread.c : remove unused functions
1444 * yarv.h : remove GET_VM()
1446 * eval_jump.h : ditto
1452 * intern.h : change rb_thread_signal_raise/exit interface
1458 * test/ruby/test_beginendblock.rb : use block with IO.popen
1460 * thread_pthread.h : fix interrupt process
1462 * thread_win32.h : ditto
1464 * yarvcore.c : fix thread free process
1466 * yarvcore.h : remove yarv_vm_t#thread_critical, etc
1469 2006-02-21(Tue) 12:42:44 +0900 Koichi Sasada <ko1@atdot.net>
1471 * eval_thread.c : remove unused function rb_thread_schedule()
1473 * thread.c : rename yarv_thread_schedule to rb_thread_schedule()
1475 * thread.c, eval.c : fix to terminate all thread and barrier at
1476 eval.c#ruby_cleanup()
1478 * thread_win32.h : remove native_thread_cleanup()
1480 * thread_pthread.h : ditto
1482 * yarvcore.c : ditto
1484 * yarvtest/test_thread.rb : separete assersions to tests
1487 2006-02-21(Tue) 02:13:33 +900 Yukihiro Matsumoto <matz@ruby-lang.org>
1489 * parse.y (f_arglist): should set command_start = Qtrue for
1490 command body. [ruby-talk:180648]
1493 2006-02-20(Mon) 20:41:07 +0900 Koichi Sasada <ko1@atdot.net>
1495 * thread.c : fix to synchronize signal_thread_list access
1499 2006-02-20(Mon) 17:54:58 +0900 Koichi Sasada <ko1@atdot.net>
1501 * eval_proc.c : remove unused Binding functions and
1502 set is_lambda of Proc used define_method
1504 * yarvcore.c : support Proc#dup/clone, Binding#dup/clone
1506 * sample/test.rb : remove unsupport features (Proc as Binding)
1509 2006-02-20(Mon) 16:28:59 +0900 Koichi Sasada <ko1@atdot.net>
1511 * common.mk : add a dependency to vm.c on eval_intern.h
1513 * eval_intern.h : fix to initialize tag->tag
1515 * yarvtest/test_jump.rb : add tests for above
1517 * eval_jump.h : use local variable
1520 2006-02-20(Mon) 15:13:24 +0900 Koichi Sasada <ko1@atdot.net>
1522 * benchmark/bm_vm3_thread_create_join.rb : added
1524 * test/yaml/test_yaml.rb : imported from Ruby CVS trunk HEAD
1527 2006-02-20(Mon) 14:49:46 +0900 Minero Aoki <aamine@loveruby.net>
1529 * lib/yaml.rb: imported from Ruby CVS trunk HEAD.
1536 2006-02-20(Mon) 13:58:03 +0900 Koichi Sasada <ko1@atdot.net>
1538 * compile.c : support block parameter which is NODE_ATTRASGN
1540 * yarvtest/test_block.rb : add tests for above
1542 * compile.c : fix NODE_DASGN_CURR level check
1544 * compile.c : fix "||=" (at firtst, check "defined? val")
1546 * compile.c : fix NODE_MATCH3 (permute receiver and argument)
1548 * yarvtest/test_bin.rb : add tests for above
1550 * eval.c : add rb_each()
1552 * test/ruby/test_signal.rb : increment a timeout value
1554 * thread.c, yarvcore.h : fix "join" flow
1556 * thread_pthread.h : ditto
1558 * thread_win32.h : ditto
1560 * yarvtest/test_thread.rb : add a test for above
1562 * vm.h, vm.c, vm_dump.c, insns.def : add FRAME_MAGIC_LAMBDA and
1563 support return from lambda (especially retrun from method defined
1566 * yarvtest/test_method.rb : add a test for above
1568 * yarvcore.c : remove unused functions
1571 2006-02-20(Mon) 11:22:31 +0900 Minero Aoki <aamine@loveruby.net>
1573 * test/ruby/test_eval.rb: now Object#funcall is defined.
1576 2006-02-20(Mon) 11:04:32 +0900 Minero Aoki <aamine@loveruby.net>
1578 * lib/irb/lc/ja/CVS: removed.
1581 2006-02-20(Mon) 10:55:59 +0900 Minero Aoki <aamine@loveruby.net>
1583 * lib/mutex_m.rb: imported from Ruby CVS trunk HEAD.
1585 * lib/observer.rb: ditto.
1589 * lib/monitor.rb: ditto (removing Thread.critical=).
1595 * lib/drb.rb: ditto.
1600 2006-02-20(Mon) 10:49:31 +0900 Minero Aoki <aamine@loveruby.net>
1602 * yarvcore.c (Init_yarvcore): fix typo (duo -> dup).
1605 2006-02-19(Sun) 01:27:08 +0900 Koichi Sasada <ko1@atdot.net>
1607 * vm.c : "return" from lambda{} break block
1609 * eval.c : Unsupport Proc as Binding
1611 * test/ruby/test_eval.rb : apply above changes
1613 * yarvcore.c : remove unused function yarv_yield_values()
1616 2006-02-18(Sat) 03:19:36 +0900 Koichi Sasada <ko1@atdot.net>
1618 * thread.c, insns.def : fix passing value when thread killed
1620 * yarvtest/test_thread.rb : add tests for above
1623 2006-02-19(Sun) 01:19:42 +0900 Minero Aoki <aamine@loveruby.net>
1625 * lib/thread.rb (SizedQueue): didn't work. This patch was
1626 contributed by yukimizake. [yarv-dev:916]
1629 2006-02-18(Sat) 03:19:36 +0900 Koichi Sasada <ko1@atdot.net>
1631 * thread.c, insns.def : fix passing value when thread killed
1633 * yarvtest/test_thread.rb : add tests for above
1636 2006-02-18(Sat) 02:40:18 +0900 Koichi Sasada <ko1@atdot.net>
1638 * insns.def, vm.c, vm_macro.def : change BMETHOD algorithm
1641 * yarvtest/test_class.rb : add a test for above
1644 2006-02-17(Fri) 23:59:51 +0900 Koichi Sasada <ko1@atdot.net>
1646 * vm.c, yarv.h : change th_invoke_proc() interface
1648 * eval_proc.c : ditto
1654 * yarvcore.c : ditto
1656 * vm_macro.def : ditto and fix NODE_BMETHOD call
1658 * vm.c : change name ("th_set_env()" to "push_frame()") and
1663 * eval.c : remove proc_jump_error()
1665 * benchmark/bm_app_answer.rb : added
1667 * vm_opts.h.base : add optimize option
1670 2006-02-17(Fri) 13:37:57 +0900 Koichi Sasada <ko1@atdot.net>
1672 * eval.c, ruby.h : add rb_errinfo()
1674 * eval_error.h (error_pos) : fix process order
1676 * bin/erb : imported from ruby 1.9
1684 * bin/testrb : ditto
1686 * ext/curses/.cvsignore : ditto
1688 * ext/curses/curses.c : ditto
1690 * ext/curses/depend : ditto
1692 * ext/curses/extconf.rb : ditto
1694 * ext/curses/hello.rb : ditto
1696 * ext/curses/mouse.rb : ditto
1698 * ext/curses/rain.rb : ditto
1700 * ext/curses/view.rb : ditto
1702 * ext/curses/view2.rb : ditto
1704 * ext/fcntl/.cvsignore : ditto
1706 * ext/fcntl/depend : ditto
1708 * ext/fcntl/extconf.rb : ditto
1710 * ext/fcntl/fcntl.c : ditto
1712 * ext/readline/README : ditto
1714 * ext/readline/README.ja : ditto
1716 * ext/readline/depend : ditto
1718 * ext/readline/extconf.rb : ditto
1720 * ext/readline/readline.c : ditto
1722 * ext/win32ole/.document : ditto
1724 * ext/zlib/doc/zlib.rd : ditto
1726 * ext/zlib/extconf.rb : ditto
1728 * ext/zlib/zlib.c : ditto
1730 * lib/cgi/.document : ditto
1732 * lib/cgi/session.rb : ditto
1734 * lib/cgi/session/pstore.rb : ditto
1736 * lib/shell/builtin-command.rb : ditto
1738 * lib/shell/command-processor.rb : ditto
1740 * lib/shell/error.rb : ditto
1742 * lib/shell/filter.rb : ditto
1744 * lib/shell/process-controller.rb : ditto
1746 * lib/shell/system-command.rb : ditto
1748 * lib/shell/version.rb : ditto
1750 * lib/xmlrpc/.document : ditto
1752 * lib/xmlrpc/README.rdoc : ditto
1754 * lib/xmlrpc/README.txt : ditto
1756 * lib/xmlrpc/base64.rb : ditto
1758 * lib/xmlrpc/client.rb : ditto
1760 * lib/xmlrpc/config.rb : ditto
1762 * lib/xmlrpc/create.rb : ditto
1764 * lib/xmlrpc/datetime.rb : ditto
1766 * lib/xmlrpc/httpserver.rb : ditto
1768 * lib/xmlrpc/marshal.rb : ditto
1770 * lib/xmlrpc/parser.rb : ditto
1772 * lib/xmlrpc/server.rb : ditto
1774 * lib/xmlrpc/utils.rb : ditto
1776 * rdoc/README : ditto
1778 * rdoc/code_objects.rb : ditto
1780 * rdoc/diagram.rb : ditto
1782 * rdoc/dot/dot.rb : ditto
1784 * rdoc/generators/chm_generator.rb : ditto
1786 * rdoc/generators/html_generator.rb : ditto
1788 * rdoc/generators/ri_generator.rb : ditto
1790 * rdoc/generators/template/chm/chm.rb : ditto
1792 * rdoc/generators/template/html/hefss.rb : ditto
1794 * rdoc/generators/template/html/html.rb : ditto
1796 * rdoc/generators/template/html/kilmer.rb : ditto
1798 * rdoc/generators/template/html/old_html.rb : ditto
1800 * rdoc/generators/template/html/one_page_html.rb : ditto
1802 * rdoc/generators/template/xml/rdf.rb : ditto
1804 * rdoc/generators/template/xml/xml.rb : ditto
1806 * rdoc/generators/xml_generator.rb : ditto
1808 * rdoc/markup/sample/rdoc2latex.rb : ditto
1810 * rdoc/markup/sample/sample.rb : ditto
1812 * rdoc/markup/simple_markup.rb : ditto
1814 * rdoc/markup/simple_markup/fragments.rb : ditto
1816 * rdoc/markup/simple_markup/inline.rb : ditto
1818 * rdoc/markup/simple_markup/lines.rb : ditto
1820 * rdoc/markup/simple_markup/preprocess.rb : ditto
1822 * rdoc/markup/simple_markup/to_flow.rb : ditto
1824 * rdoc/markup/simple_markup/to_html.rb : ditto
1826 * rdoc/markup/simple_markup/to_latex.rb : ditto
1828 * rdoc/markup/test/AllTests.rb : ditto
1830 * rdoc/markup/test/TestInline.rb : ditto
1832 * rdoc/markup/test/TestParse.rb : ditto
1834 * rdoc/options.rb : ditto
1836 * rdoc/parsers/parse_c.rb : ditto
1838 * rdoc/parsers/parse_f95.rb : ditto
1840 * rdoc/parsers/parse_rb.rb : ditto
1842 * rdoc/parsers/parse_simple.rb : ditto
1844 * rdoc/parsers/parserfactory.rb : ditto
1846 * rdoc/rdoc.rb : ditto
1848 * rdoc/ri/ri_cache.rb : ditto
1850 * rdoc/ri/ri_descriptions.rb : ditto
1852 * rdoc/ri/ri_display.rb : ditto
1854 * rdoc/ri/ri_driver.rb : ditto
1856 * rdoc/ri/ri_formatter.rb : ditto
1858 * rdoc/ri/ri_options.rb : ditto
1860 * rdoc/ri/ri_paths.rb : ditto
1862 * rdoc/ri/ri_reader.rb : ditto
1864 * rdoc/ri/ri_util.rb : ditto
1866 * rdoc/ri/ri_writer.rb : ditto
1868 * rdoc/template.rb : ditto
1870 * rdoc/tokenstream.rb : ditto
1872 * rdoc/usage.rb : ditto
1874 * test/xmlrpc/data/bug_bool.expected : ditto
1876 * test/xmlrpc/data/bug_bool.xml : ditto
1878 * test/xmlrpc/data/bug_cdata.expected : ditto
1880 * test/xmlrpc/data/bug_cdata.xml : ditto
1882 * test/xmlrpc/data/bug_covert.expected : ditto
1884 * test/xmlrpc/data/bug_covert.xml : ditto
1886 * test/xmlrpc/data/datetime_iso8601.xml : ditto
1888 * test/xmlrpc/data/fault.xml : ditto
1890 * test/xmlrpc/data/value.expected : ditto
1892 * test/xmlrpc/data/value.xml : ditto
1894 * test/xmlrpc/data/xml1.expected : ditto
1896 * test/xmlrpc/data/xml1.xml : ditto
1898 * test/xmlrpc/test_datetime.rb : ditto
1900 * test/xmlrpc/test_features.rb : ditto
1902 * test/xmlrpc/test_marshal.rb : ditto
1904 * test/xmlrpc/test_parser.rb : ditto
1906 * test/xmlrpc/test_webrick_server.rb : ditto
1908 * test/xmlrpc/webrick_testing.rb : ditto
1910 * test/zlib/test_zlib.rb : ditto
1913 2006-02-17(Fri) 09:41:35 +900 Yukihiro Matsumoto <matz@ruby-lang.org>
1915 * thread.c (sleep_timeval): sleep should always sleep for
1916 specified amount of time. [ruby-talk:180067]
1919 2006-02-17(Fri) 02:20:32 +0900 Koichi Sasada <ko1@atdot.net>
1921 * eval_safe.h, ruby.h : remove ruby_safe_level and add
1922 rb_safe_level() and rb_set_safe_level_force()
1924 * eval.c : use above functions
1926 * eval_jump.h : ditto
1928 * eval_load.c : ditto
1930 * eval_method.h : ditto
1932 * eval_proc.c : ditto
1934 * eval_thread.c : ditto
1940 * variable.c : ditto
1942 * ext/win32ole/win32ole.c : ditto
1944 * vm.c (th_invoke_proc) : save and restore safe level
1946 * yarvtest/test_proc.rb : add tests for above
1948 * thread.c : remove unused functions
1951 2006-02-17(Fri) 01:08:23 +0900 Koichi Sasada <ko1@atdot.net>
1953 * compile.c, insns.def : remove a setspecial second unused operand
1955 * eval_load.c : remove unused variable th
1957 * eval_proc.c, yarvcore.c : remove some functions from eval_proc.c
1958 and move to yarvcore.c
1960 * insns.def : fix to delete warnings
1962 * sample/test.rb : comment out Proc#clone tests
1964 * version.c : add constant RUBY_VM_DATE
1966 * vm.c : fix some functions
1969 2006-02-16(Thu) 22:58:27 +0900 Koichi Sasada <ko1@atdot.net>
1971 * insns.def, vm.c : use th_yield_setup_args at yield and Proc#call
1974 2006-02-16(Thu) 19:51:52 +0900 Koichi Sasada <ko1@atdot.net>
1976 * compile.c : fix analysis of block parameter
1978 * disasm.c : remove rb_bug() (temporarily)
1980 * insns.def, vm.c : fix passing block parameter
1982 * sample/test.rb : add "Proc = YARVCore::VM::Proc"
1984 * test/ruby/test_readpartial.rb : disable on mswin32
1986 * test/socket/test_tcp.rb : ditto
1988 * thread.c : fix syntax error (for non GCC)
1991 2006-02-15(Wed) 22:34:04 +0900 Koichi Sasada <ko1@atdot.net>
1993 * eval_method.h : move rb_clear_cache_by_id position
1995 * thread.c : fix Thread#kill
1997 * test/ruby/test_readpartial.rb : enable tests except cygwin version
1999 * test/ruby/test_signal.rb : ditto and enable timeout
2002 2006-02-15(Wed) 22:13:29 +0900 Minero Aoki <aamine@loveruby.net>
2004 * lib/runit: forgot to commit.
2007 2006-02-15(Wed) 22:12:25 +0900 Minero Aoki <aamine@loveruby.net>
2009 * lib/weakref.rb: do not use Thread.critical=.
2011 * lib/singleton.rb: ditto.
2013 * lib/timeout.rb: ditto.
2015 * lib/thread.rb: ditto.
2017 * test/inlinetest.rb: forgot to commit.
2020 2006-02-15(Wed) 21:34:17 +0900 Minero Aoki <aamine@loveruby.net>
2022 * test/test_pp.rb: imported from Ruby CVS trunk HEAD.
2024 * test/test_shellwords.rb: ditto.
2026 * test/test_set.rb: ditto.
2028 * test/test_time.rb: ditto.
2030 * test/test_ipaddr.rb: ditto.
2032 * test/test_prettyprint.rb: ditto.
2034 * test/test_tsort.rb: ditto.
2036 * test/strscan: ditto.
2038 * test/testunit: ditto.
2041 2006-02-15(Wed) 20:03:21 +0900 Koichi Sasada <ko1@atdot.net>
2043 * eval_method.h : duplicate NODE_METHOD at make an alias
2045 * yarvtest/test_method.rb : add a test for above
2048 2006-02-15(Wed) 19:48:59 +0900 Minero Aoki <aamine@loveruby.net>
2050 * test/rss: imported from Ruby CVS trunk HEAD.
2053 2006-02-15(Wed) 19:47:51 +0900 Koichi Sasada <ko1@atdot.net>
2055 * insns.def, compile.c, vm.c : remove methoddef, singletonmethoddef
2056 instructions and make new insn definemethod
2058 * yarvcore.c : set toplevel visibility to private
2061 2006-02-15(Wed) 17:39:16 +0900 Koichi Sasada <ko1@atdot.net>
2065 * eval_jump.h, vm.c : localjump_error() and jump_tag_but_local_jump()
2066 move to th_localjump_error and th_jump_tag_but_local_jump at vm.c
2070 * eval_load.c : ditto
2076 * vm.c (th_make_jump_tag_but_local_jump) : added
2078 * opt_insn_unif.def : fix indnet (revert change)
2080 * opt_operand.def : ditto
2082 * rb/insns2vm.rb : fix error message
2084 * thread.c : raise exception at join if illegal local jump
2087 2006-02-15(Wed) 14:21:45 +900 Yukihiro Matsumoto <matz@ruby-lang.org>
2089 * ChangeLog: add local variables line to support Emacs.
2091 * eval.c (rb_obj_instance_exec): add new method from 1.9.
2093 * eval.c (rb_mod_module_exec): ditto.
2095 * eval.c (yield_under_i): should not pass self as an argument to
2096 the block for instance_eval. [ruby-core:07364]
2098 * eval.c (rb_obj_instance_eval): should be no singleton classes for
2099 true, false, and nil. [ruby-dev:28186]
2102 2006-02-14(Tue) 19:30:20 +0900 Koichi Sasada <ko1@atdot.net>
2104 * array.c : fix indent
2106 * eval.c : fix block_given
2108 * gc.c : add STACK_START and use it as a substitute for
2111 * vm.c : fix to raise error if th_yield doesn't have block given
2113 * yarvcore.c : fix to skip iseq mark array at ObjectSpace.each_object
2116 2006-02-14(Tue) 18:15:03 +0900 Koichi Sasada <ko1@atdot.net>
2118 * configure.in : enable pthread by deafult
2120 * ascii.c : import ruby 1.9 HEAD
2136 * enumerator.c : ditto
2140 * ext/win32ole/tests/testWIN32OLE.rb : ditto
2142 * ext/win32ole/win32ole.c : ditto
2152 * lib/irb/init.rb : ditto
2154 * lib/rexml/document.rb : ditto
2166 * oniguruma.h : ditto
2186 * regerror.c : ditto
2192 * regparse.c : ditto
2194 * regparse.h : ditto
2212 * test/ruby/envutil.rb : ditto
2214 * test/ruby/test_struct.rb : ditto
2226 * win32/Makefile.sub : ditto
2228 * win32/win32.c : ditto
2231 2006-02-14(Tue) 16:40:01 +0900 Koichi Sasada <ko1@atdot.net>
2233 * yarvcore.c, eval_proc.c : fix rb_proc_arity
2235 * eval.c : declare funcall same as send (temporarily)
2237 * lib/thread.rb : added
2239 * test/pathname/test_pathname.rb : imported from ruby 1.9
2241 * test/scanf/data.txt : ditto
2243 * test/scanf/test_scanf.rb : ditto
2245 * test/scanf/test_scanfblocks.rb : ditto
2247 * test/scanf/test_scanfio.rb : ditto
2249 * test/socket/test_socket.rb : ditto
2251 * test/socket/test_tcp.rb : ditto
2253 * test/socket/test_udp.rb : ditto
2255 * test/socket/test_unix.rb : ditto
2257 * test/stringio/test_stringio.rb : ditto
2259 * test/uri/test_common.rb : ditto
2261 * test/uri/test_ftp.rb : ditto
2263 * test/uri/test_generic.rb : ditto
2265 * test/uri/test_http.rb : ditto
2267 * test/uri/test_ldap.rb : ditto
2269 * test/uri/test_mailto.rb : ditto
2272 2006-02-14(Tue) 15:59:28 +0900 Koichi Sasada <ko1@atdot.net>
2274 * thread.c : Change Thread.critical warnning message
2276 * lib/webrick.rb : imported from ruby 1.9
2278 * lib/webrick/accesslog.rb : ditto
2280 * lib/webrick/cgi.rb : ditto
2282 * lib/webrick/compat.rb : ditto
2284 * lib/webrick/config.rb : ditto
2286 * lib/webrick/cookie.rb : ditto
2288 * lib/webrick/htmlutils.rb : ditto
2290 * lib/webrick/httpauth.rb : ditto
2292 * lib/webrick/httpauth/authenticator.rb : ditto
2294 * lib/webrick/httpauth/basicauth.rb : ditto
2296 * lib/webrick/httpauth/digestauth.rb : ditto
2298 * lib/webrick/httpauth/htdigest.rb : ditto
2300 * lib/webrick/httpauth/htgroup.rb : ditto
2302 * lib/webrick/httpauth/htpasswd.rb : ditto
2304 * lib/webrick/httpauth/userdb.rb : ditto
2306 * lib/webrick/httpproxy.rb : ditto
2308 * lib/webrick/httprequest.rb : ditto
2310 * lib/webrick/httpresponse.rb : ditto
2312 * lib/webrick/https.rb : ditto
2314 * lib/webrick/httpserver.rb : ditto
2316 * lib/webrick/httpservlet.rb : ditto
2318 * lib/webrick/httpservlet/abstract.rb : ditto
2320 * lib/webrick/httpservlet/cgi_runner.rb : ditto
2322 * lib/webrick/httpservlet/cgihandler.rb : ditto
2324 * lib/webrick/httpservlet/erbhandler.rb : ditto
2326 * lib/webrick/httpservlet/filehandler.rb : ditto
2328 * lib/webrick/httpservlet/prochandler.rb : ditto
2330 * lib/webrick/httpstatus.rb : ditto
2332 * lib/webrick/httputils.rb : ditto
2334 * lib/webrick/httpversion.rb : ditto
2336 * lib/webrick/log.rb : ditto
2338 * lib/webrick/server.rb : ditto
2340 * lib/webrick/ssl.rb : ditto
2342 * lib/webrick/utils.rb : ditto
2344 * lib/webrick/version.rb : ditto
2347 2006-02-14(Tue) 14:55:51 +0900 Koichi Sasada <ko1@atdot.net>
2349 * compile.c, insns.def : support "defined?($1)", ...
2351 * yarvtest/test_syntax.rb : add a test for above
2353 * rb/makedocs.rb : fix template directory path
2355 * vm.c : fix to handle break from proc
2358 2006-02-14(Tue) 12:42:59 +0900 Koichi Sasada <ko1@atdot.net>
2360 * eval.c : fix rb_iterate hook
2362 * yarvtest/test_block.rb : add a tests for above
2364 * vm.c : remove unused comment
2367 2006-02-14(Tue) 12:01:06 +0900 Koichi Sasada <ko1@atdot.net>
2369 * eval.c : fix to check passed block at block_given_p
2371 * eval_proc.c : fix to pass block at Method#call
2373 * runruby.rb : fix to apply ruby
2375 * test/runner.rb : GC.stress (comment out)
2380 2006-02-14(Tue) 08:04:33 +0900 Minero Aoki <aamine@loveruby.net>
2382 * lib/tempfile.rb: use Mutex instead of Thread.critical.
2384 * lib/rss/dublincore.rb: |x,| -> |x,_| to avoid YARV bug (tmp).
2386 * lib/rexml: imported from ruby CVS trunk HEAD.
2388 * test/digest: ditto.
2390 * test/fileutils: ditto.
2392 * test/ostruct: ditto.
2396 * test/optparse: ditto.
2398 * test/ruby/test_signal.rb: turn off a test to avoid unknown error
2402 2006-02-14(Tue) 07:52:03 +0900 Minero Aoki <aamine@loveruby.net>
2404 * test/digest: imported from ruby CVS trunk HEAD.
2406 * test/fileutils: ditto.
2408 * test/ostruct: ditto.
2412 * test/optparse: ditto.
2415 2006-02-14(Tue) 06:26:21 +0900 Koichi Sasada <ko1@atdot.net>
2417 * compile.c, parse.y : support BEGIN{} (remove local scope)
2419 * test/ruby/beginmainend.rb : fix to apply YARV's specification
2421 * test/ruby/test_beginendblock.rb : enable BEGIN{} test
2423 * signal.c : exit at double segv
2425 * insns.def (preexe) : remove instruction "preexe"
2428 2006-02-14(Tue) 05:53:56 +0900 Minero Aoki <aamine@loveruby.net>
2430 * eval.c (ruby_cleanup): th->errinfo contains a NODE while
2431 break'ing, check it before refering klass.
2434 2006-02-14(Tue) 05:45:07 +0900 Koichi Sasada <ko1@atdot.net>
2436 * insns.def : fix stack calc of send
2438 * sample/test.rb : remove SEGV causing code
2441 2006-02-14(Tue) 02:24:21 +0900 Minero Aoki <aamine@loveruby.net>
2443 * test/ruby/test_module.rb: list order is not a matter.
2445 * test/csv: imported from ruby CVS trunk HEAD.
2448 2006-02-14(Tue) 02:06:25 +0900 Minero Aoki <aamine@loveruby.net>
2450 * test/ruby/test_beginendblock.rb: unlock tests.
2452 * test/ruby/beginmainend.rb: new file (imported from ruby CVS
2455 * test/ruby/endblockwarn.rb: new file (imported from ruby CVS
2458 * test/ruby/test_file.rb: new file (imported from ruby CVS trunk
2462 2006-02-14(Tue) 01:42:11 +0900 Koichi Sasada <ko1@atdot.net>
2464 * error.c : fix include file positon
2466 * test/ruby/test_signal.rb : skip test_exit_action on cygwin
2469 2006-02-14(Tue) 01:36:57 +0900 Minero Aoki <aamine@loveruby.net>
2471 * test/ruby/test_class.rb: new file (imported from rubicon).
2474 2006-02-14(Tue) 01:32:23 +0900 Minero Aoki <aamine@loveruby.net>
2476 * test/ruby/test_module.rb: ignore PP mixins.
2479 2006-02-14(Tue) 01:24:56 +0900 Minero Aoki <aamine@loveruby.net>
2481 * test/ruby/test_lambda.rb: removed (->(){...} syntax is
2485 2006-02-14(Tue) 01:20:54 +0900 Minero Aoki <aamine@loveruby.net>
2487 * test/ruby/test_module.rb: import many tests from rubicon.
2490 2006-02-14(Tue) 01:06:57 +0900 Koichi Sasada <ko1@atdot.net>
2492 * compile.c : fix to avoid stack consistency error
2494 * yarvtest/test_exception.rb : add a test for above
2497 2006-02-14(Tue) 00:42:47 +0900 Koichi Sasada <ko1@atdot.net>
2499 * yarvcore.h, vm_macro.def : rename VM_CALL_SUPER to VM_CALL_SUPER_BIT
2501 * insns.def (send) : set a flag of super as fcall
2503 * yarvtest/test_class.rb : add a test for above
2506 2006-02-14(Tue) 00:31:24 +0900 Minero Aoki <aamine@loveruby.net>
2508 * test/ruby/test_eval.rb: fix typo.
2510 * test/ruby/test_signal.rb: unlock tests.
2513 2006-02-13(Mon) 23:53:27 +0900 Koichi Sasada <ko1@atdot.net>
2515 * insns.def, vm_macro.def : fix NODE_ZSUPER dispatch and
2516 fix error message when super without suitable method ([yarv-dev:846])
2518 * yarvcore.h : add VM_CALL_SUPER definition
2520 * yarvtest/test_method.rb : add a test of Module#private_class_method
2523 2006-02-13(Mon) 22:49:42 +0900 Koichi Sasada <ko1@atdot.net>
2525 * insns.def : traverse all iseq to find super method ([yarv-dev:859])
2527 * yarvtest/test_class.rb : add a test for above
2529 * yarvcore.c : add clear iseq->defined_method_id
2531 * signal.c : fix to prohibit double segv handler kicked
2534 2006-02-13(Mon) 22:09:12 +0900 Koichi Sasada <ko1@atdot.net>
2536 * compile.c : support NODE_DECL, NODE_CLASS with NODE_CLON3 prefix
2538 * yarvtest/test_class.rb : add tests for above
2541 2006-02-13(Mon) 21:20:57 +0900 Koichi Sasada <ko1@atdot.net>
2543 * compile.c : fix indent
2545 * compile.c : fix to prohibit "redo" from eval expression
2548 2006-02-13(Mon) 20:36:06 +0900 Koichi Sasada <ko1@atdot.net>
2550 * vm.c : fix constant search bug ([yarv-dev:788])
2552 * yarvtest/test_class.rb : add a test of [yarv-dev:788]
2555 2006-02-13(Mon) 18:09:28 +0900 Koichi Sasada <ko1@atdot.net>
2557 * test/ruby/test_clone.rb : enable tests with Class#clone
2559 * test/ruby/test_marshal.rb : ditto
2562 2006-02-13(Mon) 17:42:37 +0900 Koichi Sasada <ko1@atdot.net>
2564 * class.c : support Class#clone
2566 * compile.c, insns.def : remove popcref
2568 * yarvcore.h, vm.c, insns.def : remove yarv_thread_t#cref_stack
2570 * eval.c, eval_intern.h, eval_load.c : ditto
2572 * yarvtest/test_class.rb : add tests for singleton class
2574 * gc.c : remove "FRAME *" unused variable
2576 * insnhelper.h : fix COPY_CREF
2578 * rb/mklog.rb : add default message
2580 * vm_macro.def : support NODE_ZSUPER as method type
2583 2006-02-13(Mon) 00:11:17 +0900 Koichi Sasada <ko1@atdot.net>
2585 * blockinlining.c : refoctoring with CFLAGS+=-Wunused
2589 * eval_intern.h : ditto
2591 * eval_load.c : ditto
2593 * eval_method.h : ditto
2595 * eval_proc.c : ditto
2597 * eval_thread.c : ditto
2608 2006-02-13(Mon) 02:32:34 +0900 Minero Aoki <aamine@loveruby.net>
2610 * test/ruby/test_const.rb: show better message.
2612 * test/ruby/test_eval.rb: ditto.
2614 * test/ruby/test_module.rb: new file.
2617 2006-02-12(Sun) 22:22:35 +0900 Koichi Sasada <ko1@atdot.net>
2619 * array.c : revert last commit
2639 * enumerator.c : ditto
2671 * oniguruma.h : ditto
2683 * rb/mklog.rb : ditto
2693 * regerror.c : ditto
2701 * regparse.c : ditto
2703 * regparse.h : ditto
2735 * variable.c : ditto
2740 2006-02-12(Sun) 21:33:10 +0900 Koichi Sasada <ko1@atdot.net>
2742 * array.c : fix to ruby's indent
2748 * blockinlining.c : ditto
2750 * call_cfunc.h : ditto
2776 * enumerator.c : ditto
2784 * eval_error.h : ditto
2786 * eval_intern.h : ditto
2788 * eval_jump.h : ditto
2790 * eval_load.c : ditto
2792 * eval_method.h : ditto
2794 * eval_proc.c : ditto
2796 * eval_safe.h : ditto
2798 * eval_thread.c : ditto
2806 * insnhelper.h : ditto
2830 * oniguruma.h : ditto
2832 * opt_insn_unif.def : ditto
2834 * opt_operand.def : ditto
2856 * regerror.c : ditto
2864 * regparse.c : ditto
2866 * regparse.h : ditto
2894 * thread_pthread.h : ditto
2896 * thread_win32.h : ditto
2906 * variable.c : ditto
2916 * vm_evalbody.h : ditto
2918 * vm_macro.def : ditto
2922 * yarv_version.h : ditto
2924 * yarvcore.c : ditto
2926 * yarvcore.h : ditto
2929 2006-02-12(Sun) 15:53:21 +0900 Koichi Sasada <ko1@atdot.net>
2931 * lib/abbrev.rb : added
2933 * lib/base64.rb : ditto
2935 * lib/cgi-lib.rb : ditto
2937 * lib/csv.rb : ditto
2939 * lib/date2.rb : ditto
2941 * lib/eregex.rb : ditto
2943 * lib/ipaddr.rb : ditto
2945 * lib/irb.rb : ditto
2947 * lib/irb/cmd/chws.rb : ditto
2949 * lib/irb/cmd/fork.rb : ditto
2951 * lib/irb/cmd/help.rb : ditto
2953 * lib/irb/cmd/load.rb : ditto
2955 * lib/irb/cmd/nop.rb : ditto
2957 * lib/irb/cmd/pushws.rb : ditto
2959 * lib/irb/cmd/subirb.rb : ditto
2961 * lib/irb/completion.rb : ditto
2963 * lib/irb/context.rb : ditto
2965 * lib/irb/ext/change-ws.rb : ditto
2967 * lib/irb/ext/history.rb : ditto
2969 * lib/irb/ext/loader.rb : ditto
2971 * lib/irb/ext/math-mode.rb : ditto
2973 * lib/irb/ext/multi-irb.rb : ditto
2975 * lib/irb/ext/save-history.rb : ditto
2977 * lib/irb/ext/tracer.rb : ditto
2979 * lib/irb/ext/use-loader.rb : ditto
2981 * lib/irb/ext/workspaces.rb : ditto
2983 * lib/irb/extend-command.rb : ditto
2985 * lib/irb/frame.rb : ditto
2987 * lib/irb/help.rb : ditto
2989 * lib/irb/init.rb : ditto
2991 * lib/irb/input-method.rb : ditto
2993 * lib/irb/lc/error.rb : ditto
2995 * lib/irb/lc/help-message : ditto
2997 * lib/irb/lc/ja/CVS/Entries : ditto
2999 * lib/irb/lc/ja/CVS/Repository : ditto
3001 * lib/irb/lc/ja/CVS/Root : ditto
3003 * lib/irb/lc/ja/error.rb : ditto
3005 * lib/irb/lc/ja/help-message : ditto
3007 * lib/irb/locale.rb : ditto
3009 * lib/irb/notifier.rb : ditto
3011 * lib/irb/output-method.rb : ditto
3013 * lib/irb/ruby-lex.rb : ditto
3015 * lib/irb/ruby-token.rb : ditto
3017 * lib/irb/slex.rb : ditto
3019 * lib/irb/version.rb : ditto
3021 * lib/irb/workspace.rb : ditto
3023 * lib/irb/ws-for-case-2.rb : ditto
3025 * lib/irb/xmp.rb : ditto
3027 * lib/jcode.rb : ditto
3029 * lib/logger.rb : ditto
3031 * lib/mailread.rb : ditto
3033 * lib/mathn.rb : ditto
3035 * lib/parsedate.rb : ditto
3037 * lib/pathname.rb : ditto
3039 * lib/ping.rb : ditto
3041 * lib/pstore.rb : ditto
3043 * lib/resolv-replace.rb : ditto
3045 * lib/resolv.rb : ditto
3047 * lib/rss.rb : ditto
3049 * lib/rss/0.9.rb : ditto
3051 * lib/rss/1.0.rb : ditto
3053 * lib/rss/2.0.rb : ditto
3055 * lib/rss/content.rb : ditto
3057 * lib/rss/converter.rb : ditto
3059 * lib/rss/dublincore.rb : ditto
3061 * lib/rss/image.rb : ditto
3063 * lib/rss/maker.rb : ditto
3065 * lib/rss/maker/0.9.rb : ditto
3067 * lib/rss/maker/1.0.rb : ditto
3069 * lib/rss/maker/2.0.rb : ditto
3071 * lib/rss/maker/base.rb : ditto
3073 * lib/rss/maker/content.rb : ditto
3075 * lib/rss/maker/dublincore.rb : ditto
3077 * lib/rss/maker/image.rb : ditto
3079 * lib/rss/maker/syndication.rb : ditto
3081 * lib/rss/maker/taxonomy.rb : ditto
3083 * lib/rss/maker/trackback.rb : ditto
3085 * lib/rss/parser.rb : ditto
3087 * lib/rss/rexmlparser.rb : ditto
3089 * lib/rss/rss.rb : ditto
3091 * lib/rss/syndication.rb : ditto
3093 * lib/rss/taxonomy.rb : ditto
3095 * lib/rss/trackback.rb : ditto
3097 * lib/rss/utils.rb : ditto
3099 * lib/rss/xml-stylesheet.rb : ditto
3101 * lib/rss/xmlparser.rb : ditto
3103 * lib/rss/xmlscanner.rb : ditto
3105 * lib/rubyunit.rb : ditto
3107 * lib/scanf.rb : ditto
3109 * lib/shell.rb : ditto
3111 * lib/singleton.rb : ditto
3113 * lib/tsort.rb : ditto
3115 * lib/weakref.rb : ditto
3117 * eval_jump.c : removed
3120 2006-02-12(Sun) 15:39:09 +0900 Koichi Sasada <ko1@atdot.net>
3122 * parse.y : fix to remove including env.h
3124 * yarvtest/test_exception.rb : fix syntax (add 'end')
3127 2006-02-12(Sun) 15:14:44 +0900 Koichi Sasada <ko1@atdot.net>
3131 * common.mk : remove env.h dependency
3133 * compile.c, eval_intern.h : remove include env.h
3137 * ruby.h, gc.c, error.c : remove T_SCOPE, T_VARMAP
3139 * parse.y, eval.c : use rb_parse_in_eval() instead of ruby_in_eval
3141 * yarvcore.c, yarvcore.h : add a prase_in_eval member to yarv_thread_t
3143 * insns.def : add push value to throw instruction
3144 for stack consistency
3146 * yarvtest/test_exception.rb : add a test for above
3148 * test/ruby/test_gc.rb : fix typo
3151 2006-02-12(Sun) 05:05:02 +0900 Koichi Sasada <ko1@atdot.net>
3153 * eval.c, eval_intern.h, eval_load.c, eval_proc.c, node.h,
3154 insnhelper.h, insns.def, vm.c, yarvcore.c, yarvcore.h :
3155 change cref data structure and unify ruby_class and ruby_cbase
3156 and some refoctoring
3159 2006-02-11(Sat) 23:41:11 +0900 Koichi Sasada <ko1@atdot.net>
3161 * insns.def (methoddef) : fix method declaration in method
3163 * thread.c : Thread.critical to show warning (no effect)
3166 2006-02-11(Sat) 20:20:18 +0900 Koichi Sasada <ko1@atdot.net>
3168 * insns.def : fix [yarv-dev:831]
3170 * yarvtest/test_class.rb : add a test for above
3173 2006-02-11(Sat) 14:29:01 +0900 Koichi Sasada <ko1@atdot.net>
3175 * rb/mklog.rb : use svk
3177 * error.c : remove newline
3179 * eval.c (rb_block_call) : added
3181 * eval_thread.c : remove some unused functions, comments
3183 * thread.c : add comments (move from eval_thread.c) and support Mutex
3185 * thread.c (rb_thread_select) : supported
3187 * thread_pthread.h (native_mutex_trylock) : added (macro)
3189 * thread_win32.h (native_mutex_trylock) : added
3191 * yarvcore.c : remove unused code
3193 * array.c : import ruby 1.9
3201 * enumerator.c : ditto
3203 * ext/digest/digest.c : ditto
3205 * ext/digest/digest.h : ditto
3207 * ext/digest/sha2/sha2.c : ditto
3209 * ext/etc/etc.c : ditto
3211 * ext/win32ole/win32ole.c : ditto
3223 * missing/flock.c : ditto
3225 * missing/isinf.c : ditto
3227 * missing/vsnprintf.c : ditto
3229 * lib/cgi.rb : ditto
3231 * lib/complex.rb : ditto
3233 * lib/delegate.rb : ditto
3235 * lib/erb.rb : ditto
3237 * lib/fileutils.rb : ditto
3239 * lib/matrix.rb : ditto
3241 * lib/mkmf.rb : ditto
3243 * lib/optparse.rb : ditto
3245 * lib/ostruct.rb : ditto
3249 * lib/timeout.rb : ditto
3251 * lib/tmpdir.rb : ditto
3253 * lib/test/unit/autorunner.rb : ditto
3263 * sample/test.rb : ditto
3269 * test/ruby/test_whileuntil.rb : ditto
3271 * test/runner.rb : ditto
3275 * lib/net/.document : added
3277 * lib/net/ftp.rb : ditto
3279 * lib/net/http.rb : ditto
3281 * lib/net/https.rb : ditto
3283 * lib/net/imap.rb : ditto
3285 * lib/net/pop.rb : ditto
3287 * lib/net/protocol.rb : ditto
3289 * lib/net/smtp.rb : ditto
3291 * lib/net/telnet.rb : ditto
3293 * lib/open-uri.rb : ditto
3296 2006-02-10(Fri) 08:07:34 +0900 Koichi Sasada <ko1@atdot.net>
3298 * compile.c, insns.def, yarvcore.h : support defined?(private_method) and
3299 defined?(protected_method) (separate DEFINE_METHOD / DEFINE_FUNC)
3301 * yarvtest/test_syntax.rb : add a test for above
3303 * compile.c (iseq_compile_each) : fix NODE_RETURN bug
3304 (double ensure invoke)
3306 * yarvtest/test_flow.rb : add a test for above
3308 * eval.c (get_errinfo) : fix to search $!
3310 * yarvtest/test_exception.rb : add tests for above
3312 * eval_safe.h : support $SAFE
3314 * ext/socket/socket.c : import ruby 1.9
3316 * gc.c (gc_mark_children) : fix making T_VALUE
3318 * test/ruby/test_gc.rb : use GC.stress
3320 * signal.c (sighandler) : send interrupt signal if thread blocked
3322 * test/ruby/test_proc.rb : remove assert false
3324 * test/ruby/test_readpartial.rb : change fail message
3326 * test/ruby/test_signal.rb : remove assert false
3328 * thread.c (thread_start_func_2) : set local_lfp/local_svar
3331 * thread_pthread.h : export native_thread_interrupt
3333 * thread_win32.h : export native_thread_interrupt
3335 * version.h : import ruby 1.9
3337 * vm.c (lfp_svar), yarvcore.h : fix to use Thread local svar
3339 * yarvtest/test_thread.rb : add a test for above
3341 * win32/Makefile.sub : import ruby 1.9
3343 * win32/dir.h : ditto
3345 * win32/setup.mak : ditto
3347 * win32/win32.c : ditto
3349 * yarvtest/yarvtest.rb : fix to remove using ARGV
3352 2006-02-10(Fri) 01:04:58 +0900 Yukihiro Matsumoto <matz@ruby-lang.org>
3354 * gc.c (rb_gc_call_finalizer_at_exit): turn on during_gc while
3355 invoking finalizers.
3357 * gc.c (rb_gc_finalize_deferred): ditto.
3360 2006-02-08(Wed) 23:17:44 +0900 Minero Aoki <aamine@loveruby.net>
3362 * test/ruby/test_proc.rb: method names were wrongly duplicated.
3365 2006-02-08(Wed) 21:30:01 +0900 Minero Aoki <aamine@loveruby.net>
3367 * ext/nkf: added (imported from ruby CVS trunk HEAD).
3369 * ext/nkf/depend: new file (rev 1.5).
3371 * ext/nkf/extconf.rb: new file (rev 1.2).
3373 * ext/nkf/nkf.c: new file (rev 1.12).
3375 * ext/nkf/test.rb: new file (rev 1.7).
3377 * ext/nkf/nkf-utf8/nkf.c: new file (rev 1.17).
3379 * ext/nkf/nkf-utf8/config.h: new file (rev 1.4).
3381 * ext/nkf/nkf-utf8/utf8tbl.c: new file (rev 1.6).
3383 * ext/nkf/lib/kconv.rb: new file (rev 1.13).
3385 * test/nkf: added (imported from ruby CVS trunk HEAD).
3387 * test/nkf/test_kconv.rb: new file (rev 1.1).
3389 * test/nkf/test_nkf.rb: new file (rev 1.1).
3392 2006-02-08(Wed) 21:07:36 +0900 Minero Aoki <aamine@loveruby.net>
3394 * lib/find.rb: new file (imported from ruby CVS trunk HEAD,
3398 2006-02-07(Tue) 17:58:18 +0900 Koichi Sasada <ko1@atdot.net>
3400 * compile.c, insns.def : support BEGIN{} and add preexe instruction
3402 * insns.def : fix getspecial/setspecial instructions
3403 to catch up svar change
3405 * test/ruby/test_system.rb : remove stopper
3407 * thread.c (rb_thread_fd_writable) : add a debug output
3409 * thread.c (rb_thread_wait_fd) : add a debug output
3411 * vm.c (lfp_svar) : refactoring and fix some problems
3413 * vm_dump.c (yarv_bug) : add branch
3415 * yarv.h : remove unused declarations
3417 * yarvcore.c (vm_free) : VM object should not free by GC
3420 2006-02-07(Tue) 14:42:25 +0900 Koichi Sasada <ko1@atdot.net>
3422 * eval.c, eval_load.c : remove rb_thread_start_1()
3424 * eval.c : fix some prototypes and indents
3426 * eval_thread.c, thread.c : move some functions
3427 from eval_thread.c to thread.c
3429 * signal.c (sighandler) : add line braek in error message
3431 * yarvcore.c, yarvcore.h, thread.c : support ThreadGroup
3433 * ruby.h, gc.c, vm.c : make new basic type RValue and T_VALUE.
3434 RValue includes three values in itself. RValue is used as
3438 2006-02-06(Mon) 23:51:41 +0900 Minero Aoki <aamine@loveruby.net>
3440 * test/ruby/test_hash.rb: import many tests from rubicon.
3443 2006-02-04(Sat) 18:36:41 +0900 Minero Aoki <aamine@loveruby.net>
3445 * test/ruby/test_array.rb: import many tests from rubicon.
3448 2006-02-04(Sat) 17:47:44 +0900 Minero Aoki <aamine@loveruby.net>
3450 * test/ruby/test_signal.rb (test_exit_action): lib/timeout.rb is
3451 not implemented yet.
3454 2006-02-04(Sat) 17:42:31 +0900 Minero Aoki <aamine@loveruby.net>
3456 * test/ruby/test_readpartial.rb: lib/timeout.rb is not implemented
3460 2006-02-04(Sat) 16:22:38 +0900 Minero Aoki <aamine@loveruby.net>
3462 * test/ruby/test_pipe.rb: remove useless require.
3464 * test/ruby/test_signal.rb: turn off the test case which causes
3465 segmentation fault (tmp).
3468 2006-02-04(Sat) 08:19:50 +0900 Koichi Sasada <ko1@atdot.net>
3470 * common.mk : add dependency to yarvcore.h on signal.o
3472 * compile.c (iseq_compile_each) : fix [yarv-dev:795] problem
3473 (prohibit "break", "next" jump from eval)
3475 * eval.c : fix indent
3477 * eval_thread.c, thread.c : remove some functions and move to thread.c
3479 * insns.def, vm.c : fix [yarv-dev:799] and [yarv-dev:800]
3481 * yarvtest/test_class.rb : add a test for above
3483 * test/ruby/test_gc.rb : remove GC.debug_flag control
3485 * test/ruby/test_readpartial.rb : disable
3487 * test/ruby/test_signal.rb : disable
3489 * thread.c : fix thread_debug() and many bugs
3491 * thread.c (yarv_thread_s_new) : move living_threads setting
3493 * thread.c (yarv_thread_join) : fix
3495 * thread_pthread.h : add type native_thread_data_t (dummy)
3496 and support interrupt blocking thread
3498 * thread_pthread.h (native_thread_apply_priority) : added
3500 * thread_win32.h : add type native_thread_data_t (dummy)
3501 and support interrupt blocking thread
3503 * yarvcore.h : use win32 thread system on cygwin and fix
3506 * yarvtest/test_thread.rb : added
3509 2006-02-03(Fri) 00:08:09 +0900 Minero Aoki <aamine@loveruby.net>
3511 * test/ruby/test_string.rb: import many tests from rubicon.
3514 2006-02-02(Thu) 23:20:13 +0900 Minero Aoki <aamine@loveruby.net>
3516 * test/ruby/envutil.rb: new file (imported from ruby trunk HEAD).
3518 * test/ruby/marshaltestlib.rb: ditto.
3520 * test/ruby/test_array.rb: ditto.
3522 * test/ruby/test_beginendblock.rb: ditto.
3524 * test/ruby/test_clone.rb: ditto.
3526 * test/ruby/test_dir.rb: ditto.
3528 * test/ruby/test_env.rb: ditto.
3530 * test/ruby/test_file.rb: ditto.
3532 * test/ruby/test_float.rb: ditto.
3534 * test/ruby/test_fnmatch.rb: ditto.
3536 * test/ruby/test_hash.rb: ditto.
3538 * test/ruby/test_io.rb: ditto.
3540 * test/ruby/test_marshal.rb: ditto.
3542 * test/ruby/test_math.rb: ditto.
3544 * test/ruby/test_pack.rb: ditto.
3546 * test/ruby/test_path.rb: ditto.
3548 * test/ruby/test_pipe.rb: ditto.
3550 * test/ruby/test_rand.rb: ditto.
3552 * test/ruby/test_range.rb: ditto.
3554 * test/ruby/test_readpartial.rb: ditto.
3556 * test/ruby/test_regexp.rb: ditto.
3558 * test/ruby/test_settracefunc.rb: ditto.
3560 * test/ruby/test_signal.rb: ditto.
3562 * test/ruby/test_sprintf.rb: ditto.
3564 * test/ruby/test_string.rb: ditto.
3566 * test/ruby/test_stringchar.rb: ditto.
3568 * test/ruby/test_struct.rb: ditto.
3570 * test/ruby/test_symbol.rb: ditto.
3572 * test/ruby/test_system.rb: ditto.
3574 * test/ruby/test_time.rb: ditto.
3576 * test/ruby/ut_eof.rb: ditto.
3579 2006-02-02(Thu) 22:53:44 +0900 Minero Aoki <aamine@loveruby.net>
3581 * test/ruby/test_proc.rb: test [yarv-dev:777].
3584 2006-02-01(Wed) 03:51:39 +0900 Koichi Sasada <ko1@atdot.net>
3586 * gc.c : add GC.debug_flag= method
3588 * insns.def : support method definition in method
3590 * yarvtest/test_method.rb : add tests for above
3593 2006-01-29(Sun) 11:40:26 +0900 Koichi Sasada <ko1@atdot.net>
3595 * eval_proc.c (proc_alloc) : fix [yarv-dev:777]
3597 * yarvtest/test_proc.rb : add a test for above
3599 * insns.def : fix [yarv-dev:782] and add YARV_CHECK_INTS()
3601 * yarvtest/test_class.rb : add a test for above
3603 * thread_win32.h : fix [yarv-dev-en:23]
3605 * vm.c (th_call0) : add YARV_CHECK_INTS()
3608 2006-01-09(Mon) 11:56:34 +0900 Minero Aoki <aamine@loveruby.net>
3610 * yarvcore.h: add prototype (remove warning).
3612 * vm.c (th_invoke_proc): make save variables volatile.
3614 * eval.c (eval): initialize local variables (remove warnings).
3616 * eval_thread.c (rb_exec_recursive): ditto.
3618 * yarvcore.c (thread_mark): ditto.
3620 * vm.c (th_invoke_proc): ditto.
3622 * eval.c: remove useless prototypes.
3625 2006-01-09(Mon) 10:25:12 +0900 Minero Aoki <aamine@loveruby.net>
3627 * eval_thread.c: rb_thread_join is required to build ruby on
3630 * compile.c: unify coding style.
3632 * yarvcore.c: ditto.
3635 2006-01-06(Fri) 09:21:34 +0900 Minero Aoki <aamine@loveruby.net>
3637 * vm.c: coding style change only.
3640 2006-01-04(Wed) 14:12:47 +0900 Koichi Sasada <ko1@atdot.net>
3642 * eval.c (ruby_init), eval_intern.h : use POP_TAG_INIT() at bootstrap
3644 * eval_thread.c : remove unused functions and comments
3646 * intern.h : expose rb_make_exception()
3648 * signal.c : support signal
3650 * thread.c (yarv_thread_execute_interrupts) : added
3652 * thread_pthread.h (thread_timer) : set interrupt_flag of
3653 current runnning threads
3655 * vm.c (th_invoke_proc) : jump with JUMP_TAG() if some exception
3658 * yarv.h : add yarv_set_current_running_thread_raw() for bootstrap
3660 * yarvcore.c : add yarv_segv() and segv() method for test
3662 * yarvcore.c (Init_yarvcore) : set yarv_thread_t#running_thread
3664 * yarvcore.h : fix yarv_thread_t members
3667 2006-01-03(Tue) 22:25:04 +0900 Koichi Sasada <ko1@atdot.net>
3669 * disasm.c (insn_operand_intern) : fix to add child iseq
3671 * eval.c, gc.c : remove obsolete static variables (ruby_scope,
3672 ruby_dyna_vars, ruby_frame)
3674 * eval.c (rb_mod_s_constants) : use ruby_cref()
3676 * eval.c (eval) : use th_restore_klass()
3678 * eval_proc.c (rb_f_binding) : use th_store_klass()
3680 * insns.def (concatarray) : fix insn ([expr, *nil] => [expr])
3682 * vm.c (th_set_env), insnhelper.h : remove macro
3684 * vm.c (eval_get_cvar_base) : use get_cref
3686 * vm.c (th_make_proc) : use th_store_klass()
3688 * vm_macro.def (macro_eval_invoke_func) : fix option args size
3690 * vm_macro.def (macro_eval_invoke_func) : raise stack overflow error
3692 * yarvcore.h : add yarv_stored_klass_t type
3694 * yarvcore.c : fix mark functions around yarv_stored_klass_t
3697 2006-01-01(Sun) 05:14:26 +0900 Minero Aoki <aamine@loveruby.net>
3699 * lib/benchmark.rb: new file (imported from original ruby, rev
3703 2006-01-01(Sun) 03:51:10 +0900 Minero Aoki <aamine@loveruby.net>
3705 * yarvcore.c: add prototype.
3707 * re.c: remove warning: long -> unsigned long.
3709 * debug.c: adjust coding style.
3714 2006-01-01(Sun) 03:43:33 +0900 Minero Aoki <aamine@loveruby.net>
3716 * variable.c: add prototype.
3720 * eval_load.c: ditto.
3723 2006-01-01(Sun) 02:41:21 +0900 Koichi Sasada <ko1@atdot.net>
3725 * common.mk : add address analyse to vtune rule
3727 * rb/vtlh.rb : added for above
3729 * rb/insns2vm.rb, template/vm.inc.tmpl : insert #line directive
3732 * vm_macro.def (macro_eval_invoke_cfunc) : fix indent
3734 * yarvtest/test_method.rb : fix indent, spacing
3735 and add a test for alias
3738 2005-12-31(Sat) 12:42:05 +0900 Koichi Sasada <ko1@atdot.net>
3740 * common.mk : add Intel VTune rule (make vtune)
3742 * eval.c, yarvcore.h : fix to remove yarv_thread_t#local_*
3744 * parse.y (top_local_init_gen) : fix a problem ([yarv-dev:765])
3746 * yarvtest/test_eval.rb : add a test for above
3748 * vm.c (thread_eval) :remove unused function
3750 * yarvcore.c (Init_yarvcore) : remove YARVCore::Thread::eval method
3752 * yarvcore.c (thread_eval) : remove unused function
3755 2005-12-31(Sat) 06:05:00 +0900 Koichi Sasada <ko1@atdot.net>
3757 * vm.c (eval_search_super_klass) : pass block to method missing
3759 * vm_macro.def (macro_eval_invoke_method) : ditto
3761 * yarvtest/test_method.rb : add a test for above
3764 2005-12-31(Sat) 03:11:14 +0900 Koichi Sasada <ko1@atdot.net>
3766 * eval.c (eval), eval_proc.c (rb_f_binding) : save klass, etc to
3767 binding and use it at eval
3769 * eval_intern.h : ditto
3771 * yarvtest/test_eval.rb : add tests for above
3773 * yarvcore.c (th_get_special_cref) : added
3775 * yarvcore.h : add a prototype of above
3777 * vm.c (th_get_cref) : refactoring
3779 * vm.c (eval_get_ev_const) : fix SEGV at A::B (A is not class/module)
3782 * yarvtest/test_bin.rb : add a test for above
3784 * rb/mklog.rb : use external diff command and show function name
3787 2005-12-30(Fri) 19:07:51 +0900 Koichi Sasada <ko1@atdot.net>
3789 * yarvcore.c, yarvcore.h, eval.c, eval_proc.c : support
3792 * yarvcore.c : support TOPLEVEL_BINDING
3794 * yarvtest/test_eval.rb : add tests for above
3797 2005-12-30(Fri) 13:12:28 +0900 Minero Aoki <aamine@loveruby.net>
3799 * test/ruby/test_eval.rb: more tests for
3800 module_eval/instance_eval.
3803 2005-12-30(Fri) 05:06:49 +0900 Koichi Sasada <ko1@atdot.net>
3805 * common.mk : add dependency (yarvcore.h) for gc.c
3807 * eval.c, eval_intern.h, eval_load.c, eval_method.h,
3808 insns.def, insnhelper.h, vm.c, yarvcore.c, yarvcore.h :
3809 re-write class reference
3811 * yarvtest/test_eval.rb : added
3813 * yarvtest/test_proc.rb :
3816 2005-12-29(Thu) 12:27:12 +0900 Koichi Sasada <ko1@atdot.net>
3818 * compile.c, yarvcore.h :
3819 remvoe needless yarv_iseq_t#rewind_frame_size
3822 2005-12-29(Thu) 11:17:58 +0900 Koichi Sasada <ko1@atdot.net>
3824 * common.mk : add dependency to test-all rule
3826 * eval.c (rb_sourceline), vm.c (th_get_sourceline) :
3827 fix to skip process if iseq is ifunc
3829 * test/ruby/test_lambda.rb : assert(fail, ...) instead of assert_fail
3831 * test/ruby/test_proc.rb : ditto
3833 * vm_dump.c : fix stack dump (iseq name)
3835 * vm_macro.def : store proc (block proc) to cfp#proc for GC mark
3837 * yarvcore.c : mark above on thread_mark
3839 * eval.c (exec_under) : replace block#self ([yarv-dev:751])
3842 2005-12-29(Thu) 01:56:46 +0900 Koichi Sasada <ko1@atdot.net>
3844 * vm.c : fix setting of Proc cref ([yarv-dev:741])
3846 * yarvcore.c : fix indent
3849 2005-12-29(Thu) 00:17:03 +0900 Koichi Sasada <ko1@atdot.net>
3851 * disasm.c : show (block) local variable simple (not as symbol)
3853 * gc.c : fix syntax error
3856 2005-12-28(Wed) 23:35:06 +0900 Koichi Sasada <ko1@atdot.net>
3858 * class.c (method_entry) : fixed for undefed method ([yarv-dev:743])
3860 * compile.c : fix errinfo dvar id (#$!)
3861 and fix NODE_ERRINFO compilation
3863 * eval_proc.c, yarvcore.c : support YARVCore::VM::Proc.new
3865 * insns.def : remove useless TODO comments
3867 * insns.def : fix to use strict array conversion on
3870 * insns.def : fix defined?(yield) ([yarv-dev:744])
3872 * yarvcore.h : change yarv_iseq_t layout
3875 2005-12-28(Wed) 16:49:55 +0900 Minero Aoki <aamine@loveruby.net>
3877 * test/ruby/test_eval.rb: add TODO comment.
3879 * test/ruby/test_iterator.rb: rename YARVCore::VM::Proc -> Proc
3882 * test/ruby/test_lambda.rb: use assert_fail.
3884 * test/ruby/test_proc.rb: ditto.
3887 2005-12-28(Wed) 16:28:35 +0900 Minero Aoki <aamine@loveruby.net>
3889 * test/ruby/test_clone.rb: removed (tmp).
3891 * test/ruby/test_eval.rb: define missing method Object#funcall
3894 * test/ruby/test_lambda.rb: turn off tests for "->".
3896 * test/ruby/test_proc.rb: turn off tests for |&b|.
3898 * test/ruby/test_proc.rb: turn off tests for $SAFE setter.
3901 2005-12-28(Wed) 15:31:46 +0900 Koichi Sasada <ko1@atdot.net>
3903 * compile.c : fix calculation of stack_max
3905 * eval.c (rb_iter) : fix block/retry handling
3907 * yarvtest/test_flow.rb : add tests for above
3909 * insns.def : fix block passing on super (super(&nil))
3911 * vm_macro.def, insns.def : fix convert method of object to array
3913 * yarvtest/test_method.rb : fix a test for above
3915 * vm.c : fix backtrace generate algorithm
3918 2005-12-28(Wed) 10:36:45 +0900 Koichi Sasada <ko1@atdot.net>
3920 * compile.c, compile.h : refactoring (remove self passing, etc)
3922 * disasm.c : support showing ID of method/dynamic local variables
3924 * rb/allload.rb : add verbose version (it's enable by $DEBUG)
3926 * template/insns.inc.tmpl, template/insns_info.inc.tmpl,
3927 template/minsns.inc.tmpl, template/opt_sc.inc.tmpl,
3928 template/optinsn.inc.tmpl, template/optunifs.inc.tmpl,
3929 template/vmtc.inc.tmpl : fix a comment
3931 * variable.c (mod_av_set) : fix to clear inline cache ([yarv-dev:720])
3933 * eval_method.h : fix to clear inline method cache
3935 * vm.c, rb/insns2vm.rb, template/insns_info.inc.tmpl, compile.c,
3936 insns.def, vm_evalbody.h, vm_macro.def :
3937 fix operands types (ulong -> num_t, ...)
3939 * vm_macro.def : fix to check SPECIAL_CONST_P() at splat array
3942 * yarvcore.c : fix to throw syntax error
3944 * yarvcore.h, eval.c, eval_error.h, eval_jump.h :
3945 add yarv_vm_t#exit_code to fix problem at cleanup ([yarv-dev:723])
3947 * insns.def : fix to invoke zsuper in method defined by define_method
3950 * yarvtest/test_class.rb : add tests for above
3952 * yarvtest/test_method.rb : fix comments
3955 2005-12-27(Tue) 01:52:07 +0900 Koichi Sasada <ko1@atdot.net>
3957 * array.c, intern.h, insns.def : expose rb_ary_replace and use it
3960 * eval.c : fix to use SCOPE_* to NOEX_*
3962 * eval_intern.h : remove SCOPE_*
3963 and fix SCOPE_TEST() and SCOPE_SET(f)
3965 * eval_load.c : save and store klass and visibility
3968 * eval_method.h : fix undefed method node ([yarv-dev-en:8])
3970 * eval_proc.c : fix define_method ([yarv-dev:704])
3972 * insnhelper.h, vm.h : remove GET_VM_STATE_VERSION(),
3973 INC_VM_STATE_VERSION() and move these to vm.h
3975 * insns.def : supportintg visibility
3977 * node.h : remove NOEX_RECV
3979 * variable.c, vm.c : add rb_vm_change_state() and use it in
3982 * vm.c, insns.def, yarvcore.h, yarvcore.c : add eval_push_cref(),
3983 eval_pop_cref() and th_cref_init to manage current visibility
3985 * yarv.h : add a prototype of rb_vm_change_state()
3987 * yarvcore.h, insns.def : add defined_method_id and support
3988 super in define_method scope
3990 * yarvtest/test_class.rb : add tests for above
3993 2005-12-26(Mon) 20:44:38 +0900 Minero Aoki <aamine@loveruby.net>
3995 * test/ruby/test_basicinstructions.rb: new file.
3998 2005-12-26(Mon) 08:40:02 +0900 Koichi Sasada <ko1@atdot.net>
4000 * vm.c (eval_get_ev_const) : fix to skip nil
4003 2005-12-26(Mon) 08:27:15 +0900 Koichi Sasada <ko1@atdot.net>
4005 * insnhelper.h : fix GET_CVAR_EV_KLASS [yarv-dev:703]
4008 2005-12-26(Mon) 07:51:01 +0900 Koichi Sasada <ko1@atdot.net>
4010 * compile.c : add emptstack insn for all NODE_RETURN
4011 and optimize it if it's not needed
4013 * yarvtest/test_flow.rb : add a test for above
4016 2005-12-26(Mon) 07:08:22 +0900 Koichi Sasada <ko1@atdot.net>
4018 * eval.c, gc.c : add "gc_debug_flag" to debug gc
4020 * insns.def : add emptstack
4022 * compile.c, rb/insns2vm.rb, template/insns_info.inc.tmpl :
4023 change interface of insn_stack_increase
4025 * compile.c : fix return from ensure in method [yarv-dev:702]
4027 * yarvtest/test_flow.rb : add tests for above
4030 2005-12-26(Mon) 02:15:02 +0900 Minero Aoki <aamine@loveruby.net>
4032 * test/ruby/test_alias.rb: do not use unimplemented defined?.
4035 2005-12-26(Mon) 02:00:11 +0900 Minero Aoki <aamine@loveruby.net>
4037 * test/runner.rb: new file.
4039 * test/ruby/test_alias.rb: new file.
4041 * test/ruby/test_clone.rb: new file.
4043 * test/ruby/test_eval.rb: new file.
4045 * test/ruby/test_iterator.rb: new file.
4047 * test/ruby/test_lambda.rb: new file.
4049 * test/ruby/test_proc.rb: new file.
4051 * test/ruby/test_super.rb: new file.
4053 * test/ruby/test_assignment.rb: new file.
4055 * test/ruby/test_bignum.rb: new file.
4057 * test/ruby/test_call.rb: new file.
4059 * test/ruby/test_case.rb: new file.
4061 * test/ruby/test_condition.rb: new file.
4063 * test/ruby/test_const.rb: new file.
4065 * test/ruby/test_defined.rb: new file.
4067 * test/ruby/test_exception.rb: new file.
4069 * test/ruby/test_gc.rb: new file.
4071 * test/ruby/test_ifunless.rb: new file.
4073 * test/ruby/test_method.rb: new file.
4075 * test/ruby/test_trace.rb: new file.
4077 * test/ruby/test_variable.rb: new file.
4079 * test/ruby/test_whileuntil.rb: new file.
4082 2005-12-25(Sun) 07:40:08 +0900 Koichi Sasada <ko1@atdot.net>
4084 * blockinlining.c, compile.c : fix block inlining
4086 * rb/insns2vm.rb : fix to support tracing stack depth
4087 with operands unification
4089 * vm_dump.c : fix to print Qundef on stack dump
4092 2005-12-25(Sun) 01:45:55 +0900 Koichi Sasada <ko1@atdot.net>
4094 * insns.def, compile.c, rb/insns2vm.rb, template/insns_info.inc.tmpl :
4095 trace stack depth at compile time
4096 and use it as cont_sp for exception handling
4098 * yarvtest/test_exception.rb : add tests for above
4100 * yarvtest/test_flow.rb : ditto
4105 2005-12-24(Sat) 19:34:04 +0900 Koichi Sasada <ko1@atdot.net>
4107 * compile.c, compile.h : fix ADD_CATCH_ENTRY and add LABEL#sp
4109 * eval_jump.h : fix catch to remove illegal error
4112 2005-12-24(Sat) 09:05:23 +0900 Koichi Sasada <ko1@atdot.net>
4114 * eval_method.h : change data structure for RClass#m_tbl
4116 * class.c, eval.c, eval_proc.c : fix for above changes
4118 * node.h, gc.c : change NODE_FBODY, NODE_METHOD members
4121 * insns.def : support private/protected visibility
4123 * vm_macro.def : ditto
4127 * thread.c : fix typo
4129 * thread_pthread.h : fix typo
4131 * thread_win32.h : fix typo
4133 * eval.c, yarvcore.h : add yarv_thread_t#method_missing_reason
4134 to pass method_missing reason and use it to build error message
4136 * compile.c : use ADD_CALL instead of ADD_SEND for
4137 NODE_X(D)STR, NODE_CONST (func)
4140 2005-12-22(Thu) 02:45:27 +0900 Koichi Sasada <ko1@atdot.net>
4142 * yarv_version.h, Changes : 0.3.3
4145 2005-12-20(Tue) 04:04:45 +0900 Koichi Sasada <ko1@atdot.net>
4147 * compile.c : fix self::Const access
4149 * yarvtest/test_bin.rb : add a test for above
4152 2005-12-20(Tue) 01:52:52 +0900 Koichi Sasada <ko1@atdot.net>
4154 * insns.def : fix to expand VALUES value
4156 * yarvtest/test_massign.rb : add a test for above
4159 2005-12-20(Tue) 01:32:35 +0900 Koichi Sasada <ko1@atdot.net>
4161 * insns.def, insnhelper.h : fix cvar in singleton method/class
4163 * yarvtest/test_bin.rb : add tests for above
4166 2005-12-20(Tue) 01:03:34 +0900 Koichi Sasada <ko1@atdot.net>
4168 * compile.c, yarvcore.h : support all defined?() syntax
4170 * compile.c : fix NODE_COLON2
4172 * yarvtest/test_bin.rb : add or fix tests for above
4174 * win32/* : update all
4177 2005-12-17(Sat) 10:46:08 +0900 Minero Aoki <aamine@loveruby.net>
4179 * vm_macro.def: fix printf type mismatch for LP64 system (again).
4181 * parse.y: introduce descriptive macro for special values of
4185 2005-12-17(Sat) 09:39:27 +0900 Minero Aoki <aamine@loveruby.net>
4187 * vm_macro.def (macro_eval_invoke_method): fix printf type mismatch
4191 2005-12-14(Wed) 03:49:40 +0900 Koichi Sasada <ko1@atdot.net>
4193 * compile.c : change rescue/ensure iseq name
4195 * eval.c, intern.h : fix a prototype
4197 * insns.def, yarvcore.h : add trace_function
4199 * vm.c : fix deadly bug (illegal pointer cast)
4201 * vm_dump.c : remove unused local variables
4203 * vm_macro.def : add parameter size check
4205 * yarvtest/test_bin.rb : comment out 2 assertions
4208 2005-12-13(Tue) 03:55:27 +0900 Koichi Sasada <ko1@atdot.net>
4210 * eval_proc.c : fix indent
4212 * insns.def : fix getspecial instruction to return nil
4215 * yarvtest/test_syntax.rb : add a test for above
4219 * template/*.tmpl : fix typo
4222 2005-12-13(Mon) 01:38:17 +0900 Minero Aoki <aamine@loveruby.net>
4224 * yarv.h: add prototypes.
4232 * thread_pthread.h: fix printf type mismatch for LP64 system
4235 * variable.c: ditto.
4255 * eval_thread.c: ditto.
4258 2005-12-11(Sun) 22:00:34 +0900 Koichi Sasada <ko1@atdot.net>
4260 * insns.def : call "inherited" method when a class is inherited
4262 * yarvcore.h : fix yarv_iseq_t field layout
4264 * common.mk : add dependence on yarvcore.h to eval*.o files
4266 * compile.c : fix NODE_POSTEXE logic
4268 * insnhelper.h : use GC_GUARDED_PTR_REF instead of magic number
4270 * eval_proc.c : fix indent
4272 * configure : re-autoconf
4275 2005-12-10(Sat) 03:57:20 +0900 Koichi Sasada <ko1@atdot.net>
4277 * common.mk : fix blockinlining.o build rule
4279 * insns.def : remove logic for zsuper
4281 * template/optinsn.inc.tmpl :
4283 * vm.c : remove thread_yield_light_prepare, thread_yield_light_invoke
4285 * compile.c : support NODE_ZSUPER with optargs, restarg
4287 * yarvtest/test_class.rb : add tests for above
4290 2005-12-09(Fri) 01:13:37 +0900 Koichi Sasada <ko1@atdot.net>
4292 * array.c, numeric.c, range.c : add prototype of
4293 block inlining function
4295 * blockinlining.c, vm_opts.h.base : add block inlining flag
4297 * common.mk, debug.h, debug.c : add debug_breakpoint() for gdb
4299 * compile.c : fix to use size_t on compile_data_alloc(),
4300 fix illegal cast, fix to set arg_simple at compiling block,
4302 * compile.c, vm.c : fix NODE_NEXT, NODE_BREAK logic
4304 * yarvtest/test_flow.rb : add a test for above
4306 * yarvcore.c, yarvcore.h, compile.c, eval.c : remove
4307 yarv_iseq_t#root_iseq and add yarv_iseq_t#local_iseq and fix
4308 to use this member field
4310 * eval_method.h : fix indent
4314 * insns.def, compile.c : remove "zsuper" instruction (use "super"
4315 instead). This is because NODE_ZSUPER represent with only "super"
4318 * yarvcore.c : add proc_arity
4321 2005-12-05(Mon) 03:58:30 +0900 Koichi Sasada <ko1@atdot.net>
4323 * array.c, blockinlining.c : support block inlining for Array#each
4325 * disasm.c : fix catch table format
4327 * insns.def : fix stack consistency error message
4329 * vm.c : fix to skip pushing value at "next"
4331 * yarvcore.h : move definision of
4332 "struct iseq_compile_data_ensure_node_stack" to compile.c
4334 * compile.c : fix ensure catch table creation
4336 * yarvtest/test_flow.rb : add tests for above
4339 2005-12-03(Sat) 22:27:08 +0900 Koichi Sasada <ko1@atdot.net>
4341 * blockinlining.c, compile.c, yarvcore.c, yarvcore.h,
4342 numeric.c, range.c : collect block inlining logic to blockinlining.c
4345 2005-12-03(Sat) 20:24:07 +0900 Koichi Sasada <ko1@atdot.net>
4347 * blockinlining.c, common.mk : add blockinlining.c
4349 * yarvcore.c, yarvcore.h, blockinlining.c, compile.c, compile.h,
4350 gc.c, node.h, numeric.c, range.c :
4351 support block inlining for Integer#times, Range#each
4353 * compile.c : fix to set block redo/next point at last,
4354 and fix NODE_OP_ASGN1
4356 * compile.c, vm.c : add specialized instruction "opt_le"
4358 * disasm.c : fix to show block, and to show catch type as string
4359 and change node_name logic
4361 * eval_thread.c : fix function type declaration
4363 * insns.def : add instruction "putundef", "opt_checkenv"
4364 to support block inlining and add stack check routine
4366 * lib/cgi.rb : add global variable $CGI_DONTINPUT
4368 * opt_operand.def : add some operand unification rules
4370 * rb/insns2vm.rb : fix operand unification logic for BLOCKISEQ
4372 * vm.c : fix exception handling routine (collect stack operations)
4374 * vm_macro.def : fix macro_eval_invoke_bmethod
4376 * yarvsubst.c : removed
4378 * yarvtest/test_syn.rb : rename to yarvtest/test_syntax.rb
4380 * yarvtest/yarvtest.rb : remove tempfile explicitly
4383 2005-11-30(Wed) 01:13:57 +0900 Koichi Sasada <ko1@atdot.net>
4385 * common.mk : add vm_opts.h rule
4387 * vm.c, insns.def : fix proc creation under class and block
4391 2005-11-29(Tue) 16:39:07 +0900 Koichi Sasada <ko1@atdot.net>
4393 * eval.c, eval_proc.c, vm.c, vm_macro.def :
4394 support define_method and invoke NODE_BMETHOD method
4397 2005-11-29(Tue) 13:18:06 +0900 Koichi Sasada <ko1@atdot.net>
4399 * compile.c : add iseq_add_mark_object, iseq_add_mark_object_compile_time
4400 and use it to mark objects on iseq
4402 * compile.h, compile.c : remove cast on NEW_CHILD_ISEQVAL, NEW_ISEQVAL
4405 * compile.c, disasm.c, insns.def, vm_macro.def, rb/insns2vm.rb :
4406 add BLOCKISEQ parameter type
4408 * gc.c : fix garbage_collect to return true if only allocate memory
4410 * vm.c : fix insertion order of proc/env
4412 * vm_evalbody.h : add typedef yarv_iseq_t *BLOCKISEQ
4414 * yarvcore.c, yarvcore.c : add idTimes
4416 * yarvcore.c : fix proc_mark, env_mark around iseq mark
4419 2005-11-28(Mon) 09:02:57 +0900 Koichi Sasada <ko1@atdot.net>
4421 * compile.c, insns.def, vm_evalbody.h : support super
4422 with splat argument and block (and zsuper with block)
4424 * yarvtest/test_class.rb : add tests for above
4426 * compile.c, yarvcore.h, yarvcore.c, insns.def, time.c, string.c :
4429 * eval_method.h : fix indent
4431 * eval_thread.c : apply cast to vanish a warning
4433 * lib/tempfile.rb, lib/tmpdir.rb : added
4435 * vm.c : eval_method_missing added
4437 * vm_macro.def : refactoring
4440 2005-11-21(Mon) 21:21:33 +0900 Koichi Sasada <ko1@atdot.net>
4442 * compile.c, compile.h, yarvcore.c : remove "iseqobj"
4443 variables and rename to "iseq"
4446 2005-11-21(Mon) 07:31:50 +0900 Koichi Sasada <ko1@atdot.net>
4448 * compile.c : fix block parameter error
4452 * lib/optparse* : added
4454 * benchmark/bm_so_sieve.rb : fix parameter
4458 2005-11-21(Mon) 03:47:28 +0900 Koichi Sasada <ko1@atdot.net>
4460 * compile.c : optimize condition in literal
4462 * thread_win32.h : fix win32 thread function prototype
4465 2005-11-20(Sun) 17:58:24 +0900 Koichi Sasada <ko1@atdot.net>
4467 * compile.c : fix NODE_AND/OR bug
4469 * eval.c : support rb_frame_this_func()
4472 2005-11-20(Sun) 12:32:31 +0900 Koichi Sasada <ko1@atdot.net>
4474 * compile.c, yarvcore.c, yarvcore.h : support NODE_OPT_N
4476 * compile.h : add macro ADD_CALL
4478 * debug.c : add debug_v() and change to use only printf
4483 * vm.c : fix make_proc_from_block
4486 2005-11-19(Sat) 14:55:17 +0900 Koichi Sasada <ko1@atdot.net>
4488 * import ruby 1.9.0 (2005-11-18)
4491 2005-11-19(Sat) 06:08:37 +0900 Koichi Sasada <ko1@atdot.net>
4496 2005-11-19(Sat) 05:48:50 +0900 Koichi Sasada <ko1@atdot.net>
4498 * compile.c : useless jump elimination (if/unless destination)
4500 * eval.c : rb_iter_break support,
4501 fix rb_iterate (clear errinfo if break)
4503 * eval_proc.c : support rb_node_arity (YARV_METHOD_NODE)
4505 * insns.def : change variable name
4507 * vm.c : fix th_invoke_yield and add th_iter_break()
4509 * vm_dump.c : fix yarv_bug()
4511 * yarvcore.c : fix proc_mark to check IFUNC node and add
4512 global ruby method SDR() for debug
4514 * yarvtest/test_syn.rb : add a test for all condition combination
4517 2005-11-15(Tue) 05:52:58 +0900 Koichi Sasada <ko1@atdot.net>
4519 * lib/forwardable.rb : added
4521 * common.mk : remove "vm.o : CFLAGS += -fno-crossjumping" rule
4523 * compile.c, yarvcore.h, insns.def : add FCALL/VCALL flag
4525 * compile.c, insns.def : add onceinlinecache instruction
4527 * eval.c : support $!, $@, raise (== raise $!)
4529 * opt_operand.def : add some unification rule (send flags)
4531 * vm.c : fix return process
4533 * vm_macro.def : fix option prameters
4535 * yarvtest/test_method.rb : add tests for above
4538 2005-11-15(Tue) 00:42:49 +0900 Koichi Sasada <ko1@atdot.net>
4540 * eval.c : support rb_frame_pop() and rb_frame_callee(),
4541 add rb_sourcefile(), rb_souceline(),
4544 * compile.c : support postposition while/until,
4545 fix block parameter index
4547 * yarvtest/test_syn.rb : add tests for above
4549 * yarvcore.c : fix env_mark
4551 * vm.h, yarvcore.h : move vm.h#cmethod_info to
4552 yarvcore.h#yarv_cmethod_info
4554 * vm.c : add th_get_sourceline()
4556 * eval_intern.h : fix PASS_PASSED_BLOCK()
4558 * eval_load.c : fix re-enter require (temporalily)
4560 * insns.def : permit re-open class when superclass is same
4563 2005-11-11(Fri) 01:20:15 +0900 Koichi Sasada <ko1@atdot.net>
4565 * common.mk : add "allload" rule
4567 * compile.c, yarvcore.h, insns.def, vm_macro.def, disasm.c :
4568 change arg_rest, arg_block offset (1)
4570 * insns.def : add postexe instruction
4572 * insns.def, vm.c : support rest block parameter
4574 * yarvtest/test_block.rb : add tests for above
4576 * rb/allload.rb : get path from ARGV
4578 * vm_opts.h.base : set default off
4581 2005-11-01(Tue) 08:28:19 +0900 Koichi Sasada <ko1@atdot.net>
4583 * benchmark/other-lang/eval.rb : fix path
4585 * lib/English.rb, lib/cgi.rb, lib/complex.rb, lib/delegate.rb :
4589 2005-11-01(Tue) 08:18:33 +0900 Koichi Sasada <ko1@atdot.net>
4591 * compile.c : push and pop values after checkincludearray for
4595 2005-10-31(Mon) 15:37:09 +0900 Koichi Sasada <ko1@atdot.net>
4597 * benchmark/bm_app_mandelbrot.rb : added
4599 * benchmark/bm_app_factorial.rb : fixed parameter
4601 * benchmark/bm_so_count_words.rb, benchmark/run_rite.rb : use
4604 * common.mk : add "ext" rule, add some dependencies and add option
4605 to bench-each rule (renamed from bench-item)
4607 * compile.c : fix get_root_iseq_object (check iseq type),
4608 support splat case/when. support //o (regexp)
4610 * eval.c : support *_eval, fix rb_obj_call_init to pass block
4612 * eval_jump.h : support throw/catch
4614 * eval_load.c : save klass_nest_stack when require
4616 * eval_method.h : fix ruby_cbase()
4618 * insnhelper.h : GET_EV_KLASS checks toplevel or not
4620 * insns.def, yarvcore.c : fix singleton method definition and fix
4621 super class's method
4623 * lib/shellwords.rb : use String() instead of String.new()
4625 * vm.c : check class iseq or not when making Proc and
4626 add eval_search_super_klass function
4628 * vm.h : CMETHOD_INFO_P to yarvcore.h
4630 * vm_macro.def : splat if object type is T_ARRAY
4632 * vm_opts.h, vm_opts.h.base : rename to vm_opts.h.base
4633 insns2vm.rb will copy it to build directory
4635 * yarvcore.c : add Proc#[]
4637 * yarvcore.h : change INITIAL_ISEQ_COMPILE_DATA_STORAGE_BUFF_SIZE
4640 * yarvtest/test_* : invalidate splat non array code (like: "*1")
4642 * yarvtest/yarvtest.rb : use tempfile instead of popen
4645 2005-10-28(Fri) 09:11:53 +0900 Koichi Sasada <ko1@atdot.net>
4647 * yarvtest/test_method.rb : fix test
4650 2005-10-28(Fri) 08:43:29 +0900 Koichi Sasada <ko1@atdot.net>
4652 * benchmark/run_rite.rb : add -I options to run benchmark
4654 * common.mk : pass options to some rules with RUNOPT
4657 * compile.c : fix massign with constant
4659 * yarvtest/test_massign.rb : add tests for above
4661 * eval_load.c : fix load_wait()
4663 * eval_method.h : support ruby_cbase()
4665 * lib/*.rb : add or modify libraries to run on yarv
4666 * parse.y : change to ANSI C style
4668 * vm.c : fix making proc process under cfunc/ifunc environment
4670 * vm_macro.def : fix block pass
4672 * yarvtest/test_method.rb : add tests for above
4674 * yarvcore.c : add yarv_obj_is_proc()
4676 * eval.c : fix rb_obj_is_proc to use yarv_obj_is_proc()
4679 2005-10-27(Thu) 11:50:15 +0900 Koichi Sasada <ko1@atdot.net>
4681 * some files : import from ruby 1.9.0 (2005-10-12)
4684 2005-10-16(Sun) 14:50:02 +0900 Koichi Sasada <ko1@atdot.net>
4686 * insns.def, compile.c, yarvcore.h, yarvcore.c : add insns "bitblt" and "answer"
4689 2005-10-11(Tue) 17:01:13 +0900 Koichi Sasada <ko1@atdot.net>
4691 * yarv_version.h, Changes : 0.3.2
4694 2005-10-11(Tue) 13:35:25 +0900 Koichi Sasada <ko1@atdot.net>
4696 * insns.def : add YARV_CHECK_INTS()
4698 * thread.c, thread_pthread.h, thread_win32.h : kick timer thread
4699 when another thread kicked
4701 * vm.c : remove debug print
4703 * vm_opts.h : add OPT_CALL_THREADED_CODE
4705 * yarvtest/yarvtest.rb : remove "\r" from answer
4708 2005-10-07(Fri) 09:36:36 +0900 Koichi Sasada <ko1@atdot.net>
4710 * yarvcore.h : add member variable "interrupt_flag" to yarv_thread_t
4713 2005-10-05(Wed) 21:20:13 +0900 Koichi Sasada <ko1@atdot.net>
4715 * eva.c, eval_thread.c, ruby.h, eval_error.h, eval_jump.h,
4716 eval_load.c, thread.c, error.c, compile.h : remove ruby_errinfo
4718 * thread_win32.h, thread_pthread.h : set stack size to 4KB
4720 * vm.c : fix making env routine
4722 * vm_dump.c, vm.h : support frame type "EVAL" and fix magic number
4724 * yarvcore.c : fix some mark/free routine
4727 2005-10-05(Wed) 09:08:11 +0900 Koichi Sasada <ko1@atdot.net>
4729 * eval.c, eval_intern.h, vm.c, eval_jump.h, yarvcore.h :
4730 re-define PUSH/POP/EXEC/JUMP_TAG to use thread local tag
4732 * inits.c, yarvcore.c : fix boostrap
4735 2005-10-03(Mon) 22:28:24 +0900 Koichi Sasada <ko1@atdot.net>
4737 * compile.c : fix NODE_COLON2 bugs
4739 * compile.h : fix debug routine
4741 * disasm.c : add space between insn and operand
4743 * insns.def : add comment of classdef, singletonclassdef
4745 * vm.c, yarv.h : fix invoke_light routine
4747 * yarvcore.c : fix to mark each threads
4750 2005-10-02(Sun) 05:55:34 +0900 Koichi Sasada <ko1@atdot.net>
4752 * thread_pthread.h : add "system_working" global variable
4755 2005-10-02(Sun) 01:23:44 +0900 Koichi Sasada <ko1@atdot.net>
4757 * thread.c : add raw gets (for test), and fix indent
4760 2005-10-01(Sat) 23:06:21 +0900 Koichi Sasada <ko1@atdot.net>
4762 * thread_win32.h, common.mk : add thread_win32.h
4764 * thread.c : support _WIN32 thread
4766 * thread.c, thread_pthread.h : fix some interface
4768 * eval_thread.c : remove debug print
4770 * gc.c : fix stack region
4772 * win32/Makefile.sub : add -MD flag to LDFLAGS
4774 * yarvcore.c : fix mark and sweep debug print
4776 * yarvcore.h : fix VM#living_threads data type to st_table
4779 2005-10-01(Sat) 00:25:28 +0900 Koichi Sasada <ko1@atdot.net>
4781 * thread.c, yarvcore.h : rename GIL (Global Interpreter Lock) to
4782 GVL (Global VM Lock)
4784 * thread_pthread.h : fix pthread mutex initialize
4787 2005-09-30(Fri) 20:11:19 +0900 Koichi Sasada <ko1@atdot.net>
4789 * thread.c : support join with timeout
4791 * yarvcore.h : use GET_VM()
4794 2005-09-30(Fri) 14:59:29 +0900 Koichi Sasada <ko1@atdot.net>
4796 * thread.c, common.mk : add thread.c
4798 * thread.c, gc.c, eval_thread.c, yarvcore.c, yarvcore.h :
4799 support native thread (on pthread)
4801 * insns.def : add YARV_CHECK_INTS() check
4803 * yarv.h : add GET_VM() macro
4806 2005-09-29(Thu) 22:43:08 +0900 Koichi Sasada <ko1@atdot.net>
4808 * eval_intern.h, eval_thread.c : move thread_status to eval_intern.h
4810 * yarvcore.c : fix thread/vm value
4812 * yarvcore.h : add some parameter to yarv_thread_t
4815 2005-09-29(Thu) 01:52:33 +0900 Koichi Sasada <ko1@atdot.net>
4817 * compile.c, yarvcore.h : add line number on last end instruction
4819 * vm.c : fix line no detection
4822 2005-09-28(Wed) 00:02:10 +0900 Koichi Sasada <ko1@atdot.net>
4824 * common.mk, eval_load.c, eval.c, eval_intern.h : add eval_load.c
4826 * disasm.c : fix around block local variables
4828 * eval_proc.c : fix typo
4831 2005-09-27(Tue) 16:45:20 +0900 Koichi Sasada <ko1@atdot.net>
4833 * eval.c : remove debug print
4836 2005-09-27(Tue) 16:41:47 +0900 Koichi Sasada <ko1@atdot.net>
4838 * eval.c : support Kernel.local_variables
4840 * parse.y, yarvcore.c : move some functions
4841 (rb_(backref|lastline)_(get|set)) from parse.y to yarvcore.c
4843 * yarvcore.h : fix typo of YARV_PREVIOUS_CONTROL_FRAME
4846 2005-09-26(Mon) 18:51:29 +0900 Koichi Sasada <ko1@atdot.net>
4848 * eval.c, compile.c, parse.y, vm.c, yarvcore.h :
4849 eval() works with binding (Env)
4851 * vm.c : add th_set_eval_stack
4853 * yarvtest/test_syn.rb : remove an assert "defined?(local_var)"
4856 2005-09-25(Sun) 19:30:59 +0900 Koichi Sasada <ko1@atdot.net>
4858 * benchmark/bm_vm2_send.rb : added
4860 * common.mk : add rule "bench-item"
4862 * eval_intern.h : add PASS_PASSED_BLOCK()
4864 * eval_proc.c : support some functions
4866 * rb/mklog.rb : added
4868 * vm.c : fix prototype style and coding style
4870 * yarv.h : add some prototypes of functions
4872 * yarvcore.c, yarvcore.h, eval.c : yarv_thread_t#ifuncnode -> passed_block,
4873 and add yarv_proc_t#safe_level
4876 2005-09-25(Sun) 11:01:17 +0900 Koichi Sasada <ko1@atdot.net>
4878 * some files : import from ruby 1.9.0 (2005-09-25)
4880 * eval*, vm.c, vm_macro.def : remove frame, scope, ...
4882 * yarvcore.c : remove yarv_block_given_p()
4884 * yarvcore.h, insnhelper.h : move some macro from insnhelper.h to yarvcore.h
4885 to use these in eval.c
4888 2005-09-24(Sat) 15:51:42 +0900 Koichi Sasada <ko1@atdot.net>
4890 * eval* : remove dependency to ruby_dyna_vars and ruby_class
4893 2005-09-23(Fri) 20:39:14 +0900 Koichi Sasada <ko1@atdot.net>
4895 * eval_*.[ch] : split eval.c to some files
4897 * *.[ch] : import ruby 1.9.0 (2004-09-23)
4899 * parse.y : remove dependency to ruby_dyna_vars and ruby_scope
4902 2005-09-15(Thu) 16:51:06 +0900 Koichi Sasada <ko1@atdot.net>
4904 * compile.c, yarvcore.h : fix "for" scope
4906 * yarvtest/test_block.rb : add tests for above
4909 2005-09-14(Wed) 06:11:43 +0900 Koichi Sasada <ko1@atdot.net>
4911 * yarvcore.h, vm_evalbody.h, vm.h, vm_dump.c,
4912 compile.c, yarvcore.c : use #ifdef insted of #if for recognize
4915 * vm_opts.h : fix default options
4918 2005-09-10(Sat) 14:10:08 +0900 Koichi Sasada <ko1@atdot.net>
4922 * yarvcore.h, rb/insns2vm.h : use vm_opts.h
4925 2005-09-10(Sat) 04:53:22 +0900 Koichi Sasada <ko1@atdot.net>
4927 * yarvcore.h, insns.def, compile.c : add DEFINED_YIELD
4929 * yarvtest/test_yield.rb : add test_1_ary_and_1_params
4931 * insns.def : fix splat and svalue
4933 * vm.c : fix to perform with proc with ifunc (incomplete)
4935 * sample/test.rb : added (comment out unsupported features)
4937 * common.mk : add rule "runtest"
4940 2005-09-09(Fri) 19:32:11 +0900 Koichi Sasada <ko1@atdot.net>
4942 * insns.def, compile.c : add splatarray
4944 * yarvtest/test_massign.rb : add tests for above
4947 2005-08-31(Wed) 22:55:15 +0900 Koichi Sasada <ko1@atdot.net>
4949 * yarvcore.c (yarvcore_eval_parsed): fix to return value
4951 * yarv_version.h, Changes : 0.3.1
4954 2005-08-20(Sat) 10:19:27 +0900 Koichi Sasada <ko1@atdot.net>
4956 * rb/ir.rb : add some check
4958 * import today's ruby HEAD
4961 2005-08-18(Thu) 23:29:52 +0900 Koichi Sasada <ko1@atdot.net>
4963 * common.mk : fix object file extension
4965 * rb/ir.rb : added (import ruby script)
4967 * rb/diff.rb : removed
4969 * import today's ruby HEAD
4972 2005-08-18(Thu) 12:59:38 +0900 Koichi Sasada <ko1@atdot.net>
4974 * common.mk : rule test -> test2, test1 -> test
4976 * compile.c : fix when clause bug and splat arugment
4979 2005-08-17(Wed) 05:22:31 +0900 Koichi Sasada <ko1@atdot.net>
4981 * compile.c : fix block local parameter setting routine and support
4982 massign in block parameter initialze
4984 * yarvtest/test_yield.rb : add tests for above
4986 * insns.def, compile.c : support array concat (ex: "[x, *y]")
4988 * yarvtest/test_bin.rb : add tests for above
4991 2005-08-16(Tue) 19:51:19 +0900 Koichi Sasada <ko1@atdot.net>
4993 * compile.c : support nested massign
4995 * yarvtest/test_massign.rb : add tests for above
4998 2005-08-16(Tue) 10:25:29 +0900 Koichi Sasada <ko1@atdot.net>
5000 * eval.c : support rb_yield_0 with 0 args
5003 2005-08-16(Tue) 09:09:21 +0900 Koichi Sasada <ko1@atdot.net>
5005 * lib/fileutils.rb : imported
5007 * insns.def : fix yield argument (same as last commit)
5009 * yarvtest/test_yield.rb : add tests for above
5012 2005-08-16(Tue) 08:29:47 +0900 Koichi Sasada <ko1@atdot.net>
5014 * eval.c : fix to support rb_yield_0 with multiple values
5016 * common.mk : add parse, run1p ruelse
5018 * compile.c : support yield with ARGSCAT/SPLAT
5020 * vm.c, insns.def : fix yield arguments to do compatible behaviour
5022 * yarvtest/test_yield.rb : added for above
5025 2005-08-16(Tue) 06:00:17 +0900 Koichi Sasada <ko1@atdot.net>
5027 * insns.def : fix to set klass_nest_stack on singleton
5030 * yarvtest/test_method.rb : add a test for above
5033 2005-08-16(Tue) 05:34:48 +0900 Koichi Sasada <ko1@atdot.net>
5035 * test1.rb : added. gdb and run1 rule run this script
5037 * compile.c : fix error handled variable access
5039 * yarvtest/test_exception.rb : add tests for above
5042 2005-08-16(Tue) 04:26:08 +0900 Koichi Sasada <ko1@atdot.net>
5044 * base ruby : ruby 1.9.0 (2005-08-15)
5047 2005-08-16(Tue) 03:54:17 +0900 Koichi Sasada <ko1@atdot.net>
5049 * common.mk, Makefile.in : move some rules to common.mk
5051 * rb/diff.rb : added
5053 * yarvtest/yarvtest.rb : fix to compare output last value
5056 2005-08-15(Mon) 18:27:58 +0900 Koichi Sasada <ko1@atdot.net>
5061 2005-08-15(Mon) 17:56:09 +0900 Koichi Sasada <ko1@atdot.net>
5063 * yarvcore.c : fix to add prototype
5065 * all files : propset svn:eol-style native
5068 2005-08-15(Mon) 10:48:53 +0900 Koichi Sasada <ko1@atdot.net>
5070 * eval.c : support rb_load
5073 2005-08-15(Mon) 09:42:01 +0900 Koichi Sasada <ko1@atdot.net>
5075 * yarvcore.h : define SDR()
5077 * vm_dump.c : stack_dump_raw() -> vm_stack_dump_raw()
5079 * yarvtest/yarvtest.rb : add rite test scheme
5081 * benchmark/run_rite.rb : added
5083 * yarvcore.c, inits.c : add Init_vm()
5085 * yarv.h : add some prototype declarations, GET_THREAD()
5087 * eval.c : remove unused functions
5089 * eval.c : support Kernel.eval, some schemes (same as evalc.patch)
5092 2005-08-15(Mon) 00:53:28 +0900 Koichi Sasada <ko1@atdot.net>
5094 * yarv_version.h : move configurations to yarvcore.h
5096 * yarvcore.c : remove VALUE yarv_get_current_running_thread() and
5097 add yarv_thread_t *yarv_get_current_running_thread(), ...
5099 * yarvcore.h : yarv_thread_t#vm -> vm_value
5101 * compile.c : fix "break from nested classes"
5103 * yarvext/extconf.rb : use have_func instead of defined?(YARV_PACHED)
5107 * eval.c : change to kick VM
5109 * version.c : fix to show yarv version
5111 * common.mk : fix dependent
5113 * inits.c : fix to kick Init_yarvcore
5116 2005-08-14(Sun) 02:05:15 +0900 Koichi Sasada <ko1@atdot.net>
5118 * README : add description
5120 * yarvext/depend : move to topdir/depend
5122 2005-08-14(Sun) 01:50:43 +0900 Koichi Sasada <ko1@atdot.net>
5124 * merge yarv to ruby (prepare)
5126 * make yarvext/ to build as extension
5129 2005-08-13(Sat) 09:36:26 +0900 Koichi Sasada <ko1@atdot.net>
5131 * evalc.patch, insns.def, compile.c : fix to support current
5137 2005-08-08(Mon) 19:13:02 +0900 Koichi Sasada <ko1@atdot.net>
5139 * version.h, Changes : 0.2.2
5142 2005-08-08(Mon) 17:17:50 +0900 Koichi Sasada <ko1@atdot.net>
5144 * vm.h, vm.c, insns.def, yarvcore.h, yarvcore.c :
5145 remove yarv_iseq_t#iseq_dt and add yarv_iseq_t#encoded.
5146 use yarv_iseq_t#encoded anytime
5148 * vm_evalbody.h, vm.h, extconf.rb, version.h :
5149 support call threaded code (incomplete)
5152 2005-08-01(Mon) 05:26:12 +0900 Koichi Sasada <ko1@atdot.net>
5154 * yarvcore.c : support yield with multiple values
5156 * compile.c : fix dynavars
5158 * yarvcore.h : fix to mark defined method
5161 2005-07-31(Sun) 23:27:24 +0900 Koichi Sasada <ko1@atdot.net>
5163 * yarvcore.c, vm.c, insns.def : fix search object path
5165 * compile.c : fix "for" statement
5167 * vm_macro.def : fix rest, opt arguments
5170 2005-07-31(Sun) 14:52:06 +0900 Koichi Sasada <ko1@atdot.net>
5172 * vm_macro.def : fix block parameter
5174 * compile.c : fix to unuse compile_data->in_ensure
5176 * insns.def : add orphan check when return
5179 2005-07-31(Sun) 03:25:05 +0900 Koichi Sasada <ko1@atdot.net>
5181 * vm.c, compile.c, yarvcore.h, insns.def :
5182 support jump from rescue/ensure/class/module
5184 * test/test_flow.rb : add tests for above fix
5187 2005-07-30(Sat) 04:44:33 +0900 Koichi Sasada <ko1@atdot.net>
5189 * yarvcore.h : struct iseq_compile_data_ensure_node_stack is added
5191 * compile.c : insert ensure clause before break/next/redo
5193 * vm.c : fix return/break handling
5195 * yarv.h, vm.c : fix lightweight yield
5197 * vm.c, insns.def, vm_macro.def : change arguments of th_set_env (add sp)
5199 * test/test_flow.rb : added
5201 * test/yarvtest.rb : add ae_flow
5203 * compile.c, vm_macro.def : add tail-call/tail-recursion optimization
5207 2005-07-29(Fri) 20:14:11 +0900 Koichi Sasada <ko1@atdot.net>
5209 * compile.c : make_name_for_block and make_name_with_str
5212 * insns.def : fix if unmatched size arg size to yield
5214 * test/test_block.rb : add test for above fix
5216 * vm.c : add th_backtrace_each and fix backtrace notation
5218 * yarvcore.c : set top level iseq name to "<main>"
5221 2005-07-29(Fri) 13:20:19 +0900 Koichi Sasada <ko1@atdot.net>
5223 * yarvcore.h : fix yarv_iseq_t to pass VC (cl)
5229 * insnhelper.h : ditto
5231 * vm_evalbody.h : include 'math.h'
5233 * insns.def, vm.c : raise error when yield without block
5235 * vm.c : implement thread_backtrace
5237 * vm.c, yarvsubst.c, yarv.h : implement thread_yield_light_prepare and
5238 thread_yield_light_invoke
5240 * yarvcore.c : Integer#times uses yarv specific version
5243 2005-07-28(Thu) 21:35:09 +0900 Koichi Sasada <ko1@atdot.net>
5245 * yarvcore.c : add another mark function for thread/stack
5247 * vm_evalbody.h : fix register allocation for x86_64
5249 * vm.h : use asm for tc on x86_64
5252 2005-07-28(Thu) 20:17:09 +0900 Koichi Sasada <ko1@atdot.net>
5254 * yarvcore.c : add mark/free message to debug gc
5256 * insnhelper.h, insns.def, vm_macro.def : remove and
5257 add new RESTORE_REGS
5259 * vm_evalbody.h : fix register allocation
5262 2005-07-28(Thu) 02:00:42 +0900 Koichi Sasada <ko1@atdot.net>
5264 * vm.c, etc : change VM stack structure. re-write all
5265 vm functions to do it
5267 * vm_macro.def : added
5270 2005-07-08(Fri) 01:36:49 +0900 Koichi Sasada <ko1@atdot.net>
5272 * insns.def : don't use fmod on AMD64
5275 2005-07-08(Fri) 00:14:22 +0900 Koichi Sasada <ko1@atdot.net>
5280 2005-07-07(Thu) 23:54:37 +0900 Koichi Sasada <ko1@atdot.net>
5285 2005-07-07(Thu) 23:52:03 +0900 Koichi Sasada <ko1@atdot.net>
5290 2005-07-07(Thu) 23:50:22 +0900 Koichi Sasada <ko1@atdot.net>
5295 2005-07-07(Thu) 23:47:55 +0900 Koichi Sasada <ko1@atdot.net>
5297 * rb/insns2vm.rb, extconf.rb : add --[enable|disable]-opt-unify-all-combination
5300 * vm.h : DISPATCH_ARCH_DEPEND_WAY is only enabled on GCC 3.x
5303 2005-07-06(Wed) 13:20:27 +0900 Koichi Sasada <ko1@atdot.net>
5305 * depend, rb/eval.rb : add ITEMS option to benchmark rule
5307 * benchmark/* : changed
5309 * benchmark/other-lang/* : added
5312 2005-07-04(Mon) 04:02:15 +0900 Koichi Sasada <ko1@atdot.net>
5314 * yarvcore.h. yarvcore.c : add idDIV, idMOD, idEq, idLength
5316 * compile.c, insns.def : add specialized insn for above method id
5318 * test/test_bin.rb : add tests for above
5321 2005-07-03(Sun) 20:31:09 +0900 Koichi Sasada <ko1@atdot.net>
5323 * yarvcore.c, yarvcore.h : remove cYarvThrowObject (unused)
5325 * yarvcore.c, yarvcore.h, insns.def :
5326 thread_object#stack_mark_poinetr
5328 * depend, rb/eval.rb : BOPT, TOPT -> OPT
5331 2005-07-03(Sun) 13:53:47 +0900 Koichi Sasada <ko1@atdot.net>
5333 * compile.c, compile.h : INSN_OBJECT, LABEL_OBJECT -> INSN, LABEL,
5334 ISEQ_LINK_ELEMENT, ISEQ_LINK_ANCHOR -> LINK_ELEMENT, LINK_ANCHOR,
5337 * tmpl/optinsn.inc.tmpl : ditto
5339 * yarvcore.c, yarvcore.h : remove label_object, insn_object
5340 prepare_iseq_build, cleanup_iseq_build are added
5342 * insns.def : remove unused variable from send
5345 2005-07-02(Sat) 04:19:22 +0900 Koichi Sasada <ko1@atdot.net>
5347 * insns.def : add GC protect for opt_aset
5350 2005-07-02(Sat) 03:49:17 +0900 Koichi Sasada <ko1@atdot.net>
5352 * extconf.rb : add option -fno-reorder-blocks to vm.asm rule
5354 * insns.def : fix opt_aset bugs
5356 * test/test_bin.rb : add tests for aset, aref
5359 2005-07-02(Sat) 03:05:12 +0900 Koichi Sasada <ko1@atdot.net>
5361 * benchmark/run.rb : fix output
5363 * vm_evalbody.h : add register for x86_64
5365 * rb/asm_parse.rb : fix to shor size and length
5368 2005-07-02(Sat) 02:56:31 +0900 Koichi Sasada <ko1@atdot.net>
5370 * compile.c : move specialized instruction point (new_insn_send)
5372 * insns.def : add opt_aref, opt_aset
5375 2005-07-01(Fri) 11:04:11 +0900 Koichi Sasada <ko1@atdot.net>
5377 * compile.h : fix to pass VALUE type to new_insn_body
5379 * insnhelper.h : add cast
5381 * compile.c : fix getdynamic argument (0 == Qfalse -> I2F(0))
5384 2005-06-30(Thu) 23:34:10 +0900 Koichi Sasada <ko1@atdot.net>
5386 * rb/eval.rb : add and fix some rules
5388 * rb/insns2vm.rb : generate all
5390 * benchmark/run.rb : add -r (ruby only) option
5393 2005-06-30(Thu) 23:25:23 +0900 Koichi Sasada <ko1@atdot.net>
5395 * tmpl/vmtc.inc.tmpl : add const prefix
5397 * /rb/asm_parse.rb, extconf.rb : added and make assembler analised output
5399 * opt_operand.def : add send operands unification
5401 * insnhelper.h : add HEAP_CLASS_OF(obj)
5403 * insns.def : fix opt_plus, opt_ltlt
5405 * vm_evalbody.h : move _tag
5407 * benchmark/run.rb : fix file select
5410 2005-06-30(Thu) 06:07:04 +0900 Koichi Sasada <ko1@atdot.net>
5412 * extconf.rb : add collect-usage-analysis option
5414 * opt_operand.def, opt_insn_unif.def : add some rules
5417 2005-06-29(Wed) 23:28:44 +0900 Koichi Sasada <ko1@atdot.net>
5419 * yarvcore.h, extconf.rb, vm.h, compile.c :
5420 DISPATCH_DIRECT_THREADED_CODE, DISPATCH_THREADED_CODE
5421 -> OPT_DIRECT_THREADED_CODE, OPT_INDIRECT_THREADED_CODE.
5422 if at least one of then is defined, OPT_THREADED_CODE is defined
5424 * benchmark/* : fix name and parameters
5426 * rb/eval.rb : added for YARV evaluation
5429 2005-06-29(Wed) 16:16:52 +0900 Koichi Sasada <ko1@atdot.net>
5431 * benchmark/run.rb : fix output format
5433 * call_cfunc.inc -> call_cfunc.h
5435 * vm.h : add sign by asm statement
5438 2005-06-28(Tue) 22:28:40 +0900 Koichi Sasada <ko1@atdot.net>
5440 * vm.c : fix method search
5443 2005-06-28(Tue) 22:26:34 +0900 Koichi Sasada <ko1@atdot.net>
5445 * extconf.rb : fix options
5448 2005-06-28(Tue) 21:50:58 +0900 Koichi Sasada <ko1@atdot.net>
5450 * benchmark/run.rb : fix output format
5453 2005-06-28(Tue) 21:34:54 +0900 Koichi Sasada <ko1@atdot.net>
5455 * depend : add option TOPT to test rules
5457 * benchmark/run.rb : fix output format
5460 2005-06-28(Tue) 21:15:54 +0900 Koichi Sasada <ko1@atdot.net>
5462 * compile.c : fix opt_case_dispatch instruction
5464 * benchmark/run.rb : output all usertimes when exit benchmark
5467 2005-06-28(Tue) 20:35:55 +0900 Koichi Sasada <ko1@atdot.net>
5469 * extconf.rb, compile.c, tmpl/optinsn.inc.tmpl, vm.c :
5470 change extconf options
5472 2005-06-28(Tue) 13:20:59 +0900 Koichi Sasada <ko1@atdot.net>
5474 * benchmark/run.rb : add -y, --yarv-only option
5476 * depend : add BOPT to tbench rule
5479 2005-06-27(Mon) 23:31:12 +0900 Koichi Sasada <ko1@atdot.net>
5481 * depend : add gdb rule
5483 * vm.h : use inline assembler for x86 (to support gcc 3.4.x)
5486 2005-06-27(Mon) 20:04:10 +0900 Koichi Sasada <ko1@atdot.net>
5488 * yarvcore.c, compile.c, disasm.c : remove unused variables
5490 * vm.h, insnhelper.h, debug.h : fix to reduce warning
5492 * vm.c, vm_dump.c : move VM state dump (debug) functions to vm_dump.c
5494 * depend : adde reconf rule
5498 * vm_evalbody.inc : rename to vm_evalbody.h
5501 2005-06-27(Mon) 16:50:31 +0900 Koichi Sasada <ko1@atdot.net>
5503 * insns2vm.rb : fix generating unif insn
5505 * compile.c : add useless pop/swap insn elimination with stack caching
5507 * depend : remove compiled.o dependency
5510 2005-06-26(Sun) 14:06:22 +0900 Koichi Sasada <ko1@atdot.net>
5512 * benchmark/run.rb : use tmpfile instead of popen
5514 * rb/insns2vm.rb : fix generating insn unification logic
5516 * opt_insn_unif.def : add some unification rules
5518 * compile.c : add verify_list function and fix unification logic
5521 2005-06-22(Wed) 12:58:26 +0900 Koichi Sasada <ko1@atdot.net>
5523 * yarvcore.h, yarvcore.c, insns.def, compile.c : add mult optimization
5525 * test/test_bin.rb : add test_fact
5528 2005-06-21(Tue) 22:34:07 +0900 Koichi Sasada <ko1@atdot.net>
5530 * yarvcore.h, compile.[ch], tmpl/optinsn.inc.tmpl, rb/insns2vm.rb :
5531 change data structure (don't use Ruby's array to represent a
5532 instruction sequence)
5534 * disasm.c : add separator
5537 2005-06-14(Tue) 07:48:58 +0900 Koichi Sasada <ko1@atdot.net>
5539 * compile.c : support "for" statement
5541 * test/test_block.rb : add test for above
5543 * yarvcore.[ch] : add global id idEach
5546 2005-06-08(Wed) 22:30:44 +0900 Koichi Sasada <ko1@atdot.net>
5548 * compile.c : add if/unless(L1) jump (L2) :L1 => unless/if(L2)
5549 optimize (condition reversal) and fix typo
5552 2005-06-07(Tue) 08:29:41 +0900 Koichi Sasada <ko1@atdot.net>
5554 * yarvcore.c : fix to remove compiler warning
5559 2005-06-07(Tue) 08:16:22 +0900 Koichi Sasada <ko1@atdot.net>
5561 * yarvcore.h : iseq_link_element changed to double linked list
5563 * disasm.c : support dump struct iseq_link_element
5565 * compile.c : use double linked list instead of array
5566 for intermediate representation
5569 2005-06-06(Mon) 15:38:44 +0900 Koichi Sasada <ko1@atdot.net>
5571 * yarvcore.h, yarvcore.c : add link structure to insn and label object
5573 * compile.h, compile.c : remove some variables in function top scope
5574 of iseq_compile_each and some optimization (now working)
5577 2005-06-04(Sat) 16:12:59 +0900 Koichi Sasada <ko1@atdot.net>
5579 * compile.c : fix previous commit
5582 2005-06-04(Sat) 15:56:21 +0900 Koichi Sasada <ko1@atdot.net>
5584 * compile.c : fix stack caching (after jump state)
5587 2005-06-04(Sat) 09:12:13 +0900 Koichi Sasada <ko1@atdot.net>
5589 * compile.c : fix some point for previous commit
5592 2005-06-04(Sat) 07:31:21 +0900 Koichi Sasada <ko1@atdot.net>
5594 * compile.c, insns.def : optimize case/when statement
5595 (dispatch on constant time)
5597 * yarvcore.h, disasm.c, rb/insns2vm.rb : fixed for above
5600 * test/test_syn.rb : add test for above
5603 2005-06-04(Sat) 03:41:29 +0900 Koichi Sasada <ko1@atdot.net>
5605 * yarvcore.h, yarvcore.c : add some temporary variable test
5608 * compile.c : NODE_CASE optimize (use topn instead of dup/swap)
5611 2005-06-03(Fri) 00:54:38 +0900 Koichi Sasada <ko1@atdot.net>
5613 * compile.c : apply flow optimization for while/until statement
5616 2005-03-04(Fri) 19:34:32 +0900 Koichi Sasada <ko1@atdot.net>
5618 * rb/insns2vm.rb : fix category (comment)
5620 * depend : remove space betweeen target name and colon
5623 2005-03-04(Fri) 15:55:51 +0900 Koichi Sasada <ko1@atdot.net>
5625 * tmpl/yarvarch.ja : fix typo
5628 2005-03-04(Fri) 13:30:19 +0900 Koichi Sasada <ko1@atdot.net>
5630 * depend : add a rule for jitcompile.o
5632 * vm.h : fix a macro argument
5637 2005-03-03(Thu) 08:35:14 +0900 Koichi Sasada <ko1@atdot.net>
5639 * extconf.rb : remove vm_evalbody.inc call_cfunc.inc from clean target
5642 2005-03-03(Thu) 00:54:15 +0900 Koichi Sasada <ko1@atdot.net>
5644 * tmpl/insns.inc.tmpl : fixed typo
5646 * insns.def : store th->pc to current pc
5649 2005-03-03(Thu) 00:31:47 +0900 Koichi Sasada <ko1@atdot.net>
5651 * tmpl/yarvarch.ja, doc/yarv.rb : write current architecture of yarv
5654 2005-03-01(Tue) 13:50:04 +0900 Koichi Sasada <ko1@atdot.net>
5656 * yarvcore.c (yarvcore_eval_parsed) : added
5657 (separeted from yarvcore_eval)
5659 * yarvcore.c, compile.c : iseq_translate_direct_threaded_code
5660 is moved to compile.c
5662 * depend : add rule for yasmdata.rb
5664 * rb/yasm.rb : support top-level and method-level assemble
5667 2005-02-26(Sat) 08:09:57 +0900 Koichi Sasada <ko1@atdot.net>
5669 * rb/insns2vm.rb, compile.c, vm.h : change type long to OFFSET
5671 * tmpl/yasmdata.rb.tmpl : added
5673 * rb/insns2vm.rb : add yasmdata_rb method
5675 * rb/yasm.rb : fix some interface (incomplete)
5677 * compile.c : iseq_setup added
5679 * yarvcore.c : YARVCore::InstructionSequence::Instruction#make added
5682 2005-02-24(Thu) 07:45:37 +0900 Koichi Sasada <ko1@atdot.net>
5684 * rb/yasm.rb : added
5687 2005-02-24(Thu) 01:13:33 +0900 Koichi Sasada <ko1@atdot.net>
5689 * compile.c : remove useless statements
5692 2005-02-24(Thu) 00:46:44 +0900 Koichi Sasada <ko1@atdot.net>
5694 * rb/insns2vm.rb (InsnInfo) : add @is_sc attr and remove
5697 * compile.c : fix NODE_CASE/NODE_WHEN bug (cond at 'when'
5700 * compile.c : support NODE_OP_ASGN1 to &&= and ||=
5702 * test/test_bin.rb : add tests for above
5705 2005-02-23(Wed) 09:17:01 +0900 Koichi Sasada <ko1@atdot.net>
5707 * vm.c, yarvcore.c : thread_svar added and fix svar location
5710 2005-02-21(Mon) 08:38:02 +0900 Koichi Sasada <ko1@atdot.net>
5712 * yarvcore.h : make type "struct iseq_compile_data"
5714 * yarvcore.h : iseq_object#insn_info_ary to iseq_object#insn_info_tbl
5717 2005-02-21(Mon) 05:24:01 +0900 Koichi Sasada <ko1@atdot.net>
5719 * yarvcore.c (compile_string) : remove null check of node
5722 2005-02-19(Sat) 03:52:45 +0900 Koichi Sasada <ko1@atdot.net>
5727 2005-02-18(Fri) 20:57:18 +0900 Koichi Sasada <ko1@atdot.net>
5729 * yarvcore.h, yarvcore.c : add idLTLT, idMethodMissing
5731 * compile.c : suopport lval (or others) block parameter
5733 * test/test_block.rb : add tests for above
5735 * insns.def (send) : support method_missing
5737 * test/test_method.rb : add tests for above
5739 * insns.def : opt_ltlt and
5742 2005-02-18(Fri) 08:54:40 +0900 Koichi Sasada <ko1@atdot.net>
5744 * benchmark/runc.rb : added
5746 * benchmark/contrib/pentomino.rb : added opt_ltlt
5747 and Float, String plus specialization
5750 2005-02-18(Fri) 07:49:42 +0900 Koichi Sasada <ko1@atdot.net>
5752 * compile.c : remove debug print
5754 * rb/aotcompile.rb : skip if yarvcore.so is not created
5757 2005-02-18(Fri) 06:46:13 +0900 Koichi Sasada <ko1@atdot.net>
5759 * compile.c : fix block passing
5763 2005-02-18(Fri) 05:52:41 +0900 Koichi Sasada <ko1@atdot.net>
5765 * vm.c : thread_get_ev_const, thread_get_ev_defined is added
5766 (separated from insns.def)
5768 * insnhelper.h : GET_EV_KLASS(klass) is added
5769 (separated from insns.def)
5771 * yarvcore.h, insns.def, compile.c : support defined? expression (limited)
5773 * test/test_syn.rb : tests for above is added
5775 * compile.c, insns.def : support block passed method dispatch
5777 * test/test_method.rb : tests for above is added
5779 * compile.h : CALL_ARGS_SPLAT is removed
5782 2005-02-16(Wed) 13:32:37 +0900 Koichi Sasada <ko1@atdot.net>
5784 * disasm.c : fix ID to String method
5786 * compile.c : NODE_SUPER, NODE_ZSUPER check 'poped'
5787 and NODE_RETURN check outer type
5788 and NODE_DREGX_ONCE supported (temporarily)
5790 * test/test_syn.rb : add a test
5792 * test/test_jump.rb : add a test
5795 2005-02-16(Wed) 06:07:41 +0900 Koichi Sasada <ko1@atdot.net>
5797 * compile.[hc] : use Symbol instead of Fixnum to represent ID
5799 * rb/insns2vm.rb : add attr_reader :insns, :insn_map
5801 * vm.h, rb/insns2vm.rb : END_INSN have one arg
5803 * jitcompile.c : jit compiler framework (experimental)
5805 * rb/aotcompile.rb : refactoring
5807 * compiled.c : add constant pool
5809 * vm_evalbody.inc, call_cfunc.inc, vm.c : separeted from vm.c
5811 * insns.def : fix return val
5813 * depend : add rules for compiled.o
5816 2005-02-14(Mon) 13:09:01 +0900 Koichi Sasada <ko1@atdot.net>
5818 * insnhelper.h, yarvcore.h: move YARV_METHOD_NODE to yarvcore.h
5820 * yarvcore.h : add 2 members jit_compiled and iseq_orig
5821 to struct iseq_object
5823 * yarvcore.c : add yarv_jitcompile and global function jitcompile
5825 * insns.def : insn opt_call_native_compiled added
5827 * jitcompile.c : added
5830 2005-02-12(Sat) 05:38:51 +0900 Koichi Sasada <ko1@atdot.net>
5832 * insns.def (putstring) : fixed to duplicate string object
5834 * rb/insns2vm.rb, tmpl/optunifs.inc.tmpl, compile.c : support
5835 instructions unification (aka super instruction)
5837 * opt_insn_unif.def : added for above
5839 * benchmark/bm_unif1.rb : added to measure efficiency of unification
5841 * depend : fixed for above
5843 * extconf.rb : add option --(enable|disalbe)-opt-insns-unification
5846 2005-02-11(Fri) 12:14:39 +0900 Koichi Sasada <ko1@atdot.net>
5848 * yarvcore.c, vm.c, insns.def : permit to access svar from
5851 * test/test_method.rb : add tests for above
5854 2005-02-09(Wed) 19:31:06 +0900 Koichi Sasada <ko1@atdot.net>
5856 * ite.rb : added (ruby -rite [script file])
5859 2005-02-09(Wed) 02:25:43 +0900 Koichi Sasada <ko1@atdot.net>
5861 * yarvcore.[hc] : add member compile_data (hash) to iseq_object
5863 * compile.c, yarvcore.h : check label is already set
5865 * compile.c, extconf.rb : support __goto__ and __label__ statement
5868 2005-01-25(Tue) 12:49:27 +0900 Koichi Sasada <ko1@atdot.net>
5870 * test/test_block.rb : add break test to test_times
5873 2005-01-25(Tue) 03:34:04 +0900 Koichi Sasada <ko1@atdot.net>
5875 * extconf.rb : check ruby version if yarv patch is applied or not
5877 * evalc.patch : fixed for rb_call_super and above check
5880 2005-01-25(Tue) 03:21:48 +0900 Koichi Sasada <ko1@atdot.net>
5882 * rb/insns2vm.rb : refactoring (mainly, make InsnsDef::InsnInfo
5883 to represent each instruction information)
5885 * depend, rb/makedocs.rb : fixed for above
5887 * yarvcore.c (thread_call_super) : added
5889 * vm.c (thread_call_super) : added
5891 * vm.h : add struct cmethod_info
5893 * insns.def, vm.c : use cmethod_info to represent C method info
5895 * insns.def : use iseq_object#klass_nest_stack
5896 to search super/zsuper's class
5898 * prosym.rb : removed
5900 * ToDo : write todo things on wiki
5904 2005-01-18(Tue) 23:44:47 +0900 Koichi Sasada <ko1@atdot.net>
5906 * benchmark/run.rb : check ENV['RUBY'] to use ruby binary
5909 2005-01-10(Mon) 08:44:40 +0900 Koichi Sasada <ko1@atdot.net>
5914 2005-01-09(Sun) 22:01:29 +0900 Koichi Sasada <ko1@atdot.net>
5916 * repository : svn propset svn:eol-style native *.c *.h tmpl/*.tmpl
5919 2005-01-09(Sun) 21:48:38 +0900 Koichi Sasada <ko1@atdot.net>
5921 * yarvcore.c : FREE_UNLESS_NULL, MARK_UNLESS_NULL macros are added
5923 * yarvcore.c : some insn/label methods are added
5925 * yarvcore.h : add structure menber "insns_ary" to iseq_object
5927 * vm.c, insns.def (thread_eval_body) : return values with throw
5931 * insns.def : add YARV_AOT_COMPILED and some procedure
5933 * depend : add compiled.c
5935 * compiled.c : added to build compiled Ruby program (C source)
5938 * rb/aotcompile.rb : AOT compiler
5940 * aotct.rb, rb/aotctest.rb : test and benchmark AOT compiler
5942 * rb/allload.rb : added
5945 2005-01-09(Sun) 08:30:38 +0900 Koichi Sasada <ko1@atdot.net>
5947 * yarvcore.c (yarv_yield_values) : added
5949 * vm.c (thread_call0) : change interface. substitute rb_call0 in
5952 * yarvcore.c (yarv_call0) : fix for above
5954 * yarvcore.c (yarv_call0_cfunc) : removed
5956 * yarvcore.c : change passing items for yarv_setup
5958 * evalc.patch : fix for above
5960 * benchmark/bm_lists.rb : fix (unsupport block passing)
5962 * benchmark/run.rb : use full path to ruby
5964 * insns.def (yield): raise error if argc > expected argc
5967 2005-01-08(Sat) 16:07:48 +0900 Koichi Sasada <ko1@atdot.net>
5969 * extconf.rb : add descrioptions
5971 * compile.c : fix bugs (getinlinecache operands)
5973 * yarvcore.c : initial value of yarvGlobalStateVersion
5977 2005-01-08(Sat) 14:39:04 +0900 Koichi Sasada <ko1@atdot.net>
5979 * yarvcore.c, vm.c, evalc.patch : support making backtrace
5980 (incompatible with current ruby interpreter)
5983 2005-01-08(Sat) 11:25:46 +0900 Koichi Sasada <ko1@atdot.net>
5985 * evalc.patch : commit for previous commit change
5987 * yarvcore.h, compile.c, insns.def : MC to IC (inline cache),
5988 and changed to using IC by set/getinlinecache
5991 2005-01-08(Sat) 10:04:33 +0900 Koichi Sasada <ko1@atdot.net>
5993 * yarvcore.c : add global variable sym[IC]FUNC
5995 * yarvcore.c (yarv_iterate, yarv_call0_cfunc) : added
5996 (each called from rb_iterate, rb_call0 with NODE_CFUNC)
5998 * vm.c (stack_dump_raw) : fixed to prints more detail
6000 * vm.c (stack_dump_th, stack_dump_thobj) : added to
6001 dumps thread_object states (for VALUE, struct pointer)
6003 * vm.c (thread_dump_regs) : added
6005 * vm.c (thread_call0, thread_call0_cfunc, thread_invoke_yield,
6006 thread_invoke_yield_cfunc), insns.def (yield, send) :
6007 fixed, added to support IFUNC
6009 * vm.c, yarvcore.c, insns.def : change type purpose
6010 thread_object#block_ptr (it holds IFUNC block information,
6011 so this type was changed to 'NODE *')
6013 * vm.c (stack_dump_each) : fixed for above
6015 * test/test_block.rb (test_ifunc) : test for above
6017 * vm.c (get_block_objec, thread_make_env_object) : fixed bugs
6019 * test/test_bin.rb (test_xstr) : remove `ls` test
6022 2005-01-06(Thu) 21:35:18 +0900 Koichi Sasada <ko1@atdot.net>
6024 * yarv : trying to support NODE_IFUNC (rb_iterate)
6027 2005-01-05(Wed) 06:50:42 +0900 Koichi Sasada <ko1@atdot.net>
6029 * yarvcore.h, insns.def, disasm.c, rb/insns2vm.rb, compile.[ch] :
6030 support inline method cache
6032 * extconf.rb : add -*-inline-method-cache (default: enable)
6034 * test/test_method.rb : add a test for above
6036 * benchmark/bm_poly_method.rb : added
6038 * yarvcore.c : add option string
6041 2005-01-04(Tue) 17:15:41 +0900 Koichi Sasada <ko1@atdot.net>
6043 * insns.def, compile.c : add compile_array and duparray insn
6044 to optimize only literal array creation
6046 * benchmark/bm_array.rb : added
6049 2005-01-04(Tue) 10:02:40 +0900 Koichi Sasada <ko1@atdot.net>
6051 * README : fix version
6054 2005-01-04(Tue) 09:57:25 +0900 Koichi Sasada <ko1@atdot.net>
6056 * ToDo : reflect current status
6059 2005-01-04(Tue) 09:43:54 +0900 Koichi Sasada <ko1@atdot.net>
6061 * compile.c : support NODE_VALUES, NODE_ARGSCAT, NODE_SPLAT
6063 * test/test_massign.rb : add tests for above
6065 * benchmark/bm_swap.rb : added
6068 2005-01-04(Tue) 06:25:45 +0900 Koichi Sasada <ko1@atdot.net>
6070 * compile.h : COMPILE_ERROR break contol (instead of return)
6072 * compile.c : support NODE_MASGN
6074 * insns.def : change expandarray for massign and add topn insn
6076 * test/test_massign.rb : added
6079 2005-01-03(Mon) 21:20:28 +0900 Koichi Sasada <ko1@atdot.net>
6081 * vm.c : store block when create proc
6083 * test/test_proc.rb : add a test for above change
6085 * yarvcore.c : add global function "once"
6088 2005-01-02(Sun) 00:40:08 +0900 Koichi Sasada <ko1@atdot.net>
6090 * benchmark/bm_super.rb : fix bug (remove infinite loop)
6093 2005-01-01(Sat) 23:45:49 +0900 Koichi Sasada <ko1@atdot.net>
6095 * benchmark/bm_z?super.rb : added
6098 2005-01-01(Sat) 23:37:38 +0900 Koichi Sasada <ko1@atdot.net>
6100 * benchmark/bmx_so_object.rb : rename to benchmark/bm_so_object.rb
6103 2005-01-01(Sat) 23:19:02 +0900 Koichi Sasada <ko1@atdot.net>
6105 * compile.c : support NODE_OP_ASGN2, NODE_OP_ASGN_AND, NODE_OP_ASGN_OR,
6106 NODE_SUPER, NODE_ZSUPER, NODE_MATCH
6108 * insns.def : support super, zsuper (currently, super can't
6111 * test/test_bin.rb : add test for op_asgin2, op_assgin_and/or
6113 * test/test_class.rb : add test for super, zsuper
6116 2005-01-01(Sat) 20:39:29 +0900 Koichi Sasada <ko1@atdot.net>
6118 * compile.c : support NODE_MATCH
6120 * yarvcore.c : fix yarv_svar bug (fix condition boundary)
6122 * insnhelper.h : save cfp/lfp/dfp vars to thread_object (th)
6125 2005-01-01(Sat) 20:03:10 +0900 Koichi Sasada <ko1@atdot.net>
6129 * yarvcore.h : add idIntern declaration
6131 * insns.def : add getspecial, setspecial.
6132 implement getclassvariable, setclassvariable.
6133 store lfp before reg match (opt_regexpmatch1)
6135 * compile.c : support ditto, flipflop
6137 * yarvcore.c : support svar
6139 * test/test_syn.rb : add test for flipflop
6141 * test/test_bin.rb : add test for dsym, cvar, backref
6144 2005-01-01(Sat) 09:09:32 +0900 Koichi Sasada <ko1@atdot.net>
6146 * insns.def : add getspecial insn
6148 * compile.c : support NODE_NTH_REF, NODE_BACK_REF
6151 2005-01-01(Sat) 06:53:38 +0900 Koichi Sasada <ko1@atdot.net>
6153 * insns.def, compile.c : support alias, undef
6155 * test/test_method.rb : test for above
6157 * rb/insns2vm.rb : fix enbug
6160 2005-01-01(Sat) 06:00:32 +0900 Koichi Sasada <ko1@atdot.net>
6162 * test/test_jump.rb : add test (next with value)
6164 * yarvcore.h, yarvcore.c, compile.c, compile.h :
6165 raise compile error exception instead of rb_bug
6167 * yarvcore.c, evalc.patch : support "require"
6169 * test.rb : restore $" after evaluation with ruby
6171 * rb/insns2vm.rb : remove unnecesary each
6174 2004-12-17(Fri) 18:56:38 +0900 Koichi Sasada <ko1@atdot.net>
6176 * insns.def : fix newhash
6179 2004-12-15(Wed) 13:29:27 +0900 Koichi Sasada <ko1@atdot.net>
6181 * yarvcore.c : add version string
6183 * compile.c : fix rescure clause bug
6186 2004-12-14(Tue) 22:46:30 +0900 Koichi Sasada <ko1@atdot.net>
6188 * insns.def : add reput insn
6190 * vm.h : show stack cache registers when stack dump
6192 * rb/insns2vm.rb, compile.c : fix stack caching bugs
6195 2004-12-14(Tue) 00:51:58 +0900 Koichi Sasada <ko1@atdot.net>
6197 * insns2vm.rb, compile.c, tmpl/opt_sc.inc.tmpl : fix bugs
6199 * rb/mixc-asm.rb : added
6202 2004-12-14(Tue) 00:17:02 +0900 Koichi Sasada <ko1@atdot.net>
6204 * yarvcore.h, yarvcore.c, compile.c : fix SC bugs
6205 (SC state management)
6207 * extconf.rb : add option -[enable|disable]-opt-stack-caching
6209 * insns2vm.rb : accept CPPFLAGS options
6211 * vm.c : support restrore register for pc
6214 2004-12-13(Mon) 16:53:42 +0900 Koichi Sasada <ko1@atdot.net>
6216 * rb/insns2vm.rb : add macro INSN_IS_SC()
6219 2004-12-11(Sat) 10:51:44 +0900 Koichi Sasada <ko1@atdot.net>
6221 * insns.def, compile.c : support singleton method definition
6223 * test/test_method.rb : add test for above
6226 2004-12-11(Sat) 03:17:54 +0900 Koichi Sasada <ko1@atdot.net>
6228 * benchmark/*.rb : modify
6230 * extconf.rb : add $cleanfiles
6233 2004-12-08(Wed) 13:01:38 +0900 Koichi Sasada <ko1@atdot.net>
6235 * compile.c, insns.def : change to disable stack caching
6238 2004-12-07(Tue) 19:37:13 +0900 Koichi Sasada <ko1@atdot.net>
6240 * rb/insns2vm.rb : add default after
6242 * insns.def : fix to work on stack caching
6245 2004-12-07(Tue) 15:07:13 +0900 Koichi Sasada <ko1@atdot.net>
6247 * depend : add some dependency to *.inc files
6249 * vm.c : add "register" and asm("regname") descriptor
6251 * rb/insns2vm.rb, compile.c : add stack caching support
6253 * tmpl/opt_sc.inc.tmpl : added to above change
6255 * rb/makedocs.rb : fix file path
6257 * extconf.rb : fix option selection
6260 2004-12-06(Mon) 11:20:11 +0900 Koichi Sasada <ko1@atdot.net>
6262 * extconf.rb : add vm.asm target if compiler is gcc
6265 2004-12-06(Mon) 09:56:24 +0900 Koichi Sasada <ko1@atdot.net>
6267 * vm.h : rename method_frame's member block to block_ptr
6269 * extconf.rb : add "-fno-crossjumping" option when compiler
6272 * opt_operand.def : add unification insn send
6274 * rb/insns2vm.rb : define symbol instead of declare const
6275 variable (for more optmize on VC)
6277 * insns.def : move enter point in send
6280 2004-12-06(Mon) 04:53:51 +0900 Koichi Sasada <ko1@atdot.net>
6282 * compile.c, opt_operand.def, rb/insns2vm.rb, depend :
6283 support operand unification
6286 2004-12-05(Sun) 03:16:10 +0900 Koichi Sasada <ko1@atdot.net>
6288 * vm.c, insns.def : speed up throw/catch scheme
6291 2004-12-05(Sun) 01:47:05 +0900 Koichi Sasada <ko1@atdot.net>
6293 * vm.c : fix catch handler bugs
6295 * test/test_jump.rb : test_complex_jump added
6298 2004-12-03(Fri) 20:39:05 +0900 Koichi Sasada <ko1@atdot.net>
6300 * benchmark/contrib/mcq.rb : added
6301 (from URABE Syouhei)
6304 2004-12-03(Fri) 20:35:28 +0900 Koichi Sasada <ko1@atdot.net>
6306 * vm.c : support break in rb_yield block
6309 2004-12-03(Fri) 14:26:35 +0900 Koichi Sasada <ko1@atdot.net>
6311 * compile.c : support block local variable in current
6312 ruby specification (patche from Kent Sibilev)
6314 * insns.def : support attr_* (patch from Kent Sibilev)
6317 2004-12-02(Thu) 21:04:27 +0900 Koichi Sasada <ko1@atdot.net>
6319 * opt_operand.def : added
6322 2004-12-02(Thu) 13:20:41 +0900 Koichi Sasada <ko1@atdot.net>
6324 * yarvcore.c, vm.h, vm.c, insns.def, insnhelper.h, yarvutil.rb :
6325 add usage analisys framework
6327 * disasm.c : insn_operand_intern to separate function
6329 * benchmark/run.rb : run each benchmark on another process
6332 2004-12-01(Wed) 10:26:49 +0900 Koichi Sasada <ko1@atdot.net>
6334 * vm.c : yield check block is given
6336 * benchmark/bm_lists.rb : rename to bmx_lists.rb
6337 (because it's not work ... bug?)
6339 * insns.def : opt_* support other type calc
6342 2004-11-30(Tue) 16:14:54 +0900 Koichi Sasada <ko1@atdot.net>
6344 * benchmark/bm_so_array.rb : added
6346 * benchmark/bm_so_matrix.rb : added
6349 2004-11-30(Tue) 14:11:30 +0900 Koichi Sasada <ko1@atdot.net>
6351 * rb/getrev.rb : added
6353 * yarvcore.c : add YARVCore::REV, YARVCore::DATE constant
6356 2004-11-30(Tue) 13:05:42 +0900 Koichi Sasada <ko1@atdot.net>
6358 * compile.c : support NODE_OP_ASGN1 (incomplete)
6360 * insns.def : add dupn
6363 2004-11-30(Tue) 08:52:01 +0900 Koichi Sasada <ko1@atdot.net>
6365 * version.h : 0.0.0.f
6368 2004-11-30(Tue) 08:43:59 +0900 Koichi Sasada <ko1@atdot.net>
6370 * test/test_class.rb : add test_initialize and test_to_s
6372 * yarvsubst.c : use rb_funcall instead of yarv_funcall
6374 * evalc.patch : fix ruby's patch
6376 * benchmark/bm_so_*.rb : change naming rule. "bm_so_*" from
6379 * depend : tbench target item is ITEM env val (default: bmx_temp)
6381 * vm.c : show raw address if environment is in heap at dumping stack trace
6383 * vm.c : thread_call0 added
6385 * vm.c : fix thread_yield_light_invoke
6387 * yarv.h, yarvcore.c : remove yarv_funcall
6390 2004-11-29(Mon) 11:37:08 +0900 Koichi Sasada <ko1@atdot.net>
6392 * test/test/test_proc.rb : add test test_nestproc
6394 * yarvsubst.c : comment out yarv_Array_each
6396 * insns.def : restore lfp/dfp after call_cfunc
6398 * vm.c : fix stack dump routine
6400 * vm.c : impliment thread_funcall (temporarily)
6402 * yarv.h : add IS_YARV_WORKING(), SET_YARV_START(), SET_YARV_STOP()
6404 * yarvcore.c : remove check with yarv_in_work
6406 * evalc.patch : added
6409 2004-11-27(Sat) 00:19:52 +0900 Koichi Sasada <ko1@atdot.net>
6411 * yarvcore.c : free -> ruby_xfree
6414 2004-11-26(Fri) 02:11:11 +0900 Koichi Sasada <ko1@atdot.net>
6419 2004-11-22(Mon) 11:19:48 +0900 Koichi Sasada <ko1@atdot.net>
6421 * benchmark/bm_ackermann.rb, bm_proc.rb, bm_simpleiter.rb,
6422 bm_so_exception.rb, bm_wc.rb, wc.input added
6425 2004-11-22(Mon) 02:31:56 +0900 Koichi Sasada <ko1@atdot.net>
6427 * test/test_proc.rb : add some test
6429 * yarvcore.c, vm.c : support yield in C method (as rb_yield)
6431 * vm.c (thread_yield_light_(prepare|invoke)) : support lightweight
6436 * yarvcore.c, yarv.h : support yarv_is_working, yarv_block_given_p,
6437 yarv_yield, yarv_funcall (only dummy function)
6439 * vm.c : thread_eval_body changed return value
6441 * yarvsubst.c : added and add yarv_Integer_times, yarv_Array_each
6443 * yarvcore.h : block_ptr is added to struct thread_object
6445 * insns.def : pass block when C method call
6447 * insnhelper.h : add GET_ISEQOBJ(cfp) macro
6450 2004-11-21(Sun) 07:25:49 +0900 Koichi Sasada <ko1@atdot.net>
6452 * vm.c : support Proc#call
6454 * test/test_proc.rb : added
6457 2004-11-19(Fri) 18:04:10 +0900 Koichi Sasada <ko1@atdot.net>
6459 * insns.def, vm.c : support creating Proc object
6462 2004-11-15(Mon) 14:19:27 +0900 Koichi Sasada <ko1@atdot.net>
6464 * insns.def (send) : use clear_local_size to specify
6465 clear local table vars.
6467 * insns.def : block represent data shares lfp, dfp with frame data
6470 2004-11-13(Sat) 18:19:41 +0900 Koichi Sasada <ko1@atdot.net>
6472 * yarvcore.h, insns.def : add VM_CALL_ARGS_SPLAT_BIT and
6473 VM_CALL_ARGS_BLOCKARG_BIT
6475 * compile.c, compile.h : add ADD_SEND, ADD_SEND_R
6478 2004-11-10(Wed) 08:26:25 +0900 Koichi Sasada <ko1@atdot.net>
6480 * add "vm_" prefix to (block_object, proc_object, env_object)
6483 2004-11-03(Wed) 15:52:14 +0900 Koichi Sasada <ko1@atdot.net>
6485 * yarvcore.h, yarvcore.c, disasm.c, compile.c, insns.def, vm.c :
6486 fix to move x86_64 (illegal cast, etc)
6489 2004-11-01(Mon) 04:45:54 +0900 Koichi Sasada <ko1@atdot.net>
6491 * yarvcore.h, compile.c, debug.c, version.h :
6492 redesgin gc debug scheme (GC_CHECK())
6494 * yarvcore.c : mark iseqobj->current_block on GC
6496 * insns.def, compile.c : last "throw" in ensure/rescue block
6497 use operand throwobj and before this insn, use "getdynamic 0, 1"
6499 * benchmark/bm_temp.rb : move to benchmark bmx_temp.rb
6501 * depend : change some targets
6504 2004-10-25(Mon) 19:57:58 +0900 Koichi Sasada <ko1@atdot.net>
6506 * compile.c : push exception iseq to iseqobj->iseq_mark_ary
6510 2004-10-10(Sun) 16:25:03 +0900 Koichi Sasada <ko1@atdot.net>
6512 * compile.c : remove $_, $' area from method local frame
6513 and provide that's special method local variables pointer(LFP[-1])
6515 * disasm.c : change environment showing format
6517 * yarvcore.(h|c) : add YarvProc, YarvEnv
6519 * yarvcore.h : add arg_block field to iseq_object
6520 and init -1 as default value
6523 2004-09-30(Thu) 19:50:48 +0900 Koichi Sasada <ko1@atdot.net>
6525 * compile.c, insns.def : support passing splat argument
6527 * compile.c, insns.def : support rest argument
6529 * compile.c, insns.def : support optional argument initializer
6531 * test/test_method.rb : add tests for above
6534 2004-09-29(Wed) 10:50:03 +0900 Koichi Sasada <ko1@atdot.net>
6536 * compile.c : fix rescue clause popped
6538 * benchmark/bm_random.rb : move to benchmark/bmx_random.rb
6541 2004-09-29(Wed) 01:25:35 +0900 Koichi Sasada <ko1@atdot.net>
6543 * many many files: change stack frame design
6546 2004-09-16(Thu) 08:51:37 +0900 Koichi Sasada <ko1@atdot.net>
6548 * compile.c, yarvcore.h : support 'return' from method
6552 2004-09-13(Mon) 21:56:40 +0900 Koichi Sasada <ko1@atdot.net>
6554 * compile.c : support inline cache constant access
6555 on NODE_COLON2, NODE_COLON3
6557 * depend : add 'vtest' rule(verbose test)
6560 2004-09-13(Mon) 10:58:44 +0900 Koichi Sasada <ko1@atdot.net>
6562 * compile.c, yarvcore.h : support redo/next/break in
6566 2004-09-13(Mon) 08:50:19 +0900 Koichi Sasada <ko1@atdot.net>
6568 * test/test_jump.rb : added(correctly)
6570 * benchamark/bm_(ensure|rescue|simplereturn).rb added
6573 2004-09-12(Sun) 23:30:20 +0900 Koichi Sasada <ko1@atdot.net>
6575 * test/test_jump.rb : added
6577 * insns.def, compile.c : add 'putnil' insn
6579 * compile.c : use '===' when rescue check
6581 * insns.def : remove 'rescuecheck' insn
6583 * compile.c : support retry in begin/rescue clause
6588 2004-09-08(Wed) 12:34:04 +0900 Koichi Sasada <ko1@atdot.net>
6590 * yarvcore.h, yarvcore.c : add idThrow*
6592 * insns.def, compile.c, vm.c : support retry, break,
6593 next, redo, return(imcomplete)
6596 2004-09-03(Fri) 13:40:08 +0900 Koichi Sasada <ko1@atdot.net>
6598 * compile.c : add nop after rescue body
6600 * insns.def, vm.c : support stack rewind when thrown
6603 2004-09-01(Wed) 17:31:01 +0900 Koichi Sasada <ko1@atdot.net>
6605 * test/test_exception.rb : added
6608 2004-09-01(Wed) 13:15:14 +0900 Koichi Sasada <ko1@atdot.net>
6610 * vm.c, insns.def : implementing exception handling
6613 2004-09-01(Wed) 00:18:54 +0900 Koichi Sasada <ko1@atdot.net>
6615 * insns.def : add 'throw' insn
6617 * compile.c : support 'rescue' and 'ensure' clause
6619 * yarvcore.c, yarvcore.h : add 'catch_table' to iseq_struct
6622 2004-08-30(Mon) 19:06:12 +0900 Koichi Sasada <ko1@atdot.net>
6624 * compile.h : NEW_ISEQOBJ don't pass self as parent
6626 * compile.c : use NEW_CHILD_ISEQOBJ explicitly
6629 2004-08-29(Sun) 21:09:55 +0900 Koichi Sasada <ko1@atdot.net>
6631 * compile.c : trying to implement rescue/ensure
6633 * insns.def : fix yield bug(lfp, dfp link)
6636 2004-08-28(Sat) 13:52:15 +0900 Koichi Sasada <ko1@atdot.net>
6638 * compile.c : fix dvar bug
6640 * test/test_block.rb : add test
6642 * insns.def, insnhelper.h : remove unused source code
6645 2004-08-28(Sat) 08:51:26 +0900 Koichi Sasada <ko1@atdot.net>
6647 * compile.c : support NODE_DASGN
6649 * test/test_block.rb : add test
6652 2004-08-28(Sat) 08:13:04 +0900 Koichi Sasada <ko1@atdot.net>
6654 * compile.c, insns.def : support access to instance variable
6656 * test/test_class.rb : add test of instance variable
6658 * benchmark/bm_block.rb : added
6661 2004-08-28(Sat) 07:48:43 +0900 Koichi Sasada <ko1@atdot.net>
6663 * test/test_block.rb : fix block parameter name
6666 2004-08-28(Sat) 07:27:52 +0900 Koichi Sasada <ko1@atdot.net>
6668 * compile.c, insns.def : support method call with block
6669 and yield and add some functions
6671 * compile.c, insns.def : support dynavars accessor
6673 * test/test_block.rb : added
6675 * vm.c : fix block parameter stack dump
6678 2004-08-27(Fri) 23:56:47 +0900 Koichi Sasada <ko1@atdot.net>
6680 * compile.c(iseq_compile) : remove parameter iseqtype
6681 (this information can access via self)
6683 2004-08-27(Fri) 17:13:35 +0900 Koichi Sasada <ko1@atdot.net>
6685 * test/test_bin.rb : add test(absolute path constant)
6687 * yarvcore.h, compile.c(iseq_compile) : change parameter
6689 * insns.def(classdef) : fix bug
6692 2004-08-27(Fri) 04:53:13 +0900 Koichi Sasada <ko1@atdot.net>
6694 * insns.def : support setconstant, getconstant, classdef,
6697 * vm.h : fix debug levels and so on
6699 * vm.h : foo_WORD -> foo_WC
6701 * test/test_class.rb : added
6704 2004-08-25(Wed) 17:51:50 +0900 Koichi Sasada <ko1@atdot.net>
6706 * insns.def : fix getconstant/setconstant/classdef
6709 2004-08-25(Wed) 14:27:10 +0900 Koichi Sasada <ko1@atdot.net>
6711 * debug.[ch] : added
6713 * compile.c, disasm.c : use debug interface
6715 * compile.c : support some nodes
6717 * compile.c, rb/insns2vm.rb : remove TS_CPATH
6719 * insns.def : modify classdef/moduledef/singletonclassdef
6725 2004-08-18(Wed) 20:16:45 +0900 Koichi Sasada <ko1@atdot.net>
6727 * compile.c : fix case/when statement with empty else clause
6729 * insns.def : enable compile
6731 * yarvcore.h : add class search path scheme
6733 * test/test_syn.rb : add switch/case test case
6735 * tmpl/yarvarch.ja : update documents
6738 2004-05-22(Sat) 01:30:44 +0900 Koichi Sasada <ko1@atdot.net>
6740 * yarvutil.rb : add eval_in_wrap
6742 * test/test_*.rb : change to use eval_in_wrap
6745 2004-05-20(Thu) 02:50:32 +0900 Koichi Sasada <ko1@atdot.net>
6747 * support global variables
6749 * benchmark/bm_*.rb : add some benchmarks
6751 * compile.c : support NODE_ATTRASGN
6753 * compile.c : add debugi(...)
6756 2004-05-19(Wed) 23:19:38 +0900 Koichi Sasada <ko1@atdot.net>
6758 * test/test_method.rb : added
6761 2004-05-19(Wed) 22:56:09 +0900 Koichi Sasada <ko1@atdot.net>
6763 * insns.def : fix typo
6765 * benchmark/run.rb : sort benchmark order by filename
6767 * extconf.rb : use --enable/disable-xxx
6769 * version.h : ditto(don't touch to change yarv options)
6772 2004-05-19(Wed) 21:18:55 +0900 Koichi Sasada <ko1@atdot.net>
6774 * yarvutil.rb : added
6776 * test.rb, test/*, benchmark/run.rb : use yarvutil.rb
6778 * version.h : USE_OPTIMIZED_REGEXP_MATCH added
6780 * yarvcore.h : add idEqTilde
6782 * yarvcore.c(yarvcore_parse, yarvcore_eval) : require file and line
6785 * test/test_bin.rb : add regexp test
6787 * benchmark/bm_regexp.rb : added
6790 2004-05-19(Wed) 13:57:31 +0900 Koichi Sasada <ko1@atdot.net>
6792 * compile.c : add compile_dstr(self, node)
6794 * compile.c : support NODE_MATCH2, NODE_MATCH3, NODE_DXSTR
6796 * insns.def : add toregexp
6799 2004-05-18(Tue) 10:12:20 +0900 Koichi Sasada <ko1@atdot.net>
6801 * compile.c : support NODE_XDSTR
6803 * test/test_bin.rb : add test for above change
6806 2004-05-18(Tue) 09:46:33 +0900 Koichi Sasada <ko1@atdot.net>
6808 * insns.def(send) : store regs before call_cfunc
6811 2004-05-18(Tue) 08:55:17 +0900 Koichi Sasada <ko1@atdot.net>
6813 * compile.c : support NODE_DSTR, NODE_EVSTR
6815 * compile.c : support NODE_XSTR
6817 * insns.def : add tostring operation
6819 * rb/makedocs.rb : fix directory path
6821 * depend : add tbench rule
6823 * yarvcore.h : add 'exten ID idBackquote'
6826 2004-05-18(Tue) 00:09:48 +0900 Koichi Sasada <ko1@atdot.net>
6828 * version.h : add USE_OPTIMIZED_BASIC_OPERATION
6830 * yarvcore.h(struct thread_object) : add 'VALUE stat_insn_usage'
6833 2004-05-17(Mon) 11:28:55 +0900 Koichi Sasada <ko1@atdot.net>
6835 * version.h, insns.def, yarvcore.c : add FAKE_INLINE_METHOD_CACHE
6838 2004-05-17(Mon) 09:05:53 +0900 Koichi Sasada <ko1@atdot.net>
6840 * compile.c : fix generating opt_* insn process
6843 2004-05-17(Mon) 08:58:49 +0900 Koichi Sasada <ko1@atdot.net>
6845 * benchmark/(bm_tarai.rb, bm_fib.rb) : added
6848 2004-05-17(Mon) 08:20:12 +0900 Koichi Sasada <ko1@atdot.net>
6850 * benchmark/(bm_tak.rb, bm_reccount.rb) : added
6852 * insns.def : test method cache(incomplete)
6854 * insns.def : add expandarray insn
6856 * yarvcore.c(iseq_init) : add parameter 'parent'
6859 2004-05-17(Mon) 01:49:48 +0900 Koichi Sasada <ko1@atdot.net>
6861 * benchmark/run.rb, bm_factorial.rb, bm_whileloop.rb : added
6863 * insns.def(send) : set id to ruby_frame->orig_func
6865 * check behavior on mswin32 and cygwin
6867 * insns.def(send) : check stack overflow
6870 2004-05-16(Sun) 08:00:55 +0900 Koichi Sasada <ko1@atdot.net>
6872 * change frame structure(debugging)
6875 2004-05-14(Fri) 15:06:02 +0900 Koichi Sasada <ko1@atdot.net>
6877 * insns2vm.rb : support file name arguments
6880 2004-05-14(Fri) 04:33:09 +0900 Koichi Sasada <ko1@atdot.net>
6882 * insns.def : support (easy) constant
6885 2004-05-12(Wed) 01:51:48 +0900 Koichi Sasada <ko1@atdot.net>
6887 * rb/insns2vm.b : set directory prefix
6889 * disasm.c : fix bug
6892 2004-05-12(Wed) 00:00:17 +0900 Koichi Sasada <ko1@atdot.net>
6894 * vm.h, compiler.h, version.h : move *DEBUG defs to version.h
6897 2004-05-11(Tue) 23:00:11 +0900 Koichi Sasada <ko1@atdot.net>
6899 * vm.h, version.h, yarvcore.h : move gcc ver check to version.h
6900 and include version.h from yarvcore.h
6903 2004-05-11(Tue) 19:16:26 +0900 Koichi Sasada <ko1@atdot.net>
6905 * 0.0.0.d : imported
6909 add-log-time-format: (lambda ()
6910 (let* ((time (current-time))
6911 (diff (+ (cadr time) 32400))
6913 (hi (+ (car time) (/ diff 65536))))
6914 (format-time-string "%Y-%m-%d(%a) %H:%M:%S +900" (list hi lo) t)))