mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
Improve ec assertions.
This commit is contained in:
parent
63160a84b4
commit
6eef80d824
2 changed files with 7 additions and 17 deletions
8
cont.c
8
cont.c
|
@ -759,14 +759,6 @@ fiber_verify(const rb_fiber_t *fiber)
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#if VM_CHECK_MODE > 0
|
|
||||||
void
|
|
||||||
rb_ec_verify(const rb_execution_context_t *ec)
|
|
||||||
{
|
|
||||||
/* TODO */
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
inline static void
|
inline static void
|
||||||
fiber_status_set(rb_fiber_t *fiber, enum fiber_status s)
|
fiber_status_set(rb_fiber_t *fiber, enum fiber_status s)
|
||||||
{
|
{
|
||||||
|
|
16
vm.c
16
vm.c
|
@ -2443,6 +2443,8 @@ rb_execution_context_update(const rb_execution_context_t *ec)
|
||||||
{
|
{
|
||||||
/* update VM stack */
|
/* update VM stack */
|
||||||
if (ec->vm_stack) {
|
if (ec->vm_stack) {
|
||||||
|
VM_ASSERT(ec->cfp);
|
||||||
|
|
||||||
rb_control_frame_t *cfp = ec->cfp;
|
rb_control_frame_t *cfp = ec->cfp;
|
||||||
rb_control_frame_t *limit_cfp = (void *)(ec->vm_stack + ec->vm_stack_size);
|
rb_control_frame_t *limit_cfp = (void *)(ec->vm_stack + ec->vm_stack_size);
|
||||||
|
|
||||||
|
@ -2461,23 +2463,17 @@ rb_execution_context_update(const rb_execution_context_t *ec)
|
||||||
|
|
||||||
cfp = RUBY_VM_PREVIOUS_CONTROL_FRAME(cfp);
|
cfp = RUBY_VM_PREVIOUS_CONTROL_FRAME(cfp);
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
VM_ASSERT(!ec->cfp);
|
||||||
}
|
}
|
||||||
#if VM_CHECK_MODE > 0
|
|
||||||
void rb_ec_verify(const rb_execution_context_t *ec); /* cont.c */
|
|
||||||
rb_ec_verify(ec);
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
rb_execution_context_mark(const rb_execution_context_t *ec)
|
rb_execution_context_mark(const rb_execution_context_t *ec)
|
||||||
{
|
{
|
||||||
#if VM_CHECK_MODE > 0
|
|
||||||
void rb_ec_verify(const rb_execution_context_t *ec); /* cont.c */
|
|
||||||
rb_ec_verify(ec);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* mark VM stack */
|
/* mark VM stack */
|
||||||
if (ec->vm_stack) {
|
if (ec->vm_stack) {
|
||||||
|
VM_ASSERT(ec->cfp);
|
||||||
VALUE *p = ec->vm_stack;
|
VALUE *p = ec->vm_stack;
|
||||||
VALUE *sp = ec->cfp->sp;
|
VALUE *sp = ec->cfp->sp;
|
||||||
rb_control_frame_t *cfp = ec->cfp;
|
rb_control_frame_t *cfp = ec->cfp;
|
||||||
|
@ -2501,6 +2497,8 @@ rb_execution_context_mark(const rb_execution_context_t *ec)
|
||||||
|
|
||||||
cfp = RUBY_VM_PREVIOUS_CONTROL_FRAME(cfp);
|
cfp = RUBY_VM_PREVIOUS_CONTROL_FRAME(cfp);
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
VM_ASSERT(!ec->cfp);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* mark machine stack */
|
/* mark machine stack */
|
||||||
|
|
Loading…
Add table
Reference in a new issue