mirror of
https://github.com/jerryscript-project/jerryscript.git
synced 2025-12-15 16:29:21 +00:00
Fix 'while' bytecode generation
This commit is contained in:
parent
78367993db
commit
9be0a85c1c
@ -190,7 +190,7 @@ CFLAGS_WERROR ?= -Werror
|
||||
CFLAGS_WFATAL_ERRORS ?= -Wfatal-errors
|
||||
|
||||
# Optimizations
|
||||
CFLAGS_OPTIMIZE ?= -Os -flto
|
||||
CFLAGS_OPTIMIZE ?= -O3 -flto
|
||||
CFLAGS_NO_OPTIMIZE ?= -O0
|
||||
LDFLAGS_OPTIMIZE ?=
|
||||
LDFLAGS_NO_OPTIMIZE ?=
|
||||
|
||||
@ -2847,7 +2847,7 @@ parse_while_statement (void)
|
||||
|
||||
STACK_PUSH (U16, OPCODE_COUNTER ());
|
||||
DUMP_OPCODE_2 (jmp_up, INVALID_VALUE, INVALID_VALUE);
|
||||
REWRITE_JMP (STACK_TOP (U16), jmp_up, OPCODE_COUNTER () - STACK_HEAD (U16, 3));
|
||||
REWRITE_JMP (STACK_TOP (U16), jmp_up, STACK_TOP (U16) - STACK_HEAD (U16, 3));
|
||||
REWRITE_COND_JMP (STACK_HEAD (U16, 2), is_false_jmp_down, OPCODE_COUNTER () - STACK_HEAD (U16, 2));
|
||||
|
||||
rewrite_rewritable_opcodes (REWRITABLE_CONTINUE, STACK_HEAD (U8, 2), STACK_HEAD (U16, 3));
|
||||
|
||||
@ -276,7 +276,7 @@ pp_opcode (opcode_counter_t oc, opcode_t opcode, bool is_rewrite)
|
||||
}
|
||||
case NAME_TO_ID (is_false_jmp_down):
|
||||
{
|
||||
pp_printf ("if (%s) goto %d;", opcode.data.is_false_jmp_down.value,
|
||||
pp_printf ("if (%s == false) goto %d;", opcode.data.is_false_jmp_down.value,
|
||||
oc + calc_opcode_counter_from_idx_idx (opcode.data.is_false_jmp_down.opcode_1,
|
||||
opcode.data.is_false_jmp_down.opcode_2));
|
||||
break;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user