@@ -7300,8 +7300,10 @@ wasm_loader_find_block_addr(WASMExecEnv *exec_env, BlockAddr *block_addr_cache,
7300
7300
case WASM_OP_SET_GLOBAL:
7301
7301
case WASM_OP_GET_GLOBAL_64:
7302
7302
case WASM_OP_SET_GLOBAL_64:
7303
+ #if WASM_ENABLE_SIMDE != 0
7303
7304
case WASM_OP_GET_GLOBAL_128:
7304
7305
case WASM_OP_SET_GLOBAL_128:
7306
+ #endif
7305
7307
case WASM_OP_SET_GLOBAL_AUX_STACK:
7306
7308
skip_leb_uint32(p, p_end); /* local index */
7307
7309
break;
@@ -9090,6 +9092,7 @@ preserve_referenced_local(WASMLoaderContext *loader_ctx, uint8 opcode,
9090
9092
bool *preserved, char *error_buf,
9091
9093
uint32 error_buf_size)
9092
9094
{
9095
+
9093
9096
uint32 i = 0;
9094
9097
int16 preserved_offset = (int16)local_index;
9095
9098
@@ -9113,11 +9116,13 @@ preserve_referenced_local(WASMLoaderContext *loader_ctx, uint8 opcode,
9113
9116
loader_ctx->preserved_local_offset++;
9114
9117
emit_label(EXT_OP_COPY_STACK_TOP);
9115
9118
}
9119
+ #if WASM_ENABLE_SIMDE != 0
9116
9120
else if (local_type == VALUE_TYPE_V128) {
9117
9121
if (loader_ctx->p_code_compiled)
9118
9122
loader_ctx->preserved_local_offset += 4;
9119
9123
emit_label(EXT_OP_COPY_STACK_TOP_V128);
9120
9124
}
9125
+ #endif
9121
9126
else {
9122
9127
if (loader_ctx->p_code_compiled)
9123
9128
loader_ctx->preserved_local_offset += 2;
@@ -9790,11 +9795,12 @@ reserve_block_ret(WASMLoaderContext *loader_ctx, uint8 opcode,
9790
9795
/* insert op_copy before else opcode */
9791
9796
if (opcode == WASM_OP_ELSE)
9792
9797
skip_label();
9793
-
9798
+ #if WASM_ENABLE_SIMDE != 0
9794
9799
if (cell == 4) {
9795
9800
emit_label(EXT_OP_COPY_STACK_TOP_V128);
9796
9801
}
9797
- else {
9802
+ #endif
9803
+ if (cell <= 2) {
9798
9804
emit_label(cell == 1 ? EXT_OP_COPY_STACK_TOP
9799
9805
: EXT_OP_COPY_STACK_TOP_I64);
9800
9806
}
@@ -13115,10 +13121,12 @@ wasm_loader_prepare_bytecode(WASMModule *module, WASMFunction *func,
13115
13121
emit_label(EXT_OP_TEE_LOCAL_FAST);
13116
13122
emit_byte(loader_ctx, (uint8)local_offset);
13117
13123
}
13124
+ #if WASM_ENABLE_SIMDE != 0
13118
13125
else if (local_type == VALUE_TYPE_V128) {
13119
13126
emit_label(EXT_OP_TEE_LOCAL_FAST_V128);
13120
13127
emit_byte(loader_ctx, (uint8)local_offset);
13121
13128
}
13129
+ #endif
13122
13130
else {
13123
13131
emit_label(EXT_OP_TEE_LOCAL_FAST_I64);
13124
13132
emit_byte(loader_ctx, (uint8)local_offset);
@@ -13213,11 +13221,12 @@ wasm_loader_prepare_bytecode(WASMModule *module, WASMFunction *func,
13213
13221
skip_label();
13214
13222
emit_label(WASM_OP_GET_GLOBAL_64);
13215
13223
}
13216
-
13224
+ #if WASM_ENABLE_SIMDE != 0
13217
13225
if (global_type == VALUE_TYPE_V128) {
13218
13226
skip_label();
13219
13227
emit_label(WASM_OP_GET_GLOBAL_128);
13220
13228
}
13229
+ #endif
13221
13230
#endif /* end of WASM_ENABLE_SIMDE */
13222
13231
emit_uint32(loader_ctx, global_idx);
13223
13232
PUSH_OFFSET_TYPE(global_type);
0 commit comments