|
@@ -7199,10 +7199,7 @@ re_scan:
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
#if WASM_ENABLE_FAST_INTERP != 0
|
|
#if WASM_ENABLE_FAST_INTERP != 0
|
|
|
- if (opcode == WASM_OP_BLOCK) {
|
|
|
|
|
- skip_label();
|
|
|
|
|
- }
|
|
|
|
|
- else if (opcode == WASM_OP_LOOP) {
|
|
|
|
|
|
|
+ if (opcode == WASM_OP_BLOCK || opcode == WASM_OP_LOOP) {
|
|
|
skip_label();
|
|
skip_label();
|
|
|
if (BLOCK_HAS_PARAM(block_type)) {
|
|
if (BLOCK_HAS_PARAM(block_type)) {
|
|
|
/* Make sure params are in dynamic space */
|
|
/* Make sure params are in dynamic space */
|
|
@@ -7210,8 +7207,10 @@ re_scan:
|
|
|
loader_ctx, false, error_buf, error_buf_size))
|
|
loader_ctx, false, error_buf, error_buf_size))
|
|
|
goto fail;
|
|
goto fail;
|
|
|
}
|
|
}
|
|
|
- (loader_ctx->frame_csp - 1)->code_compiled =
|
|
|
|
|
- loader_ctx->p_code_compiled;
|
|
|
|
|
|
|
+ if (opcode == WASM_OP_LOOP) {
|
|
|
|
|
+ (loader_ctx->frame_csp - 1)->code_compiled =
|
|
|
|
|
+ loader_ctx->p_code_compiled;
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
else if (opcode == WASM_OP_IF) {
|
|
else if (opcode == WASM_OP_IF) {
|
|
|
/* If block has parameters, we should make sure they are in
|
|
/* If block has parameters, we should make sure they are in
|