@@ -14,7 +14,6 @@ impl WasmiEngine {
14
14
pub ( crate ) fn new ( config : & mut Config ) -> Self {
15
15
let config = & mut config. module_config . config ;
16
16
// Force generated Wasm modules to never have features that Wasmi doesn't support.
17
- config. simd_enabled = false ;
18
17
config. relaxed_simd_enabled = false ;
19
18
config. threads_enabled = false ;
20
19
config. exceptions_enabled = false ;
@@ -35,6 +34,7 @@ impl WasmiEngine {
35
34
. wasm_extended_const ( config. extended_const_enabled )
36
35
. wasm_custom_page_sizes ( config. custom_page_sizes_enabled )
37
36
. wasm_memory64 ( config. memory64_enabled )
37
+ . wasm_simd ( config. simd_enabled )
38
38
. wasm_wide_arithmetic ( config. wide_arithmetic_enabled ) ;
39
39
Self {
40
40
engine : wasmi:: Engine :: new ( & wasmi_config) ,
@@ -175,7 +175,7 @@ impl From<&DiffValue> for wasmi::Val {
175
175
DiffValue :: I64 ( n) => WasmiValue :: I64 ( n) ,
176
176
DiffValue :: F32 ( n) => WasmiValue :: F32 ( wasmi:: core:: F32 :: from_bits ( n) ) ,
177
177
DiffValue :: F64 ( n) => WasmiValue :: F64 ( wasmi:: core:: F64 :: from_bits ( n) ) ,
178
- DiffValue :: V128 ( _ ) => unimplemented ! ( ) ,
178
+ DiffValue :: V128 ( n ) => WasmiValue :: V128 ( wasmi :: core :: V128 :: from ( n ) ) ,
179
179
DiffValue :: FuncRef { null } => {
180
180
assert ! ( null) ;
181
181
WasmiValue :: FuncRef ( wasmi:: FuncRef :: null ( ) )
@@ -197,6 +197,7 @@ impl From<wasmi::Val> for DiffValue {
197
197
WasmiValue :: I64 ( n) => DiffValue :: I64 ( n) ,
198
198
WasmiValue :: F32 ( n) => DiffValue :: F32 ( n. to_bits ( ) ) ,
199
199
WasmiValue :: F64 ( n) => DiffValue :: F64 ( n. to_bits ( ) ) ,
200
+ WasmiValue :: V128 ( n) => DiffValue :: V128 ( n. as_u128 ( ) ) ,
200
201
WasmiValue :: FuncRef ( f) => DiffValue :: FuncRef { null : f. is_null ( ) } ,
201
202
WasmiValue :: ExternRef ( e) => DiffValue :: ExternRef { null : e. is_null ( ) } ,
202
203
}
0 commit comments