fix too much optimization for ||=

This commit is contained in:
Yukihiro "Matz" Matsumoto
2016-04-01 01:22:16 +09:00
parent d098d823de
commit e1e888e354
+6 -1
View File
@@ -1774,7 +1774,12 @@ codegen(codegen_scope *s, node *tree, int val)
int pos;
pop();
pos = genop_peep(s, MKOP_AsBx(name[0]=='|'?OP_JMPIF:OP_JMPNOT, cursp(), 0), NOVAL);
if (val) {
pos = genop(s, MKOP_AsBx(name[0]=='|'?OP_JMPIF:OP_JMPNOT, cursp(), 0));
}
else {
pos = genop_peep(s, MKOP_AsBx(name[0]=='|'?OP_JMPIF:OP_JMPNOT, cursp(), 0), NOVAL);
}
codegen(s, tree->cdr->cdr->car, VAL);
pop();
gen_assignment(s, tree->car, cursp(), val);