aboutsummaryrefslogtreecommitdiffstats
path: root/vm_insnhelper.h
diff options
context:
space:
mode:
authorshyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-06-27 09:28:09 +0000
committershyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-06-27 09:28:09 +0000
commit6b534134a78e3e43c344682c3585e1abab015216 (patch)
treed11c5c2df90dd40086ab6e189e856219b1be098a /vm_insnhelper.h
parent8222d794f3ecf6cd93d537ee2f214b86975d1efc (diff)
downloadruby-6b534134a78e3e43c344682c3585e1abab015216.tar.gz
give up insn attr handles_frame
I introduced this mechanism in r62051 to speed things up. Later it was reported that the change causes problems. I searched for workarounds but nothing seemed appropriate. I hereby officially give it up. The idea to move ADD_PC around was a mistake. Fixes [Bug #14809] and [Bug #14834]. Signed-off-by: Urabe, Shyouhei <shyouhei@ruby-lang.org> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm_insnhelper.h')
-rw-r--r--vm_insnhelper.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/vm_insnhelper.h b/vm_insnhelper.h
index 25bd92f6fd..18e6139a03 100644
--- a/vm_insnhelper.h
+++ b/vm_insnhelper.h
@@ -111,8 +111,6 @@ enum vm_regan_acttype {
#define INC_SP(x) (VM_REG_SP += (COLLECT_USAGE_REGISTER_HELPER(SP, SET, (x))))
#define DEC_SP(x) (VM_REG_SP -= (COLLECT_USAGE_REGISTER_HELPER(SP, SET, (x))))
#define SET_SV(x) (*GET_SP() = (x))
- /* set current stack value as x */
-#define ADJ_SP(x) INC_SP(x)
/* instruction sequence C struct */
#define GET_ISEQ() (GET_CFP()->iseq)
@@ -192,6 +190,9 @@ enum vm_regan_acttype {
#define GET_BLOCK_HANDLER() (GET_LEP()[VM_ENV_DATA_INDEX_SPECVAL])
+#define WIDTH_OF_opt_send_without_block \
+ ((rb_snum_t)attr_width_opt_send_without_block(0, 0))
+
/**********************************************************/
/* deal with control flow 3: exception */
/**********************************************************/