nari
832d5a8329
* iseq.c (rb_iseq_clone): use longlife object and insert write barrier.
...
* vm_insnhelper.c (vm_cref_push): ditto.
* vm_insnhelper.h (COPY_CREF): insert write barrier.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-16 08:27:36 +00:00
ko1
a3a45fafa3
* vm.c (rb_vm_inc_const_missing_count, ruby_vm_const_missing_count):
...
added.
* vm_insnhelper.h: ditto.
* variable.c (rb_const_get_0), insns.def: Constants should not be
cached if const_missing is called. [ruby-core:21059] [Bug #967 ]
* bootstraptest/test_class.rb: add a test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21536 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-15 15:31:43 +00:00
ko1
f0da2e1657
* vm_insnhelper.c (vm_call_method): use class of method defined
...
instead of receiver's class on bmethod. fixes [ruby-core:20786]
* bootstraptest/test_method.rb: add a test for above.
* vm_insnhelper.c (vm_setup_method): remove unused parameter klass.
* vm_insnhelper.h (CALL_METHOD): ditto.
* insns.def, vm_eval.c: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20967 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-24 11:47:00 +00:00
nobu
fe867f47ac
* cont.c (fiber_status), template/insns.inc.tmpl (ruby_vminsn_type),
...
vm_insnhelper.h (BOP): ISO C forbids comma at end of enumerator
list.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-09 04:25:54 +00:00
ko1
7215c9af95
* vm.c, vm_insnhelper.h (ruby_vm_redefined_flag): apply optimization
...
patch proposed by Paul Brannan. [ruby-core:19171]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19762 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-12 03:28:49 +00:00
ko1
574027ba03
* vm_exec.c (vm_exec_core): add an UNLIKELY() hint.
...
* vm_insnhelper.h (BASIC_OP_UNREDEFINED_P): add a LIKELY() hint.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-28 07:13:06 +00:00
ko1
8cd252ac6f
* common.mk: clean up
...
- remove blockinlining.$(OBJEXT) to built
- make ENCODING_H_INCLDUES variable (include/ruby/encoding.h)
- make VM_CORE_H_INCLUDES variable (vm_core.h)
- simplify rules.
- make depends rule to output depend status using gcc -MM.
* include/ruby/mvm.h, include/ruby/vm.h: rename mvm.h to vm.h.
* include/ruby.h: ditto.
* load.c: add inclusion explicitly.
* enumerator.c, object.c, parse.y, thread.c, vm_dump.c:
remove useless inclusion.
* eval_intern.h: cleanup inclusion.
* vm_core.h: rb_thread_t should be defined in this file.
* vm_evalbody.c, vm_exec.c: rename vm_evalbody.c to vm_exec.c.
* vm.h, vm_exec.h: rename vm.h to vm_exec.h.
* insnhelper.h, vm_insnhelper.h: rename insnhelper.h to vm_insnhelper.h.
* vm.c, vm_insnhelper.c, vm_insnhelper.h:
- rename vm_eval() to vm_exec_core().
- rename vm_eval_body() to vm_exec().
- cleanup include order.
* vm_method.c: fix comment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-23 00:20:28 +00:00