diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-07-26 10:28:21 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-07-26 10:28:21 +0000 |
commit | be5564a178ee453b7d6fedc7c312bec01e29dde2 (patch) | |
tree | ae1387d18aa71ee6359c1bfc6e055b216f090908 /insns.def | |
parent | 78e86f75ed7ba5b7cd0cbdd85b27c98e271fd2fc (diff) |
* vm_insnhelper.c: introduce rb_vm_pop_frame() and use it
instead of setting rb_thread_t::cfp directly.
* vm_insnhelper.c (vm_pop_frame): return the result of
finish frame or not.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55755 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'insns.def')
-rw-r--r-- | insns.def | 5 |
1 files changed, 1 insertions, 4 deletions
@@ -1128,9 +1128,7 @@ leave RUBY_VM_CHECK_INTS(th); - if (UNLIKELY(VM_FRAME_TYPE_FINISH_P(GET_CFP()))) { - vm_pop_frame(th); - + if (vm_pop_frame(th, GET_CFP(), GET_EP())) { #if OPT_CALL_THREADED_CODE th->retval = val; return 0; @@ -1139,7 +1137,6 @@ leave #endif } else { - vm_pop_frame(th); RESTORE_REGS(); } } |