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

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
This commit is contained in:
nobu 2017-03-13 00:11:25 +00:00
parent dae32a40d9
commit c279ac3615

View file

@ -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);