From c279ac36155ccc5015066ae5ca47d7746801aae0 Mon Sep 17 00:00:00 2001 From: nobu Date: Mon, 13 Mar 2017 00:11:25 +0000 Subject: [PATCH] compile.c: compile flip-flop * compile.c (iseq_compile_each0): compile flip-flop directly. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57947 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- compile.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/compile.c b/compile.c index 118055954b..f6d8964fbb 100644 --- a/compile.c +++ b/compile.c @@ -6103,7 +6103,8 @@ iseq_compile_each0(rb_iseq_t *iseq, LINK_ANCHOR *const ret, NODE *node, int popp LABEL *lend = NEW_LABEL(line); LABEL *ltrue = NEW_LABEL(line); LABEL *lfalse = NEW_LABEL(line); - compile_branch_condition(iseq, ret, node, ltrue, lfalse); + CHECK(compile_flip_flop(iseq, ret, node, type == NODE_FLIP2, + ltrue, lfalse)); ADD_INSNL(ret, line, jump, lend); ADD_LABEL(ret, ltrue); ADD_INSN1(ret, line, putobject, Qtrue);