yugui
97d6c93b98
merges r20744 from trunk into ruby_1_9_1.
...
* vm_eval.c (vm_call0): NODE_ZSUPER supported. [ruby-core:20480]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20811 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-17 06:15:16 +00:00
yugui
237ad3e163
mreges r20743 from trunk into ruby_1_9_1.
...
* vm_eval.c (vm_call_super): uses method_missing().
* vm_eval.c (method_missing): get rid of too large alloca.
* vm_eval.c (rb_call0, method_missing): uses idMethodMissing.
* vm_method.c (rb_add_method, remove_method, rb_undef): uses
id__send__.
* vm_method.c (Init_eval_method): removed IDs which are defined as
immediate values.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-17 06:15:08 +00:00
yugui
2e52bda3c8
merges r20593 from trunk into ruby_1_9_1.
...
* compile.c (iseq_compile_each), gc.c (assign_heap_slot),
(gc_mark_children), parse.y (vtable_alloc, vtable_free, vtable_add),
proc.c (proc_to_s), thread.c (terminate_i, rb_thread_terminate_all),
(thread_start_func_2, blocking_region_begin, blocking_region_end),
(rb_thread_kill), thread_pthread.c (native_thread_create),
(ubf_pthread_cond_signal), vm.c (check_env, thread_free), vm_dump.c
(vm_env_dump_raw, vm_stack_dump_each, vm_thread_dump_state),
(vm_call0): use void pointer for %p.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20687 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-13 01:01:02 +00:00
akr
4efc3f78b0
* vm_eval.c (Init_vm_eval): define module_eval, class_eval and eval
...
here for rdoc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-25 18:04:34 +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
nobu
bcf9324e68
* vm_eval.c (vm_call_super): fixed typo, and get rid of too large
...
alloca. [ruby-core:17922]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18357 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-04 08:37:48 +00:00
mame
5874de95e8
* Add coverage measurement constant COVERAGE__. This constant is not
...
for casual use. Usage: (1) assign {} to COVERAGE__, (2) require or
load Ruby source file, and (3) COVERAGE__["sourcefilepath"] will
return an array whose elements represent number of executions per
line of source code.
* vm_core.h: add field of coverage array to iseq.
* iseq.c (prepare_iseq_build): ditto.
* insns.def (trace): update coverage array.
* parse.y (coverage): create and initialize coverage array.
* compile.h (ADD_TRACE): add trace instruction to update covearge
array.
* thread.c (clear_coverage): delete coverage array when forking.
Otherwise, double count of coverage may occur.
* lib/coverage.rb: sample coverage measurement tool.
* error.c: distinguish explicitly between parse_in_eval and
mild_compile_error.
* load.c: ditto.
* vm_eval.c: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-01 16:55:30 +00:00
ko1
d4cddaaa4c
* vm_eval.c (vm_call_super): fix to call method_missing.
...
[ruby-core:15719], [ruby-core:17340]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-26 21:52:44 +00:00
mame
f32f40cc49
* vm_eval.c (eval_string_with_cref): preserve parse_in_eval even if
...
exception raised.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-24 13:16:44 +00:00
ko1
9e324fdd3e
* vm.c, eval_intern.h (PASS_PASSED_BLOCK):
...
set a VM_FRAME_FLAG_PASSED flag to skip this frame when
searching ruby-level-cfp.
* eval.c, eval_intern.h, proc.c: fix to check cfp. if there is
no valid ruby-level-cfp, cause RuntimeError exception.
[ruby-dev:34128]
* vm_core.h, vm_evalbody.c, vm.c, vm_dump.c, vm_insnhelper.c,
insns.def: rename FRAME_MAGIC_* to VM_FRAME_MAGIC_*.
* KNOWNBUGS.rb, bootstraptest/test*.rb: move solved bugs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17084 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-10 21:46:43 +00:00
nobu
075530a685
* suppress warnings with -Wwrite-string.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-31 09:28:20 +00:00
nobu
74ae098a5d
* vm_eval.c: set properties.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-25 01:12:12 +00:00
ko1
ed68367f9e
* vm_eval.c: added. Some codes are moved from "eval.c"
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16579 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-24 18:25:26 +00:00