1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* cont.c (rb_fiber_s_new): revert initializing VM stack.

* yarvcore.c (th_init2): ditto.
* vm.c, vm.h: fix to stop using Qundef on VM stack.  According to
  this change, VM stack should not include Qundef value.
* insns.def (putundef): removed.
* compile.c (iseq_compile_each): ditto.
* eval.c (eval): fix spacing.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12621 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
ko1 2007-06-26 06:14:44 +00:00
parent 8bfcdf323f
commit 9315740101
8 changed files with 29 additions and 33 deletions

12
vm.h
View file

@ -222,16 +222,14 @@ default: \
/*
env{
env[0] // special (block or prev env)
env[1] // orphan
env[2] // in heap
env[3] // env object
env[4] // prev env val
env[1] // env object
env[2] // prev env val
};
*/
#define ORPHAN_ENV_P(env) ((env)[1] == Qundef)
#define ENV_IN_HEAP_P(env) ((env)[2] == Qundef)
#define ENV_VAL(env) ((env)[3])
#define ENV_IN_HEAP_P(th, env) \
(!((th)->stack < (env) && (env) < ((th)->stack + (th)->stack_size)))
#define ENV_VAL(env) ((env)[1])
#define FRAME_MAGIC_METHOD 0xfaffff11
#define FRAME_MAGIC_BLOCK 0xfaffff21