diff options
Diffstat (limited to 'test')
30 files changed, 8514 insertions, 7273 deletions
diff --git a/test/binaryen.js/kitchen-sink.js.txt b/test/binaryen.js/kitchen-sink.js.txt index ae9e90509..83e3eee20 100644 --- a/test/binaryen.js/kitchen-sink.js.txt +++ b/test/binaryen.js/kitchen-sink.js.txt @@ -322,137 +322,137 @@ getExpressionInfo(f64.const)={"id":14,"type":4,"value":9.5} ) (drop (v128.not - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.abs - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.sqrt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.abs - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.sqrt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.trunc_sat_f32x4_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.trunc_sat_f32x4_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.trunc_sat_f64x2_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.trunc_sat_f64x2_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.convert_i32x4_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.convert_i32x4_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.convert_i64x2_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.convert_i64x2_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop @@ -649,610 +649,610 @@ getExpressionInfo(f64.const)={"id":14,"type":4,"value":9.5} ) (drop (i8x16.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.lt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.lt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.gt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.gt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.le_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.le_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.ge_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.ge_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.lt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.lt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.gt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.gt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.le_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.le_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.ge_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.ge_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.lt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.lt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.gt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.gt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.le_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.le_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.ge_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.ge_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.lt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.gt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.le - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.ge - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.ge - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.lt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.gt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.le - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.ge - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) ( - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ( - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ( - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) (drop (i8x16.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.add_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.add_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.sub_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.sub_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.add_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.add_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.sub_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.sub_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.div - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.min - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.max - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.div - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.min - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.max - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.extract_lane_s 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.extract_lane_u 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.extract_lane_s 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.extract_lane_u 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.extract_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.extract_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.extract_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.extract_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.replace_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 42) ) ) (drop (i8x16.replace_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 42) ) ) (drop (i32x4.replace_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 42) ) ) (drop (i64x2.replace_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i64.const 184683593770) ) ) (drop (f32x4.replace_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (f32.const 42) ) ) (drop (f64x2.replace_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (f64.const 42) ) ) (drop (i8x16.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i8x16.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i8x16.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i16x8.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i16x8.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i16x8.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i32x4.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i32x4.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i32x4.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i64x2.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i64x2.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i64x2.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (v8x16.shuffle 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (v128.bitselect - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (memory.init 0 @@ -3644,137 +3644,137 @@ getExpressionInfo(f64.const)={"id":14,"type":4,"value":9.5} ) (drop (v128.not - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.abs - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.sqrt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.abs - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.sqrt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.trunc_sat_f32x4_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.trunc_sat_f32x4_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.trunc_sat_f64x2_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.trunc_sat_f64x2_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.convert_i32x4_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.convert_i32x4_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.convert_i64x2_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.convert_i64x2_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop @@ -3971,610 +3971,610 @@ getExpressionInfo(f64.const)={"id":14,"type":4,"value":9.5} ) (drop (i8x16.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.lt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.lt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.gt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.gt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.le_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.le_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.ge_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.ge_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.lt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.lt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.gt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.gt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.le_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.le_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.ge_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.ge_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.lt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.lt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.gt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.gt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.le_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.le_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.ge_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.ge_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.lt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.gt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.le - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.ge - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.ge - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.lt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.gt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.le - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.ge - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) ( - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ( - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ( - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) (drop (i8x16.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.add_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.add_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.sub_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.sub_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.add_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.add_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.sub_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.sub_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.div - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.min - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.max - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.div - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.min - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.max - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.extract_lane_s 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.extract_lane_u 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.extract_lane_s 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.extract_lane_u 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.extract_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.extract_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.extract_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.extract_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.replace_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 42) ) ) (drop (i8x16.replace_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 42) ) ) (drop (i32x4.replace_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 42) ) ) (drop (i64x2.replace_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i64.const 184683593770) ) ) (drop (f32x4.replace_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (f32.const 42) ) ) (drop (f64x2.replace_lane 1 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (f64.const 42) ) ) (drop (i8x16.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i8x16.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i8x16.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i16x8.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i16x8.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i16x8.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i32x4.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i32x4.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i32x4.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i64x2.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i64x2.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i64x2.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (v8x16.shuffle 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (v128.bitselect - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (memory.init 0 diff --git a/test/binaryen.js/simd.js b/test/binaryen.js/simd.js new file mode 100644 index 000000000..a6055a267 --- /dev/null +++ b/test/binaryen.js/simd.js @@ -0,0 +1,5 @@ +var module = new Binaryen.Module(); + +var expr = module.v128.const([1, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 4, 0, 0, 0]); +var info = Binaryen.getExpressionInfo(expr); +console.log("v128.const i8x16 0x" + info.value.map(b => b.toString(16)).join(" 0x")); diff --git a/test/binaryen.js/simd.js.txt b/test/binaryen.js/simd.js.txt new file mode 100644 index 000000000..d4facdde5 --- /dev/null +++ b/test/binaryen.js/simd.js.txt @@ -0,0 +1 @@ +v128.const i8x16 0x1 0x0 0x0 0x0 0x2 0x0 0x0 0x0 0x3 0x0 0x0 0x0 0x4 0x0 0x0 0x0 diff --git a/test/crash/__init__.py b/test/crash/__init__.py new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/test/crash/__init__.py diff --git a/test/crash/test_features.py b/test/crash/test_features.py new file mode 100644 index 000000000..87521d4c0 --- /dev/null +++ b/test/crash/test_features.py @@ -0,0 +1,18 @@ +import unittest +from scripts.test.shared import WASM_OPT, run_process + + +class FeatureValidationTest(unittest.TestCase): + def test_simd_type(self): + module = """ + (module + (func $foo (param $0 v128) (result v128) + (local.get $0) + ) + ) + """ + p = run_process(WASM_OPT + ['--mvp-features', '--print'], + input=module, check=False, capture_output=True) + self.assertIn("all used types should be allowed", p.stderr) + self.assertIn("Fatal: error in validating input", p.stderr) + self.assertNotEqual(p.returncode, 0) diff --git a/test/example/c-api-kitchen-sink.txt b/test/example/c-api-kitchen-sink.txt index 7faee9cd6..0f8775092 100644 --- a/test/example/c-api-kitchen-sink.txt +++ b/test/example/c-api-kitchen-sink.txt @@ -282,137 +282,137 @@ BinaryenTypeAuto: -1 ) (drop (v128.not - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.abs - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.sqrt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.abs - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.sqrt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.trunc_sat_f32x4_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.trunc_sat_f32x4_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.trunc_sat_f64x2_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.trunc_sat_f64x2_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.convert_i32x4_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.convert_i32x4_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.convert_i64x2_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.convert_i64x2_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop @@ -609,619 +609,619 @@ BinaryenTypeAuto: -1 ) (drop (i8x16.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.lt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.lt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.gt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.gt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.le_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.le_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.ge_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.ge_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.lt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.lt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.gt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.gt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.le_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.le_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.ge_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.ge_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.lt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.lt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.gt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.gt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.le_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.le_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.ge_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.ge_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.lt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.gt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.le - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.ge - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.lt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.gt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.le - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.ge - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (v128.and - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (v128.or - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (v128.xor - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.add_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.add_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.sub_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.sub_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.add_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.add_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.sub_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.sub_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.div - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.min - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.max - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.div - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.min - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.max - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.extract_lane_s 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.extract_lane_u 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.extract_lane_s 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.extract_lane_u 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.extract_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.extract_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.extract_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.extract_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 42) ) ) (drop (i16x8.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 42) ) ) (drop (i32x4.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 42) ) ) (drop (i64x2.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i64.const 42) ) ) (drop (f32x4.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (f32.const 42) ) ) (drop (f64x2.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (f64.const 42) ) ) (drop (i8x16.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i8x16.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i8x16.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i16x8.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i16x8.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i16x8.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i32x4.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i32x4.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i32x4.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i64x2.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i64x2.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i64x2.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (v8x16.shuffle 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (v128.bitselect - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (memory.init 0 @@ -3583,137 +3583,137 @@ int main() { ) (drop (v128.not - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.abs - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.sqrt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.abs - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.sqrt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.trunc_sat_f32x4_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.trunc_sat_f32x4_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.trunc_sat_f64x2_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.trunc_sat_f64x2_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.convert_i32x4_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.convert_i32x4_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.convert_i64x2_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.convert_i64x2_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop @@ -3910,619 +3910,619 @@ int main() { ) (drop (i8x16.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.lt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.lt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.gt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.gt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.le_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.le_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.ge_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.ge_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.lt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.lt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.gt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.gt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.le_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.le_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.ge_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.ge_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.lt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.lt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.gt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.gt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.le_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.le_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.ge_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.ge_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.lt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.gt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.le - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.ge - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.lt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.gt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.le - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.ge - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (v128.and - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (v128.or - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (v128.xor - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.add_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.add_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.sub_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.sub_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.add_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.add_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.sub_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.sub_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.div - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.min - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.max - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.div - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.min - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.max - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.extract_lane_s 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.extract_lane_u 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.extract_lane_s 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.extract_lane_u 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.extract_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.extract_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.extract_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.extract_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 42) ) ) (drop (i16x8.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 42) ) ) (drop (i32x4.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 42) ) ) (drop (i64x2.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i64.const 42) ) ) (drop (f32x4.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (f32.const 42) ) ) (drop (f64x2.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (f64.const 42) ) ) (drop (i8x16.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i8x16.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i8x16.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i16x8.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i16x8.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i16x8.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i32x4.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i32x4.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i32x4.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i64x2.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i64x2.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i64x2.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (v8x16.shuffle 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (v128.bitselect - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (memory.init 0 diff --git a/test/example/c-api-kitchen-sink.txt.txt b/test/example/c-api-kitchen-sink.txt.txt index 443aa4d88..b7caa1bad 100644 --- a/test/example/c-api-kitchen-sink.txt.txt +++ b/test/example/c-api-kitchen-sink.txt.txt @@ -274,137 +274,137 @@ ) (drop (v128.not - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.any_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.all_true - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.abs - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.sqrt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.abs - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.neg - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.sqrt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.trunc_sat_f32x4_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.trunc_sat_f32x4_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.trunc_sat_f64x2_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.trunc_sat_f64x2_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.convert_i32x4_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.convert_i32x4_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.convert_i64x2_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.convert_i64x2_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop @@ -601,619 +601,619 @@ ) (drop (i8x16.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.lt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.lt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.gt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.gt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.le_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.le_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.ge_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.ge_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.lt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.lt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.gt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.gt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.le_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.le_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.ge_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.ge_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.lt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.lt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.gt_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.gt_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.le_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.le_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.ge_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.ge_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.lt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.gt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.le - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.ge - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.eq - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.ne - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.lt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.gt - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.le - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.ge - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (v128.and - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (v128.or - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (v128.xor - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.add_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.add_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.sub_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.sub_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.add_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.add_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.sub_saturate_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.sub_saturate_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.div - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.min - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.max - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.add - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.sub - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.mul - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.div - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.min - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.max - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.extract_lane_s 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.extract_lane_u 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.extract_lane_s 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i16x8.extract_lane_u 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i32x4.extract_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i64x2.extract_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f32x4.extract_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (f64x2.extract_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (i8x16.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 42) ) ) (drop (i16x8.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 42) ) ) (drop (i32x4.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 42) ) ) (drop (i64x2.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i64.const 42) ) ) (drop (f32x4.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (f32.const 42) ) ) (drop (f64x2.replace_lane 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (f64.const 42) ) ) (drop (i8x16.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i8x16.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i8x16.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i16x8.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i16x8.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i16x8.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i32x4.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i32x4.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i32x4.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i64x2.shl - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i64x2.shr_s - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (i64x2.shr_u - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (i32.const 1) ) ) (drop (v8x16.shuffle 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop (v128.bitselect - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (memory.init 0 diff --git a/test/lld/reserved_func_ptr.wast.jscall.out b/test/lld/reserved_func_ptr.wast.jscall.out deleted file mode 100644 index e176ba231..000000000 --- a/test/lld/reserved_func_ptr.wast.jscall.out +++ /dev/null @@ -1,359 +0,0 @@ -(module - (type $0 (func)) - (type $1 (func (param i32))) - (type $2 (func (param i32 i32) (result i32))) - (type $3 (func (param f32 f32 i32) (result f32))) - (type $4 (func (param f64 i32) (result f64))) - (type $5 (func (param i32 i32 i32))) - (type $6 (func (param i32) (result i32))) - (type $FUNCSIG$ii (func (param i32) (result i32))) - (type $FUNCSIG$viii (func (param i32 i32 i32))) - (type $FUNCSIG$didi (func (param i32 f64 i32) (result f64))) - (type $FUNCSIG$ddi (func (param f64 i32) (result f64))) - (type $FUNCSIG$fiffi (func (param i32 f32 f32 i32) (result f32))) - (type $FUNCSIG$fffi (func (param f32 f32 i32) (result f32))) - (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) - (type $FUNCSIG$iii (func (param i32 i32) (result i32))) - (type $FUNCSIG$vi (func (param i32))) - (type $FUNCSIG$v (func)) - (type $FUNCSIG$vii (func (param i32 i32))) - (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) - (type $legaltype$jsCall_fffi (func (param i32 f64 f64 i32) (result f64))) - (import "env" "_Z4atoiPKc" (func $_Z4atoiPKc (param i32) (result i32))) - (import "env" "jsCall_ddi" (func $jsCall_ddi (param i32 f64 i32) (result f64))) - (import "env" "jsCall_iii" (func $jsCall_iii (param i32 i32 i32) (result i32))) - (import "env" "jsCall_v" (func $jsCall_v (param i32))) - (import "env" "jsCall_vi" (func $jsCall_vi (param i32 i32))) - (import "env" "jsCall_viii" (func $jsCall_viii (param i32 i32 i32 i32))) - (import "env" "jsCall_fffi" (func $legalimport$jsCall_fffi (param i32 f64 f64 i32) (result f64))) - (memory $0 2) - (table $0 21 21 funcref) - (elem (i32.const 1) $_Z18address_taken_funciii $_Z19address_taken_func2iii $jsCall_ddi_0 $jsCall_ddi_1 $jsCall_ddi_2 $jsCall_fffi_0 $jsCall_fffi_1 $jsCall_fffi_2 $jsCall_iii_0 $jsCall_iii_1 $jsCall_iii_2 $jsCall_v_0 $jsCall_v_1 $jsCall_v_2 $jsCall_vi_0 $jsCall_vi_1 $jsCall_vi_2 $jsCall_viii_0 $jsCall_viii_1 $jsCall_viii_2) - (global $global$0 (mut i32) (i32.const 16384)) - (global $global$1 i32 (i32.const 66112)) - (global $global$2 i32 (i32.const 568)) - (export "memory" (memory $0)) - (export "__post_instantiate" (func $__wasm_call_ctors)) - (export "main" (func $main)) - (export "__heap_base" (global $global$1)) - (export "__data_end" (global $global$2)) - (export "stackSave" (func $stackSave)) - (export "stackAlloc" (func $stackAlloc)) - (export "stackRestore" (func $stackRestore)) - (export "__growWasmMemory" (func $__growWasmMemory)) - (export "dynCall_viii" (func $dynCall_viii)) - (func $_Z18address_taken_funciii (; 7 ;) (type $5) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) - (nop) - ) - (func $_Z19address_taken_func2iii (; 8 ;) (type $5) (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) - (nop) - ) - (func $main (; 9 ;) (type $2) (param $var$0 i32) (param $var$1 i32) (result i32) - (local $var$2 i32) - (local $var$3 i32) - (local $var$4 i32) - (local $var$5 i32) - (local.set $var$2 - (call $_Z4atoiPKc - (i32.load offset=4 - (local.get $var$1) - ) - ) - ) - (local.set $var$3 - (call $_Z4atoiPKc - (i32.load offset=8 - (local.get $var$1) - ) - ) - ) - (local.set $var$4 - (call $_Z4atoiPKc - (i32.load offset=12 - (local.get $var$1) - ) - ) - ) - (local.set $var$5 - (call $_Z4atoiPKc - (i32.load offset=16 - (local.get $var$1) - ) - ) - ) - (local.set $var$1 - (call $_Z4atoiPKc - (i32.load offset=20 - (local.get $var$1) - ) - ) - ) - (call_indirect (type $0) - (local.get $var$2) - ) - (call_indirect (type $1) - (i32.const 3) - (local.get $var$3) - ) - (drop - (call_indirect (type $2) - (i32.const 4) - (i32.const 5) - (local.get $var$4) - ) - ) - (drop - (call_indirect (type $3) - (f32.const 3.0999999046325684) - (f32.const 4.199999809265137) - (i32.const 5) - (local.get $var$5) - ) - ) - (drop - (call_indirect (type $4) - (f64.const 4.2) - (i32.const 5) - (local.get $var$1) - ) - ) - (call_indirect (type $5) - (i32.const 1) - (i32.const 2) - (i32.const 3) - (select - (i32.const 1) - (i32.const 2) - (i32.gt_s - (local.get $var$0) - (i32.const 3) - ) - ) - ) - (i32.const 0) - ) - (func $__wasm_call_ctors (; 10 ;) (type $0) - (nop) - ) - (func $stackSave (; 11 ;) (result i32) - (global.get $global$0) - ) - (func $stackAlloc (; 12 ;) (param $0 i32) (result i32) - (local $1 i32) - (global.set $global$0 - (local.tee $1 - (i32.and - (i32.sub - (global.get $global$0) - (local.get $0) - ) - (i32.const -16) - ) - ) - ) - (local.get $1) - ) - (func $stackRestore (; 13 ;) (param $0 i32) - (global.set $global$0 - (local.get $0) - ) - ) - (func $__growWasmMemory (; 14 ;) (param $newSize i32) (result i32) - (grow_memory - (local.get $newSize) - ) - ) - (func $dynCall_viii (; 15 ;) (param $fptr i32) (param $0 i32) (param $1 i32) (param $2 i32) - (call_indirect (type $FUNCSIG$viii) - (local.get $0) - (local.get $1) - (local.get $2) - (local.get $fptr) - ) - ) - (func $jsCall_ddi_0 (; 16 ;) (param $0 f64) (param $1 i32) (result f64) - (call $jsCall_ddi - (i32.const 0) - (local.get $0) - (local.get $1) - ) - ) - (func $jsCall_ddi_1 (; 17 ;) (param $0 f64) (param $1 i32) (result f64) - (call $jsCall_ddi - (i32.const 1) - (local.get $0) - (local.get $1) - ) - ) - (func $jsCall_ddi_2 (; 18 ;) (param $0 f64) (param $1 i32) (result f64) - (call $jsCall_ddi - (i32.const 2) - (local.get $0) - (local.get $1) - ) - ) - (func $jsCall_fffi_0 (; 19 ;) (param $0 f32) (param $1 f32) (param $2 i32) (result f32) - (call $legalfunc$jsCall_fffi - (i32.const 0) - (local.get $0) - (local.get $1) - (local.get $2) - ) - ) - (func $jsCall_fffi_1 (; 20 ;) (param $0 f32) (param $1 f32) (param $2 i32) (result f32) - (call $legalfunc$jsCall_fffi - (i32.const 1) - (local.get $0) - (local.get $1) - (local.get $2) - ) - ) - (func $jsCall_fffi_2 (; 21 ;) (param $0 f32) (param $1 f32) (param $2 i32) (result f32) - (call $legalfunc$jsCall_fffi - (i32.const 2) - (local.get $0) - (local.get $1) - (local.get $2) - ) - ) - (func $jsCall_iii_0 (; 22 ;) (param $0 i32) (param $1 i32) (result i32) - (call $jsCall_iii - (i32.const 0) - (local.get $0) - (local.get $1) - ) - ) - (func $jsCall_iii_1 (; 23 ;) (param $0 i32) (param $1 i32) (result i32) - (call $jsCall_iii - (i32.const 1) - (local.get $0) - (local.get $1) - ) - ) - (func $jsCall_iii_2 (; 24 ;) (param $0 i32) (param $1 i32) (result i32) - (call $jsCall_iii - (i32.const 2) - (local.get $0) - (local.get $1) - ) - ) - (func $jsCall_v_0 (; 25 ;) - (call $jsCall_v - (i32.const 0) - ) - ) - (func $jsCall_v_1 (; 26 ;) - (call $jsCall_v - (i32.const 1) - ) - ) - (func $jsCall_v_2 (; 27 ;) - (call $jsCall_v - (i32.const 2) - ) - ) - (func $jsCall_vi_0 (; 28 ;) (param $0 i32) - (call $jsCall_vi - (i32.const 0) - (local.get $0) - ) - ) - (func $jsCall_vi_1 (; 29 ;) (param $0 i32) - (call $jsCall_vi - (i32.const 1) - (local.get $0) - ) - ) - (func $jsCall_vi_2 (; 30 ;) (param $0 i32) - (call $jsCall_vi - (i32.const 2) - (local.get $0) - ) - ) - (func $jsCall_viii_0 (; 31 ;) (param $0 i32) (param $1 i32) (param $2 i32) - (call $jsCall_viii - (i32.const 0) - (local.get $0) - (local.get $1) - (local.get $2) - ) - ) - (func $jsCall_viii_1 (; 32 ;) (param $0 i32) (param $1 i32) (param $2 i32) - (call $jsCall_viii - (i32.const 1) - (local.get $0) - (local.get $1) - (local.get $2) - ) - ) - (func $jsCall_viii_2 (; 33 ;) (param $0 i32) (param $1 i32) (param $2 i32) - (call $jsCall_viii - (i32.const 2) - (local.get $0) - (local.get $1) - (local.get $2) - ) - ) - (func $legalfunc$jsCall_fffi (; 34 ;) (param $0 i32) (param $1 f32) (param $2 f32) (param $3 i32) (result f32) - (f32.demote_f64 - (call $legalimport$jsCall_fffi - (local.get $0) - (f64.promote_f32 - (local.get $1) - ) - (f64.promote_f32 - (local.get $2) - ) - (local.get $3) - ) - ) - ) -) -(; ---BEGIN METADATA -- -{ - "staticBump": 0, - "tableSize": 21, - "initializers": [ - "__post_instantiate" - ], - "jsCallStartIndex": 3, - "jsCallFuncType": [ - "ddi", - "fffi", - "iii", - "v", - "vi", - "viii" - ], - "declares": [ - "_Z4atoiPKc" - ], - "externs": [ - ], - "implementedFunctions": [ - "___post_instantiate", - "_main", - "_stackSave", - "_stackAlloc", - "_stackRestore", - "___growWasmMemory", - "_dynCall_viii" - ], - "exports": [ - "memory", - "__post_instantiate", - "main", - "__heap_base", - "__data_end", - "stackSave", - "stackAlloc", - "stackRestore", - "__growWasmMemory", - "dynCall_viii" - ], - "invokeFuncs": [ - ] -} --- END METADATA -- -;) diff --git a/test/passes/O3_low-memory-unused_metrics.txt b/test/passes/O3_low-memory-unused_metrics.txt index 0978d3715..86a686570 100644 --- a/test/passes/O3_low-memory-unused_metrics.txt +++ b/test/passes/O3_low-memory-unused_metrics.txt @@ -1,30 +1,44 @@ total + [exports] : 1 [funcs] : 1 - [imports] : 2 - [total] : 1601 - [vars] : 13 - binary : 213 - block : 77 - break : 100 + [imports] : 10 + [memory-data] : 0 + [table-data] : 0 + [total] : 1965 + [vars] : 9 + binary : 241 + block : 68 + break : 90 + call : 22 call_indirect : 1 - const : 162 - drop : 16 - if : 35 - load : 230 - local.get : 449 - local.set : 173 - loop : 6 - return : 4 - select : 10 - store : 86 - unary : 23 - unreachable : 16 + const : 176 + drop : 8 + if : 27 + load : 313 + local.get : 633 + local.set : 181 + loop : 3 + return : 3 + select : 11 + store : 160 + unary : 28 (module - (type $2 (func (param i32 i32) (result i32))) - (import "env" "memory" (memory $0 256 256)) - (import "env" "__indirect_function_table" (table $0 10 funcref)) - (export "deflate" (func $deflate)) - (func $deflate (; 0 ;) (; has Stack IR ;) (type $2) (param $0 i32) (param $1 i32) (result i32) + (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) + (type $FUNCSIG$iii (func (param i32 i32) (result i32))) + (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) + (type $FUNCSIG$vi (func (param i32))) + (import "env" "memory" (memory $0 4096 4096)) + (import "env" "table" (table $0 10 funcref)) + (import "env" "crc32" (func $fimport$14 (param i32 i32 i32) (result i32))) + (import "env" "adler32" (func $fimport$15 (param i32 i32 i32) (result i32))) + (import "env" "deflate_huff" (func $fimport$20 (param i32 i32) (result i32))) + (import "env" "deflate_rle" (func $fimport$21 (param i32 i32) (result i32))) + (import "env" "_tr_stored_block" (func $fimport$29 (param i32 i32 i32 i32))) + (import "env" "_tr_align" (func $fimport$30 (param i32))) + (import "env" "memset" (func $fimport$97 (param i32 i32 i32) (result i32))) + (import "env" "memcpy" (func $fimport$98 (param i32 i32 i32) (result i32))) + (export "deflate" (func $0)) + (func $0 (; 8 ;) (; has Stack IR ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -34,867 +48,1366 @@ total (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) (local.set $3 (i32.const -2) ) - (block $folding-inner5 - (block $folding-inner4 - (block $folding-inner3 - (block $folding-inner2 - (block $folding-inner1 - (block $folding-inner0 - (block $label$1 - (br_if $label$1 - (i32.eqz - (local.get $0) - ) - ) - (br_if $label$1 - (i32.gt_u - (local.get $1) - (i32.const 5) - ) - ) - (br_if $label$1 - (i32.eqz - (local.tee $2 - (i32.load offset=28 - (local.get $0) - ) - ) - ) - ) - (block $label$2 - (block $label$3 - (br_if $label$3 - (i32.eqz - (i32.load offset=12 - (local.get $0) - ) - ) - ) - (if - (i32.eqz - (i32.load - (local.get $0) - ) - ) - (br_if $label$3 - (i32.load offset=4 - (local.get $0) - ) - ) - ) - (local.set $3 - (i32.load offset=4 - (local.get $2) - ) - ) - (br_if $label$2 - (i32.eq - (local.get $1) - (i32.const 4) - ) - ) - (br_if $label$2 - (i32.ne - (local.get $3) - (i32.const 666) - ) - ) - ) - (i32.store offset=24 - (local.get $0) - (i32.load - (i32.const 15792) - ) - ) - (return - (i32.const -2) - ) - ) - (br_if $folding-inner0 - (i32.eqz - (i32.load offset=16 - (local.get $0) - ) - ) - ) - (i32.store - (local.get $2) + (block $folding-inner1 + (block $folding-inner0 + (block $label$1 + (br_if $label$1 + (i32.eqz + (local.get $0) + ) + ) + (br_if $label$1 + (i32.gt_u + (local.get $1) + (i32.const 5) + ) + ) + (br_if $label$1 + (i32.eqz + (local.tee $2 + (i32.load offset=28 + (local.get $0) + ) + ) + ) + ) + (block $label$2 + (block $label$3 + (br_if $label$3 + (i32.eqz + (i32.load offset=12 (local.get $0) ) - (local.set $14 - (i32.load offset=40 - (local.get $2) - ) + ) + ) + (if + (i32.eqz + (i32.load + (local.get $0) ) - (i32.store offset=40 - (local.get $2) - (local.get $1) + ) + (br_if $label$3 + (i32.load offset=4 + (local.get $0) ) - (if - (i32.eq - (local.get $3) - (i32.const 42) - ) - (block - (if - (i32.eq - (i32.load offset=24 - (local.get $2) - ) - (i32.const 2) - ) - (unreachable) - ) - (local.set $4 - (i32.add - (i32.shl - (i32.load offset=48 - (local.get $2) - ) - (i32.const 12) - ) - (i32.const -30720) - ) - ) - (local.set $3 - (i32.const 0) - ) - (block $label$24 - (br_if $label$24 - (i32.gt_s - (i32.load offset=136 - (local.get $2) - ) - (i32.const 1) - ) - ) - (br_if $label$24 - (i32.lt_s - (local.tee $6 - (i32.load offset=132 - (local.get $2) - ) - ) - (i32.const 2) - ) - ) - (local.set $3 - (i32.const 64) - ) - (br_if $label$24 - (i32.lt_s - (local.get $6) - (i32.const 6) - ) - ) - (local.set $3 - (select - (i32.const 128) - (i32.const 192) - (i32.eq - (local.get $6) - (i32.const 6) - ) - ) - ) - ) - (i32.store offset=4 - (local.get $2) - (i32.const 113) - ) - (i32.store offset=20 - (local.get $2) - (i32.add - (local.tee $9 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $9) - (i32.load offset=8 - (local.get $2) - ) - ) - (i32.shr_u - (local.tee $3 - (select - (i32.or - (local.tee $3 - (i32.or + ) + ) + (local.set $3 + (i32.load offset=4 + (local.get $2) + ) + ) + (br_if $label$2 + (i32.eq + (local.get $1) + (i32.const 4) + ) + ) + (br_if $label$2 + (i32.ne + (local.get $3) + (i32.const 666) + ) + ) + ) + (i32.store offset=24 + (local.get $0) + (i32.load + (i32.const 16992) + ) + ) + (return + (i32.const -2) + ) + ) + (if + (i32.eqz + (i32.load offset=16 + (local.get $0) + ) + ) + (br $folding-inner0) + ) + (i32.store + (local.get $2) + (local.get $0) + ) + (local.set $7 + (i32.load offset=40 + (local.get $2) + ) + ) + (i32.store offset=40 + (local.get $2) + (local.get $1) + ) + (block $label$6 + (block $label$7 + (block $label$8 + (block $label$9 + (block $label$10 + (block $label$11 + (block $label$12 + (block $label$13 + (block $label$14 + (block $label$15 + (block $label$16 + (if + (i32.eq (local.get $3) - (local.get $4) + (i32.const 42) ) - ) - (i32.const 32) - ) - (local.get $3) - (i32.load offset=108 - (local.get $2) - ) - ) - ) - (i32.const 8) - ) - ) - (i32.store offset=20 - (local.get $2) - (i32.add - (local.tee $4 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $4) - (i32.load offset=8 - (local.get $2) - ) - ) - (i32.xor - (i32.or - (i32.rem_u - (local.get $3) - (i32.const 31) - ) - (local.get $3) - ) - (i32.const 31) - ) - ) - (if - (i32.load offset=108 - (local.get $2) - ) - (block - (local.set $9 - (i32.load offset=48 - (local.get $0) - ) - ) - (i32.store offset=20 - (local.get $2) - (i32.add - (local.tee $7 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $7) - (i32.load offset=8 - (local.get $2) - ) - ) - (i32.shr_u - (local.get $9) - (i32.const 24) - ) - ) - (i32.store offset=20 - (local.get $2) - (i32.add - (local.tee $7 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $7) - (i32.load offset=8 - (local.get $2) - ) - ) - (i32.shr_u - (local.get $9) - (i32.const 16) - ) - ) - (local.set $9 - (i32.load offset=48 - (local.get $0) - ) - ) - (i32.store offset=20 - (local.get $2) - (i32.add - (local.tee $7 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $7) - (i32.load offset=8 - (local.get $2) - ) - ) - (i32.shr_u - (local.get $9) - (i32.const 8) - ) - ) - (i32.store offset=20 - (local.get $2) - (i32.add - (local.tee $7 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $7) - (i32.load offset=8 - (local.get $2) - ) - ) - (local.get $9) - ) - ) - ) - (unreachable) - ) - ) - (block $label$6 - (block $label$7 - (block $label$8 - (block $label$9 - (block $label$10 - (block $label$11 - (block $label$12 - (block $label$13 - (block $label$14 + (block (if (i32.eq - (local.get $3) - (i32.const 69) + (i32.load offset=24 + (local.get $2) + ) + (i32.const 2) ) (block - (block $label$26 - (if - (i32.load offset=16 - (local.tee $4 - (i32.load offset=28 - (local.get $2) + (i32.store offset=48 + (local.get $0) + (call $fimport$14 + (i32.const 0) + (i32.const 0) + (i32.const 0) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $3 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $3) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.const 31) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $3 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $3) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.const 139) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $3 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $3) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.const 8) + ) + (if + (i32.eqz + (local.tee $3 + (i32.load offset=28 + (local.get $2) + ) + ) + ) + (block + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $3 + (i32.load offset=20 + (local.get $2) + ) ) + (i32.const 1) ) ) - (block - (local.set $3 - (i32.load offset=20 + (i32.store8 + (i32.add + (local.get $3) + (i32.load offset=8 (local.get $2) ) ) - (br_if $label$26 - (i32.ge_u - (local.tee $6 - (i32.load offset=32 - (local.get $2) - ) + (i32.const 0) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $3 + (i32.load offset=20 + (local.get $2) ) - (i32.load16_u offset=20 - (local.get $4) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $3) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.const 0) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $3 + (i32.load offset=20 + (local.get $2) ) ) + (i32.const 1) ) - (local.set $9 - (local.get $0) + ) + (i32.store8 + (i32.add + (local.get $3) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.const 0) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $3 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) ) - (local.set $13 - (local.tee $10 + ) + (i32.store8 + (i32.add + (local.get $3) + (i32.load offset=8 (local.get $2) ) ) - (local.set $5 + (i32.const 0) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $3 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add (local.get $3) + (i32.load offset=8 + (local.get $2) + ) ) - (loop $label$28 - (if - (i32.eq - (i32.load offset=12 - (local.get $10) - ) - (local.get $3) + (i32.const 0) + ) + (local.set $3 + (i32.const 2) + ) + (if + (i32.ne + (local.tee $4 + (i32.load offset=132 + (local.get $2) ) - (block - (block $label$30 - (br_if $label$30 - (i32.le_u - (local.get $3) - (local.get $5) - ) - ) - (br_if $label$30 - (i32.eqz - (i32.load offset=44 - (local.get $4) - ) - ) - ) - (drop - (i32.load offset=48 - (local.get $9) - ) - ) - (drop - (i32.load offset=8 - (local.get $13) - ) - ) - (unreachable) - ) - (if - (select - (local.tee $3 - (i32.load offset=16 - (local.get $0) - ) - ) - (local.tee $4 - (i32.load offset=20 - (local.tee $6 - (i32.load offset=28 - (local.get $0) - ) - ) - ) - ) - (i32.gt_u - (local.get $4) - (local.get $3) - ) - ) - (block - (drop - (i32.load offset=12 - (local.get $0) - ) - ) - (drop - (i32.load offset=16 - (local.get $6) - ) - ) - (unreachable) - ) - ) - (local.set $4 - (i32.load offset=28 - (local.get $2) - ) - ) - (br_if $label$26 - (i32.eq - (local.tee $3 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.load offset=12 - (local.get $10) - ) - ) - ) - (local.set $6 - (i32.load offset=32 + ) + (i32.const 9) + ) + (local.set $3 + (select + (i32.const 4) + (i32.shl + (i32.gt_s + (i32.load offset=136 (local.get $2) ) + (i32.const 1) ) - (local.set $5 - (local.get $3) - ) + (i32.const 2) + ) + (i32.lt_s + (local.get $4) + (i32.const 2) ) ) - (local.set $4 - (i32.load8_u - (i32.add - (i32.load offset=16 - (local.get $4) - ) - (local.get $6) - ) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $4 + (i32.load offset=20 + (local.get $2) ) ) - (i32.store offset=20 + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $4) + (i32.load offset=8 (local.get $2) - (i32.add - (local.get $3) - (i32.const 1) + ) + ) + (local.get $3) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $3 + (i32.load offset=20 + (local.get $2) ) ) - (i32.store8 - (i32.add - (i32.load offset=8 - (local.get $13) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $3) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.const 3) + ) + (i32.store offset=4 + (local.get $2) + (i32.const 113) + ) + (br $label$6) + ) + ) + (local.set $4 + (i32.load offset=36 + (local.get $3) + ) + ) + (local.set $5 + (i32.load offset=28 + (local.get $3) + ) + ) + (local.set $6 + (i32.load offset=16 + (local.get $3) + ) + ) + (local.set $8 + (i32.load offset=44 + (local.get $3) + ) + ) + (local.set $9 + (i32.load + (local.get $3) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $10 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (local.set $3 + (i32.const 2) + ) + (i32.store8 + (i32.add + (local.get $10) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.or + (i32.or + (i32.or + (i32.or + (i32.shl + (i32.ne + (local.get $8) + (i32.const 0) ) + (i32.const 1) + ) + (i32.ne + (local.get $9) + (i32.const 0) + ) + ) + (i32.shl + (i32.ne + (local.get $6) + (i32.const 0) + ) + (i32.const 2) + ) + ) + (i32.shl + (i32.ne + (local.get $5) + (i32.const 0) + ) + (i32.const 3) + ) + ) + (i32.shl + (i32.ne + (local.get $4) + (i32.const 0) + ) + (i32.const 4) + ) + ) + ) + (local.set $4 + (i32.load offset=4 + (i32.load offset=28 + (local.get $2) + ) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $5 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $5) + (i32.load offset=8 + (local.get $2) + ) + ) + (local.get $4) + ) + (local.set $4 + (i32.load offset=4 + (i32.load offset=28 + (local.get $2) + ) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $5 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $5) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.shr_u + (local.get $4) + (i32.const 8) + ) + ) + (local.set $4 + (i32.load16_u offset=6 + (i32.load offset=28 + (local.get $2) + ) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $5 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $5) + (i32.load offset=8 + (local.get $2) + ) + ) + (local.get $4) + ) + (local.set $4 + (i32.load8_u offset=7 + (i32.load offset=28 + (local.get $2) + ) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $5 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $5) + (i32.load offset=8 + (local.get $2) + ) + ) + (local.get $4) + ) + (if + (i32.ne + (local.tee $4 + (i32.load offset=132 + (local.get $2) + ) + ) + (i32.const 9) + ) + (local.set $3 + (select + (i32.const 4) + (i32.shl + (i32.gt_s + (i32.load offset=136 + (local.get $2) + ) + (i32.const 1) + ) + (i32.const 2) + ) + (i32.lt_s + (local.get $4) + (i32.const 2) + ) + ) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $4 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $4) + (i32.load offset=8 + (local.get $2) + ) + ) + (local.get $3) + ) + (local.set $3 + (i32.load offset=12 + (i32.load offset=28 + (local.get $2) + ) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $4 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $4) + (i32.load offset=8 + (local.get $2) + ) + ) + (local.get $3) + ) + (if + (i32.load offset=44 + (if (result i32) + (i32.load offset=16 + (local.tee $3 + (i32.load offset=28 + (local.get $2) + ) + ) + ) + (block (result i32) + (local.set $3 + (i32.load offset=20 (local.get $3) ) - (local.get $4) ) - (i32.store offset=32 + (i32.store offset=20 (local.get $2) - (local.tee $6 - (i32.add - (i32.load offset=32 + (i32.add + (local.tee $4 + (i32.load offset=20 (local.get $2) ) - (i32.const 1) ) + (i32.const 1) ) ) - (if - (i32.ge_u - (local.get $6) - (i32.load16_u offset=20 - (local.tee $4 - (i32.load offset=28 - (local.get $2) - ) - ) + (i32.store8 + (i32.add + (local.get $4) + (i32.load offset=8 + (local.get $2) ) ) - (block - (local.set $3 - (local.get $5) + (local.get $3) + ) + (local.set $3 + (i32.load offset=20 + (i32.load offset=28 + (local.get $2) ) - (br $label$26) ) - (block - (local.set $3 + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $4 (i32.load offset=20 (local.get $2) ) ) - (br $label$28) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $4) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.shr_u + (local.get $3) + (i32.const 8) ) ) + (i32.load offset=28 + (local.get $2) + ) + ) + (local.get $3) + ) + ) + (i32.store offset=48 + (local.get $0) + (call $fimport$14 + (i32.load offset=48 + (local.get $0) + ) + (i32.load offset=8 + (local.get $2) + ) + (i32.load offset=20 + (local.get $2) ) ) ) - (i32.store offset=4 + ) + (i32.store offset=4 + (local.get $2) + (i32.const 69) + ) + (i32.store offset=32 + (local.get $2) + (i32.const 0) + ) + (br $label$16) + ) + ) + (local.set $4 + (i32.add + (i32.shl + (i32.load offset=48 (local.get $2) - (i32.const 73) ) - (br $label$14) + (i32.const 12) ) - (block $label$33 - (br_if $label$33 - (i32.eqz - (i32.load offset=44 - (local.get $4) + (i32.const -30720) + ) + ) + (local.set $3 + (i32.const 0) + ) + (block $label$24 + (br_if $label$24 + (i32.gt_s + (i32.load offset=136 + (local.get $2) + ) + (i32.const 1) + ) + ) + (br_if $label$24 + (i32.lt_s + (local.tee $5 + (i32.load offset=132 + (local.get $2) + ) + ) + (i32.const 2) + ) + ) + (local.set $3 + (i32.const 64) + ) + (br_if $label$24 + (i32.lt_s + (local.get $5) + (i32.const 6) + ) + ) + (local.set $3 + (select + (i32.const 128) + (i32.const 192) + (i32.eq + (local.get $5) + (i32.const 6) + ) + ) + ) + ) + (i32.store offset=4 + (local.get $2) + (i32.const 113) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $5 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $5) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.shr_u + (local.tee $3 + (select + (i32.or + (local.tee $3 + (i32.or + (local.get $3) + (local.get $4) + ) ) + (i32.const 32) + ) + (local.get $3) + (i32.load offset=108 + (local.get $2) ) ) - (br_if $label$33 - (i32.le_u + ) + (i32.const 8) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $4 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $4) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.xor + (i32.or + (i32.rem_u + (local.get $3) + (i32.const 31) + ) + (local.get $3) + ) + (i32.const 31) + ) + ) + (if + (i32.load offset=108 + (local.get $2) + ) + (block + (local.set $3 + (i32.load offset=48 + (local.get $0) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $4 (i32.load offset=20 (local.get $2) ) - (local.get $3) ) + (i32.const 1) ) - (br $folding-inner2) ) - (if - (i32.eq - (i32.load offset=32 + (i32.store8 + (i32.add + (local.get $4) + (i32.load offset=8 (local.get $2) ) - (i32.load offset=20 - (local.get $4) + ) + (i32.shr_u + (local.get $3) + (i32.const 24) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $4 + (i32.load offset=20 + (local.get $2) + ) ) + (i32.const 1) ) - (block - (i32.store offset=4 + ) + (i32.store8 + (i32.add + (local.get $4) + (i32.load offset=8 (local.get $2) - (i32.const 73) ) - (i32.store offset=32 + ) + (i32.shr_u + (local.get $3) + (i32.const 16) + ) + ) + (local.set $3 + (i32.load offset=48 + (local.get $0) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $4 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $4) + (i32.load offset=8 (local.get $2) - (i32.const 0) ) - (br $label$14) + ) + (i32.shr_u + (local.get $3) + (i32.const 8) ) ) - (local.set $3 - (i32.load offset=4 - (local.get $2) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $4 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $4) + (i32.load offset=8 + (local.get $2) + ) ) + (local.get $3) ) ) ) - (br_if $label$13 - (i32.ne - (local.get $3) - (i32.const 73) + (i32.store offset=48 + (local.get $0) + (call $fimport$15 + (i32.const 0) + (i32.const 0) + (i32.const 0) ) ) - (local.set $4 - (i32.load offset=28 + (local.set $3 + (i32.load offset=4 (local.get $2) ) ) ) - (br_if $label$11 - (i32.eqz - (i32.load offset=28 - (local.get $4) - ) - ) - ) - (local.set $13 - (local.get $0) + ) + (br_if $label$15 + (i32.ne + (local.get $3) + (i32.const 69) ) - (local.set $10 - (local.tee $12 - (local.tee $11 + ) + ) + (block $label$26 + (if + (i32.load offset=16 + (local.tee $4 + (i32.load offset=28 (local.get $2) ) ) ) - (local.set $5 - (local.tee $3 + (block + (local.set $3 (i32.load offset=20 (local.get $2) ) ) - ) - (local.set $4 - (block $label$35 (result i32) - (loop $label$37 - (block $label$36 - (if - (i32.eq - (i32.load offset=12 - (local.get $11) + (br_if $label$26 + (i32.ge_u + (local.tee $5 + (i32.load offset=32 + (local.get $2) + ) + ) + (i32.load16_u offset=20 + (local.get $4) + ) + ) + ) + (local.set $6 + (local.get $3) + ) + (loop $label$28 + (if + (i32.eq + (i32.load offset=12 + (local.get $2) + ) + (local.get $3) + ) + (block + (block $label$30 + (br_if $label$30 + (i32.le_u + (local.get $3) + (local.get $6) ) - (local.get $3) ) - (block - (block $label$39 - (br_if $label$39 - (i32.le_u - (local.get $3) - (local.get $5) - ) + (br_if $label$30 + (i32.eqz + (i32.load offset=44 + (local.get $4) ) - (br_if $label$39 - (i32.eqz - (i32.load offset=44 - (i32.load offset=28 - (local.get $12) - ) - ) + ) + ) + (i32.store offset=48 + (local.get $0) + (call $fimport$14 + (i32.load offset=48 + (local.get $0) + ) + (i32.add + (i32.load offset=8 + (local.get $2) ) + (local.get $6) + ) + (i32.sub + (local.get $3) + (local.get $6) ) - (br $folding-inner3) ) - (if - (select - (local.tee $3 - (i32.load offset=16 - (local.get $0) + ) + ) + (block $label$31 + (br_if $label$31 + (i32.eqz + (local.tee $3 + (select + (local.tee $3 + (i32.load offset=16 + (local.get $0) + ) ) - ) - (local.tee $4 - (i32.load offset=20 - (local.tee $5 - (i32.load offset=28 - (local.get $0) + (local.tee $4 + (i32.load offset=20 + (local.tee $5 + (i32.load offset=28 + (local.get $0) + ) ) ) ) - ) - (i32.gt_u - (local.get $4) - (local.get $3) - ) - ) - (br $folding-inner4) - ) - (br_if $label$36 - (i32.eq - (local.tee $3 - (i32.load offset=20 - (local.get $2) + (i32.gt_u + (local.get $4) + (local.get $3) ) ) - (i32.load offset=12 - (local.get $11) - ) ) ) - (local.set $5 + ) + (drop + (call $fimport$98 + (i32.load offset=12 + (local.get $0) + ) + (i32.load offset=16 + (local.get $5) + ) (local.get $3) ) ) - ) - (local.set $4 - (i32.load offset=28 - (i32.load offset=28 - (local.get $12) + (i32.store offset=12 + (local.get $0) + (i32.add + (i32.load offset=12 + (local.get $0) + ) + (local.get $3) ) ) - ) - (i32.store offset=32 - (local.get $2) - (i32.add - (local.tee $7 - (i32.load offset=32 - (local.get $2) + (i32.store offset=16 + (local.tee $4 + (i32.load offset=28 + (local.get $0) + ) + ) + (i32.add + (i32.load offset=16 + (local.get $4) ) + (local.get $3) ) - (i32.const 1) ) - ) - (local.set $4 - (i32.load8_u + (i32.store offset=20 + (local.get $0) (i32.add - (local.get $4) - (local.get $7) + (i32.load offset=20 + (local.get $0) + ) + (local.get $3) ) ) - ) - (i32.store offset=20 - (local.get $2) - (i32.add + (i32.store offset=16 + (local.get $0) + (i32.sub + (i32.load offset=16 + (local.get $0) + ) + (local.get $3) + ) + ) + (i32.store offset=20 + (local.get $4) + (local.tee $3 + (i32.sub + (i32.load offset=20 + (local.get $4) + ) + (local.get $3) + ) + ) + ) + (br_if $label$31 (local.get $3) - (i32.const 1) ) - ) - (i32.store8 - (i32.add + (i32.store offset=16 + (local.get $4) (i32.load offset=8 - (local.get $10) + (local.get $4) ) - (local.get $3) ) - (local.get $4) ) - (if - (local.get $4) - (block - (local.set $3 + (local.set $4 + (i32.load offset=28 + (local.get $2) + ) + ) + (br_if $label$26 + (i32.eq + (local.tee $3 (i32.load offset=20 (local.get $2) ) ) - (br $label$37) - ) - (block - (local.set $3 - (local.get $5) - ) - (br $label$35 - (i32.const 0) + (i32.load offset=12 + (local.get $2) ) ) ) + (local.set $5 + (i32.load offset=32 + (local.get $2) + ) + ) + (local.set $6 + (local.get $3) + ) ) ) - (i32.const 1) - ) - ) - (block $label$42 - (br_if $label$42 - (i32.eqz - (i32.load offset=44 - (i32.load offset=28 + (local.set $4 + (i32.load8_u + (i32.add + (i32.load offset=16 + (local.get $4) + ) + (local.get $5) + ) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.get $3) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (i32.load offset=8 (local.get $2) ) + (local.get $3) ) + (local.get $4) ) - ) - (br_if $label$42 - (i32.le_u - (i32.load offset=20 - (local.get $2) + (i32.store offset=32 + (local.get $2) + (local.tee $5 + (i32.add + (i32.load offset=32 + (local.get $2) + ) + (i32.const 1) + ) + ) + ) + (if + (i32.ge_u + (local.get $5) + (i32.load16_u offset=20 + (local.tee $4 + (i32.load offset=28 + (local.get $2) + ) + ) + ) + ) + (block + (local.set $3 + (local.get $6) + ) + (br $label$26) + ) + (block + (local.set $3 + (i32.load offset=20 + (local.get $2) + ) + ) + (br $label$28) ) - (local.get $3) ) ) - (br $folding-inner2) ) - (br_if $label$12 - (i32.eqz + ) + (i32.store offset=4 + (local.get $2) + (i32.const 73) + ) + (br $label$14) + ) + (block $label$33 + (br_if $label$33 + (i32.eqz + (i32.load offset=44 (local.get $4) ) ) - (local.set $3 - (i32.load offset=4 - (local.get $2) + ) + (br_if $label$33 + (i32.le_u + (local.tee $5 + (i32.load offset=20 + (local.get $2) + ) ) + (local.get $3) ) ) - (br_if $label$10 - (i32.eq - (local.get $3) - (i32.const 91) + (i32.store offset=48 + (local.get $0) + (call $fimport$14 + (i32.load offset=48 + (local.get $0) + ) + (i32.add + (i32.load offset=8 + (local.get $2) + ) + (local.get $3) + ) + (i32.sub + (local.get $5) + (local.get $3) + ) + ) + ) + (local.set $4 + (i32.load offset=28 + (local.get $2) ) ) - (br $label$9) ) - (i32.store offset=32 - (local.get $2) - (i32.const 0) + (if + (i32.eq + (i32.load offset=32 + (local.get $2) + ) + (i32.load offset=20 + (local.get $4) + ) + ) + (block + (i32.store offset=4 + (local.get $2) + (i32.const 73) + ) + (i32.store offset=32 + (local.get $2) + (i32.const 0) + ) + (br $label$14) + ) ) - ) - (i32.store offset=4 - (local.get $2) - (i32.const 91) - ) - ) - (br_if $label$8 - (i32.eqz - (i32.load offset=36 - (i32.load offset=28 + (local.set $3 + (i32.load offset=4 (local.get $2) ) ) ) - ) - (local.set $13 - (local.get $0) - ) - (local.set $10 - (local.tee $12 - (local.tee $11 + (br_if $label$13 + (i32.ne + (local.get $3) + (i32.const 73) + ) + ) + (local.set $4 + (i32.load offset=28 (local.get $2) ) ) ) - (local.set $5 + (br_if $label$11 + (i32.eqz + (i32.load offset=28 + (local.get $4) + ) + ) + ) + (local.set $6 (local.tee $3 (i32.load offset=20 (local.get $2) @@ -902,59 +1415,152 @@ total ) ) (local.set $4 - (block $label$43 (result i32) - (loop $label$45 - (block $label$44 + (block $label$35 (result i32) + (loop $label$37 + (block $label$36 (if (i32.eq (i32.load offset=12 - (local.get $11) + (local.get $2) ) (local.get $3) ) (block - (block $label$47 - (br_if $label$47 + (block $label$39 + (br_if $label$39 (i32.le_u (local.get $3) - (local.get $5) + (local.get $6) ) ) - (br_if $label$47 + (br_if $label$39 (i32.eqz (i32.load offset=44 (i32.load offset=28 - (local.get $12) + (local.get $2) + ) + ) + ) + ) + (i32.store offset=48 + (local.get $0) + (call $fimport$14 + (i32.load offset=48 + (local.get $0) + ) + (i32.add + (i32.load offset=8 + (local.get $2) ) + (local.get $6) + ) + (i32.sub + (local.get $3) + (local.get $6) ) ) ) - (br $folding-inner3) ) - (if - (select - (local.tee $3 + (block $label$40 + (br_if $label$40 + (i32.eqz + (local.tee $3 + (select + (local.tee $3 + (i32.load offset=16 + (local.get $0) + ) + ) + (local.tee $4 + (i32.load offset=20 + (local.tee $5 + (i32.load offset=28 + (local.get $0) + ) + ) + ) + ) + (i32.gt_u + (local.get $4) + (local.get $3) + ) + ) + ) + ) + ) + (drop + (call $fimport$98 + (i32.load offset=12 + (local.get $0) + ) (i32.load offset=16 + (local.get $5) + ) + (local.get $3) + ) + ) + (i32.store offset=12 + (local.get $0) + (i32.add + (i32.load offset=12 (local.get $0) ) + (local.get $3) ) + ) + (i32.store offset=16 (local.tee $4 + (i32.load offset=28 + (local.get $0) + ) + ) + (i32.add + (i32.load offset=16 + (local.get $4) + ) + (local.get $3) + ) + ) + (i32.store offset=20 + (local.get $0) + (i32.add (i32.load offset=20 - (local.tee $5 - (i32.load offset=28 - (local.get $0) - ) + (local.get $0) + ) + (local.get $3) + ) + ) + (i32.store offset=16 + (local.get $0) + (i32.sub + (i32.load offset=16 + (local.get $0) + ) + (local.get $3) + ) + ) + (i32.store offset=20 + (local.get $4) + (local.tee $3 + (i32.sub + (i32.load offset=20 + (local.get $4) ) + (local.get $3) ) ) - (i32.gt_u + ) + (br_if $label$40 + (local.get $3) + ) + (i32.store offset=16 + (local.get $4) + (i32.load offset=8 (local.get $4) - (local.get $3) ) ) - (br $folding-inner4) ) - (br_if $label$44 + (br_if $label$36 (i32.eq (local.tee $3 (i32.load offset=20 @@ -962,26 +1568,26 @@ total ) ) (i32.load offset=12 - (local.get $11) + (local.get $2) ) ) ) - (local.set $5 + (local.set $6 (local.get $3) ) ) ) (local.set $4 - (i32.load offset=36 + (i32.load offset=28 (i32.load offset=28 - (local.get $12) + (local.get $2) ) ) ) (i32.store offset=32 (local.get $2) (i32.add - (local.tee $7 + (local.tee $5 (i32.load offset=32 (local.get $2) ) @@ -993,7 +1599,7 @@ total (i32.load8_u (i32.add (local.get $4) - (local.get $7) + (local.get $5) ) ) ) @@ -1007,7 +1613,7 @@ total (i32.store8 (i32.add (i32.load offset=8 - (local.get $10) + (local.get $2) ) (local.get $3) ) @@ -1021,13 +1627,13 @@ total (local.get $2) ) ) - (br $label$45) + (br $label$37) ) (block (local.set $3 - (local.get $5) + (local.get $6) ) - (br $label$43 + (br $label$35 (i32.const 0) ) ) @@ -1037,8 +1643,8 @@ total (i32.const 1) ) ) - (block $label$50 - (br_if $label$50 + (block $label$42 + (br_if $label$42 (i32.eqz (i32.load offset=44 (i32.load offset=28 @@ -1047,17 +1653,36 @@ total ) ) ) - (br_if $label$50 + (br_if $label$42 (i32.le_u - (i32.load offset=20 - (local.get $2) + (local.tee $5 + (i32.load offset=20 + (local.get $2) + ) ) (local.get $3) ) ) - (br $folding-inner2) + (i32.store offset=48 + (local.get $0) + (call $fimport$14 + (i32.load offset=48 + (local.get $0) + ) + (i32.add + (i32.load offset=8 + (local.get $2) + ) + (local.get $3) + ) + (i32.sub + (local.get $5) + (local.get $3) + ) + ) + ) ) - (br_if $label$8 + (br_if $label$12 (i32.eqz (local.get $4) ) @@ -1068,1510 +1693,1459 @@ total ) ) ) - (br_if $label$7 + (br_if $label$10 (i32.eq (local.get $3) - (i32.const 103) + (i32.const 91) ) ) - (br $label$6) + (br $label$9) ) - (i32.store offset=4 + (i32.store offset=32 (local.get $2) - (i32.const 103) + (i32.const 0) ) ) - (if - (i32.load offset=44 + (i32.store offset=4 + (local.get $2) + (i32.const 91) + ) + ) + (br_if $label$8 + (i32.eqz + (i32.load offset=36 (i32.load offset=28 (local.get $2) ) ) - (block - (block $label$52 - (br_if $label$52 - (i32.le_u - (i32.add - (i32.load offset=20 - (local.get $2) - ) - (i32.const 2) - ) - (i32.load offset=12 - (local.get $2) - ) - ) - ) - (br_if $label$52 - (i32.eqz - (select - (local.tee $3 - (i32.load offset=16 - (local.get $0) - ) - ) - (local.tee $4 - (i32.load offset=20 - (local.tee $7 - (i32.load offset=28 - (local.get $0) - ) - ) - ) - ) - (i32.gt_u - (local.get $4) - (local.get $3) - ) - ) - ) - ) - (br $folding-inner5) - ) - (br_if $label$6 - (i32.gt_u - (i32.add - (local.tee $4 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.const 2) - ) - (i32.load offset=12 - (local.get $2) - ) - ) - ) - (local.set $6 - (i32.load offset=48 - (local.get $0) - ) - ) - (i32.store offset=20 - (local.get $2) - (i32.add - (local.get $4) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (i32.load offset=8 - (local.get $2) - ) - (local.get $4) - ) - (local.get $6) - ) - (local.set $4 - (i32.load offset=48 - (local.get $0) - ) - ) - (i32.store offset=20 - (local.get $2) - (i32.add - (local.tee $6 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $6) - (i32.load offset=8 - (local.get $2) - ) - ) - (i32.shr_u - (local.get $4) - (i32.const 8) - ) - ) - (unreachable) - ) - ) - (i32.store offset=4 - (local.get $2) - (i32.const 113) ) ) - (block $label$53 - (if + (local.set $6 + (local.tee $3 (i32.load offset=20 (local.get $2) ) - (block - (if - (select - (local.tee $4 - (i32.load offset=16 - (local.get $0) - ) - ) - (local.tee $3 - (i32.load offset=20 - (local.tee $7 - (i32.load offset=28 - (local.get $0) - ) - ) - ) - ) - (i32.gt_u - (local.get $3) - (local.get $4) - ) - ) - (br $folding-inner5) - ) - (br_if $label$53 - (local.get $4) - ) - (br $folding-inner1) - ) - ) - (br_if $label$53 - (i32.eq - (local.get $1) - (i32.const 4) - ) - ) - (br_if $label$53 - (i32.lt_s - (local.get $14) - (local.get $1) - ) - ) - (br_if $label$53 - (i32.load offset=4 - (local.get $0) - ) - ) - (br $folding-inner0) - ) - (local.set $3 - (i32.load offset=4 - (local.get $0) ) ) - (block $label$56 - (block $label$57 - (block $label$58 - (if - (i32.eq - (local.tee $4 - (i32.load offset=4 - (local.get $2) - ) - ) - (i32.const 666) - ) - (block - (br_if $label$58 - (i32.eqz - (local.get $3) - ) - ) - (br $folding-inner0) - ) - ) - (br_if $label$57 - (local.get $3) - ) - ) - (br_if $label$57 - (i32.ne - (i32.or - (i32.eqz - (local.get $1) - ) - (i32.eq - (local.get $4) - (i32.const 666) - ) - ) - (i32.const 1) - ) - ) - (br_if $label$56 - (i32.eqz - (i32.load offset=116 - (local.get $2) - ) - ) - ) - ) - (if - (block (result i32) - (block $label$63 + (local.set $4 + (block $label$43 (result i32) + (loop $label$45 + (block $label$44 (if - (i32.ne - (local.tee $3 - (i32.load offset=136 - (local.get $2) - ) + (i32.eq + (i32.load offset=12 + (local.get $2) ) - (i32.const 3) + (local.get $3) ) (block - (br_if $label$63 - (i32.ne - (local.get $3) - (i32.const 2) - ) - ) - (local.set $9 - (i32.add - (local.tee $12 - (local.tee $11 - (local.tee $10 - (local.tee $3 - (local.get $2) - ) - ) - ) + (block $label$47 + (br_if $label$47 + (i32.le_u + (local.get $3) + (local.get $6) ) - (i32.const 5792) - ) - ) - (local.set $8 - (i32.add - (local.get $2) - (i32.const 5796) - ) - ) - (local.set $13 - (i32.add - (local.get $2) - (i32.const 5784) - ) - ) - (local.set $4 - (i32.add - (local.get $2) - (i32.const 5788) ) - ) - (loop $label$66 - (if + (br_if $label$47 (i32.eqz - (i32.load offset=116 - (local.get $3) - ) - ) - (unreachable) - ) - (i32.store offset=96 - (local.get $10) - (i32.const 0) - ) - (local.set $6 - (i32.load8_u - (i32.add - (i32.load offset=56 - (local.get $12) - ) - (i32.load offset=108 - (local.get $11) - ) - ) - ) - ) - (i32.store16 - (i32.add - (i32.load - (local.get $8) - ) - (i32.shl - (local.tee $7 - (i32.load - (local.get $9) - ) + (i32.load offset=44 + (i32.load offset=28 + (local.get $2) ) - (i32.const 1) ) ) - (i32.const 0) ) - (i32.store - (local.get $9) - (i32.add - (local.get $7) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $7) - (i32.load - (local.get $13) + (i32.store offset=48 + (local.get $0) + (call $fimport$14 + (i32.load offset=48 + (local.get $0) ) - ) - (local.get $6) - ) - (i32.store16 offset=148 - (local.tee $5 (i32.add - (local.get $12) - (i32.shl - (local.get $6) - (i32.const 2) + (i32.load offset=8 + (local.get $2) ) + (local.get $6) ) - ) - (i32.add - (i32.load16_u offset=148 - (local.get $5) - ) - (i32.const 1) - ) - ) - (i32.store offset=116 - (local.get $3) - (i32.add - (i32.load offset=116 + (i32.sub (local.get $3) - ) - (i32.const -1) - ) - ) - (i32.store offset=108 - (local.get $11) - (i32.add - (i32.load offset=108 - (local.get $11) - ) - (i32.const 1) - ) - ) - (br_if $label$66 - (i32.ne - (i32.load - (local.get $9) - ) - (i32.add - (i32.load - (local.get $4) - ) - (i32.const -1) - ) - ) - ) - ) - (drop - (if (result i32) - (i32.ge_s - (local.tee $5 - (i32.load offset=92 - (local.get $12) - ) - ) - (i32.const 0) - ) - (i32.add - (i32.load offset=56 - (local.get $12) - ) - (local.get $5) - ) - (i32.const 0) - ) - ) - (unreachable) - ) - ) - (local.set $9 - (i32.add - (local.tee $3 - (local.tee $12 - (local.tee $11 - (local.get $2) - ) - ) - ) - (i32.const 5792) - ) - ) - (local.set $4 - (i32.add - (local.get $2) - (i32.const 5796) - ) - ) - (local.set $14 - (i32.add - (local.get $2) - (i32.const 5784) - ) - ) - (local.set $1 - (i32.add - (local.get $2) - (i32.const 5788) - ) - ) - (loop $label$72 - (block $label$75 - (if - (i32.ge_u - (local.tee $6 - (i32.load offset=116 - (local.get $11) + (local.get $6) ) ) - (i32.const 258) - ) - (block - (i32.store offset=96 - (local.get $12) - (i32.const 0) - ) - (br $label$75) ) ) - (unreachable) - ) - (block $label$73 - (block $label$74 - (if + (block $label$48 + (br_if $label$48 (i32.eqz - (local.tee $7 - (i32.load offset=108 - (local.get $3) - ) - ) - ) - (block - (local.set $7 - (i32.const 0) - ) - (br $label$74) - ) - ) - (br_if $label$74 - (i32.ne - (local.tee $5 - (i32.load8_u - (i32.add - (local.tee $2 - (i32.add - (i32.load offset=56 - (local.get $3) - ) - (local.get $7) - ) + (local.tee $3 + (select + (local.tee $3 + (i32.load offset=16 + (local.get $0) ) - (i32.const -1) ) - ) - ) - (i32.load8_u - (local.get $2) - ) - ) - ) - (br_if $label$74 - (i32.ne - (local.get $5) - (i32.load8_u offset=1 - (local.get $2) - ) - ) - ) - (br_if $label$74 - (i32.ne - (local.get $5) - (i32.load8_u offset=2 - (local.get $2) - ) - ) - ) - (local.set $0 - (i32.add - (local.get $2) - (i32.const 258) - ) - ) - (local.set $10 - (i32.const 1) - ) - (block $label$83 - (block $label$84 - (block $label$85 - (block $label$86 - (block $label$87 - (block $label$88 - (loop $label$90 - (if - (i32.eq - (i32.load8_u offset=2 - (local.tee $8 - (i32.add - (local.get $2) - (local.get $10) - ) - ) - ) - (local.get $5) - ) - (block - (br_if $label$88 - (i32.ne - (local.get $5) - (i32.load8_u offset=3 - (local.get $8) - ) - ) - ) - (br_if $label$87 - (i32.ne - (local.get $5) - (i32.load8_u offset=4 - (local.get $8) - ) - ) - ) - (br_if $label$86 - (i32.ne - (local.get $5) - (i32.load8_u offset=5 - (local.get $8) - ) - ) - ) - (br_if $label$85 - (i32.ne - (local.get $5) - (i32.load8_u offset=6 - (local.get $8) - ) - ) - ) - (br_if $label$84 - (i32.ne - (local.get $5) - (i32.load8_u offset=7 - (local.get $8) - ) - ) - ) - (br_if $label$83 - (i32.ne - (local.get $5) - (i32.load8_u - (local.tee $8 - (i32.add - (local.get $2) - (local.tee $13 - (i32.add - (local.get $10) - (i32.const 8) - ) - ) - ) - ) - ) - ) - ) - (local.set $8 - (i32.add - (local.get $2) - (local.tee $10 - (i32.add - (local.get $10) - (i32.const 9) - ) - ) - ) - ) - (br_if $label$83 - (i32.gt_u - (local.get $10) - (i32.const 257) - ) - ) - (local.set $10 - (local.get $13) - ) - (br_if $label$90 - (i32.eq - (local.get $5) - (i32.load8_u - (local.get $8) - ) - ) - ) - (br $label$83) - ) - ) - ) - (local.set $8 - (i32.add - (local.get $8) - (i32.const 2) + (local.tee $4 + (i32.load offset=20 + (local.tee $5 + (i32.load offset=28 + (local.get $0) ) ) - (br $label$83) - ) - (local.set $8 - (i32.add - (local.get $8) - (i32.const 3) - ) - ) - (br $label$83) - ) - (local.set $8 - (i32.add - (local.get $8) - (i32.const 4) ) ) - (br $label$83) - ) - (local.set $8 - (i32.add - (local.get $8) - (i32.const 5) - ) - ) - (br $label$83) - ) - (local.set $8 - (i32.add - (local.get $8) - (i32.const 6) - ) - ) - (br $label$83) - ) - (local.set $8 - (i32.add - (local.get $8) - (i32.const 7) - ) - ) - ) - (i32.store offset=96 - (local.get $12) - (local.tee $6 - (select - (local.get $6) - (local.tee $5 - (i32.add - (i32.sub - (local.get $8) - (local.get $0) - ) - (i32.const 258) + (i32.gt_u + (local.get $4) + (local.get $3) ) ) - (i32.gt_u - (local.get $5) - (local.get $6) - ) ) ) ) - (br_if $label$74 - (i32.lt_u - (local.get $6) - (i32.const 3) - ) - ) - (i32.store16 - (i32.add - (i32.load - (local.get $4) + (drop + (call $fimport$98 + (i32.load offset=12 + (local.get $0) ) - (i32.shl - (local.tee $7 - (i32.load - (local.get $9) - ) - ) - (i32.const 1) + (i32.load offset=16 + (local.get $5) ) - ) - (i32.const 1) - ) - (i32.store - (local.get $9) - (i32.add - (local.get $7) - (i32.const 1) + (local.get $3) ) ) - (i32.store8 + (i32.store offset=12 + (local.get $0) (i32.add - (local.get $7) - (i32.load - (local.get $14) - ) - ) - (local.tee $6 - (i32.add - (local.get $6) - (i32.const -3) + (i32.load offset=12 + (local.get $0) ) + (local.get $3) ) ) - (i32.store16 offset=152 - (local.tee $5 - (i32.add - (local.get $3) - (i32.or - (i32.shl - (i32.load8_u - (i32.add - (i32.and - (local.get $6) - (i32.const 255) - ) - (i32.const 13488) - ) - ) - (i32.const 2) - ) - (i32.const 1024) - ) + (i32.store offset=16 + (local.tee $4 + (i32.load offset=28 + (local.get $0) ) ) (i32.add - (i32.load16_u offset=152 - (local.get $5) + (i32.load offset=16 + (local.get $4) ) - (i32.const 1) + (local.get $3) ) ) - (i32.store16 - (local.tee $6 - (i32.add - (i32.add - (local.get $3) - (i32.shl - (i32.load8_u - (i32.const 12976) - ) - (i32.const 2) - ) - ) - (i32.const 2440) - ) - ) + (i32.store offset=20 + (local.get $0) (i32.add - (i32.load16_u - (local.get $6) + (i32.load offset=20 + (local.get $0) ) - (i32.const 1) - ) - ) - (local.set $6 - (i32.load offset=96 - (local.get $12) + (local.get $3) ) ) - (i32.store offset=96 - (local.get $12) - (i32.const 0) - ) - (i32.store offset=116 - (local.get $11) + (i32.store offset=16 + (local.get $0) (i32.sub - (i32.load offset=116 - (local.get $11) + (i32.load offset=16 + (local.get $0) ) - (local.get $6) + (local.get $3) ) ) - (i32.store offset=108 - (local.get $3) - (i32.add - (local.get $6) - (i32.load offset=108 + (i32.store offset=20 + (local.get $4) + (local.tee $3 + (i32.sub + (i32.load offset=20 + (local.get $4) + ) (local.get $3) ) ) ) - (br $label$73) - ) - (local.set $6 - (i32.load8_u - (i32.add - (i32.load offset=56 - (local.get $3) - ) - (local.get $7) - ) + (br_if $label$48 + (local.get $3) ) - ) - (i32.store16 - (i32.add - (i32.load + (i32.store offset=16 + (local.get $4) + (i32.load offset=8 (local.get $4) ) - (i32.shl - (local.tee $7 - (i32.load - (local.get $9) - ) - ) - (i32.const 1) - ) - ) - (i32.const 0) - ) - (i32.store - (local.get $9) - (i32.add - (local.get $7) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $7) - (i32.load - (local.get $14) - ) ) - (local.get $6) ) - (i32.store16 offset=148 - (local.tee $5 - (i32.add - (local.get $3) - (i32.shl - (local.get $6) - (i32.const 2) + (br_if $label$44 + (i32.eq + (local.tee $3 + (i32.load offset=20 + (local.get $2) ) ) - ) - (i32.add - (i32.load16_u offset=148 - (local.get $5) - ) - (i32.const 1) - ) - ) - (i32.store offset=116 - (local.get $11) - (i32.add - (i32.load offset=116 - (local.get $11) + (i32.load offset=12 + (local.get $2) ) - (i32.const -1) ) ) - (i32.store offset=108 + (local.set $6 (local.get $3) - (i32.add - (i32.load offset=108 - (local.get $3) - ) - (i32.const 1) - ) ) ) - (br_if $label$72 - (i32.ne - (i32.load - (local.get $9) - ) - (i32.add - (i32.load - (local.get $1) - ) - (i32.const -1) - ) + ) + (local.set $4 + (i32.load offset=36 + (i32.load offset=28 + (local.get $2) ) ) ) - (drop - (if (result i32) - (i32.ge_s - (local.tee $5 - (i32.load offset=92 - (local.get $3) - ) + (i32.store offset=32 + (local.get $2) + (i32.add + (local.tee $5 + (i32.load offset=32 + (local.get $2) ) - (i32.const 0) ) + (i32.const 1) + ) + ) + (local.set $4 + (i32.load8_u (i32.add - (i32.load offset=56 - (local.get $3) - ) + (local.get $4) (local.get $5) ) - (i32.const 0) ) ) - (unreachable) - ) - (i32.eq - (i32.or - (local.tee $3 - (call_indirect (type $2) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.get $3) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (i32.load offset=8 (local.get $2) - (local.get $1) - (i32.load - (i32.add - (i32.mul - (i32.load offset=132 - (local.get $2) - ) - (i32.const 12) - ) - (i32.const 9832) - ) + ) + (local.get $3) + ) + (local.get $4) + ) + (if + (local.get $4) + (block + (local.set $3 + (i32.load offset=20 + (local.get $2) ) ) + (br $label$45) + ) + (block + (local.set $3 + (local.get $6) + ) + (br $label$43 + (i32.const 0) + ) ) - (i32.const 1) ) - (i32.const 3) ) ) - (i32.store offset=4 - (local.get $2) - (i32.const 666) - ) + (i32.const 1) ) - (if + ) + (block $label$50 + (br_if $label$50 (i32.eqz - (i32.and - (local.get $3) - (i32.const -3) - ) - ) - (block - (local.set $3 - (i32.const 0) - ) - (br_if $label$1 - (i32.load offset=16 - (local.get $0) + (i32.load offset=44 + (i32.load offset=28 + (local.get $2) ) ) - (br $folding-inner1) - ) - ) - (br_if $label$56 - (i32.ne - (local.get $3) - (i32.const 1) ) ) - (if - (i32.ne - (local.get $1) - (i32.const 5) - ) - (block - (if - (i32.eq - (local.get $1) - (i32.const 1) + (br_if $label$50 + (i32.le_u + (local.tee $5 + (i32.load offset=20 + (local.get $2) ) - (unreachable) ) - (unreachable) + (local.get $3) ) ) - (if - (select - (local.tee $4 - (i32.load offset=16 - (local.get $0) - ) + (i32.store offset=48 + (local.get $0) + (call $fimport$14 + (i32.load offset=48 + (local.get $0) ) - (local.tee $3 - (i32.load offset=20 - (local.tee $7 - (i32.load offset=28 - (local.get $0) - ) - ) + (i32.add + (i32.load offset=8 + (local.get $2) ) + (local.get $3) ) - (i32.gt_u + (i32.sub + (local.get $5) (local.get $3) - (local.get $4) ) ) - (br $folding-inner5) ) - (br_if $label$56 + ) + (br_if $label$8 + (i32.eqz (local.get $4) ) - (br $folding-inner1) ) (local.set $3 - (i32.const 0) - ) - (br_if $label$1 - (i32.ne - (local.get $1) - (i32.const 4) + (i32.load offset=4 + (local.get $2) ) ) - (local.set $3 - (i32.const 1) + ) + (br_if $label$7 + (i32.eq + (local.get $3) + (i32.const 103) ) - (br_if $label$1 - (i32.lt_s - (local.tee $1 - (i32.load offset=24 + ) + (br $label$6) + ) + (i32.store offset=4 + (local.get $2) + (i32.const 103) + ) + ) + (if + (i32.load offset=44 + (i32.load offset=28 + (local.get $2) + ) + ) + (block + (block $label$52 + (br_if $label$52 + (i32.le_u + (i32.add + (i32.load offset=20 (local.get $2) ) + (i32.const 2) + ) + (i32.load offset=12 + (local.get $2) ) - (i32.const 1) - ) - ) - (local.set $4 - (i32.load offset=48 - (local.get $0) ) ) - (i32.store8 - (block $label$97 (result i32) - (if - (i32.eq - (local.get $1) - (i32.const 2) - ) - (block - (i32.store offset=20 - (local.get $2) - (i32.add - (local.tee $1 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $1) - (i32.load offset=8 - (local.get $2) - ) - ) - (local.get $4) - ) - (local.set $1 - (i32.load offset=48 - (local.get $0) - ) - ) - (i32.store offset=20 - (local.get $2) - (i32.add - (local.tee $4 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $4) - (i32.load offset=8 - (local.get $2) - ) - ) - (i32.shr_u - (local.get $1) - (i32.const 8) - ) - ) - (local.set $1 - (i32.load16_u offset=50 + (br_if $label$52 + (i32.eqz + (local.tee $3 + (select + (local.tee $3 + (i32.load offset=16 (local.get $0) ) ) - (i32.store offset=20 - (local.get $2) - (i32.add - (local.tee $4 - (i32.load offset=20 - (local.get $2) + (local.tee $4 + (i32.load offset=20 + (local.tee $5 + (i32.load offset=28 + (local.get $0) ) ) - (i32.const 1) ) ) - (i32.store8 - (i32.add - (local.get $4) - (i32.load offset=8 - (local.get $2) - ) - ) - (local.get $1) + (i32.gt_u + (local.get $4) + (local.get $3) ) - (local.set $1 - (i32.load8_u offset=51 + ) + ) + ) + ) + (drop + (call $fimport$98 + (i32.load offset=12 + (local.get $0) + ) + (i32.load offset=16 + (local.get $5) + ) + (local.get $3) + ) + ) + (i32.store offset=12 + (local.get $0) + (i32.add + (i32.load offset=12 + (local.get $0) + ) + (local.get $3) + ) + ) + (i32.store offset=16 + (local.tee $4 + (i32.load offset=28 + (local.get $0) + ) + ) + (i32.add + (i32.load offset=16 + (local.get $4) + ) + (local.get $3) + ) + ) + (i32.store offset=20 + (local.get $0) + (i32.add + (i32.load offset=20 + (local.get $0) + ) + (local.get $3) + ) + ) + (i32.store offset=16 + (local.get $0) + (i32.sub + (i32.load offset=16 + (local.get $0) + ) + (local.get $3) + ) + ) + (i32.store offset=20 + (local.get $4) + (local.tee $3 + (i32.sub + (i32.load offset=20 + (local.get $4) + ) + (local.get $3) + ) + ) + ) + (br_if $label$52 + (local.get $3) + ) + (i32.store offset=16 + (local.get $4) + (i32.load offset=8 + (local.get $4) + ) + ) + ) + (br_if $label$6 + (i32.gt_u + (i32.add + (local.tee $3 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 2) + ) + (i32.load offset=12 + (local.get $2) + ) + ) + ) + (local.set $4 + (i32.load offset=48 + (local.get $0) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.get $3) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (i32.load offset=8 + (local.get $2) + ) + (local.get $3) + ) + (local.get $4) + ) + (local.set $3 + (i32.load offset=48 + (local.get $0) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $4 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $4) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.shr_u + (local.get $3) + (i32.const 8) + ) + ) + (i32.store offset=48 + (local.get $0) + (call $fimport$14 + (i32.const 0) + (i32.const 0) + (i32.const 0) + ) + ) + (i32.store offset=4 + (local.get $2) + (i32.const 113) + ) + (br $label$6) + ) + ) + (i32.store offset=4 + (local.get $2) + (i32.const 113) + ) + ) + (block $label$53 + (if + (i32.load offset=20 + (local.get $2) + ) + (block + (block $label$55 + (br_if $label$55 + (i32.eqz + (local.tee $3 + (select + (local.tee $4 + (i32.load offset=16 (local.get $0) ) ) - (i32.store offset=20 - (local.get $2) - (i32.add - (local.tee $4 - (i32.load offset=20 - (local.get $2) + (local.tee $3 + (i32.load offset=20 + (local.tee $5 + (i32.load offset=28 + (local.get $0) ) ) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $4) - (i32.load offset=8 - (local.get $2) - ) - ) - (local.get $1) - ) - (local.set $1 - (i32.load offset=8 - (local.get $0) ) ) - (i32.store offset=20 - (local.get $2) - (i32.add - (local.tee $4 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.const 1) - ) + (i32.gt_u + (local.get $3) + (local.get $4) ) - (i32.store8 - (i32.add - (local.get $4) - (i32.load offset=8 + ) + ) + ) + ) + (drop + (call $fimport$98 + (i32.load offset=12 + (local.get $0) + ) + (i32.load offset=16 + (local.get $5) + ) + (local.get $3) + ) + ) + (i32.store offset=12 + (local.get $0) + (i32.add + (i32.load offset=12 + (local.get $0) + ) + (local.get $3) + ) + ) + (i32.store offset=16 + (local.tee $5 + (i32.load offset=28 + (local.get $0) + ) + ) + (i32.add + (i32.load offset=16 + (local.get $5) + ) + (local.get $3) + ) + ) + (i32.store offset=20 + (local.get $0) + (i32.add + (i32.load offset=20 + (local.get $0) + ) + (local.get $3) + ) + ) + (i32.store offset=16 + (local.get $0) + (local.tee $4 + (i32.sub + (i32.load offset=16 + (local.get $0) + ) + (local.get $3) + ) + ) + ) + (i32.store offset=20 + (local.get $5) + (local.tee $3 + (i32.sub + (i32.load offset=20 + (local.get $5) + ) + (local.get $3) + ) + ) + ) + (br_if $label$55 + (local.get $3) + ) + (i32.store offset=16 + (local.get $5) + (i32.load offset=8 + (local.get $5) + ) + ) + ) + (br_if $label$53 + (local.get $4) + ) + (br $folding-inner1) + ) + ) + (br_if $label$53 + (i32.eq + (local.get $1) + (i32.const 4) + ) + ) + (br_if $label$53 + (i32.lt_s + (local.get $7) + (local.get $1) + ) + ) + (br_if $label$53 + (i32.load offset=4 + (local.get $0) + ) + ) + (br $folding-inner0) + ) + (local.set $3 + (i32.load offset=4 + (local.get $0) + ) + ) + (block $label$56 + (block $label$57 + (block $label$58 + (if + (i32.eq + (local.tee $4 + (i32.load offset=4 + (local.get $2) + ) + ) + (i32.const 666) + ) + (block + (br_if $label$58 + (i32.eqz + (local.get $3) + ) + ) + (br $folding-inner0) + ) + ) + (br_if $label$57 + (local.get $3) + ) + ) + (br_if $label$57 + (i32.ne + (i32.or + (i32.eqz + (local.get $1) + ) + (i32.eq + (local.get $4) + (i32.const 666) + ) + ) + (i32.const 1) + ) + ) + (br_if $label$56 + (i32.eqz + (i32.load offset=116 + (local.get $2) + ) + ) + ) + ) + (if + (i32.eq + (i32.or + (local.tee $3 + (block $label$60 (result i32) + (block $label$61 + (if + (i32.ne + (local.tee $3 + (i32.load offset=136 (local.get $2) ) ) - (local.get $1) - ) - (local.set $1 - (i32.load offset=8 - (local.get $0) - ) + (i32.const 3) ) - (i32.store offset=20 - (local.get $2) - (i32.add - (local.tee $4 - (i32.load offset=20 - (local.get $2) - ) + (block + (br_if $label$61 + (i32.ne + (local.get $3) + (i32.const 2) ) - (i32.const 1) ) - ) - (i32.store8 - (i32.add - (local.get $4) - (i32.load offset=8 + (br $label$60 + (call $fimport$20 (local.get $2) + (local.get $1) ) ) - (i32.shr_u - (local.get $1) - (i32.const 8) - ) - ) - (local.set $1 - (i32.load16_u offset=10 - (local.get $0) - ) ) - (i32.store offset=20 + ) + (br $label$60 + (call $fimport$21 (local.get $2) - (i32.add - (local.tee $4 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $4) - (i32.load offset=8 - (local.get $2) - ) - ) (local.get $1) ) - (local.set $1 - (i32.load8_u offset=11 - (local.get $0) - ) - ) - (i32.store offset=20 - (local.get $2) - (i32.add - (local.tee $4 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.const 1) - ) - ) - (br $label$97 - (i32.add - (local.get $4) - (i32.load offset=8 - (local.get $2) - ) - ) - ) ) ) - (i32.store offset=20 + (call_indirect (type $FUNCSIG$iii) (local.get $2) - (i32.add - (local.tee $1 - (i32.load offset=20 - (local.get $2) + (local.get $1) + (i32.load + (i32.add + (i32.mul + (i32.load offset=132 + (local.get $2) + ) + (i32.const 12) ) + (i32.const 11032) ) - (i32.const 1) ) ) - (i32.store8 - (i32.add - (local.get $1) - (i32.load offset=8 - (local.get $2) - ) + ) + ) + (i32.const 1) + ) + (i32.const 3) + ) + (i32.store offset=4 + (local.get $2) + (i32.const 666) + ) + ) + (if + (i32.eqz + (i32.and + (local.get $3) + (i32.const -3) + ) + ) + (block + (local.set $3 + (i32.const 0) + ) + (br_if $label$1 + (i32.load offset=16 + (local.get $0) + ) + ) + (br $folding-inner1) + ) + ) + (br_if $label$56 + (i32.ne + (local.get $3) + (i32.const 1) + ) + ) + (block $label$65 + (br_if $label$65 + (i32.eq + (local.get $1) + (i32.const 5) + ) + ) + (if + (i32.eq + (local.get $1) + (i32.const 1) + ) + (block + (call $fimport$30 + (local.get $2) + ) + (br $label$65) + ) + ) + (call $fimport$29 + (local.get $2) + (i32.const 0) + (i32.const 0) + (i32.const 0) + ) + (br_if $label$65 + (i32.ne + (local.get $1) + (i32.const 3) + ) + ) + (i32.store16 + (i32.add + (local.tee $3 + (i32.load offset=68 + (local.get $2) + ) + ) + (local.tee $4 + (i32.add + (i32.shl + (i32.load offset=76 + (local.get $2) ) - (i32.shr_u - (local.get $4) - (i32.const 24) + (i32.const 1) + ) + (i32.const -2) + ) + ) + ) + (i32.const 0) + ) + (drop + (call $fimport$97 + (local.get $3) + (i32.const 0) + (local.get $4) + ) + ) + (br_if $label$65 + (i32.load offset=116 + (local.get $2) + ) + ) + (i32.store offset=92 + (local.get $2) + (i32.const 0) + ) + (i32.store offset=108 + (local.get $2) + (i32.const 0) + ) + ) + (block $label$67 + (br_if $label$67 + (i32.eqz + (local.tee $3 + (select + (local.tee $4 + (i32.load offset=16 + (local.get $0) ) ) - (i32.store offset=20 - (local.get $2) - (i32.add - (local.tee $1 - (i32.load offset=20 - (local.get $2) + (local.tee $3 + (i32.load offset=20 + (local.tee $5 + (i32.load offset=28 + (local.get $0) ) ) - (i32.const 1) ) ) - (i32.store8 - (i32.add - (local.get $1) - (i32.load offset=8 - (local.get $2) - ) - ) - (i32.shr_u - (local.get $4) - (i32.const 16) - ) + (i32.gt_u + (local.get $3) + (local.get $4) ) - (local.set $1 - (i32.load offset=48 - (local.get $0) + ) + ) + ) + ) + (drop + (call $fimport$98 + (i32.load offset=12 + (local.get $0) + ) + (i32.load offset=16 + (local.get $5) + ) + (local.get $3) + ) + ) + (i32.store offset=12 + (local.get $0) + (i32.add + (i32.load offset=12 + (local.get $0) + ) + (local.get $3) + ) + ) + (i32.store offset=16 + (local.tee $5 + (i32.load offset=28 + (local.get $0) + ) + ) + (i32.add + (i32.load offset=16 + (local.get $5) + ) + (local.get $3) + ) + ) + (i32.store offset=20 + (local.get $0) + (i32.add + (i32.load offset=20 + (local.get $0) + ) + (local.get $3) + ) + ) + (i32.store offset=16 + (local.get $0) + (local.tee $4 + (i32.sub + (i32.load offset=16 + (local.get $0) + ) + (local.get $3) + ) + ) + ) + (i32.store offset=20 + (local.get $5) + (local.tee $3 + (i32.sub + (i32.load offset=20 + (local.get $5) + ) + (local.get $3) + ) + ) + ) + (br_if $label$67 + (local.get $3) + ) + (i32.store offset=16 + (local.get $5) + (i32.load offset=8 + (local.get $5) + ) + ) + ) + (br_if $label$56 + (local.get $4) + ) + (br $folding-inner1) + ) + (local.set $3 + (i32.const 0) + ) + (br_if $label$1 + (i32.ne + (local.get $1) + (i32.const 4) + ) + ) + (local.set $3 + (i32.const 1) + ) + (br_if $label$1 + (i32.lt_s + (local.tee $1 + (i32.load offset=24 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (local.set $3 + (i32.load offset=48 + (local.get $0) + ) + ) + (i32.store8 + (block $label$68 (result i32) + (if + (i32.eq + (local.get $1) + (i32.const 2) + ) + (block + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $1 + (i32.load offset=20 + (local.get $2) ) ) - (i32.store offset=20 + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $1) + (i32.load offset=8 (local.get $2) - (i32.add - (local.tee $4 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.const 1) - ) ) - (i32.store8 - (i32.add - (local.get $4) - (i32.load offset=8 - (local.get $2) - ) - ) - (i32.shr_u - (local.get $1) - (i32.const 8) + ) + (local.get $3) + ) + (local.set $3 + (i32.load offset=48 + (local.get $0) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $1 + (i32.load offset=20 + (local.get $2) ) ) - (i32.store offset=20 + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $1) + (i32.load offset=8 (local.get $2) - (i32.add - (local.tee $4 - (i32.load offset=20 - (local.get $2) - ) - ) - (i32.const 1) - ) ) - (i32.add - (local.get $4) - (i32.load offset=8 + ) + (i32.shr_u + (local.get $3) + (i32.const 8) + ) + ) + (local.set $3 + (i32.load16_u offset=50 + (local.get $0) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $1 + (i32.load offset=20 (local.get $2) ) ) + (i32.const 1) ) - (local.get $1) ) - (if - (select - (local.tee $3 - (i32.load offset=16 - (local.get $0) - ) + (i32.store8 + (i32.add + (local.get $1) + (i32.load offset=8 + (local.get $2) ) + ) + (local.get $3) + ) + (local.set $3 + (i32.load8_u offset=51 + (local.get $0) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add (local.tee $1 (i32.load offset=20 - (local.tee $9 - (i32.load offset=28 - (local.tee $5 - (local.get $0) - ) - ) - ) + (local.get $2) ) ) - (i32.gt_u - (local.get $1) - (local.get $3) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $1) + (i32.load offset=8 + (local.get $2) ) ) - (block - (drop - (i32.load offset=12 - (local.get $5) + (local.get $3) + ) + (local.set $3 + (i32.load offset=8 + (local.get $0) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $1 + (i32.load offset=20 + (local.get $2) ) ) - (drop - (i32.load offset=16 - (local.get $9) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $1) + (i32.load offset=8 + (local.get $2) + ) + ) + (local.get $3) + ) + (local.set $3 + (i32.load offset=8 + (local.get $0) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $1 + (i32.load offset=20 + (local.get $2) ) ) - (unreachable) + (i32.const 1) ) ) - (if - (i32.ge_s - (local.tee $3 - (i32.load offset=24 + (i32.store8 + (i32.add + (local.get $1) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.shr_u + (local.get $3) + (i32.const 8) + ) + ) + (local.set $3 + (i32.load16_u offset=10 + (local.get $0) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $1 + (i32.load offset=20 (local.get $2) ) ) (i32.const 1) ) - (i32.store offset=24 - (local.get $2) - (i32.sub - (i32.const 0) - (local.get $3) + ) + (i32.store8 + (i32.add + (local.get $1) + (i32.load offset=8 + (local.get $2) ) ) + (local.get $3) ) (local.set $3 - (i32.eqz - (i32.load offset=20 + (i32.load8_u offset=11 + (local.get $0) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $1 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (br $label$68 + (i32.add + (local.get $1) + (i32.load offset=8 (local.get $2) ) ) ) ) - (return + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $1 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $1) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.shr_u (local.get $3) + (i32.const 24) ) ) - (i32.store offset=24 - (local.get $0) - (i32.load - (i32.const 15804) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $1 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $1) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.shr_u + (local.get $3) + (i32.const 16) + ) + ) + (local.set $3 + (i32.load offset=48 + (local.get $0) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $1 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) + ) + ) + (i32.store8 + (i32.add + (local.get $1) + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.shr_u + (local.get $3) + (i32.const 8) + ) + ) + (i32.store offset=20 + (local.get $2) + (i32.add + (local.tee $1 + (i32.load offset=20 + (local.get $2) + ) + ) + (i32.const 1) ) ) - (return - (i32.const -5) + (i32.add + (local.get $1) + (i32.load offset=8 + (local.get $2) + ) ) ) - (i32.store offset=40 - (local.get $2) - (i32.const -1) + (local.get $3) + ) + (block $label$70 + (br_if $label$70 + (i32.eqz + (local.tee $3 + (select + (local.tee $3 + (i32.load offset=16 + (local.get $0) + ) + ) + (local.tee $1 + (i32.load offset=20 + (local.tee $4 + (i32.load offset=28 + (local.get $0) + ) + ) + ) + ) + (i32.gt_u + (local.get $1) + (local.get $3) + ) + ) + ) + ) ) - (return - (i32.const 0) + (drop + (call $fimport$98 + (i32.load offset=12 + (local.get $0) + ) + (i32.load offset=16 + (local.get $4) + ) + (local.get $3) + ) ) - ) - (drop - (i32.load offset=48 + (i32.store offset=12 (local.get $0) + (i32.add + (i32.load offset=12 + (local.get $0) + ) + (local.get $3) + ) + ) + (i32.store offset=16 + (local.tee $1 + (i32.load offset=28 + (local.get $0) + ) + ) + (i32.add + (i32.load offset=16 + (local.get $1) + ) + (local.get $3) + ) + ) + (i32.store offset=20 + (local.get $0) + (i32.add + (i32.load offset=20 + (local.get $0) + ) + (local.get $3) + ) + ) + (i32.store offset=16 + (local.get $0) + (i32.sub + (i32.load offset=16 + (local.get $0) + ) + (local.get $3) + ) + ) + (i32.store offset=20 + (local.get $1) + (local.tee $0 + (i32.sub + (i32.load offset=20 + (local.get $1) + ) + (local.get $3) + ) + ) + ) + (br_if $label$70 + (local.get $0) + ) + (i32.store offset=16 + (local.get $1) + (i32.load offset=8 + (local.get $1) + ) ) ) - (drop - (i32.load offset=8 + (if + (i32.ge_s + (local.tee $0 + (i32.load offset=24 + (local.get $2) + ) + ) + (i32.const 1) + ) + (i32.store offset=24 (local.get $2) + (i32.sub + (i32.const 0) + (local.get $0) + ) ) ) - (unreachable) - ) - (drop - (i32.load offset=48 - (local.get $13) - ) - ) - (drop - (i32.load offset=8 - (local.get $10) + (local.set $3 + (i32.eqz + (i32.load offset=20 + (local.get $2) + ) + ) ) ) - (unreachable) - ) - (drop - (i32.load offset=12 - (local.get $0) + (return + (local.get $3) ) ) - (drop - (i32.load offset=16 - (local.get $5) + (i32.store offset=24 + (local.get $0) + (i32.load + (i32.const 17004) ) ) - (unreachable) - ) - (drop - (i32.load offset=12 - (local.get $0) + (return + (i32.const -5) ) ) - (drop - (i32.load offset=16 - (local.get $7) - ) + (i32.store offset=40 + (local.get $2) + (i32.const -1) ) - (unreachable) + (i32.const 0) ) ) diff --git a/test/passes/O3_low-memory-unused_metrics.wast b/test/passes/O3_low-memory-unused_metrics.wast index e7d2d1ef6..8604b894d 100644 --- a/test/passes/O3_low-memory-unused_metrics.wast +++ b/test/passes/O3_low-memory-unused_metrics.wast @@ -1,101 +1,150 @@ -;; deflate from zlib using wasm backend, before any byn opts +;; zlib key deflate() function, with deflate_rle/deflate_huff inlining disabled (module (type $0 (func (param i32 i32 i32) (result i32))) (type $1 (func (param i32 i32))) (type $2 (func (param i32 i32) (result i32))) - (type $3 (func (param i32))) + (type $3 (func (param i32 i32 i32 i32))) (type $4 (func (param i32) (result i32))) (type $5 (func)) - (type $6 (func (param i32 i32 i32 i32))) - (type $7 (func (param i32 i32 i32 i32) (result i32))) - (type $8 (func (param i32 i32 i32 i32 i32 i32 i32 i32) (result i32))) - (type $9 (func (param i32 i32 i32 i32 i32 i32) (result i32))) - (type $10 (func (param i32 i32 i32))) - (type $11 (func (result i32))) + (type $6 (func (param i32 i32 i32))) + (type $7 (func (result i32))) + (type $8 (func (param i32 i32 i32 i32) (result i32))) + (type $9 (func (param i32 i32 i32 i32 i32 i32 i32 i32) (result i32))) + (type $10 (func (param i32))) + (type $11 (func (param i32 i32 i32 i32 i32 i32) (result i32))) (type $12 (func (param i64 i64) (result i32))) (type $13 (func (param i32 i64 i64 i32))) (type $14 (func (param i32 i32 i32 i32 i32) (result i32))) - (type $15 (func (param i32 i64 i64 i32 i32 i32 i32) (result i32))) + (type $15 (func (param i64 i32 i32) (result i32))) (type $16 (func (param i64 i32) (result i32))) - (type $17 (func (param i64 i32 i32) (result i32))) - (type $18 (func (param i32 i32 i32 i32 i32))) + (type $17 (func (param i32 i32 i32 i32 i32))) + (type $18 (func (param i32 i64 i64 i32 i32 i32 i32) (result i32))) (type $19 (func (param i32 i64 i64 i64 i64))) (type $20 (func (param i64 i64 i64 i64) (result i32))) (type $21 (func (param i32 f64))) - (import "env" "memory" (memory $7 256 256)) - (import "env" "__indirect_function_table" (table $timport$8 10 funcref)) - (import "env" "exit" (func $exit (param i32))) - (import "env" "__syscall140" (func $__syscall140 (param i32 i32) (result i32))) - (import "env" "__syscall6" (func $__syscall6 (param i32 i32) (result i32))) - (import "env" "__syscall54" (func $__syscall54 (param i32 i32) (result i32))) - (import "env" "__syscall146" (func $__syscall146 (param i32 i32) (result i32))) - (import "env" "sbrk" (func $sbrk (param i32) (result i32))) - (import "env" "emscripten_memcpy_big" (func $emscripten_memcpy_big (param i32 i32 i32) (result i32))) - (global $global$0 (mut i32) (i32.const 5261440)) - (global $global$1 i32 (i32.const 5261440)) - (global $global$2 i32 (i32.const 18560)) - (export "deflate" (func $deflate)) - (func $__wasm_call_ctors (; 7 ;) (type $5) - (unreachable) - ) - (func $test_compress (; 8 ;) (type $6) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - (unreachable) - ) - (func $test_deflate (; 9 ;) (type $1) (param $0 i32) (param $1 i32) - (unreachable) - ) - (func $test_inflate (; 10 ;) (type $6) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - (unreachable) - ) - (func $test_large_deflate (; 11 ;) (type $6) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - (unreachable) - ) - (func $test_large_inflate (; 12 ;) (type $6) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - (unreachable) - ) - (func $test_flush (; 13 ;) (type $1) (param $0 i32) (param $1 i32) - (unreachable) - ) - (func $test_sync (; 14 ;) (type $6) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - (unreachable) - ) - (func $test_dict_deflate (; 15 ;) (type $1) (param $0 i32) (param $1 i32) - (unreachable) - ) - (func $test_dict_inflate (; 16 ;) (type $6) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - (unreachable) - ) - (func $main (; 17 ;) (type $2) (param $0 i32) (param $1 i32) (result i32) - (unreachable) - ) - (func $compress (; 18 ;) (type $7) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (unreachable) - ) - (func $crc32 (; 19 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $adler32 (; 20 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $deflateInit_ (; 21 ;) (type $7) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (unreachable) - ) - (func $deflateInit2_ (; 22 ;) (type $8) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (param $5 i32) (param $6 i32) (param $7 i32) (result i32) - (unreachable) - ) - (func $deflateEnd (; 23 ;) (type $4) (param $0 i32) (result i32) - (unreachable) - ) - (func $deflateReset (; 24 ;) (type $4) (param $0 i32) (result i32) - (unreachable) - ) - (func $deflateSetDictionary (; 25 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $deflateParams (; 26 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $deflate (; 27 ;) (type $2) (param $0 i32) (param $1 i32) (result i32) + (type $22 (func (param i32 i32 i32) (result i32))) + (type $23 (func (param i32 i32))) + (type $24 (func (param i32 i32) (result i32))) + (type $25 (func (param i32) (result i32))) + (type $26 (func (result i32))) + (type $27 (func (param i32))) + (type $28 (func (param i32 i32 i32 i32) (result i32))) + (type $29 (func (param i32 i32 i32))) + (import "env" "memory" (memory $108 4096 4096)) + (import "env" "table" (table $timport$109 10 funcref)) + (import "env" "__assert_fail" (func $fimport$0 (param i32 i32 i32 i32))) + (import "env" "__syscall54" (func $fimport$1 (param i32 i32) (result i32))) + (import "env" "__syscall6" (func $fimport$2 (param i32 i32) (result i32))) + (import "env" "__syscall140" (func $fimport$3 (param i32 i32) (result i32))) + (import "env" "__syscall146" (func $fimport$4 (param i32 i32) (result i32))) + (import "env" "sbrk" (func $fimport$5 (param i32) (result i32))) + (import "env" "emscripten_memcpy_big" (func $fimport$6 (param i32 i32 i32) (result i32))) + (import "env" "__wasm_call_ctors" (func $fimport$7)) + (import "env" "doit" (func $fimport$8 (param i32 i32 i32))) + (import "env" "benchmark_main" (func $fimport$9 (param i32 i32) (result i32))) + (import "env" "__original_main" (func $fimport$10 (result i32))) + (import "env" "main" (func $fimport$11 (param i32 i32) (result i32))) + (import "env" "compress" (func $fimport$12 (param i32 i32 i32 i32) (result i32))) + (import "env" "compressBound" (func $fimport$13 (param i32) (result i32))) + (import "env" "crc32" (func $fimport$14 (param i32 i32 i32) (result i32))) + (import "env" "adler32" (func $fimport$15 (param i32 i32 i32) (result i32))) + (import "env" "deflateInit_" (func $fimport$16 (param i32 i32 i32 i32) (result i32))) + (import "env" "deflateInit2_" (func $fimport$17 (param i32 i32 i32 i32 i32 i32 i32 i32) (result i32))) + (import "env" "deflateEnd" (func $fimport$18 (param i32) (result i32))) + (import "env" "deflateReset" (func $fimport$19 (param i32) (result i32))) + (import "env" "deflate_huff" (func $fimport$20 (param i32 i32) (result i32))) + (import "env" "deflate_rle" (func $fimport$21 (param i32 i32) (result i32))) + (import "env" "fill_window" (func $fimport$22 (param i32))) + (import "env" "deflate_stored" (func $fimport$23 (param i32 i32) (result i32))) + (import "env" "deflate_fast" (func $fimport$24 (param i32 i32) (result i32))) + (import "env" "longest_match" (func $fimport$25 (param i32 i32) (result i32))) + (import "env" "deflate_slow" (func $fimport$26 (param i32 i32) (result i32))) + (import "env" "_tr_init" (func $fimport$27 (param i32))) + (import "env" "init_block" (func $fimport$28 (param i32))) + (import "env" "_tr_stored_block" (func $fimport$29 (param i32 i32 i32 i32))) + (import "env" "_tr_align" (func $fimport$30 (param i32))) + (import "env" "_tr_flush_block" (func $fimport$31 (param i32 i32 i32 i32))) + (import "env" "build_tree" (func $fimport$32 (param i32 i32))) + (import "env" "compress_block" (func $fimport$33 (param i32 i32 i32))) + (import "env" "send_tree" (func $fimport$34 (param i32 i32 i32))) + (import "env" "inflate_table" (func $fimport$35 (param i32 i32 i32 i32 i32 i32) (result i32))) + (import "env" "inflate_fast" (func $fimport$36 (param i32 i32))) + (import "env" "inflateInit2_" (func $fimport$37 (param i32 i32 i32 i32) (result i32))) + (import "env" "inflateInit_" (func $fimport$38 (param i32 i32 i32) (result i32))) + (import "env" "inflate" (func $fimport$39 (param i32 i32) (result i32))) + (import "env" "updatewindow" (func $fimport$40 (param i32 i32) (result i32))) + (import "env" "inflateEnd" (func $fimport$41 (param i32) (result i32))) + (import "env" "uncompress" (func $fimport$42 (param i32 i32 i32 i32) (result i32))) + (import "env" "zcalloc" (func $fimport$43 (param i32 i32 i32) (result i32))) + (import "env" "zcfree" (func $fimport$44 (param i32 i32))) + (import "env" "strcmp" (func $fimport$45 (param i32 i32) (result i32))) + (import "env" "puts" (func $fimport$46 (param i32) (result i32))) + (import "env" "strlen" (func $fimport$47 (param i32) (result i32))) + (import "env" "fputs" (func $fimport$48 (param i32 i32) (result i32))) + (import "env" "__towrite" (func $fimport$49 (param i32) (result i32))) + (import "env" "__fwritex" (func $fimport$50 (param i32 i32 i32) (result i32))) + (import "env" "fwrite" (func $fimport$51 (param i32 i32 i32 i32) (result i32))) + (import "env" "__lockfile" (func $fimport$52 (param i32) (result i32))) + (import "env" "__unlockfile" (func $fimport$53 (param i32))) + (import "env" "__stdout_write" (func $fimport$54 (param i32 i32 i32) (result i32))) + (import "env" "__errno_location" (func $fimport$55 (result i32))) + (import "env" "__syscall_ret" (func $fimport$56 (param i32) (result i32))) + (import "env" "dummy" (func $fimport$57 (param i32) (result i32))) + (import "env" "__stdio_close" (func $fimport$58 (param i32) (result i32))) + (import "env" "printf" (func $fimport$59 (param i32 i32) (result i32))) + (import "env" "__overflow" (func $fimport$60 (param i32 i32) (result i32))) + (import "env" "isdigit" (func $fimport$61 (param i32) (result i32))) + (import "env" "memchr" (func $fimport$62 (param i32 i32 i32) (result i32))) + (import "env" "pthread_self" (func $fimport$63 (result i32))) + (import "env" "wcrtomb" (func $fimport$64 (param i32 i32 i32) (result i32))) + (import "env" "__pthread_self" (func $fimport$65 (result i32))) + (import "env" "wctomb" (func $fimport$66 (param i32 i32) (result i32))) + (import "env" "__signbitl" (func $fimport$67 (param i64 i64) (result i32))) + (import "env" "frexpl" (func $fimport$68 (param i32 i64 i64 i32))) + (import "env" "vfprintf" (func $fimport$69 (param i32 i32 i32) (result i32))) + (import "env" "printf_core" (func $fimport$70 (param i32 i32 i32 i32 i32) (result i32))) + (import "env" "out" (func $fimport$71 (param i32 i32 i32))) + (import "env" "getint" (func $fimport$72 (param i32) (result i32))) + (import "env" "pop_arg" (func $fimport$73 (param i32 i32 i32))) + (import "env" "fmt_x" (func $fimport$74 (param i64 i32 i32) (result i32))) + (import "env" "fmt_o" (func $fimport$75 (param i64 i32) (result i32))) + (import "env" "fmt_u" (func $fimport$76 (param i64 i32) (result i32))) + (import "env" "pad" (func $fimport$77 (param i32 i32 i32 i32 i32))) + (import "env" "fmt_fp" (func $fimport$78 (param i32 i64 i64 i32 i32 i32 i32) (result i32))) + (import "env" "__stdio_seek" (func $fimport$79 (param i32 i32 i32) (result i32))) + (import "env" "__stdio_write" (func $fimport$80 (param i32 i32 i32) (result i32))) + (import "env" "malloc" (func $fimport$81 (param i32) (result i32))) + (import "env" "free" (func $fimport$82 (param i32))) + (import "env" "__addtf3" (func $fimport$83 (param i32 i64 i64 i64 i64))) + (import "env" "__ashlti3" (func $fimport$84 (param i32 i64 i64 i32))) + (import "env" "__unordtf2" (func $fimport$85 (param i64 i64 i64 i64) (result i32))) + (import "env" "__eqtf2" (func $fimport$86 (param i64 i64 i64 i64) (result i32))) + (import "env" "__netf2" (func $fimport$87 (param i64 i64 i64 i64) (result i32))) + (import "env" "__extenddftf2" (func $fimport$88 (param i32 f64))) + (import "env" "__fixtfsi" (func $fimport$89 (param i64 i64) (result i32))) + (import "env" "__fixunstfsi" (func $fimport$90 (param i64 i64) (result i32))) + (import "env" "__floatsitf" (func $fimport$91 (param i32 i32))) + (import "env" "__floatunsitf" (func $fimport$92 (param i32 i32))) + (import "env" "__lshrti3" (func $fimport$93 (param i32 i64 i64 i32))) + (import "env" "__multf3" (func $fimport$94 (param i32 i64 i64 i64 i64))) + (import "env" "__subtf3" (func $fimport$95 (param i32 i64 i64 i64 i64))) + (import "env" "__fpclassifyl" (func $fimport$96 (param i64 i64) (result i32))) + (import "env" "memset" (func $fimport$97 (param i32 i32 i32) (result i32))) + (import "env" "memcpy" (func $fimport$98 (param i32 i32 i32) (result i32))) + (import "env" "setThrew" (func $fimport$99 (param i32 i32))) + (import "env" "stackSave" (func $fimport$100 (result i32))) + (import "env" "stackAlloc" (func $fimport$101 (param i32) (result i32))) + (import "env" "stackRestore" (func $fimport$102 (param i32))) + (import "env" "__growWasmMemory" (func $fimport$103 (param i32) (result i32))) + (import "env" "dynCall_iiii" (func $fimport$104 (param i32 i32 i32 i32) (result i32))) + (import "env" "dynCall_vii" (func $fimport$105 (param i32 i32 i32))) + (import "env" "dynCall_iii" (func $fimport$106 (param i32 i32 i32) (result i32))) + (import "env" "dynCall_ii" (func $fimport$107 (param i32 i32) (result i32))) + (global $global$0 (mut i32) (i32.const 5243904)) + (global $global$1 i32 (i32.const 5260880)) + (global $global$2 i32 (i32.const 17988)) + (export "deflate" (func $0)) + (func $0 (; 108 ;) (type $2) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -105,15 +154,6 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (local $19 i32) (local.set $2 (i32.const -2) ) @@ -179,7 +219,7 @@ ) (i32.store offset=24 (local.get $0) - (i32.load offset=15792 + (i32.load offset=16992 (i32.const 0) ) ) @@ -195,7 +235,7 @@ ) (i32.store offset=24 (local.get $0) - (i32.load offset=15804 + (i32.load offset=17004 (i32.const 0) ) ) @@ -245,7 +285,7 @@ ) (i32.store offset=48 (local.get $0) - (call $crc32 + (call $fimport$14 (i32.const 0) (i32.const 0) (i32.const 0) @@ -319,17 +359,12 @@ ) ) ) - (i32.store - (local.tee $2 - (i32.add - (local.get $3) - (i32.const 20) - ) - ) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $5 - (i32.load - (local.get $2) + (local.tee $2 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -337,24 +372,19 @@ ) (i32.store8 (i32.add - (local.get $5) - (i32.load - (local.tee $6 - (i32.add - (local.get $3) - (i32.const 8) - ) - ) + (local.get $2) + (i32.load offset=8 + (local.get $3) ) ) (i32.const 0) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $5 - (i32.load - (local.get $2) + (local.tee $2 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -362,19 +392,19 @@ ) (i32.store8 (i32.add - (local.get $5) - (i32.load - (local.get $6) + (local.get $2) + (i32.load offset=8 + (local.get $3) ) ) (i32.const 0) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $5 - (i32.load - (local.get $2) + (local.tee $2 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -382,19 +412,19 @@ ) (i32.store8 (i32.add - (local.get $5) - (i32.load - (local.get $6) + (local.get $2) + (i32.load offset=8 + (local.get $3) ) ) (i32.const 0) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $5 - (i32.load - (local.get $2) + (local.tee $2 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -402,19 +432,19 @@ ) (i32.store8 (i32.add - (local.get $5) - (i32.load - (local.get $6) + (local.get $2) + (i32.load offset=8 + (local.get $3) ) ) (i32.const 0) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $5 - (i32.load - (local.get $2) + (local.tee $2 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -422,14 +452,14 @@ ) (i32.store8 (i32.add - (local.get $5) - (i32.load - (local.get $6) + (local.get $2) + (i32.load offset=8 + (local.get $3) ) ) (i32.const 0) ) - (local.set $6 + (local.set $2 (i32.const 2) ) (block $label$20 @@ -443,7 +473,7 @@ (i32.const 9) ) ) - (local.set $6 + (local.set $2 (select (i32.const 4) (i32.shl @@ -462,12 +492,12 @@ ) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add (local.tee $5 - (i32.load - (local.get $2) + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -476,23 +506,18 @@ (i32.store8 (i32.add (local.get $5) - (i32.load - (local.tee $7 - (i32.add - (local.get $3) - (i32.const 8) - ) - ) + (i32.load offset=8 + (local.get $3) ) ) - (local.get $6) - ) - (i32.store (local.get $2) + ) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $6 - (i32.load - (local.get $2) + (local.tee $2 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -500,76 +525,63 @@ ) (i32.store8 (i32.add - (local.get $6) - (i32.load - (local.get $7) + (local.get $2) + (i32.load offset=8 + (local.get $3) ) ) (i32.const 3) ) - (i32.store - (i32.add - (local.get $3) - (i32.const 4) - ) + (i32.store offset=4 + (local.get $3) (i32.const 113) ) (br $label$6) ) - (local.set $6 + (local.set $5 (i32.load offset=36 (local.get $2) ) ) - (local.set $8 + (local.set $6 (i32.load offset=28 (local.get $2) ) ) - (local.set $9 + (local.set $7 (i32.load offset=16 (local.get $2) ) ) - (local.set $10 + (local.set $8 (i32.load offset=44 (local.get $2) ) ) - (local.set $11 + (local.set $9 (i32.load (local.get $2) ) ) - (i32.store - (local.tee $2 - (i32.add - (local.get $3) - (i32.const 20) - ) - ) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $12 - (i32.load - (local.get $2) + (local.tee $10 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) ) ) - (local.set $7 + (local.set $2 (i32.const 2) ) (i32.store8 (i32.add - (local.get $12) - (i32.load - (local.tee $5 - (i32.add - (local.get $3) - (i32.const 8) - ) - ) + (local.get $10) + (i32.load offset=8 + (local.get $3) ) ) (i32.or @@ -578,19 +590,19 @@ (i32.or (i32.shl (i32.ne - (local.get $10) + (local.get $8) (i32.const 0) ) (i32.const 1) ) (i32.ne - (local.get $11) + (local.get $9) (i32.const 0) ) ) (i32.shl (i32.ne - (local.get $9) + (local.get $7) (i32.const 0) ) (i32.const 2) @@ -598,7 +610,7 @@ ) (i32.shl (i32.ne - (local.get $8) + (local.get $6) (i32.const 0) ) (i32.const 3) @@ -606,31 +618,26 @@ ) (i32.shl (i32.ne - (local.get $6) + (local.get $5) (i32.const 0) ) (i32.const 4) ) ) ) - (local.set $8 + (local.set $5 (i32.load offset=4 - (i32.load - (local.tee $6 - (i32.add - (local.get $3) - (i32.const 28) - ) - ) + (i32.load offset=28 + (local.get $3) ) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $9 - (i32.load - (local.get $2) + (local.tee $6 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -638,26 +645,26 @@ ) (i32.store8 (i32.add - (local.get $9) - (i32.load - (local.get $5) + (local.get $6) + (i32.load offset=8 + (local.get $3) ) ) - (local.get $8) + (local.get $5) ) - (local.set $8 + (local.set $5 (i32.load offset=4 - (i32.load - (local.get $6) + (i32.load offset=28 + (local.get $3) ) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $9 - (i32.load - (local.get $2) + (local.tee $6 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -665,32 +672,32 @@ ) (i32.store8 (i32.add - (local.get $9) - (i32.load - (local.get $5) + (local.get $6) + (i32.load offset=8 + (local.get $3) ) ) (i32.shr_u - (local.get $8) + (local.get $5) (i32.const 8) ) ) - (local.set $8 + (local.set $5 (i32.load16_u (i32.add - (i32.load - (local.get $6) + (i32.load offset=28 + (local.get $3) ) (i32.const 6) ) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $9 - (i32.load - (local.get $2) + (local.tee $6 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -698,29 +705,29 @@ ) (i32.store8 (i32.add - (local.get $9) - (i32.load - (local.get $5) + (local.get $6) + (i32.load offset=8 + (local.get $3) ) ) - (local.get $8) + (local.get $5) ) - (local.set $8 + (local.set $5 (i32.load8_u (i32.add - (i32.load - (local.get $6) + (i32.load offset=28 + (local.get $3) ) (i32.const 7) ) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $9 - (i32.load - (local.get $2) + (local.tee $6 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -728,12 +735,12 @@ ) (i32.store8 (i32.add - (local.get $9) - (i32.load - (local.get $5) + (local.get $6) + (i32.load offset=8 + (local.get $3) ) ) - (local.get $8) + (local.get $5) ) (block $label$21 (br_if $label$21 @@ -746,7 +753,7 @@ (i32.const 9) ) ) - (local.set $7 + (local.set $2 (select (i32.const 4) (i32.shl @@ -765,12 +772,12 @@ ) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $8 - (i32.load - (local.get $2) + (local.tee $5 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -778,31 +785,26 @@ ) (i32.store8 (i32.add - (local.get $8) - (i32.load - (local.tee $5 - (i32.add - (local.get $3) - (i32.const 8) - ) - ) + (local.get $5) + (i32.load offset=8 + (local.get $3) ) ) - (local.get $7) + (local.get $2) ) - (local.set $7 + (local.set $2 (i32.load offset=12 - (i32.load - (local.get $6) + (i32.load offset=28 + (local.get $3) ) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $8 - (i32.load - (local.get $2) + (local.tee $5 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -810,41 +812,36 @@ ) (i32.store8 (i32.add - (local.get $8) - (i32.load - (local.get $5) + (local.get $5) + (i32.load offset=8 + (local.get $3) ) ) - (local.get $7) + (local.get $2) ) (block $label$22 (br_if $label$22 (i32.eqz (i32.load offset=16 (local.tee $2 - (i32.load - (local.get $6) + (i32.load offset=28 + (local.get $3) ) ) ) ) ) - (local.set $6 + (local.set $2 (i32.load offset=20 (local.get $2) ) ) - (i32.store - (local.tee $2 - (i32.add - (local.get $3) - (i32.const 20) - ) - ) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $7 - (i32.load - (local.get $2) + (local.tee $5 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -852,31 +849,26 @@ ) (i32.store8 (i32.add - (local.get $7) - (i32.load - (local.get $5) + (local.get $5) + (i32.load offset=8 + (local.get $3) ) ) - (local.get $6) + (local.get $2) ) - (local.set $7 + (local.set $2 (i32.load offset=20 - (i32.load - (local.tee $6 - (i32.add - (local.get $3) - (i32.const 28) - ) - ) + (i32.load offset=28 + (local.get $3) ) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $8 - (i32.load - (local.get $2) + (local.tee $5 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -884,19 +876,19 @@ ) (i32.store8 (i32.add - (local.get $8) - (i32.load - (local.get $5) + (local.get $5) + (i32.load offset=8 + (local.get $3) ) ) (i32.shr_u - (local.get $7) + (local.get $2) (i32.const 8) ) ) (local.set $2 - (i32.load - (local.get $6) + (i32.load offset=28 + (local.get $3) ) ) ) @@ -908,46 +900,32 @@ ) ) ) - (i32.store - (local.tee $2 - (i32.add + (i32.store offset=48 + (local.get $0) + (call $fimport$14 + (i32.load offset=48 (local.get $0) - (i32.const 48) ) - ) - (call $crc32 - (i32.load - (local.get $2) - ) - (i32.load - (i32.add - (local.get $3) - (i32.const 8) - ) + (i32.load offset=8 + (local.get $3) ) - (i32.load - (i32.add - (local.get $3) - (i32.const 20) - ) + (i32.load offset=20 + (local.get $3) ) ) ) ) + (i32.store offset=4 + (local.get $3) + (i32.const 69) + ) (i32.store offset=32 (local.get $3) (i32.const 0) ) - (i32.store - (i32.add - (local.get $3) - (i32.const 4) - ) - (i32.const 69) - ) (br $label$16) ) - (local.set $6 + (local.set $5 (i32.add (i32.shl (i32.load offset=48 @@ -972,7 +950,7 @@ ) (br_if $label$24 (i32.lt_s - (local.tee $5 + (local.tee $6 (i32.load offset=132 (local.get $3) ) @@ -985,7 +963,7 @@ ) (br_if $label$24 (i32.lt_s - (local.get $5) + (local.get $6) (i32.const 6) ) ) @@ -994,25 +972,20 @@ (i32.const 128) (i32.const 192) (i32.eq - (local.get $5) + (local.get $6) (i32.const 6) ) ) ) ) - (i32.store - (local.tee $5 - (i32.add - (local.get $3) - (i32.const 4) - ) - ) + (i32.store offset=4 + (local.get $3) (i32.const 113) ) (i32.store offset=20 (local.get $3) (i32.add - (local.tee $7 + (local.tee $6 (i32.load offset=20 (local.get $3) ) @@ -1022,7 +995,7 @@ ) (i32.store8 (i32.add - (local.get $7) + (local.get $6) (i32.load offset=8 (local.get $3) ) @@ -1034,7 +1007,7 @@ (local.tee $2 (i32.or (local.get $2) - (local.get $6) + (local.get $5) ) ) (i32.const 32) @@ -1051,7 +1024,7 @@ (i32.store offset=20 (local.get $3) (i32.add - (local.tee $6 + (local.tee $5 (i32.load offset=20 (local.get $3) ) @@ -1061,7 +1034,7 @@ ) (i32.store8 (i32.add - (local.get $6) + (local.get $5) (i32.load offset=8 (local.get $3) ) @@ -1085,22 +1058,17 @@ ) ) ) - (local.set $7 + (local.set $2 (i32.load offset=48 (local.get $0) ) ) - (i32.store - (local.tee $2 - (i32.add - (local.get $3) - (i32.const 20) - ) - ) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $8 - (i32.load - (local.get $2) + (local.tee $5 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -1108,27 +1076,22 @@ ) (i32.store8 (i32.add - (local.get $8) - (i32.load - (local.tee $6 - (i32.add - (local.get $3) - (i32.const 8) - ) - ) + (local.get $5) + (i32.load offset=8 + (local.get $3) ) ) (i32.shr_u - (local.get $7) + (local.get $2) (i32.const 24) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $8 - (i32.load - (local.get $2) + (local.tee $5 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -1136,27 +1099,27 @@ ) (i32.store8 (i32.add - (local.get $8) - (i32.load - (local.get $6) + (local.get $5) + (i32.load offset=8 + (local.get $3) ) ) (i32.shr_u - (local.get $7) + (local.get $2) (i32.const 16) ) ) - (local.set $7 + (local.set $2 (i32.load offset=48 (local.get $0) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $8 - (i32.load - (local.get $2) + (local.tee $5 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -1164,22 +1127,22 @@ ) (i32.store8 (i32.add - (local.get $8) - (i32.load - (local.get $6) + (local.get $5) + (i32.load offset=8 + (local.get $3) ) ) (i32.shr_u - (local.get $7) + (local.get $2) (i32.const 8) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $8 - (i32.load - (local.get $2) + (local.tee $5 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -1187,25 +1150,25 @@ ) (i32.store8 (i32.add - (local.get $8) - (i32.load - (local.get $6) + (local.get $5) + (i32.load offset=8 + (local.get $3) ) ) - (local.get $7) + (local.get $2) ) ) (i32.store offset=48 (local.get $0) - (call $adler32 + (call $fimport$15 (i32.const 0) (i32.const 0) (i32.const 0) ) ) (local.set $2 - (i32.load - (local.get $5) + (i32.load offset=4 + (local.get $3) ) ) ) @@ -1221,7 +1184,7 @@ (br_if $label$27 (i32.eqz (i32.load offset=16 - (local.tee $6 + (local.tee $5 (i32.load offset=28 (local.get $3) ) @@ -1236,59 +1199,17 @@ ) (br_if $label$26 (i32.ge_u - (local.tee $5 + (local.tee $6 (i32.load offset=32 (local.get $3) ) ) (i32.load16_u offset=20 - (local.get $6) + (local.get $5) ) ) ) - (local.set $10 - (i32.add - (local.get $3) - (i32.const 12) - ) - ) - (local.set $11 - (i32.add - (local.get $3) - (i32.const 8) - ) - ) - (local.set $13 - (i32.add - (local.get $0) - (i32.const 48) - ) - ) - (local.set $12 - (i32.add - (local.get $0) - (i32.const 16) - ) - ) - (local.set $14 - (i32.add - (local.get $0) - (i32.const 28) - ) - ) - (local.set $8 - (i32.add - (local.get $3) - (i32.const 20) - ) - ) (local.set $7 - (i32.add - (local.get $3) - (i32.const 32) - ) - ) - (local.set $9 (local.get $2) ) (loop $label$28 @@ -1296,8 +1217,8 @@ (br_if $label$29 (i32.ne (local.get $2) - (i32.load - (local.get $10) + (i32.load offset=12 + (local.get $3) ) ) ) @@ -1305,31 +1226,31 @@ (br_if $label$30 (i32.le_u (local.get $2) - (local.get $9) + (local.get $7) ) ) (br_if $label$30 (i32.eqz (i32.load offset=44 - (local.get $6) + (local.get $5) ) ) ) - (i32.store - (local.get $13) - (call $crc32 - (i32.load - (local.get $13) + (i32.store offset=48 + (local.get $0) + (call $fimport$14 + (i32.load offset=48 + (local.get $0) ) (i32.add - (i32.load - (local.get $11) + (i32.load offset=8 + (local.get $3) ) - (local.get $9) + (local.get $7) ) (i32.sub (local.get $2) - (local.get $9) + (local.get $7) ) ) ) @@ -1340,21 +1261,21 @@ (local.tee $2 (select (local.tee $2 - (i32.load - (local.get $12) + (i32.load offset=16 + (local.get $0) ) ) - (local.tee $6 + (local.tee $5 (i32.load offset=20 - (local.tee $5 - (i32.load - (local.get $14) + (local.tee $6 + (i32.load offset=28 + (local.get $0) ) ) ) ) (i32.gt_u - (local.get $6) + (local.get $5) (local.get $2) ) ) @@ -1362,72 +1283,62 @@ ) ) (drop - (call $memcpy - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 12) - ) - ) + (call $fimport$98 + (i32.load offset=12 + (local.get $0) ) (i32.load offset=16 - (local.get $5) + (local.get $6) ) (local.get $2) ) ) - (i32.store - (local.get $6) + (i32.store offset=12 + (local.get $0) (i32.add - (i32.load - (local.get $6) + (i32.load offset=12 + (local.get $0) ) (local.get $2) ) ) (i32.store offset=16 - (local.tee $6 - (i32.load - (local.get $14) + (local.tee $5 + (i32.load offset=28 + (local.get $0) ) ) (i32.add (i32.load offset=16 - (local.get $6) + (local.get $5) ) (local.get $2) ) ) - (i32.store - (local.tee $5 - (i32.add - (local.get $0) - (i32.const 20) - ) - ) + (i32.store offset=20 + (local.get $0) (i32.add - (i32.load - (local.get $5) + (i32.load offset=20 + (local.get $0) ) (local.get $2) ) ) - (i32.store - (local.get $12) + (i32.store offset=16 + (local.get $0) (i32.sub - (i32.load - (local.get $12) + (i32.load offset=16 + (local.get $0) ) (local.get $2) ) ) (i32.store offset=20 - (local.get $6) + (local.get $5) (local.tee $2 (i32.sub (i32.load offset=20 - (local.get $6) + (local.get $5) ) (local.get $2) ) @@ -1436,57 +1347,51 @@ (br_if $label$31 (local.get $2) ) - (i32.store - (i32.add - (local.get $6) - (i32.const 16) - ) + (i32.store offset=16 + (local.get $5) (i32.load offset=8 - (local.get $6) + (local.get $5) ) ) ) - (local.set $6 - (i32.load - (i32.add - (local.get $3) - (i32.const 28) - ) + (local.set $5 + (i32.load offset=28 + (local.get $3) ) ) (br_if $label$26 (i32.eq (local.tee $2 - (i32.load - (local.get $8) + (i32.load offset=20 + (local.get $3) ) ) - (i32.load - (local.get $10) + (i32.load offset=12 + (local.get $3) ) ) ) - (local.set $5 - (i32.load - (local.get $7) + (local.set $6 + (i32.load offset=32 + (local.get $3) ) ) - (local.set $9 + (local.set $7 (local.get $2) ) ) - (local.set $6 + (local.set $5 (i32.load8_u (i32.add (i32.load offset=16 - (local.get $6) + (local.get $5) ) - (local.get $5) + (local.get $6) ) ) ) - (i32.store - (local.get $8) + (i32.store offset=20 + (local.get $3) (i32.add (local.get $2) (i32.const 1) @@ -1494,19 +1399,19 @@ ) (i32.store8 (i32.add - (i32.load - (local.get $11) + (i32.load offset=8 + (local.get $3) ) (local.get $2) ) - (local.get $6) + (local.get $5) ) - (i32.store - (local.get $7) - (local.tee $5 + (i32.store offset=32 + (local.get $3) + (local.tee $6 (i32.add - (i32.load - (local.get $7) + (i32.load offset=32 + (local.get $3) ) (i32.const 1) ) @@ -1515,37 +1420,31 @@ (block $label$32 (br_if $label$32 (i32.lt_u - (local.get $5) + (local.get $6) (i32.load16_u offset=20 - (local.tee $6 - (i32.load - (i32.add - (local.get $3) - (i32.const 28) - ) + (local.tee $5 + (i32.load offset=28 + (local.get $3) ) ) ) ) ) (local.set $2 - (local.get $9) + (local.get $7) ) (br $label$26) ) (local.set $2 - (i32.load - (local.get $8) + (i32.load offset=20 + (local.get $3) ) ) (br $label$28) ) ) - (i32.store - (i32.add - (local.get $3) - (i32.const 4) - ) + (i32.store offset=4 + (local.get $3) (i32.const 73) ) (br $label$14) @@ -1554,18 +1453,15 @@ (br_if $label$33 (i32.eqz (i32.load offset=44 - (local.get $6) + (local.get $5) ) ) ) (br_if $label$33 (i32.le_u - (local.tee $5 - (i32.load - (i32.add - (local.get $3) - (i32.const 20) - ) + (local.tee $6 + (i32.load offset=20 + (local.get $3) ) ) (local.get $2) @@ -1573,7 +1469,7 @@ ) (i32.store offset=48 (local.get $0) - (call $crc32 + (call $fimport$14 (i32.load offset=48 (local.get $0) ) @@ -1584,55 +1480,41 @@ (local.get $2) ) (i32.sub - (local.get $5) + (local.get $6) (local.get $2) ) ) ) - (local.set $6 - (i32.load - (i32.add - (local.get $3) - (i32.const 28) - ) + (local.set $5 + (i32.load offset=28 + (local.get $3) ) ) ) (block $label$34 (br_if $label$34 (i32.ne - (i32.load - (local.tee $2 - (i32.add - (local.get $3) - (i32.const 32) - ) - ) + (i32.load offset=32 + (local.get $3) ) (i32.load offset=20 - (local.get $6) + (local.get $5) ) ) ) - (i32.store - (i32.add - (local.get $3) - (i32.const 4) - ) + (i32.store offset=4 + (local.get $3) (i32.const 73) ) - (i32.store - (local.get $2) + (i32.store offset=32 + (local.get $3) (i32.const 0) ) (br $label$14) ) (local.set $2 - (i32.load - (i32.add - (local.get $3) - (i32.const 4) - ) + (i32.load offset=4 + (local.get $3) ) ) ) @@ -1642,7 +1524,7 @@ (i32.const 73) ) ) - (local.set $6 + (local.set $5 (i32.load offset=28 (local.get $3) ) @@ -1651,53 +1533,11 @@ (br_if $label$11 (i32.eqz (i32.load offset=28 - (local.get $6) + (local.get $5) ) ) ) - (local.set $10 - (i32.add - (local.get $3) - (i32.const 12) - ) - ) - (local.set $11 - (i32.add - (local.get $3) - (i32.const 28) - ) - ) - (local.set $12 - (i32.add - (local.get $3) - (i32.const 8) - ) - ) - (local.set $13 - (i32.add - (local.get $0) - (i32.const 48) - ) - ) - (local.set $14 - (i32.add - (local.get $0) - (i32.const 16) - ) - ) - (local.set $5 - (i32.add - (local.get $3) - (i32.const 20) - ) - ) (local.set $7 - (i32.add - (local.get $3) - (i32.const 32) - ) - ) - (local.set $9 (local.tee $2 (i32.load offset=20 (local.get $3) @@ -1711,8 +1551,8 @@ (br_if $label$38 (i32.ne (local.get $2) - (i32.load - (local.get $10) + (i32.load offset=12 + (local.get $3) ) ) ) @@ -1720,33 +1560,33 @@ (br_if $label$39 (i32.le_u (local.get $2) - (local.get $9) + (local.get $7) ) ) (br_if $label$39 (i32.eqz (i32.load offset=44 - (i32.load - (local.get $11) + (i32.load offset=28 + (local.get $3) ) ) ) ) - (i32.store - (local.get $13) - (call $crc32 - (i32.load - (local.get $13) + (i32.store offset=48 + (local.get $0) + (call $fimport$14 + (i32.load offset=48 + (local.get $0) ) (i32.add - (i32.load - (local.get $12) + (i32.load offset=8 + (local.get $3) ) - (local.get $9) + (local.get $7) ) (i32.sub (local.get $2) - (local.get $9) + (local.get $7) ) ) ) @@ -1757,26 +1597,21 @@ (local.tee $2 (select (local.tee $2 - (i32.load - (local.get $14) + (i32.load offset=16 + (local.get $0) ) ) - (local.tee $6 + (local.tee $5 (i32.load offset=20 - (local.tee $9 - (i32.load - (local.tee $8 - (i32.add - (local.get $0) - (i32.const 28) - ) - ) + (local.tee $6 + (i32.load offset=28 + (local.get $0) ) ) ) ) (i32.gt_u - (local.get $6) + (local.get $5) (local.get $2) ) ) @@ -1784,72 +1619,62 @@ ) ) (drop - (call $memcpy - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 12) - ) - ) + (call $fimport$98 + (i32.load offset=12 + (local.get $0) ) (i32.load offset=16 - (local.get $9) + (local.get $6) ) (local.get $2) ) ) - (i32.store - (local.get $6) + (i32.store offset=12 + (local.get $0) (i32.add - (i32.load - (local.get $6) + (i32.load offset=12 + (local.get $0) ) (local.get $2) ) ) (i32.store offset=16 - (local.tee $6 - (i32.load - (local.get $8) + (local.tee $5 + (i32.load offset=28 + (local.get $0) ) ) (i32.add (i32.load offset=16 - (local.get $6) + (local.get $5) ) (local.get $2) ) ) - (i32.store - (local.tee $8 - (i32.add - (local.get $0) - (i32.const 20) - ) - ) + (i32.store offset=20 + (local.get $0) (i32.add - (i32.load - (local.get $8) + (i32.load offset=20 + (local.get $0) ) (local.get $2) ) ) - (i32.store - (local.get $14) + (i32.store offset=16 + (local.get $0) (i32.sub - (i32.load - (local.get $14) + (i32.load offset=16 + (local.get $0) ) (local.get $2) ) ) (i32.store offset=20 - (local.get $6) + (local.get $5) (local.tee $2 (i32.sub (i32.load offset=20 - (local.get $6) + (local.get $5) ) (local.get $2) ) @@ -1858,60 +1683,57 @@ (br_if $label$40 (local.get $2) ) - (i32.store - (i32.add - (local.get $6) - (i32.const 16) - ) + (i32.store offset=16 + (local.get $5) (i32.load offset=8 - (local.get $6) + (local.get $5) ) ) ) (br_if $label$36 (i32.eq (local.tee $2 - (i32.load - (local.get $5) + (i32.load offset=20 + (local.get $3) ) ) - (i32.load - (local.get $10) + (i32.load offset=12 + (local.get $3) ) ) ) - (local.set $9 + (local.set $7 (local.get $2) ) ) - (local.set $6 + (local.set $5 (i32.load offset=28 - (i32.load - (local.get $11) + (i32.load offset=28 + (local.get $3) ) ) ) - (i32.store - (local.get $7) + (i32.store offset=32 + (local.get $3) (i32.add - (local.tee $8 - (i32.load - (local.get $7) + (local.tee $6 + (i32.load offset=32 + (local.get $3) ) ) (i32.const 1) ) ) - (local.set $6 + (local.set $5 (i32.load8_u (i32.add + (local.get $5) (local.get $6) - (local.get $8) ) ) ) - (i32.store - (local.get $5) + (i32.store offset=20 + (local.get $3) (i32.add (local.get $2) (i32.const 1) @@ -1919,34 +1741,34 @@ ) (i32.store8 (i32.add - (i32.load - (local.get $12) + (i32.load offset=8 + (local.get $3) ) (local.get $2) ) - (local.get $6) + (local.get $5) ) (block $label$41 (br_if $label$41 - (local.get $6) + (local.get $5) ) - (local.set $6 + (local.set $5 (i32.const 0) ) (local.set $2 - (local.get $9) + (local.get $7) ) (br $label$35) ) (local.set $2 - (i32.load - (local.get $5) + (i32.load offset=20 + (local.get $3) ) ) (br $label$37) ) ) - (local.set $6 + (local.set $5 (i32.const 1) ) ) @@ -1954,50 +1776,36 @@ (br_if $label$42 (i32.eqz (i32.load offset=44 - (i32.load - (i32.add - (local.get $3) - (i32.const 28) - ) + (i32.load offset=28 + (local.get $3) ) ) ) ) (br_if $label$42 (i32.le_u - (local.tee $5 - (i32.load - (i32.add - (local.get $3) - (i32.const 20) - ) + (local.tee $6 + (i32.load offset=20 + (local.get $3) ) ) (local.get $2) ) ) - (i32.store - (local.tee $7 - (i32.add + (i32.store offset=48 + (local.get $0) + (call $fimport$14 + (i32.load offset=48 (local.get $0) - (i32.const 48) - ) - ) - (call $crc32 - (i32.load - (local.get $7) ) (i32.add - (i32.load - (i32.add - (local.get $3) - (i32.const 8) - ) + (i32.load offset=8 + (local.get $3) ) (local.get $2) ) (i32.sub - (local.get $5) + (local.get $6) (local.get $2) ) ) @@ -2005,15 +1813,12 @@ ) (br_if $label$12 (i32.eqz - (local.get $6) + (local.get $5) ) ) (local.set $2 - (i32.load - (i32.add - (local.get $3) - (i32.const 4) - ) + (i32.load offset=4 + (local.get $3) ) ) ) @@ -2025,19 +1830,13 @@ ) (br $label$9) ) - (i32.store - (i32.add - (local.get $3) - (i32.const 32) - ) + (i32.store offset=32 + (local.get $3) (i32.const 0) ) ) - (i32.store - (i32.add - (local.get $3) - (i32.const 4) - ) + (i32.store offset=4 + (local.get $3) (i32.const 91) ) ) @@ -2050,49 +1849,7 @@ ) ) ) - (local.set $10 - (i32.add - (local.get $3) - (i32.const 12) - ) - ) - (local.set $11 - (i32.add - (local.get $3) - (i32.const 28) - ) - ) - (local.set $12 - (i32.add - (local.get $3) - (i32.const 8) - ) - ) - (local.set $13 - (i32.add - (local.get $0) - (i32.const 48) - ) - ) - (local.set $14 - (i32.add - (local.get $0) - (i32.const 16) - ) - ) - (local.set $5 - (i32.add - (local.get $3) - (i32.const 20) - ) - ) (local.set $7 - (i32.add - (local.get $3) - (i32.const 32) - ) - ) - (local.set $9 (local.tee $2 (i32.load offset=20 (local.get $3) @@ -2106,8 +1863,8 @@ (br_if $label$46 (i32.ne (local.get $2) - (i32.load - (local.get $10) + (i32.load offset=12 + (local.get $3) ) ) ) @@ -2115,33 +1872,33 @@ (br_if $label$47 (i32.le_u (local.get $2) - (local.get $9) + (local.get $7) ) ) (br_if $label$47 (i32.eqz (i32.load offset=44 - (i32.load - (local.get $11) + (i32.load offset=28 + (local.get $3) ) ) ) ) - (i32.store - (local.get $13) - (call $crc32 - (i32.load - (local.get $13) + (i32.store offset=48 + (local.get $0) + (call $fimport$14 + (i32.load offset=48 + (local.get $0) ) (i32.add - (i32.load - (local.get $12) + (i32.load offset=8 + (local.get $3) ) - (local.get $9) + (local.get $7) ) (i32.sub (local.get $2) - (local.get $9) + (local.get $7) ) ) ) @@ -2152,26 +1909,21 @@ (local.tee $2 (select (local.tee $2 - (i32.load - (local.get $14) + (i32.load offset=16 + (local.get $0) ) ) - (local.tee $6 + (local.tee $5 (i32.load offset=20 - (local.tee $9 - (i32.load - (local.tee $8 - (i32.add - (local.get $0) - (i32.const 28) - ) - ) + (local.tee $6 + (i32.load offset=28 + (local.get $0) ) ) ) ) (i32.gt_u - (local.get $6) + (local.get $5) (local.get $2) ) ) @@ -2179,72 +1931,62 @@ ) ) (drop - (call $memcpy - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 12) - ) - ) + (call $fimport$98 + (i32.load offset=12 + (local.get $0) ) (i32.load offset=16 - (local.get $9) + (local.get $6) ) (local.get $2) ) ) - (i32.store - (local.get $6) + (i32.store offset=12 + (local.get $0) (i32.add - (i32.load - (local.get $6) + (i32.load offset=12 + (local.get $0) ) (local.get $2) ) ) (i32.store offset=16 - (local.tee $6 - (i32.load - (local.get $8) + (local.tee $5 + (i32.load offset=28 + (local.get $0) ) ) (i32.add (i32.load offset=16 - (local.get $6) + (local.get $5) ) (local.get $2) ) ) - (i32.store - (local.tee $8 - (i32.add - (local.get $0) - (i32.const 20) - ) - ) + (i32.store offset=20 + (local.get $0) (i32.add - (i32.load - (local.get $8) + (i32.load offset=20 + (local.get $0) ) (local.get $2) ) ) - (i32.store - (local.get $14) + (i32.store offset=16 + (local.get $0) (i32.sub - (i32.load - (local.get $14) + (i32.load offset=16 + (local.get $0) ) (local.get $2) ) ) (i32.store offset=20 - (local.get $6) + (local.get $5) (local.tee $2 (i32.sub (i32.load offset=20 - (local.get $6) + (local.get $5) ) (local.get $2) ) @@ -2253,60 +1995,57 @@ (br_if $label$48 (local.get $2) ) - (i32.store - (i32.add - (local.get $6) - (i32.const 16) - ) + (i32.store offset=16 + (local.get $5) (i32.load offset=8 - (local.get $6) + (local.get $5) ) ) ) (br_if $label$44 (i32.eq (local.tee $2 - (i32.load - (local.get $5) + (i32.load offset=20 + (local.get $3) ) ) - (i32.load - (local.get $10) + (i32.load offset=12 + (local.get $3) ) ) ) - (local.set $9 + (local.set $7 (local.get $2) ) ) - (local.set $6 + (local.set $5 (i32.load offset=36 - (i32.load - (local.get $11) + (i32.load offset=28 + (local.get $3) ) ) ) - (i32.store - (local.get $7) + (i32.store offset=32 + (local.get $3) (i32.add - (local.tee $8 - (i32.load - (local.get $7) + (local.tee $6 + (i32.load offset=32 + (local.get $3) ) ) (i32.const 1) ) ) - (local.set $6 + (local.set $5 (i32.load8_u (i32.add + (local.get $5) (local.get $6) - (local.get $8) ) ) ) - (i32.store - (local.get $5) + (i32.store offset=20 + (local.get $3) (i32.add (local.get $2) (i32.const 1) @@ -2314,34 +2053,34 @@ ) (i32.store8 (i32.add - (i32.load - (local.get $12) + (i32.load offset=8 + (local.get $3) ) (local.get $2) ) - (local.get $6) + (local.get $5) ) (block $label$49 (br_if $label$49 - (local.get $6) + (local.get $5) ) - (local.set $6 + (local.set $5 (i32.const 0) ) (local.set $2 - (local.get $9) + (local.get $7) ) (br $label$43) ) (local.set $2 - (i32.load - (local.get $5) + (i32.load offset=20 + (local.get $3) ) ) (br $label$45) ) ) - (local.set $6 + (local.set $5 (i32.const 1) ) ) @@ -2349,50 +2088,36 @@ (br_if $label$50 (i32.eqz (i32.load offset=44 - (i32.load - (i32.add - (local.get $3) - (i32.const 28) - ) + (i32.load offset=28 + (local.get $3) ) ) ) ) (br_if $label$50 (i32.le_u - (local.tee $5 - (i32.load - (i32.add - (local.get $3) - (i32.const 20) - ) + (local.tee $6 + (i32.load offset=20 + (local.get $3) ) ) (local.get $2) ) ) - (i32.store - (local.tee $7 - (i32.add + (i32.store offset=48 + (local.get $0) + (call $fimport$14 + (i32.load offset=48 (local.get $0) - (i32.const 48) - ) - ) - (call $crc32 - (i32.load - (local.get $7) ) (i32.add - (i32.load - (i32.add - (local.get $3) - (i32.const 8) - ) + (i32.load offset=8 + (local.get $3) ) (local.get $2) ) (i32.sub - (local.get $5) + (local.get $6) (local.get $2) ) ) @@ -2400,15 +2125,12 @@ ) (br_if $label$8 (i32.eqz - (local.get $6) + (local.get $5) ) ) (local.set $2 - (i32.load - (i32.add - (local.get $3) - (i32.const 4) - ) + (i32.load offset=4 + (local.get $3) ) ) ) @@ -2420,11 +2142,8 @@ ) (br $label$6) ) - (i32.store - (i32.add - (local.get $3) - (i32.const 4) - ) + (i32.store offset=4 + (local.get $3) (i32.const 103) ) ) @@ -2457,31 +2176,21 @@ (local.tee $2 (select (local.tee $2 - (i32.load - (local.tee $5 - (i32.add - (local.get $0) - (i32.const 16) - ) - ) + (i32.load offset=16 + (local.get $0) ) ) - (local.tee $6 + (local.tee $5 (i32.load offset=20 - (local.tee $8 - (i32.load - (local.tee $7 - (i32.add - (local.get $0) - (i32.const 28) - ) - ) + (local.tee $6 + (i32.load offset=28 + (local.get $0) ) ) ) ) (i32.gt_u - (local.get $6) + (local.get $5) (local.get $2) ) ) @@ -2489,39 +2198,34 @@ ) ) (drop - (call $memcpy - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 12) - ) - ) + (call $fimport$98 + (i32.load offset=12 + (local.get $0) ) (i32.load offset=16 - (local.get $8) + (local.get $6) ) (local.get $2) ) ) - (i32.store - (local.get $6) + (i32.store offset=12 + (local.get $0) (i32.add - (i32.load - (local.get $6) + (i32.load offset=12 + (local.get $0) ) (local.get $2) ) ) (i32.store offset=16 - (local.tee $6 - (i32.load - (local.get $7) + (local.tee $5 + (i32.load offset=28 + (local.get $0) ) ) (i32.add (i32.load offset=16 - (local.get $6) + (local.get $5) ) (local.get $2) ) @@ -2535,21 +2239,21 @@ (local.get $2) ) ) - (i32.store - (local.get $5) + (i32.store offset=16 + (local.get $0) (i32.sub - (i32.load - (local.get $5) + (i32.load offset=16 + (local.get $0) ) (local.get $2) ) ) (i32.store offset=20 - (local.get $6) + (local.get $5) (local.tee $2 (i32.sub (i32.load offset=20 - (local.get $6) + (local.get $5) ) (local.get $2) ) @@ -2558,36 +2262,25 @@ (br_if $label$52 (local.get $2) ) - (i32.store - (i32.add - (local.get $6) - (i32.const 16) - ) + (i32.store offset=16 + (local.get $5) (i32.load offset=8 - (local.get $6) + (local.get $5) ) ) ) (br_if $label$6 (i32.gt_u (i32.add - (local.tee $6 - (i32.load - (local.tee $2 - (i32.add - (local.get $3) - (i32.const 20) - ) - ) + (local.tee $2 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 2) ) - (i32.load - (i32.add - (local.get $3) - (i32.const 12) - ) + (i32.load offset=12 + (local.get $3) ) ) ) @@ -2596,10 +2289,10 @@ (local.get $0) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.get $6) + (local.get $2) (i32.const 1) ) ) @@ -2608,21 +2301,21 @@ (i32.load offset=8 (local.get $3) ) - (local.get $6) + (local.get $2) ) (local.get $5) ) - (local.set $6 + (local.set $2 (i32.load offset=48 (local.get $0) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add (local.tee $5 - (i32.load - (local.get $2) + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -2636,32 +2329,26 @@ ) ) (i32.shr_u - (local.get $6) + (local.get $2) (i32.const 8) ) ) (i32.store offset=48 (local.get $0) - (call $crc32 + (call $fimport$14 (i32.const 0) (i32.const 0) (i32.const 0) ) ) - (i32.store - (i32.add - (local.get $3) - (i32.const 4) - ) + (i32.store offset=4 + (local.get $3) (i32.const 113) ) (br $label$6) ) - (i32.store - (i32.add - (local.get $3) - (i32.const 4) - ) + (i32.store offset=4 + (local.get $3) (i32.const 113) ) ) @@ -2679,72 +2366,57 @@ (i32.eqz (local.tee $2 (select - (local.tee $6 - (i32.load - (local.tee $7 - (i32.add - (local.get $0) - (i32.const 16) - ) - ) + (local.tee $5 + (i32.load offset=16 + (local.get $0) ) ) (local.tee $2 (i32.load offset=20 - (local.tee $8 - (i32.load - (local.tee $5 - (i32.add - (local.get $0) - (i32.const 28) - ) - ) + (local.tee $6 + (i32.load offset=28 + (local.get $0) ) ) ) ) (i32.gt_u (local.get $2) - (local.get $6) + (local.get $5) ) ) ) ) ) (drop - (call $memcpy - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 12) - ) - ) + (call $fimport$98 + (i32.load offset=12 + (local.get $0) ) (i32.load offset=16 - (local.get $8) + (local.get $6) ) (local.get $2) ) ) - (i32.store - (local.get $6) + (i32.store offset=12 + (local.get $0) (i32.add - (i32.load - (local.get $6) + (i32.load offset=12 + (local.get $0) ) (local.get $2) ) ) (i32.store offset=16 - (local.tee $5 - (i32.load - (local.get $5) + (local.tee $6 + (i32.load offset=28 + (local.get $0) ) ) (i32.add (i32.load offset=16 - (local.get $5) + (local.get $6) ) (local.get $2) ) @@ -2758,23 +2430,23 @@ (local.get $2) ) ) - (i32.store - (local.get $7) - (local.tee $6 + (i32.store offset=16 + (local.get $0) + (local.tee $5 (i32.sub - (i32.load - (local.get $7) + (i32.load offset=16 + (local.get $0) ) (local.get $2) ) ) ) (i32.store offset=20 - (local.get $5) + (local.get $6) (local.tee $2 (i32.sub (i32.load offset=20 - (local.get $5) + (local.get $6) ) (local.get $2) ) @@ -2783,24 +2455,18 @@ (br_if $label$55 (local.get $2) ) - (i32.store - (i32.add - (local.get $5) - (i32.const 16) - ) + (i32.store offset=16 + (local.get $6) (i32.load offset=8 - (local.get $5) + (local.get $6) ) ) ) (br_if $label$53 - (local.get $6) + (local.get $5) ) - (i32.store - (i32.add - (local.get $3) - (i32.const 40) - ) + (i32.store offset=40 + (local.get $3) (i32.const -1) ) (return @@ -2826,7 +2492,7 @@ ) (i32.store offset=24 (local.get $0) - (i32.load offset=15804 + (i32.load offset=17004 (i32.const 0) ) ) @@ -2845,12 +2511,9 @@ (block $label$59 (br_if $label$59 (i32.ne - (local.tee $6 - (i32.load - (i32.add - (local.get $3) - (i32.const 4) - ) + (local.tee $5 + (i32.load offset=4 + (local.get $3) ) ) (i32.const 666) @@ -2863,7 +2526,7 @@ ) (i32.store offset=24 (local.get $0) - (i32.load offset=15804 + (i32.load offset=17004 (i32.const 0) ) ) @@ -2882,7 +2545,7 @@ (local.get $1) ) (i32.eq - (local.get $6) + (local.get $5) (i32.const 666) ) ) @@ -2900,1581 +2563,88 @@ (block $label$60 (block $label$61 (block $label$62 - (block $label$63 - (block $label$64 - (br_if $label$64 - (i32.eq - (local.tee $2 - (i32.load offset=136 - (local.get $3) - ) - ) - (i32.const 3) - ) - ) - (br_if $label$63 - (i32.ne - (local.get $2) - (i32.const 2) - ) - ) - (local.set $6 - (i32.add - (local.get $3) - (i32.const 116) - ) - ) - (local.set $11 - (i32.add - (local.get $3) - (i32.const 96) - ) - ) - (local.set $2 - (i32.add - (local.get $3) - (i32.const 108) - ) - ) - (local.set $10 - (i32.add - (local.get $3) - (i32.const 56) - ) - ) - (local.set $7 - (i32.add - (local.get $3) - (i32.const 5792) - ) - ) - (local.set $12 - (i32.add - (local.get $3) - (i32.const 5796) - ) - ) - (local.set $14 - (i32.add - (local.get $3) - (i32.const 5784) - ) - ) - (local.set $13 - (i32.add - (local.get $3) - (i32.const 5788) - ) - ) - (local.set $4 - (i32.add + (br_if $label$62 + (i32.eq + (local.tee $2 + (i32.load offset=136 (local.get $3) - (i32.const 92) ) ) - (block $label$65 - (loop $label$66 - (block $label$67 - (br_if $label$67 - (i32.load - (local.get $6) - ) - ) - (call $fill_window - (local.get $3) - ) - (br_if $label$67 - (i32.load - (local.get $6) - ) - ) - (br_if $label$61 - (i32.eqz - (local.get $1) - ) - ) - (local.set $2 - (i32.const 0) - ) - (block $label$68 - (br_if $label$68 - (i32.lt_s - (local.tee $6 - (i32.load - (local.tee $5 - (i32.add - (local.get $3) - (i32.const 92) - ) - ) - ) - ) - (i32.const 0) - ) - ) - (local.set $2 - (i32.add - (i32.load - (i32.add - (local.get $3) - (i32.const 56) - ) - ) - (local.get $6) - ) - ) - ) - (call $_tr_flush_block - (local.get $3) - (local.get $2) - (i32.sub - (i32.load - (local.tee $7 - (i32.add - (local.get $3) - (i32.const 108) - ) - ) - ) - (local.get $6) - ) - (i32.eq - (local.get $1) - (i32.const 4) - ) - ) - (i32.store - (local.get $5) - (i32.load - (local.get $7) - ) - ) - (block $label$69 - (br_if $label$69 - (i32.eqz - (local.tee $6 - (select - (local.tee $6 - (i32.load offset=16 - (local.tee $2 - (i32.load - (local.get $3) - ) - ) - ) - ) - (local.tee $5 - (i32.load offset=20 - (local.tee $7 - (i32.load offset=28 - (local.get $2) - ) - ) - ) - ) - (i32.gt_u - (local.get $5) - (local.get $6) - ) - ) - ) - ) - ) - (drop - (call $memcpy - (i32.load offset=12 - (local.get $2) - ) - (i32.load offset=16 - (local.get $7) - ) - (local.get $6) - ) - ) - (i32.store offset=12 - (local.get $2) - (i32.add - (i32.load offset=12 - (local.get $2) - ) - (local.get $6) - ) - ) - (i32.store offset=16 - (local.tee $5 - (i32.load - (i32.add - (local.get $2) - (i32.const 28) - ) - ) - ) - (i32.add - (i32.load offset=16 - (local.get $5) - ) - (local.get $6) - ) - ) - (i32.store offset=20 - (local.get $2) - (i32.add - (i32.load offset=20 - (local.get $2) - ) - (local.get $6) - ) - ) - (i32.store - (local.tee $2 - (i32.add - (local.get $2) - (i32.const 16) - ) - ) - (i32.sub - (i32.load - (local.get $2) - ) - (local.get $6) - ) - ) - (i32.store offset=20 - (local.get $5) - (local.tee $2 - (i32.sub - (i32.load offset=20 - (local.get $5) - ) - (local.get $6) - ) - ) - ) - (br_if $label$69 - (local.get $2) - ) - (i32.store - (i32.add - (local.get $5) - (i32.const 16) - ) - (i32.load offset=8 - (local.get $5) - ) - ) - ) - (br_if $label$65 - (i32.load offset=16 - (i32.load - (local.get $3) - ) - ) - ) - (local.set $2 - (i32.shl - (i32.eq - (local.get $1) - (i32.const 4) - ) - (i32.const 1) - ) - ) - (br $label$62) - ) - (i32.store - (local.get $11) - (i32.const 0) - ) - (local.set $5 - (i32.load8_u - (i32.add - (i32.load - (local.get $10) - ) - (i32.load - (local.get $2) - ) - ) - ) - ) - (i32.store16 - (i32.add - (i32.load - (local.get $12) - ) - (i32.shl - (local.tee $8 - (i32.load - (local.get $7) - ) - ) - (i32.const 1) - ) - ) - (i32.const 0) - ) - (i32.store - (local.get $7) - (i32.add - (local.get $8) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $8) - (i32.load - (local.get $14) - ) - ) - (local.get $5) - ) - (i32.store16 - (local.tee $5 - (i32.add - (i32.add - (local.get $3) - (i32.shl - (local.get $5) - (i32.const 2) - ) - ) - (i32.const 148) - ) - ) - (i32.add - (i32.load16_u - (local.get $5) - ) - (i32.const 1) - ) - ) - (i32.store - (local.get $6) - (i32.add - (i32.load - (local.get $6) - ) - (i32.const -1) - ) - ) - (i32.store - (local.get $2) - (local.tee $5 - (i32.add - (i32.load - (local.get $2) - ) - (i32.const 1) - ) - ) - ) - (br_if $label$66 - (i32.ne - (i32.load - (local.get $7) - ) - (i32.add - (i32.load - (local.get $13) - ) - (i32.const -1) - ) - ) - ) - (local.set $8 - (i32.const 0) - ) - (block $label$70 - (br_if $label$70 - (i32.lt_s - (local.tee $9 - (i32.load - (local.get $4) - ) - ) - (i32.const 0) - ) - ) - (local.set $8 - (i32.add - (i32.load - (local.get $10) - ) - (local.get $9) - ) - ) - ) - (call $_tr_flush_block - (local.get $3) - (local.get $8) - (i32.sub - (local.get $5) - (local.get $9) - ) - (i32.const 0) - ) - (i32.store - (local.get $4) - (i32.load - (local.get $2) - ) - ) - (block $label$71 - (br_if $label$71 - (i32.eqz - (local.tee $8 - (select - (local.tee $8 - (i32.load offset=16 - (local.tee $5 - (i32.load - (local.get $3) - ) - ) - ) - ) - (local.tee $9 - (i32.load offset=20 - (local.tee $15 - (i32.load offset=28 - (local.get $5) - ) - ) - ) - ) - (i32.gt_u - (local.get $9) - (local.get $8) - ) - ) - ) - ) - ) - (drop - (call $memcpy - (i32.load offset=12 - (local.get $5) - ) - (i32.load offset=16 - (local.get $15) - ) - (local.get $8) - ) - ) - (i32.store offset=12 - (local.get $5) - (i32.add - (i32.load offset=12 - (local.get $5) - ) - (local.get $8) - ) - ) - (i32.store offset=16 - (local.tee $9 - (i32.load - (i32.add - (local.get $5) - (i32.const 28) - ) - ) - ) - (i32.add - (i32.load offset=16 - (local.get $9) - ) - (local.get $8) - ) - ) - (i32.store offset=20 - (local.get $5) - (i32.add - (i32.load offset=20 - (local.get $5) - ) - (local.get $8) - ) - ) - (i32.store - (local.tee $5 - (i32.add - (local.get $5) - (i32.const 16) - ) - ) - (i32.sub - (i32.load - (local.get $5) - ) - (local.get $8) - ) - ) - (i32.store offset=20 - (local.get $9) - (local.tee $5 - (i32.sub - (i32.load offset=20 - (local.get $9) - ) - (local.get $8) - ) - ) - ) - (br_if $label$71 - (local.get $5) - ) - (i32.store - (i32.add - (local.get $9) - (i32.const 16) - ) - (i32.load offset=8 - (local.get $9) - ) - ) - ) - (br_if $label$66 - (i32.load offset=16 - (i32.load - (local.get $3) - ) - ) - ) - (br $label$61) - ) - ) - (local.set $2 - (select - (i32.const 3) - (i32.const 1) - (i32.eq - (local.get $1) - (i32.const 4) - ) - ) - ) - (br $label$62) - ) - (local.set $2 - (i32.add - (local.get $3) - (i32.const 116) - ) - ) - (local.set $14 - (i32.add - (local.get $3) - (i32.const 96) - ) - ) - (local.set $6 - (i32.add - (local.get $3) - (i32.const 108) - ) - ) - (local.set $11 - (i32.add - (local.get $3) - (i32.const 56) - ) - ) - (local.set $7 - (i32.add - (local.get $3) - (i32.const 5792) - ) - ) - (local.set $13 - (i32.add - (local.get $3) - (i32.const 5796) - ) - ) - (local.set $4 - (i32.add - (local.get $3) - (i32.const 5784) - ) - ) - (local.set $15 - (i32.add - (local.get $3) - (i32.const 5788) - ) - ) - (local.set $16 - (i32.add - (local.get $3) - (i32.const 92) - ) + (i32.const 3) ) - (loop $label$72 - (block $label$73 - (block $label$74 - (block $label$75 - (block $label$76 - (br_if $label$76 - (i32.lt_u - (local.tee $5 - (i32.load - (local.get $2) - ) - ) - (i32.const 258) - ) - ) - (i32.store - (local.get $14) - (i32.const 0) - ) - (br $label$75) - ) - (call $fill_window - (local.get $3) - ) - (local.set $5 - (i32.load - (local.get $2) - ) - ) - (block $label$77 - (br_if $label$77 - (local.get $1) - ) - (br_if $label$61 - (i32.lt_u - (local.get $5) - (i32.const 258) - ) - ) - ) - (block $label$78 - (br_if $label$78 - (i32.eqz - (local.get $5) - ) - ) - (i32.store - (local.get $14) - (i32.const 0) - ) - (br_if $label$75 - (i32.gt_u - (local.get $5) - (i32.const 2) - ) - ) - (local.set $8 - (i32.load - (local.get $6) - ) - ) - (br $label$74) - ) - (local.set $2 - (i32.const 0) - ) - (block $label$79 - (br_if $label$79 - (i32.lt_s - (local.tee $6 - (i32.load - (local.tee $5 - (i32.add - (local.get $3) - (i32.const 92) - ) - ) - ) - ) - (i32.const 0) - ) - ) - (local.set $2 - (i32.add - (i32.load - (i32.add - (local.get $3) - (i32.const 56) - ) - ) - (local.get $6) - ) - ) - ) - (call $_tr_flush_block - (local.get $3) - (local.get $2) - (i32.sub - (i32.load - (local.tee $7 - (i32.add - (local.get $3) - (i32.const 108) - ) - ) - ) - (local.get $6) - ) - (i32.eq - (local.get $1) - (i32.const 4) - ) - ) - (i32.store - (local.get $5) - (i32.load - (local.get $7) - ) - ) - (block $label$80 - (br_if $label$80 - (i32.eqz - (local.tee $6 - (select - (local.tee $6 - (i32.load offset=16 - (local.tee $2 - (i32.load - (local.get $3) - ) - ) - ) - ) - (local.tee $5 - (i32.load offset=20 - (local.tee $7 - (i32.load offset=28 - (local.get $2) - ) - ) - ) - ) - (i32.gt_u - (local.get $5) - (local.get $6) - ) - ) - ) - ) - ) - (drop - (call $memcpy - (i32.load offset=12 - (local.get $2) - ) - (i32.load offset=16 - (local.get $7) - ) - (local.get $6) - ) - ) - (i32.store offset=12 - (local.get $2) - (i32.add - (i32.load offset=12 - (local.get $2) - ) - (local.get $6) - ) - ) - (i32.store offset=16 - (local.tee $5 - (i32.load - (i32.add - (local.get $2) - (i32.const 28) - ) - ) - ) - (i32.add - (i32.load offset=16 - (local.get $5) - ) - (local.get $6) - ) - ) - (i32.store offset=20 - (local.get $2) - (i32.add - (i32.load offset=20 - (local.get $2) - ) - (local.get $6) - ) - ) - (i32.store - (local.tee $2 - (i32.add - (local.get $2) - (i32.const 16) - ) - ) - (i32.sub - (i32.load - (local.get $2) - ) - (local.get $6) - ) - ) - (i32.store offset=20 - (local.get $5) - (local.tee $2 - (i32.sub - (i32.load offset=20 - (local.get $5) - ) - (local.get $6) - ) - ) - ) - (br_if $label$80 - (local.get $2) - ) - (i32.store - (i32.add - (local.get $5) - (i32.const 16) - ) - (i32.load offset=8 - (local.get $5) - ) - ) - ) - (block $label$81 - (br_if $label$81 - (i32.load offset=16 - (i32.load - (local.get $3) - ) - ) - ) - (local.set $2 - (i32.shl - (i32.eq - (local.get $1) - (i32.const 4) - ) - (i32.const 1) - ) - ) - (br $label$62) - ) - (local.set $2 - (select - (i32.const 3) - (i32.const 1) - (i32.eq - (local.get $1) - (i32.const 4) - ) - ) - ) - (br $label$62) - ) - (block $label$82 - (br_if $label$82 - (local.tee $8 - (i32.load - (local.get $6) - ) - ) - ) - (local.set $8 - (i32.const 0) - ) - (br $label$74) - ) - (br_if $label$74 - (i32.ne - (local.tee $9 - (i32.load8_u - (i32.add - (local.tee $10 - (i32.add - (i32.load - (local.get $11) - ) - (local.get $8) - ) - ) - (i32.const -1) - ) - ) - ) - (i32.load8_u - (local.get $10) - ) - ) - ) - (br_if $label$74 - (i32.ne - (local.get $9) - (i32.load8_u offset=1 - (local.get $10) - ) - ) - ) - (br_if $label$74 - (i32.ne - (local.get $9) - (i32.load8_u - (i32.add - (local.get $10) - (i32.const 2) - ) - ) - ) - ) - (local.set $17 - (i32.add - (local.get $10) - (i32.const 258) - ) - ) - (local.set $18 - (i32.const 1) - ) - (block $label$83 - (block $label$84 - (block $label$85 - (block $label$86 - (block $label$87 - (block $label$88 - (block $label$89 - (loop $label$90 - (br_if $label$89 - (i32.ne - (local.get $9) - (i32.load8_u offset=2 - (local.tee $12 - (i32.add - (local.get $10) - (local.get $18) - ) - ) - ) - ) - ) - (br_if $label$88 - (i32.ne - (local.get $9) - (i32.load8_u offset=3 - (local.get $12) - ) - ) - ) - (br_if $label$87 - (i32.ne - (local.get $9) - (i32.load8_u offset=4 - (local.get $12) - ) - ) - ) - (br_if $label$86 - (i32.ne - (local.get $9) - (i32.load8_u offset=5 - (local.get $12) - ) - ) - ) - (br_if $label$85 - (i32.ne - (local.get $9) - (i32.load8_u offset=6 - (local.get $12) - ) - ) - ) - (br_if $label$84 - (i32.ne - (local.get $9) - (i32.load8_u offset=7 - (local.get $12) - ) - ) - ) - (br_if $label$83 - (i32.ne - (local.get $9) - (i32.load8_u - (local.tee $12 - (i32.add - (local.get $10) - (local.tee $19 - (i32.add - (local.get $18) - (i32.const 8) - ) - ) - ) - ) - ) - ) - ) - (local.set $12 - (i32.add - (local.get $10) - (local.tee $18 - (i32.add - (local.get $18) - (i32.const 9) - ) - ) - ) - ) - (br_if $label$83 - (i32.gt_u - (local.get $18) - (i32.const 257) - ) - ) - (local.set $18 - (local.get $19) - ) - (br_if $label$90 - (i32.eq - (local.get $9) - (i32.and - (i32.load8_u - (local.get $12) - ) - (i32.const 255) - ) - ) - ) - (br $label$83) - ) - ) - (local.set $12 - (i32.add - (local.get $12) - (i32.const 2) - ) - ) - (br $label$83) - ) - (local.set $12 - (i32.add - (local.get $12) - (i32.const 3) - ) - ) - (br $label$83) - ) - (local.set $12 - (i32.add - (local.get $12) - (i32.const 4) - ) - ) - (br $label$83) - ) - (local.set $12 - (i32.add - (local.get $12) - (i32.const 5) - ) - ) - (br $label$83) - ) - (local.set $12 - (i32.add - (local.get $12) - (i32.const 6) - ) - ) - (br $label$83) - ) - (local.set $12 - (i32.add - (local.get $12) - (i32.const 7) - ) - ) - ) - (i32.store - (local.get $14) - (local.tee $5 - (select - (local.get $5) - (local.tee $9 - (i32.add - (i32.sub - (local.get $12) - (local.get $17) - ) - (i32.const 258) - ) - ) - (i32.gt_u - (local.get $9) - (local.get $5) - ) - ) - ) - ) - (br_if $label$74 - (i32.lt_u - (local.get $5) - (i32.const 3) - ) - ) - (i32.store16 - (i32.add - (i32.load - (local.get $13) - ) - (i32.shl - (local.tee $8 - (i32.load - (local.get $7) - ) - ) - (i32.const 1) - ) - ) - (i32.const 1) - ) - (i32.store - (local.get $7) - (i32.add - (local.get $8) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $8) - (i32.load - (local.get $4) - ) - ) - (local.tee $5 - (i32.add - (local.get $5) - (i32.const -3) - ) - ) - ) - (i32.store16 - (local.tee $5 - (i32.add - (i32.add - (local.get $3) - (i32.or - (i32.shl - (i32.load8_u - (i32.add - (i32.and - (local.get $5) - (i32.const 255) - ) - (i32.const 13488) - ) - ) - (i32.const 2) - ) - (i32.const 1024) - ) - ) - (i32.const 152) - ) - ) - (i32.add - (i32.load16_u - (local.get $5) - ) - (i32.const 1) - ) - ) - (i32.store16 - (local.tee $5 - (i32.add - (i32.add - (local.get $3) - (i32.shl - (i32.load8_u offset=12976 - (i32.const 0) - ) - (i32.const 2) - ) - ) - (i32.const 2440) - ) - ) - (i32.add - (i32.load16_u - (local.get $5) - ) - (i32.const 1) - ) - ) - (local.set $5 - (i32.load - (local.get $14) - ) - ) - (i32.store - (local.get $14) - (i32.const 0) - ) - (i32.store - (local.get $2) - (i32.sub - (i32.load - (local.get $2) - ) - (local.get $5) - ) - ) - (i32.store - (local.get $6) - (local.tee $5 - (i32.add - (local.get $5) - (i32.load - (local.get $6) - ) - ) - ) - ) - (br_if $label$72 - (i32.ne - (i32.load - (local.get $7) - ) - (i32.add - (i32.load - (local.get $15) - ) - (i32.const -1) - ) - ) - ) - (br $label$73) - ) - (local.set $5 - (i32.load8_u - (i32.add - (i32.load - (local.get $11) - ) - (local.get $8) - ) - ) - ) - (i32.store16 - (i32.add - (i32.load - (local.get $13) - ) - (i32.shl - (local.tee $8 - (i32.load - (local.get $7) - ) - ) - (i32.const 1) - ) - ) - (i32.const 0) - ) - (i32.store - (local.get $7) - (i32.add - (local.get $8) - (i32.const 1) - ) - ) - (i32.store8 - (i32.add - (local.get $8) - (i32.load - (local.get $4) - ) - ) - (local.get $5) - ) - (i32.store16 - (local.tee $5 - (i32.add - (i32.add - (local.get $3) - (i32.shl - (local.get $5) - (i32.const 2) - ) - ) - (i32.const 148) - ) - ) - (i32.add - (i32.load16_u - (local.get $5) - ) - (i32.const 1) - ) - ) - (i32.store - (local.get $2) - (i32.add - (i32.load - (local.get $2) - ) - (i32.const -1) - ) - ) - (i32.store - (local.get $6) - (local.tee $5 - (i32.add - (i32.load - (local.get $6) - ) - (i32.const 1) - ) - ) - ) - (br_if $label$72 - (i32.ne - (i32.load - (local.get $7) - ) - (i32.add - (i32.load - (local.get $15) - ) - (i32.const -1) - ) - ) - ) - ) - (local.set $8 - (i32.const 0) - ) - (block $label$91 - (br_if $label$91 - (i32.lt_s - (local.tee $9 - (i32.load - (local.get $16) - ) - ) - (i32.const 0) - ) - ) - (local.set $8 - (i32.add - (i32.load - (local.get $11) - ) - (local.get $9) - ) - ) - ) - (call $_tr_flush_block - (local.get $3) - (local.get $8) - (i32.sub - (local.get $5) - (local.get $9) - ) - (i32.const 0) - ) - (i32.store - (local.get $16) - (i32.load - (local.get $6) - ) - ) - (block $label$92 - (br_if $label$92 - (i32.eqz - (local.tee $8 - (select - (local.tee $8 - (i32.load offset=16 - (local.tee $5 - (i32.load - (local.get $3) - ) - ) - ) - ) - (local.tee $9 - (i32.load offset=20 - (local.tee $10 - (i32.load offset=28 - (local.get $5) - ) - ) - ) - ) - (i32.gt_u - (local.get $9) - (local.get $8) - ) - ) - ) - ) - ) - (drop - (call $memcpy - (i32.load offset=12 - (local.get $5) - ) - (i32.load offset=16 - (local.get $10) - ) - (local.get $8) - ) - ) - (i32.store offset=12 - (local.get $5) - (i32.add - (i32.load offset=12 - (local.get $5) - ) - (local.get $8) - ) - ) - (i32.store offset=16 - (local.tee $9 - (i32.load - (i32.add - (local.get $5) - (i32.const 28) - ) - ) - ) - (i32.add - (i32.load offset=16 - (local.get $9) - ) - (local.get $8) - ) - ) - (i32.store offset=20 - (local.get $5) - (i32.add - (i32.load offset=20 - (local.get $5) - ) - (local.get $8) - ) - ) - (i32.store - (local.tee $5 - (i32.add - (local.get $5) - (i32.const 16) - ) - ) - (i32.sub - (i32.load - (local.get $5) - ) - (local.get $8) - ) - ) - (i32.store offset=20 - (local.get $9) - (local.tee $5 - (i32.sub - (i32.load offset=20 - (local.get $9) - ) - (local.get $8) - ) - ) - ) - (br_if $label$92 - (local.get $5) - ) - (i32.store - (i32.add - (local.get $9) - (i32.const 16) - ) - (i32.load offset=8 - (local.get $9) - ) - ) - ) - (br_if $label$72 - (i32.load offset=16 - (i32.load - (local.get $3) - ) - ) - ) - (br $label$61) + ) + (br_if $label$61 + (i32.ne + (local.get $2) + (i32.const 2) ) ) (local.set $2 - (call_indirect (type $2) + (call $fimport$20 (local.get $3) (local.get $1) - (i32.load - (i32.add - (i32.mul - (i32.load offset=132 - (local.get $3) - ) - (i32.const 12) - ) - (i32.const 9832) - ) - ) ) ) + (br $label$60) ) - (block $label$93 - (br_if $label$93 - (i32.ne - (i32.or - (local.get $2) - (i32.const 1) - ) - (i32.const 3) - ) + (local.set $2 + (call $fimport$21 + (local.get $3) + (local.get $1) ) - (i32.store + ) + (br $label$60) + ) + (local.set $2 + (call_indirect (type $2) + (local.get $3) + (local.get $1) + (i32.load (i32.add - (local.get $3) - (i32.const 4) + (i32.mul + (i32.load offset=132 + (local.get $3) + ) + (i32.const 12) + ) + (i32.const 11032) ) - (i32.const 666) ) ) - (br_if $label$60 - (i32.and + ) + ) + (block $label$63 + (br_if $label$63 + (i32.ne + (i32.or (local.get $2) - (i32.const -3) + (i32.const 1) ) + (i32.const 3) + ) + ) + (i32.store offset=4 + (local.get $3) + (i32.const 666) + ) + ) + (block $label$64 + (br_if $label$64 + (i32.and + (local.get $2) + (i32.const -3) ) ) (local.set $2 (i32.const 0) ) (br_if $label$1 - (i32.load - (i32.add - (local.get $0) - (i32.const 16) - ) + (i32.load offset=16 + (local.get $0) ) ) - (i32.store - (i32.add - (local.get $3) - (i32.const 40) - ) + (i32.store offset=40 + (local.get $3) (i32.const -1) ) (return @@ -4487,32 +2657,32 @@ (i32.const 1) ) ) - (block $label$94 - (br_if $label$94 + (block $label$65 + (br_if $label$65 (i32.eq (local.get $1) (i32.const 5) ) ) - (block $label$95 - (br_if $label$95 + (block $label$66 + (br_if $label$66 (i32.ne (local.get $1) (i32.const 1) ) ) - (call $_tr_align + (call $fimport$30 (local.get $3) ) - (br $label$94) + (br $label$65) ) - (call $_tr_stored_block + (call $fimport$29 (local.get $3) (i32.const 0) (i32.const 0) (i32.const 0) ) - (br_if $label$94 + (br_if $label$65 (i32.ne (local.get $1) (i32.const 3) @@ -4525,7 +2695,7 @@ (local.get $3) ) ) - (local.tee $6 + (local.tee $5 (i32.add (i32.shl (i32.load offset=76 @@ -4540,13 +2710,13 @@ (i32.const 0) ) (drop - (call $memset + (call $fimport$97 (local.get $2) (i32.const 0) - (local.get $6) + (local.get $5) ) ) - (br_if $label$94 + (br_if $label$65 (i32.load offset=116 (local.get $3) ) @@ -4560,77 +2730,62 @@ (i32.const 0) ) ) - (block $label$96 - (br_if $label$96 + (block $label$67 + (br_if $label$67 (i32.eqz (local.tee $2 (select - (local.tee $6 - (i32.load - (local.tee $7 - (i32.add - (local.get $0) - (i32.const 16) - ) - ) + (local.tee $5 + (i32.load offset=16 + (local.get $0) ) ) (local.tee $2 (i32.load offset=20 - (local.tee $8 - (i32.load - (local.tee $5 - (i32.add - (local.get $0) - (i32.const 28) - ) - ) + (local.tee $6 + (i32.load offset=28 + (local.get $0) ) ) ) ) (i32.gt_u (local.get $2) - (local.get $6) + (local.get $5) ) ) ) ) ) (drop - (call $memcpy - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 12) - ) - ) + (call $fimport$98 + (i32.load offset=12 + (local.get $0) ) (i32.load offset=16 - (local.get $8) + (local.get $6) ) (local.get $2) ) ) - (i32.store - (local.get $6) + (i32.store offset=12 + (local.get $0) (i32.add - (i32.load - (local.get $6) + (i32.load offset=12 + (local.get $0) ) (local.get $2) ) ) (i32.store offset=16 - (local.tee $5 - (i32.load - (local.get $5) + (local.tee $6 + (i32.load offset=28 + (local.get $0) ) ) (i32.add (i32.load offset=16 - (local.get $5) + (local.get $6) ) (local.get $2) ) @@ -4644,49 +2799,43 @@ (local.get $2) ) ) - (i32.store - (local.get $7) - (local.tee $6 + (i32.store offset=16 + (local.get $0) + (local.tee $5 (i32.sub - (i32.load - (local.get $7) + (i32.load offset=16 + (local.get $0) ) (local.get $2) ) ) ) (i32.store offset=20 - (local.get $5) + (local.get $6) (local.tee $2 (i32.sub (i32.load offset=20 - (local.get $5) + (local.get $6) ) (local.get $2) ) ) ) - (br_if $label$96 + (br_if $label$67 (local.get $2) ) - (i32.store - (i32.add - (local.get $5) - (i32.const 16) - ) + (i32.store offset=16 + (local.get $6) (i32.load offset=8 - (local.get $5) + (local.get $6) ) ) ) (br_if $label$56 - (local.get $6) + (local.get $5) ) - (i32.store - (i32.add - (local.get $3) - (i32.const 40) - ) + (i32.store offset=40 + (local.get $3) (i32.const -1) ) (return @@ -4715,30 +2864,25 @@ (i32.const 1) ) ) - (local.set $6 + (local.set $2 (i32.load offset=48 (local.get $0) ) ) - (block $label$97 - (block $label$98 - (br_if $label$98 + (block $label$68 + (block $label$69 + (br_if $label$69 (i32.ne (local.get $1) (i32.const 2) ) ) - (i32.store - (local.tee $2 - (i32.add - (local.get $3) - (i32.const 20) - ) - ) + (i32.store offset=20 + (local.get $3) (i32.add (local.tee $1 - (i32.load - (local.get $2) + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -4751,22 +2895,19 @@ (local.get $3) ) ) - (local.get $6) + (local.get $2) ) - (local.set $1 - (i32.load - (i32.add - (local.get $0) - (i32.const 48) - ) + (local.set $2 + (i32.load offset=48 + (local.get $0) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $6 - (i32.load - (local.get $2) + (local.tee $1 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -4774,17 +2915,17 @@ ) (i32.store8 (i32.add - (local.get $6) + (local.get $1) (i32.load offset=8 (local.get $3) ) ) (i32.shr_u - (local.get $1) + (local.get $2) (i32.const 8) ) ) - (local.set $1 + (local.set $2 (i32.load16_u (i32.add (local.get $0) @@ -4792,12 +2933,12 @@ ) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $6 - (i32.load - (local.get $2) + (local.tee $1 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -4805,14 +2946,14 @@ ) (i32.store8 (i32.add - (local.get $6) + (local.get $1) (i32.load offset=8 (local.get $3) ) ) - (local.get $1) + (local.get $2) ) - (local.set $1 + (local.set $2 (i32.load8_u (i32.add (local.get $0) @@ -4820,12 +2961,12 @@ ) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $6 - (i32.load - (local.get $2) + (local.tee $1 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -4833,24 +2974,24 @@ ) (i32.store8 (i32.add - (local.get $6) + (local.get $1) (i32.load offset=8 (local.get $3) ) ) - (local.get $1) + (local.get $2) ) - (local.set $1 + (local.set $2 (i32.load offset=8 (local.get $0) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $6 - (i32.load - (local.get $2) + (local.tee $1 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -4858,24 +2999,24 @@ ) (i32.store8 (i32.add - (local.get $6) + (local.get $1) (i32.load offset=8 (local.get $3) ) ) - (local.get $1) + (local.get $2) ) - (local.set $1 + (local.set $2 (i32.load offset=8 (local.get $0) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $6 - (i32.load - (local.get $2) + (local.tee $1 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -4883,17 +3024,17 @@ ) (i32.store8 (i32.add - (local.get $6) + (local.get $1) (i32.load offset=8 (local.get $3) ) ) (i32.shr_u - (local.get $1) + (local.get $2) (i32.const 8) ) ) - (local.set $1 + (local.set $2 (i32.load16_u (i32.add (local.get $0) @@ -4901,12 +3042,12 @@ ) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $6 - (i32.load - (local.get $2) + (local.tee $1 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -4914,14 +3055,14 @@ ) (i32.store8 (i32.add - (local.get $6) + (local.get $1) (i32.load offset=8 (local.get $3) ) ) - (local.get $1) + (local.get $2) ) - (local.set $1 + (local.set $2 (i32.load8_u (i32.add (local.get $0) @@ -4929,38 +3070,33 @@ ) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $6 - (i32.load - (local.get $2) + (local.tee $1 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) ) ) - (local.set $2 + (local.set $1 (i32.add - (local.get $6) + (local.get $1) (i32.load offset=8 (local.get $3) ) ) ) - (br $label$97) + (br $label$68) ) - (i32.store - (local.tee $2 - (i32.add - (local.get $3) - (i32.const 20) - ) - ) + (i32.store offset=20 + (local.get $3) (i32.add (local.tee $1 - (i32.load - (local.get $2) + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -4974,16 +3110,16 @@ ) ) (i32.shr_u - (local.get $6) + (local.get $2) (i32.const 24) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add (local.tee $1 - (i32.load - (local.get $2) + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -4997,24 +3133,21 @@ ) ) (i32.shr_u - (local.get $6) + (local.get $2) (i32.const 16) ) ) - (local.set $1 - (i32.load - (i32.add - (local.get $0) - (i32.const 48) - ) + (local.set $2 + (i32.load offset=48 + (local.get $0) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $6 - (i32.load - (local.get $2) + (local.tee $1 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) @@ -5022,30 +3155,30 @@ ) (i32.store8 (i32.add - (local.get $6) + (local.get $1) (i32.load offset=8 (local.get $3) ) ) (i32.shr_u - (local.get $1) + (local.get $2) (i32.const 8) ) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $3) (i32.add - (local.tee $6 - (i32.load - (local.get $2) + (local.tee $1 + (i32.load offset=20 + (local.get $3) ) ) (i32.const 1) ) ) - (local.set $2 + (local.set $1 (i32.add - (local.get $6) + (local.get $1) (i32.load offset=8 (local.get $3) ) @@ -5053,34 +3186,24 @@ ) ) (i32.store8 - (local.get $2) (local.get $1) + (local.get $2) ) - (block $label$99 - (br_if $label$99 + (block $label$70 + (br_if $label$70 (i32.eqz (local.tee $2 (select (local.tee $2 - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 16) - ) - ) + (i32.load offset=16 + (local.get $0) ) ) (local.tee $1 (i32.load offset=20 - (local.tee $7 - (i32.load - (local.tee $5 - (i32.add - (local.get $0) - (i32.const 28) - ) - ) + (local.tee $5 + (i32.load offset=28 + (local.get $0) ) ) ) @@ -5094,34 +3217,29 @@ ) ) (drop - (call $memcpy - (i32.load - (local.tee $1 - (i32.add - (local.get $0) - (i32.const 12) - ) - ) + (call $fimport$98 + (i32.load offset=12 + (local.get $0) ) (i32.load offset=16 - (local.get $7) + (local.get $5) ) (local.get $2) ) ) - (i32.store - (local.get $1) + (i32.store offset=12 + (local.get $0) (i32.add - (i32.load - (local.get $1) + (i32.load offset=12 + (local.get $0) ) (local.get $2) ) ) (i32.store offset=16 (local.tee $1 - (i32.load - (local.get $5) + (i32.load offset=28 + (local.get $0) ) ) (i32.add @@ -5140,11 +3258,11 @@ (local.get $2) ) ) - (i32.store - (local.get $6) + (i32.store offset=16 + (local.get $0) (i32.sub - (i32.load - (local.get $6) + (i32.load offset=16 + (local.get $0) ) (local.get $2) ) @@ -5160,307 +3278,45 @@ ) ) ) - (br_if $label$99 + (br_if $label$70 (local.get $0) ) - (i32.store - (i32.add - (local.get $1) - (i32.const 16) - ) + (i32.store offset=16 + (local.get $1) (i32.load offset=8 (local.get $1) ) ) ) - (block $label$100 - (br_if $label$100 + (block $label$71 + (br_if $label$71 (i32.lt_s - (local.tee $2 - (i32.load - (local.tee $0 - (i32.add - (local.get $3) - (i32.const 24) - ) - ) + (local.tee $0 + (i32.load offset=24 + (local.get $3) ) ) (i32.const 1) ) ) - (i32.store - (local.get $0) + (i32.store offset=24 + (local.get $3) (i32.sub (i32.const 0) - (local.get $2) + (local.get $0) ) ) ) (local.set $2 (i32.eqz - (i32.load - (i32.add - (local.get $3) - (i32.const 20) - ) + (i32.load offset=20 + (local.get $3) ) ) ) ) (local.get $2) ) - (func $fill_window (; 28 ;) (type $3) (param $0 i32) - (unreachable) - ) - (func $deflate_stored (; 29 ;) (type $2) (param $0 i32) (param $1 i32) (result i32) - (unreachable) - ) - (func $deflate_fast (; 30 ;) (type $2) (param $0 i32) (param $1 i32) (result i32) - (unreachable) - ) - (func $longest_match (; 31 ;) (type $2) (param $0 i32) (param $1 i32) (result i32) - (unreachable) - ) - (func $deflate_slow (; 32 ;) (type $2) (param $0 i32) (param $1 i32) (result i32) - (unreachable) - ) - (func $inflate_fast (; 33 ;) (type $1) (param $0 i32) (param $1 i32) - (unreachable) - ) - (func $inflateInit2_ (; 34 ;) (type $7) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (unreachable) - ) - (func $inflateInit_ (; 35 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $inflate (; 36 ;) (type $2) (param $0 i32) (param $1 i32) (result i32) - (unreachable) - ) - (func $updatewindow (; 37 ;) (type $2) (param $0 i32) (param $1 i32) (result i32) - (unreachable) - ) - (func $inflateEnd (; 38 ;) (type $4) (param $0 i32) (result i32) - (unreachable) - ) - (func $inflateSetDictionary (; 39 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $inflateSync (; 40 ;) (type $4) (param $0 i32) (result i32) - (unreachable) - ) - (func $inflate_table (; 41 ;) (type $9) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (param $5 i32) (result i32) - (unreachable) - ) - (func $_tr_init (; 42 ;) (type $3) (param $0 i32) - (unreachable) - ) - (func $init_block (; 43 ;) (type $3) (param $0 i32) - (unreachable) - ) - (func $_tr_stored_block (; 44 ;) (type $6) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - (unreachable) - ) - (func $_tr_align (; 45 ;) (type $3) (param $0 i32) - (unreachable) - ) - (func $_tr_flush_block (; 46 ;) (type $6) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - (unreachable) - ) - (func $build_tree (; 47 ;) (type $1) (param $0 i32) (param $1 i32) - (unreachable) - ) - (func $compress_block (; 48 ;) (type $10) (param $0 i32) (param $1 i32) (param $2 i32) - (unreachable) - ) - (func $send_tree (; 49 ;) (type $10) (param $0 i32) (param $1 i32) (param $2 i32) - (unreachable) - ) - (func $uncompress (; 50 ;) (type $7) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (unreachable) - ) - (func $zlibVersion (; 51 ;) (type $11) (result i32) - (unreachable) - ) - (func $zlibCompileFlags (; 52 ;) (type $11) (result i32) - (unreachable) - ) - (func $zcalloc (; 53 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $zcfree (; 54 ;) (type $1) (param $0 i32) (param $1 i32) - (unreachable) - ) - (func $strlen (; 55 ;) (type $4) (param $0 i32) (result i32) - (unreachable) - ) - (func $strcmp (; 56 ;) (type $2) (param $0 i32) (param $1 i32) (result i32) - (unreachable) - ) - (func $memchr (; 57 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $__syscall_ret (; 58 ;) (type $4) (param $0 i32) (result i32) - (unreachable) - ) - (func $__errno_location (; 59 ;) (type $11) (result i32) - (unreachable) - ) - (func $pthread_self (; 60 ;) (type $11) (result i32) - (unreachable) - ) - (func $dummy (; 61 ;) (type $4) (param $0 i32) (result i32) - (unreachable) - ) - (func $puts (; 62 ;) (type $4) (param $0 i32) (result i32) - (unreachable) - ) - (func $fputs (; 63 ;) (type $2) (param $0 i32) (param $1 i32) (result i32) - (unreachable) - ) - (func $__towrite (; 64 ;) (type $4) (param $0 i32) (result i32) - (unreachable) - ) - (func $__fwritex (; 65 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $fwrite (; 66 ;) (type $7) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) - (unreachable) - ) - (func $__lockfile (; 67 ;) (type $4) (param $0 i32) (result i32) - (unreachable) - ) - (func $__unlockfile (; 68 ;) (type $3) (param $0 i32) - (unreachable) - ) - (func $__stdout_write (; 69 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $__stdio_close (; 70 ;) (type $4) (param $0 i32) (result i32) - (unreachable) - ) - (func $printf (; 71 ;) (type $2) (param $0 i32) (param $1 i32) (result i32) - (unreachable) - ) - (func $fprintf (; 72 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $__overflow (; 73 ;) (type $2) (param $0 i32) (param $1 i32) (result i32) - (unreachable) - ) - (func $isdigit (; 74 ;) (type $4) (param $0 i32) (result i32) - (unreachable) - ) - (func $wcrtomb (; 75 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $__pthread_self (; 76 ;) (type $11) (result i32) - (unreachable) - ) - (func $wctomb (; 77 ;) (type $2) (param $0 i32) (param $1 i32) (result i32) - (unreachable) - ) - (func $__signbitl (; 78 ;) (type $12) (param $0 i64) (param $1 i64) (result i32) - (unreachable) - ) - (func $frexpl (; 79 ;) (type $13) (param $0 i32) (param $1 i64) (param $2 i64) (param $3 i32) - (unreachable) - ) - (func $vfprintf (; 80 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $printf_core (; 81 ;) (type $14) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) - (unreachable) - ) - (func $out (; 82 ;) (type $10) (param $0 i32) (param $1 i32) (param $2 i32) - (unreachable) - ) - (func $getint (; 83 ;) (type $4) (param $0 i32) (result i32) - (unreachable) - ) - (func $pop_arg (; 84 ;) (type $10) (param $0 i32) (param $1 i32) (param $2 i32) - (unreachable) - ) - (func $fmt_fp (; 85 ;) (type $15) (param $0 i32) (param $1 i64) (param $2 i64) (param $3 i32) (param $4 i32) (param $5 i32) (param $6 i32) (result i32) - (unreachable) - ) - (func $fmt_o (; 86 ;) (type $16) (param $0 i64) (param $1 i32) (result i32) - (unreachable) - ) - (func $fmt_x (; 87 ;) (type $17) (param $0 i64) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $fmt_u (; 88 ;) (type $16) (param $0 i64) (param $1 i32) (result i32) - (unreachable) - ) - (func $pad (; 89 ;) (type $18) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) - (unreachable) - ) - (func $__stdio_seek (; 90 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $__stdio_write (; 91 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $malloc (; 92 ;) (type $4) (param $0 i32) (result i32) - (unreachable) - ) - (func $free (; 93 ;) (type $3) (param $0 i32) - (unreachable) - ) - (func $calloc (; 94 ;) (type $2) (param $0 i32) (param $1 i32) (result i32) - (unreachable) - ) - (func $__addtf3 (; 95 ;) (type $19) (param $0 i32) (param $1 i64) (param $2 i64) (param $3 i64) (param $4 i64) - (unreachable) - ) - (func $__ashlti3 (; 96 ;) (type $13) (param $0 i32) (param $1 i64) (param $2 i64) (param $3 i32) - (unreachable) - ) - (func $__unordtf2 (; 97 ;) (type $20) (param $0 i64) (param $1 i64) (param $2 i64) (param $3 i64) (result i32) - (unreachable) - ) - (func $__eqtf2 (; 98 ;) (type $20) (param $0 i64) (param $1 i64) (param $2 i64) (param $3 i64) (result i32) - (unreachable) - ) - (func $__netf2 (; 99 ;) (type $20) (param $0 i64) (param $1 i64) (param $2 i64) (param $3 i64) (result i32) - (unreachable) - ) - (func $__extenddftf2 (; 100 ;) (type $21) (param $0 i32) (param $1 f64) - (unreachable) - ) - (func $__fixtfsi (; 101 ;) (type $12) (param $0 i64) (param $1 i64) (result i32) - (unreachable) - ) - (func $__fixunstfsi (; 102 ;) (type $12) (param $0 i64) (param $1 i64) (result i32) - (unreachable) - ) - (func $__floatsitf (; 103 ;) (type $1) (param $0 i32) (param $1 i32) - (unreachable) - ) - (func $__floatunsitf (; 104 ;) (type $1) (param $0 i32) (param $1 i32) - (unreachable) - ) - (func $__lshrti3 (; 105 ;) (type $13) (param $0 i32) (param $1 i64) (param $2 i64) (param $3 i32) - (unreachable) - ) - (func $__multf3 (; 106 ;) (type $19) (param $0 i32) (param $1 i64) (param $2 i64) (param $3 i64) (param $4 i64) - (unreachable) - ) - (func $__subtf3 (; 107 ;) (type $19) (param $0 i32) (param $1 i64) (param $2 i64) (param $3 i64) (param $4 i64) - (unreachable) - ) - (func $__fpclassifyl (; 108 ;) (type $12) (param $0 i64) (param $1 i64) (result i32) - (unreachable) - ) - (func $memset (; 109 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $memcpy (; 110 ;) (type $0) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) - (unreachable) - ) - (func $setThrew (; 111 ;) (type $1) (param $0 i32) (param $1 i32) - (unreachable) - ) + ;; custom section "producers", size 183 ) diff --git a/test/passes/O4.txt b/test/passes/O4.txt index 0111c2102..2845d30d9 100644 --- a/test/passes/O4.txt +++ b/test/passes/O4.txt @@ -9,3 +9,1293 @@ (unreachable) ) ) +(module + (type $0 (func)) + (type $3 (func (param i32) (result i32))) + (type $8 (func (result f64))) + (type $10 (func (param i32) (result f64))) + (type $11 (func (param i32))) + (import "env" "memory" (memory $0 1)) + (data (i32.const 8) "\0d\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s") + (data (i32.const 40) "\1c\00\00\00~\00l\00i\00b\00/\00i\00n\00t\00e\00r\00n\00a\00l\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s") + (table $0 1 funcref) + (elem (i32.const 0) $null) + (global $global$0 (mut i32) (i32.const 0)) + (global $global$1 (mut i32) (i32.const 0)) + (global $global$5 (mut i32) (i32.const 0)) + (export "memory" (memory $0)) + (export "table" (table $0)) + (export "init" (func $assembly/index/init)) + (export "step" (func $assembly/index/step)) + (export "bench" (func $assembly/index/bench)) + (export "getBody" (func $assembly/index/getBody)) + (start $start) + (func $~lib/allocator/arena/__memory_allocate (; 0 ;) (; has Stack IR ;) (type $3) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (if + (i32.gt_u + (local.get $0) + (i32.const 1073741824) + ) + (unreachable) + ) + (if + (i32.gt_u + (local.tee $2 + (i32.and + (i32.add + (i32.add + (local.tee $1 + (global.get $global$1) + ) + (select + (local.get $0) + (i32.const 1) + (i32.gt_u + (local.get $0) + (i32.const 1) + ) + ) + ) + (i32.const 7) + ) + (i32.const -8) + ) + ) + (i32.shl + (local.tee $3 + (current_memory) + ) + (i32.const 16) + ) + ) + (if + (i32.lt_s + (grow_memory + (select + (local.get $3) + (local.tee $0 + (i32.shr_u + (i32.and + (i32.add + (i32.sub + (local.get $2) + (local.get $1) + ) + (i32.const 65535) + ) + (i32.const -65536) + ) + (i32.const 16) + ) + ) + (i32.gt_s + (local.get $3) + (local.get $0) + ) + ) + ) + (i32.const 0) + ) + (if + (i32.lt_s + (grow_memory + (local.get $0) + ) + (i32.const 0) + ) + (unreachable) + ) + ) + ) + (global.set $global$1 + (local.get $2) + ) + (local.get $1) + ) + (func $assembly/index/NBodySystem#constructor (; 1 ;) (; has Stack IR ;) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 f64) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 i32) + (local.set $7 + (i32.load offset=4 + (local.get $0) + ) + ) + (loop $label$3 + (if + (i32.lt_s + (local.get $1) + (local.get $7) + ) + (block + (local.set $3 + (f64.load offset=48 + (local.tee $2 + (i32.load offset=8 + (i32.add + (i32.load + (local.get $0) + ) + (i32.shl + (local.get $1) + (i32.const 2) + ) + ) + ) + ) + ) + ) + (local.set $4 + (f64.add + (local.get $4) + (f64.mul + (f64.load offset=24 + (local.get $2) + ) + (local.get $3) + ) + ) + ) + (local.set $5 + (f64.add + (local.get $5) + (f64.mul + (f64.load offset=32 + (local.get $2) + ) + (local.get $3) + ) + ) + ) + (local.set $6 + (f64.add + (local.get $6) + (f64.mul + (f64.load offset=40 + (local.get $2) + ) + (local.get $3) + ) + ) + ) + (local.set $1 + (i32.add + (local.get $1) + (i32.const 1) + ) + ) + (br $label$3) + ) + ) + ) + (f64.store offset=24 + (local.tee $1 + (if (result i32) + (i32.lt_u + (i32.const 0) + (i32.shr_u + (i32.load + (local.tee $1 + (i32.load + (local.get $0) + ) + ) + ) + (i32.const 2) + ) + ) + (i32.load offset=8 + (local.get $1) + ) + (unreachable) + ) + ) + (f64.div + (f64.neg + (local.get $4) + ) + (f64.const 39.47841760435743) + ) + ) + (f64.store offset=32 + (local.get $1) + (f64.div + (f64.neg + (local.get $5) + ) + (f64.const 39.47841760435743) + ) + ) + (f64.store offset=40 + (local.get $1) + (f64.div + (f64.neg + (local.get $6) + ) + (f64.const 39.47841760435743) + ) + ) + (i32.store + (local.tee $1 + (call $~lib/allocator/arena/__memory_allocate + (i32.const 4) + ) + ) + (local.get $0) + ) + (local.get $1) + ) + (func $assembly/index/Body#constructor (; 2 ;) (; has Stack IR ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 f64) (param $5 f64) (param $6 f64) (result i32) + (local $7 i32) + (f64.store + (local.tee $7 + (call $~lib/allocator/arena/__memory_allocate + (i32.const 56) + ) + ) + (local.get $0) + ) + (f64.store offset=8 + (local.get $7) + (local.get $1) + ) + (f64.store offset=16 + (local.get $7) + (local.get $2) + ) + (f64.store offset=24 + (local.get $7) + (local.get $3) + ) + (f64.store offset=32 + (local.get $7) + (local.get $4) + ) + (f64.store offset=40 + (local.get $7) + (local.get $5) + ) + (f64.store offset=48 + (local.get $7) + (local.get $6) + ) + (local.get $7) + ) + (func $~lib/internal/memory/memset (; 3 ;) (; has Stack IR ;) (param $0 i32) + (local $1 i32) + (local $2 i32) + (i32.store8 + (local.get $0) + (i32.const 0) + ) + (i32.store8 + (i32.sub + (local.tee $1 + (i32.add + (local.get $0) + (i32.const 20) + ) + ) + (i32.const 1) + ) + (i32.const 0) + ) + (i32.store8 + (i32.add + (local.get $0) + (i32.const 1) + ) + (i32.const 0) + ) + (i32.store8 + (i32.add + (local.get $0) + (i32.const 2) + ) + (i32.const 0) + ) + (i32.store8 + (i32.sub + (local.get $1) + (i32.const 2) + ) + (i32.const 0) + ) + (i32.store8 + (i32.sub + (local.get $1) + (i32.const 3) + ) + (i32.const 0) + ) + (i32.store8 + (i32.add + (local.get $0) + (i32.const 3) + ) + (i32.const 0) + ) + (i32.store8 + (i32.sub + (local.get $1) + (i32.const 4) + ) + (i32.const 0) + ) + (i32.store + (local.tee $0 + (i32.add + (local.tee $1 + (i32.and + (i32.sub + (i32.const 0) + (local.get $0) + ) + (i32.const 3) + ) + ) + (local.get $0) + ) + ) + (i32.const 0) + ) + (i32.store + (i32.sub + (i32.add + (local.tee $2 + (i32.and + (i32.sub + (i32.const 20) + (local.get $1) + ) + (i32.const -4) + ) + ) + (local.get $0) + ) + (i32.const 4) + ) + (i32.const 0) + ) + (if + (i32.le_u + (local.get $2) + (i32.const 8) + ) + (return) + ) + (i32.store + (i32.add + (local.get $0) + (i32.const 4) + ) + (i32.const 0) + ) + (i32.store + (i32.add + (local.get $0) + (i32.const 8) + ) + (i32.const 0) + ) + (i32.store + (i32.sub + (local.tee $1 + (i32.add + (local.get $0) + (local.get $2) + ) + ) + (i32.const 12) + ) + (i32.const 0) + ) + (i32.store + (i32.sub + (local.get $1) + (i32.const 8) + ) + (i32.const 0) + ) + (if + (i32.le_u + (local.get $2) + (i32.const 24) + ) + (return) + ) + (i32.store + (i32.add + (local.get $0) + (i32.const 12) + ) + (i32.const 0) + ) + (i32.store + (i32.add + (local.get $0) + (i32.const 16) + ) + (i32.const 0) + ) + (i32.store + (i32.add + (local.get $0) + (i32.const 20) + ) + (i32.const 0) + ) + (i32.store + (i32.add + (local.get $0) + (i32.const 24) + ) + (i32.const 0) + ) + (i32.store + (i32.sub + (local.tee $1 + (i32.add + (local.get $0) + (local.get $2) + ) + ) + (i32.const 28) + ) + (i32.const 0) + ) + (i32.store + (i32.sub + (local.get $1) + (i32.const 24) + ) + (i32.const 0) + ) + (i32.store + (i32.sub + (local.get $1) + (i32.const 20) + ) + (i32.const 0) + ) + (i32.store + (i32.sub + (local.get $1) + (i32.const 16) + ) + (i32.const 0) + ) + (local.set $0 + (i32.add + (local.tee $1 + (i32.add + (i32.and + (local.get $0) + (i32.const 4) + ) + (i32.const 24) + ) + ) + (local.get $0) + ) + ) + (local.set $2 + (i32.sub + (local.get $2) + (local.get $1) + ) + ) + (loop $label$8 + (if + (i32.ge_u + (local.get $2) + (i32.const 32) + ) + (block + (i64.store + (local.get $0) + (i64.const 0) + ) + (i64.store + (i32.add + (local.get $0) + (i32.const 8) + ) + (i64.const 0) + ) + (i64.store + (i32.add + (local.get $0) + (i32.const 16) + ) + (i64.const 0) + ) + (i64.store + (i32.add + (local.get $0) + (i32.const 24) + ) + (i64.const 0) + ) + (local.set $2 + (i32.sub + (local.get $2) + (i32.const 32) + ) + ) + (local.set $0 + (i32.add + (local.get $0) + (i32.const 32) + ) + ) + (br $label$8) + ) + ) + ) + ) + (func $~lib/array/Array<Body>#constructor (; 4 ;) (; has Stack IR ;) (result i32) + (local $0 i32) + (local $1 i32) + (i32.store + (local.tee $1 + (call $~lib/allocator/arena/__memory_allocate + (i32.const 32) + ) + ) + (i32.const 20) + ) + (i32.store + (local.tee $0 + (call $~lib/allocator/arena/__memory_allocate + (i32.const 8) + ) + ) + (i32.const 0) + ) + (i32.store offset=4 + (local.get $0) + (i32.const 0) + ) + (i32.store + (local.get $0) + (local.get $1) + ) + (i32.store offset=4 + (local.get $0) + (i32.const 5) + ) + (call $~lib/internal/memory/memset + (i32.add + (local.get $1) + (i32.const 8) + ) + ) + (local.get $0) + ) + (func $assembly/index/init (; 5 ;) (; has Stack IR ;) (type $0) + (local $0 i32) + (local $1 i32) + (local.set $1 + (call $~lib/array/Array<Body>#constructor) + ) + (local.set $0 + (call $assembly/index/Body#constructor + (f64.const 0) + (f64.const 0) + (f64.const 0) + (f64.const 0) + (f64.const 0) + (f64.const 0) + (f64.const 39.47841760435743) + ) + ) + (i32.store offset=8 + (i32.load + (local.get $1) + ) + (local.get $0) + ) + (local.set $0 + (call $assembly/index/Body#constructor + (f64.const 4.841431442464721) + (f64.const -1.1603200440274284) + (f64.const -0.10362204447112311) + (f64.const 0.606326392995832) + (f64.const 2.81198684491626) + (f64.const -0.02521836165988763) + (f64.const 0.03769367487038949) + ) + ) + (i32.store offset=8 + (i32.add + (i32.load + (local.get $1) + ) + (i32.const 4) + ) + (local.get $0) + ) + (local.set $0 + (call $assembly/index/Body#constructor + (f64.const 8.34336671824458) + (f64.const 4.124798564124305) + (f64.const -0.4035234171143214) + (f64.const -1.0107743461787924) + (f64.const 1.8256623712304119) + (f64.const 0.008415761376584154) + (f64.const 0.011286326131968767) + ) + ) + (i32.store offset=8 + (i32.add + (i32.load + (local.get $1) + ) + (i32.const 8) + ) + (local.get $0) + ) + (local.set $0 + (call $assembly/index/Body#constructor + (f64.const 12.894369562139131) + (f64.const -15.111151401698631) + (f64.const -0.22330757889265573) + (f64.const 1.0827910064415354) + (f64.const 0.8687130181696082) + (f64.const -0.010832637401363636) + (f64.const 1.7237240570597112e-03) + ) + ) + (i32.store offset=8 + (i32.add + (i32.load + (local.get $1) + ) + (i32.const 12) + ) + (local.get $0) + ) + (local.set $0 + (call $assembly/index/Body#constructor + (f64.const 15.379697114850917) + (f64.const -25.919314609987964) + (f64.const 0.17925877295037118) + (f64.const 0.979090732243898) + (f64.const 0.5946989986476762) + (f64.const -0.034755955504078104) + (f64.const 2.0336868699246304e-03) + ) + ) + (i32.store offset=8 + (i32.add + (i32.load + (local.get $1) + ) + (i32.const 16) + ) + (local.get $0) + ) + (global.set $global$5 + (call $assembly/index/NBodySystem#constructor + (local.get $1) + ) + ) + ) + (func $assembly/index/NBodySystem#advance (; 6 ;) (; has Stack IR ;) (param $0 i32) + (local $1 i32) + (local $2 f64) + (local $3 i32) + (local $4 f64) + (local $5 f64) + (local $6 f64) + (local $7 i32) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 i32) + (local $13 i32) + (local $14 f64) + (local $15 f64) + (local $16 f64) + (local $17 f64) + (local $18 f64) + (local.set $13 + (i32.load offset=4 + (local.tee $12 + (i32.load + (local.get $0) + ) + ) + ) + ) + (loop $label$3 + (if + (i32.lt_u + (local.get $3) + (local.get $13) + ) + (block + (local.set $14 + (f64.load + (local.tee $0 + (i32.load offset=8 + (i32.add + (i32.load + (local.get $12) + ) + (i32.shl + (local.get $3) + (i32.const 2) + ) + ) + ) + ) + ) + ) + (local.set $15 + (f64.load offset=8 + (local.get $0) + ) + ) + (local.set $16 + (f64.load offset=16 + (local.get $0) + ) + ) + (local.set $4 + (f64.load offset=24 + (local.get $0) + ) + ) + (local.set $5 + (f64.load offset=32 + (local.get $0) + ) + ) + (local.set $6 + (f64.load offset=40 + (local.get $0) + ) + ) + (local.set $17 + (f64.load offset=48 + (local.get $0) + ) + ) + (local.set $7 + (i32.add + (local.get $3) + (i32.const 1) + ) + ) + (loop $label$6 + (if + (i32.lt_u + (local.get $7) + (local.get $13) + ) + (block + (local.set $11 + (f64.sqrt + (local.tee $8 + (f64.add + (f64.add + (f64.mul + (local.tee $2 + (local.tee $18 + (f64.sub + (local.get $14) + (f64.load + (local.tee $1 + (i32.load offset=8 + (i32.add + (i32.load + (local.get $12) + ) + (i32.shl + (local.get $7) + (i32.const 2) + ) + ) + ) + ) + ) + ) + ) + ) + (local.get $2) + ) + (f64.mul + (local.tee $9 + (f64.sub + (local.get $15) + (f64.load offset=8 + (local.get $1) + ) + ) + ) + (local.get $9) + ) + ) + (f64.mul + (local.tee $10 + (f64.sub + (local.get $16) + (f64.load offset=16 + (local.get $1) + ) + ) + ) + (local.get $10) + ) + ) + ) + ) + ) + (local.set $4 + (f64.sub + (local.get $4) + (f64.mul + (local.get $2) + (local.tee $8 + (f64.mul + (f64.load offset=48 + (local.get $1) + ) + (local.tee $11 + (f64.div + (f64.const 0.01) + (f64.mul + (local.get $8) + (local.get $11) + ) + ) + ) + ) + ) + ) + ) + ) + (local.set $5 + (f64.sub + (local.get $5) + (f64.mul + (local.get $9) + (local.get $8) + ) + ) + ) + (local.set $6 + (f64.sub + (local.get $6) + (f64.mul + (local.get $10) + (local.get $8) + ) + ) + ) + (f64.store offset=24 + (local.get $1) + (f64.add + (f64.load offset=24 + (local.get $1) + ) + (f64.mul + (local.get $18) + (local.tee $2 + (f64.mul + (local.get $17) + (local.get $11) + ) + ) + ) + ) + ) + (f64.store offset=32 + (local.get $1) + (f64.add + (f64.load offset=32 + (local.get $1) + ) + (f64.mul + (local.get $9) + (local.get $2) + ) + ) + ) + (f64.store offset=40 + (local.get $1) + (f64.add + (f64.load offset=40 + (local.get $1) + ) + (f64.mul + (local.get $10) + (local.get $2) + ) + ) + ) + (local.set $7 + (i32.add + (local.get $7) + (i32.const 1) + ) + ) + (br $label$6) + ) + ) + ) + (f64.store offset=24 + (local.get $0) + (local.get $4) + ) + (f64.store offset=32 + (local.get $0) + (local.get $5) + ) + (f64.store offset=40 + (local.get $0) + (local.get $6) + ) + (f64.store + (local.get $0) + (f64.add + (f64.load + (local.get $0) + ) + (f64.mul + (f64.const 0.01) + (local.get $4) + ) + ) + ) + (f64.store offset=8 + (local.get $0) + (f64.add + (f64.load offset=8 + (local.get $0) + ) + (f64.mul + (f64.const 0.01) + (local.get $5) + ) + ) + ) + (f64.store offset=16 + (local.get $0) + (f64.add + (f64.load offset=16 + (local.get $0) + ) + (f64.mul + (f64.const 0.01) + (local.get $6) + ) + ) + ) + (local.set $3 + (i32.add + (local.get $3) + (i32.const 1) + ) + ) + (br $label$3) + ) + ) + ) + ) + (func $assembly/index/NBodySystem#energy (; 7 ;) (; has Stack IR ;) (type $10) (param $0 i32) (result f64) + (local $1 f64) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local.set $5 + (i32.load offset=4 + (local.tee $4 + (i32.load + (local.get $0) + ) + ) + ) + ) + (loop $label$4 + (if + (i32.lt_u + (local.get $2) + (local.get $5) + ) + (block + (local.set $6 + (f64.load + (local.tee $0 + (i32.load offset=8 + (i32.add + (i32.load + (local.get $4) + ) + (i32.shl + (local.get $2) + (i32.const 2) + ) + ) + ) + ) + ) + ) + (local.set $7 + (f64.load offset=8 + (local.get $0) + ) + ) + (local.set $8 + (f64.load offset=16 + (local.get $0) + ) + ) + (local.set $1 + (f64.add + (local.get $1) + (f64.mul + (f64.mul + (f64.const 0.5) + (local.tee $9 + (f64.load offset=48 + (local.get $0) + ) + ) + ) + (f64.add + (f64.add + (f64.mul + (local.tee $1 + (f64.load offset=24 + (local.get $0) + ) + ) + (local.get $1) + ) + (f64.mul + (local.tee $1 + (f64.load offset=32 + (local.get $0) + ) + ) + (local.get $1) + ) + ) + (f64.mul + (local.tee $1 + (f64.load offset=40 + (local.get $0) + ) + ) + (local.get $1) + ) + ) + ) + ) + ) + (local.set $0 + (i32.add + (local.get $2) + (i32.const 1) + ) + ) + (loop $label$7 + (if + (i32.lt_u + (local.get $0) + (local.get $5) + ) + (block + (local.set $10 + (local.get $1) + ) + (local.set $1 + (f64.add + (f64.mul + (local.tee $1 + (f64.sub + (local.get $6) + (f64.load + (local.tee $3 + (i32.load offset=8 + (i32.add + (i32.load + (local.get $4) + ) + (i32.shl + (local.get $0) + (i32.const 2) + ) + ) + ) + ) + ) + ) + ) + (local.get $1) + ) + (f64.mul + (local.tee $1 + (f64.sub + (local.get $7) + (f64.load offset=8 + (local.get $3) + ) + ) + ) + (local.get $1) + ) + ) + ) + (local.set $1 + (f64.sub + (local.get $10) + (f64.div + (f64.mul + (local.get $9) + (f64.load offset=48 + (local.get $3) + ) + ) + (f64.sqrt + (f64.add + (local.get $1) + (f64.mul + (local.tee $1 + (f64.sub + (local.get $8) + (f64.load offset=16 + (local.get $3) + ) + ) + ) + (local.get $1) + ) + ) + ) + ) + ) + ) + (local.set $0 + (i32.add + (local.get $0) + (i32.const 1) + ) + ) + (br $label$7) + ) + ) + ) + (local.set $2 + (i32.add + (local.get $2) + (i32.const 1) + ) + ) + (br $label$4) + ) + ) + ) + (local.get $1) + ) + (func $assembly/index/step (; 8 ;) (; has Stack IR ;) (type $8) (result f64) + (call $assembly/index/NBodySystem#advance + (global.get $global$5) + ) + (call $assembly/index/NBodySystem#energy + (global.get $global$5) + ) + ) + (func $assembly/index/bench (; 9 ;) (; has Stack IR ;) (type $11) (param $0 i32) + (local $1 i32) + (block $label$1 + (loop $label$2 + (br_if $label$1 + (i32.ge_u + (local.get $1) + (local.get $0) + ) + ) + (call $assembly/index/NBodySystem#advance + (global.get $global$5) + ) + (local.set $1 + (i32.add + (local.get $1) + (i32.const 1) + ) + ) + (br $label$2) + ) + ) + ) + (func $assembly/index/getBody (; 10 ;) (; has Stack IR ;) (type $3) (param $0 i32) (result i32) + (local $1 i32) + (if (result i32) + (i32.lt_u + (local.get $0) + (i32.load offset=4 + (local.tee $1 + (i32.load + (global.get $global$5) + ) + ) + ) + ) + (if (result i32) + (i32.lt_u + (local.get $0) + (i32.shr_u + (i32.load + (local.tee $1 + (i32.load + (local.get $1) + ) + ) + ) + (i32.const 2) + ) + ) + (i32.load offset=8 + (i32.add + (i32.shl + (local.get $0) + (i32.const 2) + ) + (local.get $1) + ) + ) + (unreachable) + ) + (i32.const 0) + ) + ) + (func $start (; 11 ;) (; has Stack IR ;) (type $0) + (global.set $global$0 + (i32.const 104) + ) + (global.set $global$1 + (global.get $global$0) + ) + ) + (func $null (; 12 ;) (; has Stack IR ;) (type $0) + (nop) + ) +) diff --git a/test/passes/O4.wast b/test/passes/O4.wast index 4db19e968..cdea2da96 100644 --- a/test/passes/O4.wast +++ b/test/passes/O4.wast @@ -22,4 +22,1738 @@ (unreachable) ) ) +;; AssemblyScript n-body benchmark +(module + (type $0 (func)) + (type $1 (func (param i32 i32) (result i32))) + (type $2 (func (param i32 f64 f64 f64) (result i32))) + (type $3 (func (param i32) (result i32))) + (type $4 (func (result i32))) + (type $5 (func (param i32 f64 f64 f64 f64 f64 f64 f64) (result i32))) + (type $6 (func (param i32 i32 i32 i32))) + (type $7 (func (param i32 i32 i32))) + (type $8 (func (result f64))) + (type $9 (func (param i32 f64))) + (type $10 (func (param i32) (result f64))) + (type $11 (func (param i32))) + (import "env" "memory" (memory $1 1)) + (data (i32.const 8) "\0d\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s\00") + (data (i32.const 40) "\1c\00\00\00~\00l\00i\00b\00/\00i\00n\00t\00e\00r\00n\00a\00l\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00") + (import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32))) + (table $0 1 funcref) + (elem (i32.const 0) $null) + (global $global$0 (mut i32) (i32.const 0)) + (global $global$1 (mut i32) (i32.const 0)) + (global $global$2 f64 (f64.const 3.141592653589793)) + (global $global$3 f64 (f64.const 39.47841760435743)) + (global $global$4 f64 (f64.const 365.24)) + (global $global$5 (mut i32) (i32.const 0)) + (global $global$6 i32 (i32.const 100)) + (export "memory" (memory $0)) + (export "table" (table $0)) + (export "init" (func $assembly/index/init)) + (export "step" (func $assembly/index/step)) + (export "bench" (func $assembly/index/bench)) + (export "getBody" (func $assembly/index/getBody)) + (start $start) + (func $start:~lib/allocator/arena (; 1 ;) (type $0) + (global.set $global$0 + (i32.and + (i32.add + (global.get $global$6) + (i32.const 7) + ) + (i32.xor + (i32.const 7) + (i32.const -1) + ) + ) + ) + (global.set $global$1 + (global.get $global$0) + ) + ) + (func $start:assembly/index (; 2 ;) (type $0) + (call $start:~lib/allocator/arena) + ) + (func $~lib/array/Array<Body>#__unchecked_get (; 3 ;) (type $1) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local.set $2 + (i32.load + (local.get $0) + ) + ) + (local.set $3 + (local.get $1) + ) + (local.set $4 + (i32.const 0) + ) + (i32.load offset=8 + (i32.add + (i32.add + (local.get $2) + (i32.shl + (local.get $3) + (i32.const 2) + ) + ) + (local.get $4) + ) + ) + ) + (func $~lib/array/Array<Body>#__get (; 4 ;) (type $1) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local.set $2 + (i32.load + (local.get $0) + ) + ) + (if (result i32) + (i32.lt_u + (local.get $1) + (i32.shr_u + (i32.load + (local.get $2) + ) + (i32.const 2) + ) + ) + (block (result i32) + (local.set $3 + (local.get $2) + ) + (local.set $4 + (local.get $1) + ) + (local.set $5 + (i32.const 0) + ) + (i32.load offset=8 + (i32.add + (i32.add + (local.get $3) + (i32.shl + (local.get $4) + (i32.const 2) + ) + ) + (local.get $5) + ) + ) + ) + (unreachable) + ) + ) + (func $assembly/index/Body#offsetMomentum (; 5 ;) (type $2) (param $0 i32) (param $1 f64) (param $2 f64) (param $3 f64) (result i32) + (f64.store offset=24 + (local.get $0) + (f64.div + (f64.neg + (local.get $1) + ) + (global.get $global$3) + ) + ) + (f64.store offset=32 + (local.get $0) + (f64.div + (f64.neg + (local.get $2) + ) + (global.get $global$3) + ) + ) + (f64.store offset=40 + (local.get $0) + (f64.div + (f64.neg + (local.get $3) + ) + (global.get $global$3) + ) + ) + (local.get $0) + ) + (func $~lib/allocator/arena/__memory_allocate (; 6 ;) (type $3) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (if + (i32.gt_u + (local.get $0) + (i32.const 1073741824) + ) + (unreachable) + ) + (local.set $1 + (global.get $global$1) + ) + (local.set $4 + (i32.and + (i32.add + (i32.add + (local.get $1) + (select + (local.tee $2 + (local.get $0) + ) + (local.tee $3 + (i32.const 1) + ) + (i32.gt_u + (local.get $2) + (local.get $3) + ) + ) + ) + (i32.const 7) + ) + (i32.xor + (i32.const 7) + (i32.const -1) + ) + ) + ) + (local.set $5 + (current_memory) + ) + (if + (i32.gt_u + (local.get $4) + (i32.shl + (local.get $5) + (i32.const 16) + ) + ) + (block + (local.set $2 + (i32.shr_u + (i32.and + (i32.add + (i32.sub + (local.get $4) + (local.get $1) + ) + (i32.const 65535) + ) + (i32.xor + (i32.const 65535) + (i32.const -1) + ) + ) + (i32.const 16) + ) + ) + (local.set $3 + (select + (local.tee $3 + (local.get $5) + ) + (local.tee $6 + (local.get $2) + ) + (i32.gt_s + (local.get $3) + (local.get $6) + ) + ) + ) + (if + (i32.lt_s + (grow_memory + (local.get $3) + ) + (i32.const 0) + ) + (if + (i32.lt_s + (grow_memory + (local.get $2) + ) + (i32.const 0) + ) + (unreachable) + ) + ) + ) + ) + (global.set $global$1 + (local.get $4) + ) + (local.get $1) + ) + (func $~lib/memory/memory.allocate (; 7 ;) (type $3) (param $0 i32) (result i32) + (return + (call $~lib/allocator/arena/__memory_allocate + (local.get $0) + ) + ) + ) + (func $assembly/index/NBodySystem#constructor (; 8 ;) (type $1) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 f64) + (local $6 f64) + (local $7 f64) + (local $8 f64) + (local.set $5 + (f64.const 0) + ) + (local.set $6 + (f64.const 0) + ) + (local.set $7 + (f64.const 0) + ) + (local.set $3 + (block $label$1 (result i32) + (local.set $2 + (local.get $1) + ) + (i32.load offset=4 + (local.get $2) + ) + ) + ) + (block $label$2 + (local.set $2 + (i32.const 0) + ) + (loop $label$3 + (br_if $label$2 + (i32.eqz + (i32.lt_s + (local.get $2) + (local.get $3) + ) + ) + ) + (block $label$4 + (local.set $4 + (call $~lib/array/Array<Body>#__unchecked_get + (local.get $1) + (local.get $2) + ) + ) + (local.set $8 + (f64.load offset=48 + (local.get $4) + ) + ) + (local.set $5 + (f64.add + (local.get $5) + (f64.mul + (f64.load offset=24 + (local.get $4) + ) + (local.get $8) + ) + ) + ) + (local.set $6 + (f64.add + (local.get $6) + (f64.mul + (f64.load offset=32 + (local.get $4) + ) + (local.get $8) + ) + ) + ) + (local.set $7 + (f64.add + (local.get $7) + (f64.mul + (f64.load offset=40 + (local.get $4) + ) + (local.get $8) + ) + ) + ) + ) + (local.set $2 + (i32.add + (local.get $2) + (i32.const 1) + ) + ) + (br $label$3) + ) + ) + (drop + (call $assembly/index/Body#offsetMomentum + (call $~lib/array/Array<Body>#__get + (local.get $1) + (i32.const 0) + ) + (local.get $5) + (local.get $6) + (local.get $7) + ) + ) + (if + (i32.eqz + (local.get $0) + ) + (local.set $0 + (call $~lib/memory/memory.allocate + (i32.const 4) + ) + ) + ) + (i32.store + (local.get $0) + (local.get $1) + ) + (local.get $0) + ) + (func $assembly/index/Body#constructor (; 9 ;) (type $5) (param $0 i32) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 f64) (param $5 f64) (param $6 f64) (param $7 f64) (result i32) + (if + (i32.eqz + (local.get $0) + ) + (local.set $0 + (call $~lib/memory/memory.allocate + (i32.const 56) + ) + ) + ) + (f64.store + (local.get $0) + (local.get $1) + ) + (f64.store offset=8 + (local.get $0) + (local.get $2) + ) + (f64.store offset=16 + (local.get $0) + (local.get $3) + ) + (f64.store offset=24 + (local.get $0) + (local.get $4) + ) + (f64.store offset=32 + (local.get $0) + (local.get $5) + ) + (f64.store offset=40 + (local.get $0) + (local.get $6) + ) + (f64.store offset=48 + (local.get $0) + (local.get $7) + ) + (local.get $0) + ) + (func $assembly/index/Sun (; 10 ;) (type $4) (result i32) + (call $assembly/index/Body#constructor + (i32.const 0) + (f64.const 0) + (f64.const 0) + (f64.const 0) + (f64.const 0) + (f64.const 0) + (f64.const 0) + (global.get $global$3) + ) + ) + (func $assembly/index/Jupiter (; 11 ;) (type $4) (result i32) + (call $assembly/index/Body#constructor + (i32.const 0) + (f64.const 4.841431442464721) + (f64.const -1.1603200440274284) + (f64.const -0.10362204447112311) + (f64.mul + (f64.const 0.001660076642744037) + (global.get $global$4) + ) + (f64.mul + (f64.const 0.007699011184197404) + (global.get $global$4) + ) + (f64.mul + (f64.const -6.90460016972063e-05) + (global.get $global$4) + ) + (f64.mul + (f64.const 9.547919384243266e-04) + (global.get $global$3) + ) + ) + ) + (func $assembly/index/Saturn (; 12 ;) (type $4) (result i32) + (call $assembly/index/Body#constructor + (i32.const 0) + (f64.const 8.34336671824458) + (f64.const 4.124798564124305) + (f64.const -0.4035234171143214) + (f64.mul + (f64.const -0.002767425107268624) + (global.get $global$4) + ) + (f64.mul + (f64.const 0.004998528012349172) + (global.get $global$4) + ) + (f64.mul + (f64.const 2.3041729757376393e-05) + (global.get $global$4) + ) + (f64.mul + (f64.const 2.858859806661308e-04) + (global.get $global$3) + ) + ) + ) + (func $assembly/index/Uranus (; 13 ;) (type $4) (result i32) + (call $assembly/index/Body#constructor + (i32.const 0) + (f64.const 12.894369562139131) + (f64.const -15.111151401698631) + (f64.const -0.22330757889265573) + (f64.mul + (f64.const 0.002964601375647616) + (global.get $global$4) + ) + (f64.mul + (f64.const 2.3784717395948095e-03) + (global.get $global$4) + ) + (f64.mul + (f64.const -2.9658956854023756e-05) + (global.get $global$4) + ) + (f64.mul + (f64.const 4.366244043351563e-05) + (global.get $global$3) + ) + ) + ) + (func $assembly/index/Neptune (; 14 ;) (type $4) (result i32) + (call $assembly/index/Body#constructor + (i32.const 0) + (f64.const 15.379697114850917) + (f64.const -25.919314609987964) + (f64.const 0.17925877295037118) + (f64.mul + (f64.const 2.6806777249038932e-03) + (global.get $global$4) + ) + (f64.mul + (f64.const 0.001628241700382423) + (global.get $global$4) + ) + (f64.mul + (f64.const -9.515922545197159e-05) + (global.get $global$4) + ) + (f64.mul + (f64.const 5.1513890204661145e-05) + (global.get $global$3) + ) + ) + ) + (func $~lib/internal/arraybuffer/computeSize (; 15 ;) (type $3) (param $0 i32) (result i32) + (i32.shl + (i32.const 1) + (i32.sub + (i32.const 32) + (i32.clz + (i32.sub + (i32.add + (local.get $0) + (i32.const 8) + ) + (i32.const 1) + ) + ) + ) + ) + ) + (func $~lib/internal/arraybuffer/allocateUnsafe (; 16 ;) (type $3) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (if + (i32.eqz + (i32.le_u + (local.get $0) + (i32.const 1073741816) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 40) + (i32.const 26) + (i32.const 2) + ) + (unreachable) + ) + ) + (local.set $1 + (block $label$2 (result i32) + (local.set $2 + (call $~lib/internal/arraybuffer/computeSize + (local.get $0) + ) + ) + (br $label$2 + (call $~lib/allocator/arena/__memory_allocate + (local.get $2) + ) + ) + ) + ) + (i32.store + (local.get $1) + (local.get $0) + ) + (local.get $1) + ) + (func $~lib/internal/memory/memset (; 17 ;) (type $7) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i64) + (if + (i32.eqz + (local.get $2) + ) + (return) + ) + (i32.store8 + (local.get $0) + (local.get $1) + ) + (i32.store8 + (i32.sub + (i32.add + (local.get $0) + (local.get $2) + ) + (i32.const 1) + ) + (local.get $1) + ) + (if + (i32.le_u + (local.get $2) + (i32.const 2) + ) + (return) + ) + (i32.store8 + (i32.add + (local.get $0) + (i32.const 1) + ) + (local.get $1) + ) + (i32.store8 + (i32.add + (local.get $0) + (i32.const 2) + ) + (local.get $1) + ) + (i32.store8 + (i32.sub + (i32.add + (local.get $0) + (local.get $2) + ) + (i32.const 2) + ) + (local.get $1) + ) + (i32.store8 + (i32.sub + (i32.add + (local.get $0) + (local.get $2) + ) + (i32.const 3) + ) + (local.get $1) + ) + (if + (i32.le_u + (local.get $2) + (i32.const 6) + ) + (return) + ) + (i32.store8 + (i32.add + (local.get $0) + (i32.const 3) + ) + (local.get $1) + ) + (i32.store8 + (i32.sub + (i32.add + (local.get $0) + (local.get $2) + ) + (i32.const 4) + ) + (local.get $1) + ) + (if + (i32.le_u + (local.get $2) + (i32.const 8) + ) + (return) + ) + (local.set $3 + (i32.and + (i32.sub + (i32.const 0) + (local.get $0) + ) + (i32.const 3) + ) + ) + (local.set $0 + (i32.add + (local.get $0) + (local.get $3) + ) + ) + (local.set $2 + (i32.sub + (local.get $2) + (local.get $3) + ) + ) + (local.set $2 + (i32.and + (local.get $2) + (i32.const -4) + ) + ) + (local.set $4 + (i32.mul + (i32.div_u + (i32.const -1) + (i32.const 255) + ) + (i32.and + (local.get $1) + (i32.const 255) + ) + ) + ) + (i32.store + (local.get $0) + (local.get $4) + ) + (i32.store + (i32.sub + (i32.add + (local.get $0) + (local.get $2) + ) + (i32.const 4) + ) + (local.get $4) + ) + (if + (i32.le_u + (local.get $2) + (i32.const 8) + ) + (return) + ) + (i32.store + (i32.add + (local.get $0) + (i32.const 4) + ) + (local.get $4) + ) + (i32.store + (i32.add + (local.get $0) + (i32.const 8) + ) + (local.get $4) + ) + (i32.store + (i32.sub + (i32.add + (local.get $0) + (local.get $2) + ) + (i32.const 12) + ) + (local.get $4) + ) + (i32.store + (i32.sub + (i32.add + (local.get $0) + (local.get $2) + ) + (i32.const 8) + ) + (local.get $4) + ) + (if + (i32.le_u + (local.get $2) + (i32.const 24) + ) + (return) + ) + (i32.store + (i32.add + (local.get $0) + (i32.const 12) + ) + (local.get $4) + ) + (i32.store + (i32.add + (local.get $0) + (i32.const 16) + ) + (local.get $4) + ) + (i32.store + (i32.add + (local.get $0) + (i32.const 20) + ) + (local.get $4) + ) + (i32.store + (i32.add + (local.get $0) + (i32.const 24) + ) + (local.get $4) + ) + (i32.store + (i32.sub + (i32.add + (local.get $0) + (local.get $2) + ) + (i32.const 28) + ) + (local.get $4) + ) + (i32.store + (i32.sub + (i32.add + (local.get $0) + (local.get $2) + ) + (i32.const 24) + ) + (local.get $4) + ) + (i32.store + (i32.sub + (i32.add + (local.get $0) + (local.get $2) + ) + (i32.const 20) + ) + (local.get $4) + ) + (i32.store + (i32.sub + (i32.add + (local.get $0) + (local.get $2) + ) + (i32.const 16) + ) + (local.get $4) + ) + (local.set $3 + (i32.add + (i32.const 24) + (i32.and + (local.get $0) + (i32.const 4) + ) + ) + ) + (local.set $0 + (i32.add + (local.get $0) + (local.get $3) + ) + ) + (local.set $2 + (i32.sub + (local.get $2) + (local.get $3) + ) + ) + (local.set $5 + (i64.or + (i64.extend_i32_u + (local.get $4) + ) + (i64.shl + (i64.extend_i32_u + (local.get $4) + ) + (i64.const 32) + ) + ) + ) + (block $label$7 + (loop $label$8 + (if + (i32.ge_u + (local.get $2) + (i32.const 32) + ) + (block + (block $label$10 + (i64.store + (local.get $0) + (local.get $5) + ) + (i64.store + (i32.add + (local.get $0) + (i32.const 8) + ) + (local.get $5) + ) + (i64.store + (i32.add + (local.get $0) + (i32.const 16) + ) + (local.get $5) + ) + (i64.store + (i32.add + (local.get $0) + (i32.const 24) + ) + (local.get $5) + ) + (local.set $2 + (i32.sub + (local.get $2) + (i32.const 32) + ) + ) + (local.set $0 + (i32.add + (local.get $0) + (i32.const 32) + ) + ) + ) + (br $label$8) + ) + ) + ) + ) + ) + (func $~lib/array/Array<Body>#constructor (; 18 ;) (type $1) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (if + (i32.gt_u + (local.get $1) + (i32.const 268435454) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 8) + (i32.const 45) + (i32.const 39) + ) + (unreachable) + ) + ) + (local.set $2 + (i32.shl + (local.get $1) + (i32.const 2) + ) + ) + (local.set $3 + (call $~lib/internal/arraybuffer/allocateUnsafe + (local.get $2) + ) + ) + (i32.store + (block $label$2 (result i32) + (if + (i32.eqz + (local.get $0) + ) + (local.set $0 + (call $~lib/memory/memory.allocate + (i32.const 8) + ) + ) + ) + (i32.store + (local.get $0) + (i32.const 0) + ) + (i32.store offset=4 + (local.get $0) + (i32.const 0) + ) + (local.get $0) + ) + (local.get $3) + ) + (i32.store offset=4 + (local.get $0) + (local.get $1) + ) + (block $label$4 + (local.set $4 + (i32.add + (local.get $3) + (i32.const 8) + ) + ) + (local.set $5 + (i32.const 0) + ) + (local.set $6 + (local.get $2) + ) + (call $~lib/internal/memory/memset + (local.get $4) + (local.get $5) + (local.get $6) + ) + ) + (local.get $0) + ) + (func $~lib/array/Array<Body>#__unchecked_set (; 19 ;) (type $7) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local.set $3 + (i32.load + (local.get $0) + ) + ) + (local.set $4 + (local.get $1) + ) + (local.set $5 + (local.get $2) + ) + (local.set $6 + (i32.const 0) + ) + (i32.store offset=8 + (i32.add + (i32.add + (local.get $3) + (i32.shl + (local.get $4) + (i32.const 2) + ) + ) + (local.get $6) + ) + (local.get $5) + ) + ) + (func $assembly/index/init (; 20 ;) (type $0) + (local $0 i32) + (global.set $global$5 + (call $assembly/index/NBodySystem#constructor + (i32.const 0) + (block $label$1 (result i32) + (local.set $0 + (call $~lib/array/Array<Body>#constructor + (i32.const 0) + (i32.const 5) + ) + ) + (call $~lib/array/Array<Body>#__unchecked_set + (local.get $0) + (i32.const 0) + (call $assembly/index/Sun) + ) + (call $~lib/array/Array<Body>#__unchecked_set + (local.get $0) + (i32.const 1) + (call $assembly/index/Jupiter) + ) + (call $~lib/array/Array<Body>#__unchecked_set + (local.get $0) + (i32.const 2) + (call $assembly/index/Saturn) + ) + (call $~lib/array/Array<Body>#__unchecked_set + (local.get $0) + (i32.const 3) + (call $assembly/index/Uranus) + ) + (call $~lib/array/Array<Body>#__unchecked_set + (local.get $0) + (i32.const 4) + (call $assembly/index/Neptune) + ) + (local.get $0) + ) + ) + ) + ) + (func $assembly/index/NBodySystem#advance (; 21 ;) (type $9) (param $0 i32) (param $1 f64) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + (local $13 f64) + (local $14 f64) + (local $15 f64) + (local $16 f64) + (local $17 f64) + (local $18 f64) + (local $19 f64) + (local $20 f64) + (local $21 f64) + (local $22 f64) + (local.set $2 + (i32.load + (local.get $0) + ) + ) + (local.set $4 + (block $label$1 (result i32) + (local.set $3 + (local.get $2) + ) + (i32.load offset=4 + (local.get $3) + ) + ) + ) + (block $label$2 + (local.set $3 + (i32.const 0) + ) + (loop $label$3 + (br_if $label$2 + (i32.eqz + (i32.lt_u + (local.get $3) + (local.get $4) + ) + ) + ) + (block $label$4 + (local.set $5 + (call $~lib/array/Array<Body>#__unchecked_get + (local.get $2) + (local.get $3) + ) + ) + (local.set $8 + (f64.load + (local.get $5) + ) + ) + (local.set $9 + (f64.load offset=8 + (local.get $5) + ) + ) + (local.set $10 + (f64.load offset=16 + (local.get $5) + ) + ) + (local.set $11 + (f64.load offset=24 + (local.get $5) + ) + ) + (local.set $12 + (f64.load offset=32 + (local.get $5) + ) + ) + (local.set $13 + (f64.load offset=40 + (local.get $5) + ) + ) + (local.set $14 + (f64.load offset=48 + (local.get $5) + ) + ) + (block $label$5 + (local.set $6 + (i32.add + (local.get $3) + (i32.const 1) + ) + ) + (loop $label$6 + (br_if $label$5 + (i32.eqz + (i32.lt_u + (local.get $6) + (local.get $4) + ) + ) + ) + (block $label$7 + (local.set $7 + (call $~lib/array/Array<Body>#__unchecked_get + (local.get $2) + (local.get $6) + ) + ) + (local.set $15 + (f64.sub + (local.get $8) + (f64.load + (local.get $7) + ) + ) + ) + (local.set $16 + (f64.sub + (local.get $9) + (f64.load offset=8 + (local.get $7) + ) + ) + ) + (local.set $17 + (f64.sub + (local.get $10) + (f64.load offset=16 + (local.get $7) + ) + ) + ) + (local.set $18 + (f64.add + (f64.add + (f64.mul + (local.get $15) + (local.get $15) + ) + (f64.mul + (local.get $16) + (local.get $16) + ) + ) + (f64.mul + (local.get $17) + (local.get $17) + ) + ) + ) + (local.set $19 + (block $label$8 (result f64) + (local.set $19 + (local.get $18) + ) + (f64.sqrt + (local.get $19) + ) + ) + ) + (local.set $20 + (f64.div + (local.get $1) + (f64.mul + (local.get $18) + (local.get $19) + ) + ) + ) + (local.set $21 + (f64.mul + (local.get $14) + (local.get $20) + ) + ) + (local.set $22 + (f64.mul + (f64.load offset=48 + (local.get $7) + ) + (local.get $20) + ) + ) + (local.set $11 + (f64.sub + (local.get $11) + (f64.mul + (local.get $15) + (local.get $22) + ) + ) + ) + (local.set $12 + (f64.sub + (local.get $12) + (f64.mul + (local.get $16) + (local.get $22) + ) + ) + ) + (local.set $13 + (f64.sub + (local.get $13) + (f64.mul + (local.get $17) + (local.get $22) + ) + ) + ) + (f64.store offset=24 + (local.get $7) + (f64.add + (f64.load offset=24 + (local.get $7) + ) + (f64.mul + (local.get $15) + (local.get $21) + ) + ) + ) + (f64.store offset=32 + (local.get $7) + (f64.add + (f64.load offset=32 + (local.get $7) + ) + (f64.mul + (local.get $16) + (local.get $21) + ) + ) + ) + (f64.store offset=40 + (local.get $7) + (f64.add + (f64.load offset=40 + (local.get $7) + ) + (f64.mul + (local.get $17) + (local.get $21) + ) + ) + ) + ) + (local.set $6 + (i32.add + (local.get $6) + (i32.const 1) + ) + ) + (br $label$6) + ) + ) + (f64.store offset=24 + (local.get $5) + (local.get $11) + ) + (f64.store offset=32 + (local.get $5) + (local.get $12) + ) + (f64.store offset=40 + (local.get $5) + (local.get $13) + ) + (f64.store + (local.get $5) + (f64.add + (f64.load + (local.get $5) + ) + (f64.mul + (local.get $1) + (local.get $11) + ) + ) + ) + (f64.store offset=8 + (local.get $5) + (f64.add + (f64.load offset=8 + (local.get $5) + ) + (f64.mul + (local.get $1) + (local.get $12) + ) + ) + ) + (f64.store offset=16 + (local.get $5) + (f64.add + (f64.load offset=16 + (local.get $5) + ) + (f64.mul + (local.get $1) + (local.get $13) + ) + ) + ) + ) + (local.set $3 + (i32.add + (local.get $3) + (i32.const 1) + ) + ) + (br $label$3) + ) + ) + ) + (func $assembly/index/NBodySystem#energy (; 22 ;) (type $10) (param $0 i32) (result f64) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 f64) + (local $8 f64) + (local $9 f64) + (local $10 f64) + (local $11 f64) + (local $12 f64) + (local $13 f64) + (local $14 f64) + (local $15 f64) + (local $16 f64) + (local $17 f64) + (local $18 f64) + (local.set $7 + (f64.const 0) + ) + (local.set $1 + (i32.load + (local.get $0) + ) + ) + (block $label$1 + (block $label$2 + (local.set $2 + (i32.const 0) + ) + (local.set $3 + (block $label$3 (result i32) + (local.set $3 + (local.get $1) + ) + (i32.load offset=4 + (local.get $3) + ) + ) + ) + ) + (loop $label$4 + (br_if $label$1 + (i32.eqz + (i32.lt_u + (local.get $2) + (local.get $3) + ) + ) + ) + (block $label$5 + (local.set $4 + (call $~lib/array/Array<Body>#__unchecked_get + (local.get $1) + (local.get $2) + ) + ) + (local.set $8 + (f64.load + (local.get $4) + ) + ) + (local.set $9 + (f64.load offset=8 + (local.get $4) + ) + ) + (local.set $10 + (f64.load offset=16 + (local.get $4) + ) + ) + (local.set $11 + (f64.load offset=24 + (local.get $4) + ) + ) + (local.set $12 + (f64.load offset=32 + (local.get $4) + ) + ) + (local.set $13 + (f64.load offset=40 + (local.get $4) + ) + ) + (local.set $14 + (f64.load offset=48 + (local.get $4) + ) + ) + (local.set $7 + (f64.add + (local.get $7) + (f64.mul + (f64.mul + (f64.const 0.5) + (local.get $14) + ) + (f64.add + (f64.add + (f64.mul + (local.get $11) + (local.get $11) + ) + (f64.mul + (local.get $12) + (local.get $12) + ) + ) + (f64.mul + (local.get $13) + (local.get $13) + ) + ) + ) + ) + ) + (block $label$6 + (local.set $5 + (i32.add + (local.get $2) + (i32.const 1) + ) + ) + (loop $label$7 + (br_if $label$6 + (i32.eqz + (i32.lt_u + (local.get $5) + (local.get $3) + ) + ) + ) + (block $label$8 + (local.set $6 + (call $~lib/array/Array<Body>#__unchecked_get + (local.get $1) + (local.get $5) + ) + ) + (local.set $15 + (f64.sub + (local.get $8) + (f64.load + (local.get $6) + ) + ) + ) + (local.set $16 + (f64.sub + (local.get $9) + (f64.load offset=8 + (local.get $6) + ) + ) + ) + (local.set $17 + (f64.sub + (local.get $10) + (f64.load offset=16 + (local.get $6) + ) + ) + ) + (local.set $18 + (block $label$9 (result f64) + (local.set $18 + (f64.add + (f64.add + (f64.mul + (local.get $15) + (local.get $15) + ) + (f64.mul + (local.get $16) + (local.get $16) + ) + ) + (f64.mul + (local.get $17) + (local.get $17) + ) + ) + ) + (f64.sqrt + (local.get $18) + ) + ) + ) + (local.set $7 + (f64.sub + (local.get $7) + (f64.div + (f64.mul + (local.get $14) + (f64.load offset=48 + (local.get $6) + ) + ) + (local.get $18) + ) + ) + ) + ) + (local.set $5 + (i32.add + (local.get $5) + (i32.const 1) + ) + ) + (br $label$7) + ) + ) + ) + (local.set $2 + (i32.add + (local.get $2) + (i32.const 1) + ) + ) + (br $label$4) + ) + ) + (local.get $7) + ) + (func $assembly/index/step (; 23 ;) (type $8) (result f64) + (call $assembly/index/NBodySystem#advance + (global.get $global$5) + (f64.const 0.01) + ) + (call $assembly/index/NBodySystem#energy + (global.get $global$5) + ) + ) + (func $assembly/index/bench (; 24 ;) (type $11) (param $0 i32) + (local $1 i32) + (block $label$1 + (local.set $1 + (i32.const 0) + ) + (loop $label$2 + (br_if $label$1 + (i32.eqz + (i32.lt_u + (local.get $1) + (local.get $0) + ) + ) + ) + (call $assembly/index/NBodySystem#advance + (global.get $global$5) + (f64.const 0.01) + ) + (local.set $1 + (i32.add + (local.get $1) + (i32.const 1) + ) + ) + (br $label$2) + ) + ) + ) + (func $assembly/index/getBody (; 25 ;) (type $3) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local.set $1 + (i32.load + (global.get $global$5) + ) + ) + (if (result i32) + (i32.lt_u + (local.get $0) + (block $label$1 (result i32) + (local.set $2 + (local.get $1) + ) + (i32.load offset=4 + (local.get $2) + ) + ) + ) + (call $~lib/array/Array<Body>#__get + (local.get $1) + (local.get $0) + ) + (i32.const 0) + ) + ) + (func $start (; 26 ;) (type $0) + (call $start:assembly/index) + ) + (func $null (; 27 ;) (type $0) + ) +) diff --git a/test/passes/converge_O3_metrics.bin.txt b/test/passes/converge_O3_metrics.bin.txt index be1ebb897..00835cc1e 100644 --- a/test/passes/converge_O3_metrics.bin.txt +++ b/test/passes/converge_O3_metrics.bin.txt @@ -1,4 +1,5 @@ total + [exports] : 2 [funcs] : 8 [imports] : 3 [memory-data] : 28 @@ -240,6 +241,7 @@ total ) ) total + [exports] : 2 [funcs] : 8 [imports] : 3 [memory-data] : 28 @@ -482,6 +484,7 @@ total ) ) total + [exports] : 2 [funcs] : 8 [imports] : 3 [memory-data] : 28 diff --git a/test/passes/func-metrics.txt b/test/passes/func-metrics.txt index 2d70c07c9..fd8d949bd 100644 --- a/test/passes/func-metrics.txt +++ b/test/passes/func-metrics.txt @@ -1,5 +1,7 @@ global + [exports] : 0 [funcs] : 3 + [imports] : 0 [memory-data] : 9 [table-data] : 3 [total] : 3 @@ -7,10 +9,12 @@ global func: empty [binary-bytes] : 3 [total] : 1 + [vars] : 0 nop : 1 func: small [binary-bytes] : 9 [total] : 5 + [vars] : 0 block : 1 const : 1 drop : 1 @@ -84,30 +88,41 @@ func: ifs ) ) global + [exports] : 0 + [funcs] : 0 + [imports] : 0 + [total] : 0 (module ) global + [exports] : 2 [funcs] : 3 [imports] : 1 + [total] : 0 func: func_a [binary-bytes] : 16 [total] : 8 + [vars] : 0 block : 1 call : 7 func: func_b [binary-bytes] : 22 [total] : 11 + [vars] : 0 block : 1 call : 10 func: func_c [binary-bytes] : 32 [total] : 16 + [vars] : 0 block : 1 call : 15 export: a (func_a) [removable-bytes-without-it]: 72 + [total] : 0 export: b (func_b) [removable-bytes-without-it]: 18 + [total] : 0 (module (type $FUNCSIG$v (func)) (import "env" "waka" (func $waka)) @@ -153,17 +168,22 @@ export: b (func_b) ) ) global + [exports] : 1 [funcs] : 1 [imports] : 1 + [total] : 0 func: func_a [binary-bytes] : 12 [total] : 6 + [vars] : 0 block : 1 call : 5 export: a (func_a) [removable-bytes-without-it]: 7 + [total] : 0 start: func_a [removable-bytes-without-it]: 3 + [total] : 0 (module (type $FUNCSIG$v (func)) (import "env" "waka" (func $waka)) @@ -178,15 +198,19 @@ start: func_a ) ) global + [exports] : 0 [funcs] : 1 [imports] : 1 + [total] : 0 func: func_a [binary-bytes] : 12 [total] : 6 + [vars] : 0 block : 1 call : 5 start: func_a [removable-bytes-without-it]: 67 + [total] : 0 (module (type $FUNCSIG$v (func)) (import "env" "waka" (func $waka)) @@ -200,6 +224,7 @@ start: func_a ) ) global + [exports] : 1 [funcs] : 1 [imports] : 1 [total] : 1 @@ -207,9 +232,11 @@ global func: 0 [binary-bytes] : 4 [total] : 1 + [vars] : 0 global.get : 1 export: stackSave (0) [removable-bytes-without-it]: 74 + [total] : 0 (module (type $0 (func (result i32))) (import "env" "STACKTOP" (global $gimport$0 i32)) diff --git a/test/passes/metrics.txt b/test/passes/metrics.txt index 216ac1fcb..096194e84 100644 --- a/test/passes/metrics.txt +++ b/test/passes/metrics.txt @@ -1,5 +1,7 @@ total + [exports] : 0 [funcs] : 1 + [imports] : 0 [memory-data] : 9 [table-data] : 3 [total] : 27 @@ -57,5 +59,10 @@ total ) ) total + [exports] : 0 + [funcs] : 0 + [imports] : 0 + [total] : 0 + [vars] : 0 (module ) diff --git a/test/passes/metrics_strip-debug_metrics.bin.txt b/test/passes/metrics_strip-debug_metrics.bin.txt index dbb3dcc37..0efad35f5 100644 --- a/test/passes/metrics_strip-debug_metrics.bin.txt +++ b/test/passes/metrics_strip-debug_metrics.bin.txt @@ -1,10 +1,16 @@ total + [exports] : 1 [funcs] : 1 + [imports] : 0 [total] : 1 + [vars] : 0 nop : 1 total + [exports] : 1 [funcs] : 1 + [imports] : 0 [total] : 1 + [vars] : 0 nop : 1 (module (type $0 (func)) diff --git a/test/passes/metrics_strip-producers_metrics.bin.txt b/test/passes/metrics_strip-producers_metrics.bin.txt index 6ddfa5892..e630c14b7 100644 --- a/test/passes/metrics_strip-producers_metrics.bin.txt +++ b/test/passes/metrics_strip-producers_metrics.bin.txt @@ -1,10 +1,16 @@ total + [exports] : 1 [funcs] : 1 + [imports] : 0 [total] : 1 + [vars] : 0 nop : 1 total + [exports] : 1 [funcs] : 1 + [imports] : 0 [total] : 1 + [vars] : 0 nop : 1 (module (type $0 (func)) diff --git a/test/passes/safe-heap.txt b/test/passes/safe-heap.txt index ecb87091c..98f185fe4 100644 --- a/test/passes/safe-heap.txt +++ b/test/passes/safe-heap.txt @@ -171,7 +171,7 @@ (call $SAFE_HEAP_STORE_v128_16_16 (i32.const 14) (i32.const 0) - (v128.const i32 0x00000001 0x00000002 0x00000003 0x00000004) + (v128.const i32x4 0x00000001 0x00000002 0x00000003 0x00000004) ) ) (func $SAFE_HEAP_LOAD_i32_1_A (; 4 ;) (param $0 i32) (param $1 i32) (result i32) diff --git a/test/passes/safe-heap.wast b/test/passes/safe-heap.wast index a2754b469..17c9995c4 100644 --- a/test/passes/safe-heap.wast +++ b/test/passes/safe-heap.wast @@ -32,7 +32,7 @@ (i64.store (i32.const 11) (i64.const 1100)) (f32.store (i32.const 12) (f32.const 1200)) (f64.store (i32.const 13) (f64.const 1300)) - (v128.store (i32.const 14) (v128.const i32 1 2 3 4)) + (v128.store (i32.const 14) (v128.const i32x4 1 2 3 4)) ) ) ;; not shared diff --git a/test/passes/safe-heap_low-memory-unused.txt b/test/passes/safe-heap_low-memory-unused.txt index 0d9287c57..801821e4f 100644 --- a/test/passes/safe-heap_low-memory-unused.txt +++ b/test/passes/safe-heap_low-memory-unused.txt @@ -171,7 +171,7 @@ (call $SAFE_HEAP_STORE_v128_16_16 (i32.const 14) (i32.const 0) - (v128.const i32 0x00000001 0x00000002 0x00000003 0x00000004) + (v128.const i32x4 0x00000001 0x00000002 0x00000003 0x00000004) ) ) (func $SAFE_HEAP_LOAD_i32_1_A (; 4 ;) (param $0 i32) (param $1 i32) (result i32) diff --git a/test/passes/safe-heap_low-memory-unused.wast b/test/passes/safe-heap_low-memory-unused.wast index a2754b469..17c9995c4 100644 --- a/test/passes/safe-heap_low-memory-unused.wast +++ b/test/passes/safe-heap_low-memory-unused.wast @@ -32,7 +32,7 @@ (i64.store (i32.const 11) (i64.const 1100)) (f32.store (i32.const 12) (f32.const 1200)) (f64.store (i32.const 13) (f64.const 1300)) - (v128.store (i32.const 14) (v128.const i32 1 2 3 4)) + (v128.store (i32.const 14) (v128.const i32x4 1 2 3 4)) ) ) ;; not shared diff --git a/test/passes/strip-target-features.bin.txt b/test/passes/strip-target-features.bin.txt new file mode 100644 index 000000000..914273cfb --- /dev/null +++ b/test/passes/strip-target-features.bin.txt @@ -0,0 +1,3 @@ +(module + ;; custom section "linking", size 1 +) diff --git a/test/passes/strip-target-features.wasm b/test/passes/strip-target-features.wasm Binary files differnew file mode 100644 index 000000000..1c837a1dc --- /dev/null +++ b/test/passes/strip-target-features.wasm diff --git a/test/passes/translate-to-fuzz.txt b/test/passes/translate-to-fuzz.txt index 604ccc548..fb80f7c0d 100644 --- a/test/passes/translate-to-fuzz.txt +++ b/test/passes/translate-to-fuzz.txt @@ -302,24 +302,24 @@ (br_if $label$1 (i32.const -1) ) - (v128.const i32 0x0b00c0b2 0x1f010200 0xff00ff01 0xff0fed00) + (v128.const i32x4 0x0b00c0b2 0x1f010200 0xff00ff01 0xff0fed00) ) ) ) ) (local.set $5 - (v128.const i32 0x80190000 0xeb00021b 0x7f001a4a 0x005d1280) + (v128.const i32x4 0x80190000 0xeb00021b 0x7f001a4a 0x005d1280) ) ) ) (func $func_8_invoker (; 9 ;) (type $FUNCSIG$v) (call $func_8 (i32.const 68) - (v128.const i32 0x25373870 0x313c793d 0x150c0902 0x1f4c030a) + (v128.const i32x4 0x25373870 0x313c793d 0x150c0902 0x1f4c030a) (i32.const 420088586) - (v128.const i32 0xfffe1b09 0xfffe0000 0x5f0b1615 0x463dffe6) + (v128.const i32x4 0xfffe1b09 0xfffe0000 0x5f0b1615 0x463dffe6) (i64.const 2055) - (v128.const i32 0x00000000 0x43e00000 0x00000000 0x406c6000) + (v128.const i32x4 0x00000000 0x43e00000 0x00000000 0x406c6000) ) ) (func $func_10 (; 10 ;) (type $FUNCSIG$vd) (param $0 f64) @@ -366,7 +366,7 @@ (global.get $hangLimit) ) (return - (v128.const i32 0xff040000 0xff371d46 0x6f000002 0x00004318) + (v128.const i32x4 0xff040000 0xff371d46 0x6f000002 0x00004318) ) ) (global.set $hangLimit @@ -461,7 +461,7 @@ ) (block $label$0 (local.set $5 - (v128.const i32 0x5d1b5d4e 0x48481b54 0x00000000 0xf8000000) + (v128.const i32x4 0x5d1b5d4e 0x48481b54 0x00000000 0xf8000000) ) (nop) ) diff --git a/test/passes/translate-to-fuzz_no-fuzz-nans.txt b/test/passes/translate-to-fuzz_no-fuzz-nans.txt index 99ef3879d..f256d3bf4 100644 --- a/test/passes/translate-to-fuzz_no-fuzz-nans.txt +++ b/test/passes/translate-to-fuzz_no-fuzz-nans.txt @@ -302,24 +302,24 @@ (br_if $label$1 (i32.const -1) ) - (v128.const i32 0x0b00c0b2 0x1f010200 0xff00ff01 0xff0fed00) + (v128.const i32x4 0x0b00c0b2 0x1f010200 0xff00ff01 0xff0fed00) ) ) ) ) (local.set $5 - (v128.const i32 0x80190000 0xeb00021b 0x7f001a4a 0x005d1280) + (v128.const i32x4 0x80190000 0xeb00021b 0x7f001a4a 0x005d1280) ) ) ) (func $func_8_invoker (; 9 ;) (type $FUNCSIG$v) (call $func_8 (i32.const 68) - (v128.const i32 0x25373870 0x313c793d 0x150c0902 0x1f4c030a) + (v128.const i32x4 0x25373870 0x313c793d 0x150c0902 0x1f4c030a) (i32.const 420088586) - (v128.const i32 0xfffe1b09 0xfffe0000 0x5f0b1615 0x463dffe6) + (v128.const i32x4 0xfffe1b09 0xfffe0000 0x5f0b1615 0x463dffe6) (i64.const 2055) - (v128.const i32 0x00000000 0x43e00000 0x00000000 0x406c6000) + (v128.const i32x4 0x00000000 0x43e00000 0x00000000 0x406c6000) ) ) (func $func_10 (; 10 ;) (type $FUNCSIG$vd) (param $0 f64) @@ -366,7 +366,7 @@ (global.get $hangLimit) ) (return - (v128.const i32 0xff040000 0xff371d46 0x6f000002 0x00004318) + (v128.const i32x4 0xff040000 0xff371d46 0x6f000002 0x00004318) ) ) (global.set $hangLimit @@ -461,7 +461,7 @@ ) (block $label$0 (local.set $5 - (v128.const i32 0x5d1b5d4e 0x48481b54 0x00000000 0xf8000000) + (v128.const i32x4 0x5d1b5d4e 0x48481b54 0x00000000 0xf8000000) ) (nop) ) diff --git a/test/simd.wast b/test/simd.wast index ab6ef6458..11f0c19a6 100644 --- a/test/simd.wast +++ b/test/simd.wast @@ -10,8 +10,23 @@ (local.get $1) ) ) - (func $v128.const (result v128) - (v128.const i32 1 2 3 4) + (func $v128.const.i8x16 (result v128) + (v128.const i8x16 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16) + ) + (func $v128.const.i16x8 (result v128) + (v128.const i16x8 1 2 3 4 5 6 7 8) + ) + (func $v128.const.i32x4 (result v128) + (v128.const i32x4 1 2 3 4) + ) + (func $v128.const.i64x2 (result v128) + (v128.const i64x2 1 2) + ) + (func $v128.const.f32x4 (result v128) + (v128.const f32x4 1.0 2 3 4) + ) + (func $v128.const.f64x2 (result v128) + (v128.const f64x2 1.0 2) ) (func $v128.shuffle (param $0 v128) (param $1 v128) (result v128) (v8x16.shuffle 0 17 2 19 4 21 6 23 8 25 10 27 12 29 14 31 diff --git a/test/simd.wast.from-wast b/test/simd.wast.from-wast index 734d55366..fe1fd241d 100644 --- a/test/simd.wast.from-wast +++ b/test/simd.wast.from-wast @@ -26,782 +26,797 @@ (local.get $1) ) ) - (func $v128.const (; 2 ;) (type $2) (result v128) - (v128.const i32 0x00000001 0x00000002 0x00000003 0x00000004) + (func $v128.const.i8x16 (; 2 ;) (type $2) (result v128) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) - (func $v128.shuffle (; 3 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $v128.const.i16x8 (; 3 ;) (type $2) (result v128) + (v128.const i32x4 0x00020001 0x00040003 0x00060005 0x00080007) + ) + (func $v128.const.i32x4 (; 4 ;) (type $2) (result v128) + (v128.const i32x4 0x00000001 0x00000002 0x00000003 0x00000004) + ) + (func $v128.const.i64x2 (; 5 ;) (type $2) (result v128) + (v128.const i32x4 0x00000001 0x00000000 0x00000002 0x00000000) + ) + (func $v128.const.f32x4 (; 6 ;) (type $2) (result v128) + (v128.const i32x4 0x3f800000 0x40000000 0x40400000 0x40800000) + ) + (func $v128.const.f64x2 (; 7 ;) (type $2) (result v128) + (v128.const i32x4 0x00000000 0x3ff00000 0x00000000 0x40000000) + ) + (func $v128.shuffle (; 8 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (v8x16.shuffle 0 17 2 19 4 21 6 23 8 25 10 27 12 29 14 31 (local.get $0) (local.get $1) ) ) - (func $i8x16.splat (; 4 ;) (type $0) (param $0 i32) (result v128) + (func $i8x16.splat (; 9 ;) (type $0) (param $0 i32) (result v128) (i8x16.splat (local.get $0) ) ) - (func $i8x16.extract_lane_s (; 5 ;) (type $4) (param $0 v128) (result i32) + (func $i8x16.extract_lane_s (; 10 ;) (type $4) (param $0 v128) (result i32) (i8x16.extract_lane_s 0 (local.get $0) ) ) - (func $i8x16.extract_lane_u (; 6 ;) (type $4) (param $0 v128) (result i32) + (func $i8x16.extract_lane_u (; 11 ;) (type $4) (param $0 v128) (result i32) (i8x16.extract_lane_u 0 (local.get $0) ) ) - (func $i8x16.replace_lane (; 7 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i8x16.replace_lane (; 12 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i8x16.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $i16x8.splat (; 8 ;) (type $0) (param $0 i32) (result v128) + (func $i16x8.splat (; 13 ;) (type $0) (param $0 i32) (result v128) (i16x8.splat (local.get $0) ) ) - (func $i16x8.extract_lane_s (; 9 ;) (type $4) (param $0 v128) (result i32) + (func $i16x8.extract_lane_s (; 14 ;) (type $4) (param $0 v128) (result i32) (i16x8.extract_lane_s 0 (local.get $0) ) ) - (func $i16x8.extract_lane_u (; 10 ;) (type $4) (param $0 v128) (result i32) + (func $i16x8.extract_lane_u (; 15 ;) (type $4) (param $0 v128) (result i32) (i16x8.extract_lane_u 0 (local.get $0) ) ) - (func $i16x8.replace_lane (; 11 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i16x8.replace_lane (; 16 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i16x8.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $i32x4.splat (; 12 ;) (type $0) (param $0 i32) (result v128) + (func $i32x4.splat (; 17 ;) (type $0) (param $0 i32) (result v128) (i32x4.splat (local.get $0) ) ) - (func $i32x4.extract_lane (; 13 ;) (type $4) (param $0 v128) (result i32) + (func $i32x4.extract_lane (; 18 ;) (type $4) (param $0 v128) (result i32) (i32x4.extract_lane 0 (local.get $0) ) ) - (func $i32x4.replace_lane (; 14 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i32x4.replace_lane (; 19 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i32x4.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $i64x2.extract_lane (; 15 ;) (type $6) (param $0 v128) (result i64) + (func $i64x2.extract_lane (; 20 ;) (type $6) (param $0 v128) (result i64) (i64x2.extract_lane 0 (local.get $0) ) ) - (func $i64x2.replace_lane (; 16 ;) (type $7) (param $0 v128) (param $1 i64) (result v128) + (func $i64x2.replace_lane (; 21 ;) (type $7) (param $0 v128) (param $1 i64) (result v128) (i64x2.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $f32x4.splat (; 17 ;) (type $8) (param $0 f32) (result v128) + (func $f32x4.splat (; 22 ;) (type $8) (param $0 f32) (result v128) (f32x4.splat (local.get $0) ) ) - (func $f32x4.extract_lane (; 18 ;) (type $9) (param $0 v128) (result f32) + (func $f32x4.extract_lane (; 23 ;) (type $9) (param $0 v128) (result f32) (f32x4.extract_lane 0 (local.get $0) ) ) - (func $f32x4.replace_lane (; 19 ;) (type $10) (param $0 v128) (param $1 f32) (result v128) + (func $f32x4.replace_lane (; 24 ;) (type $10) (param $0 v128) (param $1 f32) (result v128) (f32x4.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $f64x2.splat (; 20 ;) (type $11) (param $0 f64) (result v128) + (func $f64x2.splat (; 25 ;) (type $11) (param $0 f64) (result v128) (f64x2.splat (local.get $0) ) ) - (func $f64x2.extract_lane (; 21 ;) (type $12) (param $0 v128) (result f64) + (func $f64x2.extract_lane (; 26 ;) (type $12) (param $0 v128) (result f64) (f64x2.extract_lane 0 (local.get $0) ) ) - (func $f64x2.replace_lane (; 22 ;) (type $13) (param $0 v128) (param $1 f64) (result v128) + (func $f64x2.replace_lane (; 27 ;) (type $13) (param $0 v128) (param $1 f64) (result v128) (f64x2.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $i8x16.eq (; 23 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.eq (; 28 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.eq (local.get $0) (local.get $1) ) ) - (func $i8x16.ne (; 24 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.ne (; 29 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.ne (local.get $0) (local.get $1) ) ) - (func $i8x16.lt_s (; 25 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.lt_s (; 30 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.lt_s (local.get $0) (local.get $1) ) ) - (func $i8x16.lt_u (; 26 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.lt_u (; 31 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.lt_u (local.get $0) (local.get $1) ) ) - (func $i8x16.gt_s (; 27 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.gt_s (; 32 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.gt_s (local.get $0) (local.get $1) ) ) - (func $i8x16.gt_u (; 28 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.gt_u (; 33 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.gt_u (local.get $0) (local.get $1) ) ) - (func $i8x16.le_s (; 29 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.le_s (; 34 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.le_s (local.get $0) (local.get $1) ) ) - (func $i8x16.le_u (; 30 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.le_u (; 35 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.le_u (local.get $0) (local.get $1) ) ) - (func $i8x16.ge_s (; 31 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.ge_s (; 36 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.ge_s (local.get $0) (local.get $1) ) ) - (func $i8x16.ge_u (; 32 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.ge_u (; 37 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.ge_u (local.get $0) (local.get $1) ) ) - (func $i16x8.eq (; 33 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.eq (; 38 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.eq (local.get $0) (local.get $1) ) ) - (func $i16x8.ne (; 34 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.ne (; 39 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.ne (local.get $0) (local.get $1) ) ) - (func $i16x8.lt_s (; 35 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.lt_s (; 40 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.lt_s (local.get $0) (local.get $1) ) ) - (func $i16x8.lt_u (; 36 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.lt_u (; 41 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.lt_u (local.get $0) (local.get $1) ) ) - (func $i16x8.gt_s (; 37 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.gt_s (; 42 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.gt_s (local.get $0) (local.get $1) ) ) - (func $i16x8.gt_u (; 38 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.gt_u (; 43 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.gt_u (local.get $0) (local.get $1) ) ) - (func $i16x8.le_s (; 39 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.le_s (; 44 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.le_s (local.get $0) (local.get $1) ) ) - (func $i16x8.le_u (; 40 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.le_u (; 45 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.le_u (local.get $0) (local.get $1) ) ) - (func $i16x8.ge_s (; 41 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.ge_s (; 46 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.ge_s (local.get $0) (local.get $1) ) ) - (func $i16x8.ge_u (; 42 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.ge_u (; 47 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.ge_u (local.get $0) (local.get $1) ) ) - (func $i32x4.eq (; 43 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.eq (; 48 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.eq (local.get $0) (local.get $1) ) ) - (func $i32x4.ne (; 44 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.ne (; 49 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.ne (local.get $0) (local.get $1) ) ) - (func $i32x4.lt_s (; 45 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.lt_s (; 50 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.lt_s (local.get $0) (local.get $1) ) ) - (func $i32x4.lt_u (; 46 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.lt_u (; 51 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.lt_u (local.get $0) (local.get $1) ) ) - (func $i32x4.gt_s (; 47 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.gt_s (; 52 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.gt_s (local.get $0) (local.get $1) ) ) - (func $i32x4.gt_u (; 48 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.gt_u (; 53 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.gt_u (local.get $0) (local.get $1) ) ) - (func $i32x4.le_s (; 49 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.le_s (; 54 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.le_s (local.get $0) (local.get $1) ) ) - (func $i32x4.le_u (; 50 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.le_u (; 55 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.le_u (local.get $0) (local.get $1) ) ) - (func $i32x4.ge_s (; 51 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.ge_s (; 56 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.ge_s (local.get $0) (local.get $1) ) ) - (func $i32x4.ge_u (; 52 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.ge_u (; 57 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.ge_u (local.get $0) (local.get $1) ) ) - (func $f32x4.eq (; 53 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.eq (; 58 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.eq (local.get $0) (local.get $1) ) ) - (func $f32x4.ne (; 54 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.ne (; 59 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.ne (local.get $0) (local.get $1) ) ) - (func $f32x4.lt (; 55 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.lt (; 60 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.lt (local.get $0) (local.get $1) ) ) - (func $f32x4.gt (; 56 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.gt (; 61 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.gt (local.get $0) (local.get $1) ) ) - (func $f32x4.le (; 57 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.le (; 62 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.le (local.get $0) (local.get $1) ) ) - (func $f32x4.ge (; 58 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.ge (; 63 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.ge (local.get $0) (local.get $1) ) ) - (func $f64x2.eq (; 59 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.eq (; 64 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.eq (local.get $0) (local.get $1) ) ) - (func $f64x2.ne (; 60 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.ne (; 65 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.ne (local.get $0) (local.get $1) ) ) - (func $f64x2.lt (; 61 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.lt (; 66 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.lt (local.get $0) (local.get $1) ) ) - (func $f64x2.gt (; 62 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.gt (; 67 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.gt (local.get $0) (local.get $1) ) ) - (func $f64x2.le (; 63 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.le (; 68 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.le (local.get $0) (local.get $1) ) ) - (func $f64x2.ge (; 64 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.ge (; 69 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.ge (local.get $0) (local.get $1) ) ) - (func $v128.not (; 65 ;) (type $14) (param $0 v128) (result v128) + (func $v128.not (; 70 ;) (type $14) (param $0 v128) (result v128) (v128.not (local.get $0) ) ) - (func $v128.and (; 66 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $v128.and (; 71 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (v128.and (local.get $0) (local.get $1) ) ) - (func $v128.or (; 67 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $v128.or (; 72 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (v128.or (local.get $0) (local.get $1) ) ) - (func $v128.xor (; 68 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $v128.xor (; 73 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (v128.xor (local.get $0) (local.get $1) ) ) - (func $v128.bitselect (; 69 ;) (type $15) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) + (func $v128.bitselect (; 74 ;) (type $15) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) (v128.bitselect (local.get $0) (local.get $1) (local.get $2) ) ) - (func $i8x16.neg (; 70 ;) (type $14) (param $0 v128) (result v128) + (func $i8x16.neg (; 75 ;) (type $14) (param $0 v128) (result v128) (i8x16.neg (local.get $0) ) ) - (func $i8x16.any_true (; 71 ;) (type $4) (param $0 v128) (result i32) + (func $i8x16.any_true (; 76 ;) (type $4) (param $0 v128) (result i32) (i8x16.any_true (local.get $0) ) ) - (func $i8x16.all_true (; 72 ;) (type $4) (param $0 v128) (result i32) + (func $i8x16.all_true (; 77 ;) (type $4) (param $0 v128) (result i32) (i8x16.all_true (local.get $0) ) ) - (func $i8x16.shl (; 73 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i8x16.shl (; 78 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i8x16.shl (local.get $0) (local.get $1) ) ) - (func $i8x16.shr_s (; 74 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i8x16.shr_s (; 79 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i8x16.shr_s (local.get $0) (local.get $1) ) ) - (func $i8x16.shr_u (; 75 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i8x16.shr_u (; 80 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i8x16.shr_u (local.get $0) (local.get $1) ) ) - (func $i8x16.add (; 76 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.add (; 81 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.add (local.get $0) (local.get $1) ) ) - (func $i8x16.add_saturate_s (; 77 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.add_saturate_s (; 82 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.add_saturate_s (local.get $0) (local.get $1) ) ) - (func $i8x16.add_saturate_u (; 78 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.add_saturate_u (; 83 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.add_saturate_u (local.get $0) (local.get $1) ) ) - (func $i8x16.sub (; 79 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.sub (; 84 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.sub (local.get $0) (local.get $1) ) ) - (func $i8x16.sub_saturate_s (; 80 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.sub_saturate_s (; 85 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.sub_saturate_s (local.get $0) (local.get $1) ) ) - (func $i8x16.sub_saturate_u (; 81 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.sub_saturate_u (; 86 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.sub_saturate_u (local.get $0) (local.get $1) ) ) - (func $i8x16.mul (; 82 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.mul (; 87 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.mul (local.get $0) (local.get $1) ) ) - (func $i16x8.neg (; 83 ;) (type $14) (param $0 v128) (result v128) + (func $i16x8.neg (; 88 ;) (type $14) (param $0 v128) (result v128) (i16x8.neg (local.get $0) ) ) - (func $i16x8.any_true (; 84 ;) (type $4) (param $0 v128) (result i32) + (func $i16x8.any_true (; 89 ;) (type $4) (param $0 v128) (result i32) (i16x8.any_true (local.get $0) ) ) - (func $i16x8.all_true (; 85 ;) (type $4) (param $0 v128) (result i32) + (func $i16x8.all_true (; 90 ;) (type $4) (param $0 v128) (result i32) (i16x8.all_true (local.get $0) ) ) - (func $i16x8.shl (; 86 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i16x8.shl (; 91 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i16x8.shl (local.get $0) (local.get $1) ) ) - (func $i16x8.shr_s (; 87 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i16x8.shr_s (; 92 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i16x8.shr_s (local.get $0) (local.get $1) ) ) - (func $i16x8.shr_u (; 88 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i16x8.shr_u (; 93 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i16x8.shr_u (local.get $0) (local.get $1) ) ) - (func $i16x8.add (; 89 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.add (; 94 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.add (local.get $0) (local.get $1) ) ) - (func $i16x8.add_saturate_s (; 90 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.add_saturate_s (; 95 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.add_saturate_s (local.get $0) (local.get $1) ) ) - (func $i16x8.add_saturate_u (; 91 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.add_saturate_u (; 96 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.add_saturate_u (local.get $0) (local.get $1) ) ) - (func $i16x8.sub (; 92 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.sub (; 97 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.sub (local.get $0) (local.get $1) ) ) - (func $i16x8.sub_saturate_s (; 93 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.sub_saturate_s (; 98 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.sub_saturate_s (local.get $0) (local.get $1) ) ) - (func $i16x8.sub_saturate_u (; 94 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.sub_saturate_u (; 99 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.sub_saturate_u (local.get $0) (local.get $1) ) ) - (func $i16x8.mul (; 95 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.mul (; 100 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.mul (local.get $0) (local.get $1) ) ) - (func $i32x4.neg (; 96 ;) (type $14) (param $0 v128) (result v128) + (func $i32x4.neg (; 101 ;) (type $14) (param $0 v128) (result v128) (i32x4.neg (local.get $0) ) ) - (func $i32x4.any_true (; 97 ;) (type $4) (param $0 v128) (result i32) + (func $i32x4.any_true (; 102 ;) (type $4) (param $0 v128) (result i32) (i32x4.any_true (local.get $0) ) ) - (func $i32x4.all_true (; 98 ;) (type $4) (param $0 v128) (result i32) + (func $i32x4.all_true (; 103 ;) (type $4) (param $0 v128) (result i32) (i32x4.all_true (local.get $0) ) ) - (func $i32x4.shl (; 99 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i32x4.shl (; 104 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i32x4.shl (local.get $0) (local.get $1) ) ) - (func $i32x4.shr_s (; 100 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i32x4.shr_s (; 105 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i32x4.shr_s (local.get $0) (local.get $1) ) ) - (func $i32x4.shr_u (; 101 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i32x4.shr_u (; 106 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i32x4.shr_u (local.get $0) (local.get $1) ) ) - (func $i32x4.add (; 102 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.add (; 107 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.add (local.get $0) (local.get $1) ) ) - (func $i32x4.sub (; 103 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.sub (; 108 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.sub (local.get $0) (local.get $1) ) ) - (func $i32x4.mul (; 104 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.mul (; 109 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.mul (local.get $0) (local.get $1) ) ) - (func $i64x2.neg (; 105 ;) (type $14) (param $0 v128) (result v128) + (func $i64x2.neg (; 110 ;) (type $14) (param $0 v128) (result v128) (i64x2.neg (local.get $0) ) ) - (func $i64x2.any_true (; 106 ;) (type $4) (param $0 v128) (result i32) + (func $i64x2.any_true (; 111 ;) (type $4) (param $0 v128) (result i32) (i64x2.any_true (local.get $0) ) ) - (func $i64x2.all_true (; 107 ;) (type $4) (param $0 v128) (result i32) + (func $i64x2.all_true (; 112 ;) (type $4) (param $0 v128) (result i32) (i64x2.all_true (local.get $0) ) ) - (func $i64x2.shl (; 108 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i64x2.shl (; 113 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i64x2.shl (local.get $0) (local.get $1) ) ) - (func $i64x2.shr_s (; 109 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i64x2.shr_s (; 114 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i64x2.shr_s (local.get $0) (local.get $1) ) ) - (func $i64x2.shr_u (; 110 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i64x2.shr_u (; 115 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i64x2.shr_u (local.get $0) (local.get $1) ) ) - (func $i64x2.add (; 111 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i64x2.add (; 116 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i64x2.add (local.get $0) (local.get $1) ) ) - (func $i64x2.sub (; 112 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i64x2.sub (; 117 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i64x2.sub (local.get $0) (local.get $1) ) ) - (func $f32x4.add (; 113 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.add (; 118 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.add (local.get $0) (local.get $1) ) ) - (func $f32x4.sub (; 114 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.sub (; 119 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.sub (local.get $0) (local.get $1) ) ) - (func $f32x4.mul (; 115 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.mul (; 120 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.mul (local.get $0) (local.get $1) ) ) - (func $f32x4.div (; 116 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.div (; 121 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.div (local.get $0) (local.get $1) ) ) - (func $f32x4.min (; 117 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.min (; 122 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.min (local.get $0) (local.get $1) ) ) - (func $f32x4.max (; 118 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.max (; 123 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.max (local.get $0) (local.get $1) ) ) - (func $f32x4.abs (; 119 ;) (type $14) (param $0 v128) (result v128) + (func $f32x4.abs (; 124 ;) (type $14) (param $0 v128) (result v128) (f32x4.abs (local.get $0) ) ) - (func $f32x4.neg (; 120 ;) (type $14) (param $0 v128) (result v128) + (func $f32x4.neg (; 125 ;) (type $14) (param $0 v128) (result v128) (f32x4.neg (local.get $0) ) ) - (func $f32x4.sqrt (; 121 ;) (type $14) (param $0 v128) (result v128) + (func $f32x4.sqrt (; 126 ;) (type $14) (param $0 v128) (result v128) (f32x4.sqrt (local.get $0) ) ) - (func $f64x2.add (; 122 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.add (; 127 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.add (local.get $0) (local.get $1) ) ) - (func $f64x2.sub (; 123 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.sub (; 128 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.sub (local.get $0) (local.get $1) ) ) - (func $f64x2.mul (; 124 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.mul (; 129 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.mul (local.get $0) (local.get $1) ) ) - (func $f64x2.div (; 125 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.div (; 130 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.div (local.get $0) (local.get $1) ) ) - (func $f64x2.min (; 126 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.min (; 131 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.min (local.get $0) (local.get $1) ) ) - (func $f64x2.max (; 127 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.max (; 132 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.max (local.get $0) (local.get $1) ) ) - (func $f64x2.abs (; 128 ;) (type $14) (param $0 v128) (result v128) + (func $f64x2.abs (; 133 ;) (type $14) (param $0 v128) (result v128) (f64x2.abs (local.get $0) ) ) - (func $f64x2.neg (; 129 ;) (type $14) (param $0 v128) (result v128) + (func $f64x2.neg (; 134 ;) (type $14) (param $0 v128) (result v128) (f64x2.neg (local.get $0) ) ) - (func $f64x2.sqrt (; 130 ;) (type $14) (param $0 v128) (result v128) + (func $f64x2.sqrt (; 135 ;) (type $14) (param $0 v128) (result v128) (f64x2.sqrt (local.get $0) ) ) - (func $i32x4.trunc_sat_f32x4_s (; 131 ;) (type $14) (param $0 v128) (result v128) + (func $i32x4.trunc_sat_f32x4_s (; 136 ;) (type $14) (param $0 v128) (result v128) (i32x4.trunc_sat_f32x4_s (local.get $0) ) ) - (func $i32x4.trunc_sat_f32x4_u (; 132 ;) (type $14) (param $0 v128) (result v128) + (func $i32x4.trunc_sat_f32x4_u (; 137 ;) (type $14) (param $0 v128) (result v128) (i32x4.trunc_sat_f32x4_u (local.get $0) ) ) - (func $i64x2.trunc_sat_f64x2_s (; 133 ;) (type $14) (param $0 v128) (result v128) + (func $i64x2.trunc_sat_f64x2_s (; 138 ;) (type $14) (param $0 v128) (result v128) (i64x2.trunc_sat_f64x2_s (local.get $0) ) ) - (func $i64x2.trunc_sat_f64x2_u (; 134 ;) (type $14) (param $0 v128) (result v128) + (func $i64x2.trunc_sat_f64x2_u (; 139 ;) (type $14) (param $0 v128) (result v128) (i64x2.trunc_sat_f64x2_u (local.get $0) ) ) - (func $f32x4.convert_i32x4_s (; 135 ;) (type $14) (param $0 v128) (result v128) + (func $f32x4.convert_i32x4_s (; 140 ;) (type $14) (param $0 v128) (result v128) (f32x4.convert_i32x4_s (local.get $0) ) ) - (func $f32x4.convert_i32x4_u (; 136 ;) (type $14) (param $0 v128) (result v128) + (func $f32x4.convert_i32x4_u (; 141 ;) (type $14) (param $0 v128) (result v128) (f32x4.convert_i32x4_u (local.get $0) ) ) - (func $f64x2.convert_i64x2_s (; 137 ;) (type $14) (param $0 v128) (result v128) + (func $f64x2.convert_i64x2_s (; 142 ;) (type $14) (param $0 v128) (result v128) (f64x2.convert_i64x2_s (local.get $0) ) ) - (func $f64x2.convert_i64x2_u (; 138 ;) (type $14) (param $0 v128) (result v128) + (func $f64x2.convert_i64x2_u (; 143 ;) (type $14) (param $0 v128) (result v128) (f64x2.convert_i64x2_u (local.get $0) ) diff --git a/test/simd.wast.fromBinary b/test/simd.wast.fromBinary index 268f5e9b2..f3ea3ca91 100644 --- a/test/simd.wast.fromBinary +++ b/test/simd.wast.fromBinary @@ -26,782 +26,797 @@ (local.get $1) ) ) - (func $v128.const (; 2 ;) (type $2) (result v128) - (v128.const i32 0x00000001 0x00000002 0x00000003 0x00000004) + (func $v128.const.i8x16 (; 2 ;) (type $2) (result v128) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) - (func $v128.shuffle (; 3 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $v128.const.i16x8 (; 3 ;) (type $2) (result v128) + (v128.const i32x4 0x00020001 0x00040003 0x00060005 0x00080007) + ) + (func $v128.const.i32x4 (; 4 ;) (type $2) (result v128) + (v128.const i32x4 0x00000001 0x00000002 0x00000003 0x00000004) + ) + (func $v128.const.i64x2 (; 5 ;) (type $2) (result v128) + (v128.const i32x4 0x00000001 0x00000000 0x00000002 0x00000000) + ) + (func $v128.const.f32x4 (; 6 ;) (type $2) (result v128) + (v128.const i32x4 0x3f800000 0x40000000 0x40400000 0x40800000) + ) + (func $v128.const.f64x2 (; 7 ;) (type $2) (result v128) + (v128.const i32x4 0x00000000 0x3ff00000 0x00000000 0x40000000) + ) + (func $v128.shuffle (; 8 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (v8x16.shuffle 0 17 2 19 4 21 6 23 8 25 10 27 12 29 14 31 (local.get $0) (local.get $1) ) ) - (func $i8x16.splat (; 4 ;) (type $0) (param $0 i32) (result v128) + (func $i8x16.splat (; 9 ;) (type $0) (param $0 i32) (result v128) (i8x16.splat (local.get $0) ) ) - (func $i8x16.extract_lane_s (; 5 ;) (type $4) (param $0 v128) (result i32) + (func $i8x16.extract_lane_s (; 10 ;) (type $4) (param $0 v128) (result i32) (i8x16.extract_lane_s 0 (local.get $0) ) ) - (func $i8x16.extract_lane_u (; 6 ;) (type $4) (param $0 v128) (result i32) + (func $i8x16.extract_lane_u (; 11 ;) (type $4) (param $0 v128) (result i32) (i8x16.extract_lane_u 0 (local.get $0) ) ) - (func $i8x16.replace_lane (; 7 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i8x16.replace_lane (; 12 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i8x16.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $i16x8.splat (; 8 ;) (type $0) (param $0 i32) (result v128) + (func $i16x8.splat (; 13 ;) (type $0) (param $0 i32) (result v128) (i16x8.splat (local.get $0) ) ) - (func $i16x8.extract_lane_s (; 9 ;) (type $4) (param $0 v128) (result i32) + (func $i16x8.extract_lane_s (; 14 ;) (type $4) (param $0 v128) (result i32) (i16x8.extract_lane_s 0 (local.get $0) ) ) - (func $i16x8.extract_lane_u (; 10 ;) (type $4) (param $0 v128) (result i32) + (func $i16x8.extract_lane_u (; 15 ;) (type $4) (param $0 v128) (result i32) (i16x8.extract_lane_u 0 (local.get $0) ) ) - (func $i16x8.replace_lane (; 11 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i16x8.replace_lane (; 16 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i16x8.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $i32x4.splat (; 12 ;) (type $0) (param $0 i32) (result v128) + (func $i32x4.splat (; 17 ;) (type $0) (param $0 i32) (result v128) (i32x4.splat (local.get $0) ) ) - (func $i32x4.extract_lane (; 13 ;) (type $4) (param $0 v128) (result i32) + (func $i32x4.extract_lane (; 18 ;) (type $4) (param $0 v128) (result i32) (i32x4.extract_lane 0 (local.get $0) ) ) - (func $i32x4.replace_lane (; 14 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i32x4.replace_lane (; 19 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i32x4.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $i64x2.extract_lane (; 15 ;) (type $6) (param $0 v128) (result i64) + (func $i64x2.extract_lane (; 20 ;) (type $6) (param $0 v128) (result i64) (i64x2.extract_lane 0 (local.get $0) ) ) - (func $i64x2.replace_lane (; 16 ;) (type $7) (param $0 v128) (param $1 i64) (result v128) + (func $i64x2.replace_lane (; 21 ;) (type $7) (param $0 v128) (param $1 i64) (result v128) (i64x2.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $f32x4.splat (; 17 ;) (type $8) (param $0 f32) (result v128) + (func $f32x4.splat (; 22 ;) (type $8) (param $0 f32) (result v128) (f32x4.splat (local.get $0) ) ) - (func $f32x4.extract_lane (; 18 ;) (type $9) (param $0 v128) (result f32) + (func $f32x4.extract_lane (; 23 ;) (type $9) (param $0 v128) (result f32) (f32x4.extract_lane 0 (local.get $0) ) ) - (func $f32x4.replace_lane (; 19 ;) (type $10) (param $0 v128) (param $1 f32) (result v128) + (func $f32x4.replace_lane (; 24 ;) (type $10) (param $0 v128) (param $1 f32) (result v128) (f32x4.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $f64x2.splat (; 20 ;) (type $11) (param $0 f64) (result v128) + (func $f64x2.splat (; 25 ;) (type $11) (param $0 f64) (result v128) (f64x2.splat (local.get $0) ) ) - (func $f64x2.extract_lane (; 21 ;) (type $12) (param $0 v128) (result f64) + (func $f64x2.extract_lane (; 26 ;) (type $12) (param $0 v128) (result f64) (f64x2.extract_lane 0 (local.get $0) ) ) - (func $f64x2.replace_lane (; 22 ;) (type $13) (param $0 v128) (param $1 f64) (result v128) + (func $f64x2.replace_lane (; 27 ;) (type $13) (param $0 v128) (param $1 f64) (result v128) (f64x2.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $i8x16.eq (; 23 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.eq (; 28 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.eq (local.get $0) (local.get $1) ) ) - (func $i8x16.ne (; 24 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.ne (; 29 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.ne (local.get $0) (local.get $1) ) ) - (func $i8x16.lt_s (; 25 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.lt_s (; 30 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.lt_s (local.get $0) (local.get $1) ) ) - (func $i8x16.lt_u (; 26 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.lt_u (; 31 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.lt_u (local.get $0) (local.get $1) ) ) - (func $i8x16.gt_s (; 27 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.gt_s (; 32 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.gt_s (local.get $0) (local.get $1) ) ) - (func $i8x16.gt_u (; 28 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.gt_u (; 33 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.gt_u (local.get $0) (local.get $1) ) ) - (func $i8x16.le_s (; 29 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.le_s (; 34 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.le_s (local.get $0) (local.get $1) ) ) - (func $i8x16.le_u (; 30 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.le_u (; 35 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.le_u (local.get $0) (local.get $1) ) ) - (func $i8x16.ge_s (; 31 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.ge_s (; 36 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.ge_s (local.get $0) (local.get $1) ) ) - (func $i8x16.ge_u (; 32 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.ge_u (; 37 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.ge_u (local.get $0) (local.get $1) ) ) - (func $i16x8.eq (; 33 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.eq (; 38 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.eq (local.get $0) (local.get $1) ) ) - (func $i16x8.ne (; 34 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.ne (; 39 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.ne (local.get $0) (local.get $1) ) ) - (func $i16x8.lt_s (; 35 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.lt_s (; 40 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.lt_s (local.get $0) (local.get $1) ) ) - (func $i16x8.lt_u (; 36 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.lt_u (; 41 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.lt_u (local.get $0) (local.get $1) ) ) - (func $i16x8.gt_s (; 37 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.gt_s (; 42 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.gt_s (local.get $0) (local.get $1) ) ) - (func $i16x8.gt_u (; 38 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.gt_u (; 43 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.gt_u (local.get $0) (local.get $1) ) ) - (func $i16x8.le_s (; 39 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.le_s (; 44 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.le_s (local.get $0) (local.get $1) ) ) - (func $i16x8.le_u (; 40 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.le_u (; 45 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.le_u (local.get $0) (local.get $1) ) ) - (func $i16x8.ge_s (; 41 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.ge_s (; 46 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.ge_s (local.get $0) (local.get $1) ) ) - (func $i16x8.ge_u (; 42 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.ge_u (; 47 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.ge_u (local.get $0) (local.get $1) ) ) - (func $i32x4.eq (; 43 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.eq (; 48 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.eq (local.get $0) (local.get $1) ) ) - (func $i32x4.ne (; 44 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.ne (; 49 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.ne (local.get $0) (local.get $1) ) ) - (func $i32x4.lt_s (; 45 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.lt_s (; 50 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.lt_s (local.get $0) (local.get $1) ) ) - (func $i32x4.lt_u (; 46 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.lt_u (; 51 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.lt_u (local.get $0) (local.get $1) ) ) - (func $i32x4.gt_s (; 47 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.gt_s (; 52 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.gt_s (local.get $0) (local.get $1) ) ) - (func $i32x4.gt_u (; 48 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.gt_u (; 53 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.gt_u (local.get $0) (local.get $1) ) ) - (func $i32x4.le_s (; 49 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.le_s (; 54 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.le_s (local.get $0) (local.get $1) ) ) - (func $i32x4.le_u (; 50 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.le_u (; 55 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.le_u (local.get $0) (local.get $1) ) ) - (func $i32x4.ge_s (; 51 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.ge_s (; 56 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.ge_s (local.get $0) (local.get $1) ) ) - (func $i32x4.ge_u (; 52 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.ge_u (; 57 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.ge_u (local.get $0) (local.get $1) ) ) - (func $f32x4.eq (; 53 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.eq (; 58 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.eq (local.get $0) (local.get $1) ) ) - (func $f32x4.ne (; 54 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.ne (; 59 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.ne (local.get $0) (local.get $1) ) ) - (func $f32x4.lt (; 55 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.lt (; 60 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.lt (local.get $0) (local.get $1) ) ) - (func $f32x4.gt (; 56 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.gt (; 61 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.gt (local.get $0) (local.get $1) ) ) - (func $f32x4.le (; 57 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.le (; 62 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.le (local.get $0) (local.get $1) ) ) - (func $f32x4.ge (; 58 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.ge (; 63 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.ge (local.get $0) (local.get $1) ) ) - (func $f64x2.eq (; 59 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.eq (; 64 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.eq (local.get $0) (local.get $1) ) ) - (func $f64x2.ne (; 60 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.ne (; 65 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.ne (local.get $0) (local.get $1) ) ) - (func $f64x2.lt (; 61 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.lt (; 66 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.lt (local.get $0) (local.get $1) ) ) - (func $f64x2.gt (; 62 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.gt (; 67 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.gt (local.get $0) (local.get $1) ) ) - (func $f64x2.le (; 63 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.le (; 68 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.le (local.get $0) (local.get $1) ) ) - (func $f64x2.ge (; 64 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.ge (; 69 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.ge (local.get $0) (local.get $1) ) ) - (func $v128.not (; 65 ;) (type $14) (param $0 v128) (result v128) + (func $v128.not (; 70 ;) (type $14) (param $0 v128) (result v128) (v128.not (local.get $0) ) ) - (func $v128.and (; 66 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $v128.and (; 71 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (v128.and (local.get $0) (local.get $1) ) ) - (func $v128.or (; 67 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $v128.or (; 72 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (v128.or (local.get $0) (local.get $1) ) ) - (func $v128.xor (; 68 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $v128.xor (; 73 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (v128.xor (local.get $0) (local.get $1) ) ) - (func $v128.bitselect (; 69 ;) (type $15) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) + (func $v128.bitselect (; 74 ;) (type $15) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) (v128.bitselect (local.get $0) (local.get $1) (local.get $2) ) ) - (func $i8x16.neg (; 70 ;) (type $14) (param $0 v128) (result v128) + (func $i8x16.neg (; 75 ;) (type $14) (param $0 v128) (result v128) (i8x16.neg (local.get $0) ) ) - (func $i8x16.any_true (; 71 ;) (type $4) (param $0 v128) (result i32) + (func $i8x16.any_true (; 76 ;) (type $4) (param $0 v128) (result i32) (i8x16.any_true (local.get $0) ) ) - (func $i8x16.all_true (; 72 ;) (type $4) (param $0 v128) (result i32) + (func $i8x16.all_true (; 77 ;) (type $4) (param $0 v128) (result i32) (i8x16.all_true (local.get $0) ) ) - (func $i8x16.shl (; 73 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i8x16.shl (; 78 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i8x16.shl (local.get $0) (local.get $1) ) ) - (func $i8x16.shr_s (; 74 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i8x16.shr_s (; 79 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i8x16.shr_s (local.get $0) (local.get $1) ) ) - (func $i8x16.shr_u (; 75 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i8x16.shr_u (; 80 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i8x16.shr_u (local.get $0) (local.get $1) ) ) - (func $i8x16.add (; 76 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.add (; 81 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.add (local.get $0) (local.get $1) ) ) - (func $i8x16.add_saturate_s (; 77 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.add_saturate_s (; 82 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.add_saturate_s (local.get $0) (local.get $1) ) ) - (func $i8x16.add_saturate_u (; 78 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.add_saturate_u (; 83 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.add_saturate_u (local.get $0) (local.get $1) ) ) - (func $i8x16.sub (; 79 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.sub (; 84 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.sub (local.get $0) (local.get $1) ) ) - (func $i8x16.sub_saturate_s (; 80 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.sub_saturate_s (; 85 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.sub_saturate_s (local.get $0) (local.get $1) ) ) - (func $i8x16.sub_saturate_u (; 81 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.sub_saturate_u (; 86 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.sub_saturate_u (local.get $0) (local.get $1) ) ) - (func $i8x16.mul (; 82 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i8x16.mul (; 87 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.mul (local.get $0) (local.get $1) ) ) - (func $i16x8.neg (; 83 ;) (type $14) (param $0 v128) (result v128) + (func $i16x8.neg (; 88 ;) (type $14) (param $0 v128) (result v128) (i16x8.neg (local.get $0) ) ) - (func $i16x8.any_true (; 84 ;) (type $4) (param $0 v128) (result i32) + (func $i16x8.any_true (; 89 ;) (type $4) (param $0 v128) (result i32) (i16x8.any_true (local.get $0) ) ) - (func $i16x8.all_true (; 85 ;) (type $4) (param $0 v128) (result i32) + (func $i16x8.all_true (; 90 ;) (type $4) (param $0 v128) (result i32) (i16x8.all_true (local.get $0) ) ) - (func $i16x8.shl (; 86 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i16x8.shl (; 91 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i16x8.shl (local.get $0) (local.get $1) ) ) - (func $i16x8.shr_s (; 87 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i16x8.shr_s (; 92 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i16x8.shr_s (local.get $0) (local.get $1) ) ) - (func $i16x8.shr_u (; 88 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i16x8.shr_u (; 93 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i16x8.shr_u (local.get $0) (local.get $1) ) ) - (func $i16x8.add (; 89 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.add (; 94 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.add (local.get $0) (local.get $1) ) ) - (func $i16x8.add_saturate_s (; 90 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.add_saturate_s (; 95 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.add_saturate_s (local.get $0) (local.get $1) ) ) - (func $i16x8.add_saturate_u (; 91 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.add_saturate_u (; 96 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.add_saturate_u (local.get $0) (local.get $1) ) ) - (func $i16x8.sub (; 92 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.sub (; 97 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.sub (local.get $0) (local.get $1) ) ) - (func $i16x8.sub_saturate_s (; 93 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.sub_saturate_s (; 98 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.sub_saturate_s (local.get $0) (local.get $1) ) ) - (func $i16x8.sub_saturate_u (; 94 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.sub_saturate_u (; 99 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.sub_saturate_u (local.get $0) (local.get $1) ) ) - (func $i16x8.mul (; 95 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i16x8.mul (; 100 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.mul (local.get $0) (local.get $1) ) ) - (func $i32x4.neg (; 96 ;) (type $14) (param $0 v128) (result v128) + (func $i32x4.neg (; 101 ;) (type $14) (param $0 v128) (result v128) (i32x4.neg (local.get $0) ) ) - (func $i32x4.any_true (; 97 ;) (type $4) (param $0 v128) (result i32) + (func $i32x4.any_true (; 102 ;) (type $4) (param $0 v128) (result i32) (i32x4.any_true (local.get $0) ) ) - (func $i32x4.all_true (; 98 ;) (type $4) (param $0 v128) (result i32) + (func $i32x4.all_true (; 103 ;) (type $4) (param $0 v128) (result i32) (i32x4.all_true (local.get $0) ) ) - (func $i32x4.shl (; 99 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i32x4.shl (; 104 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i32x4.shl (local.get $0) (local.get $1) ) ) - (func $i32x4.shr_s (; 100 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i32x4.shr_s (; 105 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i32x4.shr_s (local.get $0) (local.get $1) ) ) - (func $i32x4.shr_u (; 101 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i32x4.shr_u (; 106 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i32x4.shr_u (local.get $0) (local.get $1) ) ) - (func $i32x4.add (; 102 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.add (; 107 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.add (local.get $0) (local.get $1) ) ) - (func $i32x4.sub (; 103 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.sub (; 108 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.sub (local.get $0) (local.get $1) ) ) - (func $i32x4.mul (; 104 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i32x4.mul (; 109 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.mul (local.get $0) (local.get $1) ) ) - (func $i64x2.neg (; 105 ;) (type $14) (param $0 v128) (result v128) + (func $i64x2.neg (; 110 ;) (type $14) (param $0 v128) (result v128) (i64x2.neg (local.get $0) ) ) - (func $i64x2.any_true (; 106 ;) (type $4) (param $0 v128) (result i32) + (func $i64x2.any_true (; 111 ;) (type $4) (param $0 v128) (result i32) (i64x2.any_true (local.get $0) ) ) - (func $i64x2.all_true (; 107 ;) (type $4) (param $0 v128) (result i32) + (func $i64x2.all_true (; 112 ;) (type $4) (param $0 v128) (result i32) (i64x2.all_true (local.get $0) ) ) - (func $i64x2.shl (; 108 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i64x2.shl (; 113 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i64x2.shl (local.get $0) (local.get $1) ) ) - (func $i64x2.shr_s (; 109 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i64x2.shr_s (; 114 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i64x2.shr_s (local.get $0) (local.get $1) ) ) - (func $i64x2.shr_u (; 110 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $i64x2.shr_u (; 115 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i64x2.shr_u (local.get $0) (local.get $1) ) ) - (func $i64x2.add (; 111 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i64x2.add (; 116 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i64x2.add (local.get $0) (local.get $1) ) ) - (func $i64x2.sub (; 112 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $i64x2.sub (; 117 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i64x2.sub (local.get $0) (local.get $1) ) ) - (func $f32x4.add (; 113 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.add (; 118 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.add (local.get $0) (local.get $1) ) ) - (func $f32x4.sub (; 114 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.sub (; 119 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.sub (local.get $0) (local.get $1) ) ) - (func $f32x4.mul (; 115 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.mul (; 120 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.mul (local.get $0) (local.get $1) ) ) - (func $f32x4.div (; 116 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.div (; 121 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.div (local.get $0) (local.get $1) ) ) - (func $f32x4.min (; 117 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.min (; 122 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.min (local.get $0) (local.get $1) ) ) - (func $f32x4.max (; 118 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f32x4.max (; 123 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.max (local.get $0) (local.get $1) ) ) - (func $f32x4.abs (; 119 ;) (type $14) (param $0 v128) (result v128) + (func $f32x4.abs (; 124 ;) (type $14) (param $0 v128) (result v128) (f32x4.abs (local.get $0) ) ) - (func $f32x4.neg (; 120 ;) (type $14) (param $0 v128) (result v128) + (func $f32x4.neg (; 125 ;) (type $14) (param $0 v128) (result v128) (f32x4.neg (local.get $0) ) ) - (func $f32x4.sqrt (; 121 ;) (type $14) (param $0 v128) (result v128) + (func $f32x4.sqrt (; 126 ;) (type $14) (param $0 v128) (result v128) (f32x4.sqrt (local.get $0) ) ) - (func $f64x2.add (; 122 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.add (; 127 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.add (local.get $0) (local.get $1) ) ) - (func $f64x2.sub (; 123 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.sub (; 128 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.sub (local.get $0) (local.get $1) ) ) - (func $f64x2.mul (; 124 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.mul (; 129 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.mul (local.get $0) (local.get $1) ) ) - (func $f64x2.div (; 125 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.div (; 130 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.div (local.get $0) (local.get $1) ) ) - (func $f64x2.min (; 126 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.min (; 131 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.min (local.get $0) (local.get $1) ) ) - (func $f64x2.max (; 127 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $f64x2.max (; 132 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.max (local.get $0) (local.get $1) ) ) - (func $f64x2.abs (; 128 ;) (type $14) (param $0 v128) (result v128) + (func $f64x2.abs (; 133 ;) (type $14) (param $0 v128) (result v128) (f64x2.abs (local.get $0) ) ) - (func $f64x2.neg (; 129 ;) (type $14) (param $0 v128) (result v128) + (func $f64x2.neg (; 134 ;) (type $14) (param $0 v128) (result v128) (f64x2.neg (local.get $0) ) ) - (func $f64x2.sqrt (; 130 ;) (type $14) (param $0 v128) (result v128) + (func $f64x2.sqrt (; 135 ;) (type $14) (param $0 v128) (result v128) (f64x2.sqrt (local.get $0) ) ) - (func $i32x4.trunc_sat_f32x4_s (; 131 ;) (type $14) (param $0 v128) (result v128) + (func $i32x4.trunc_sat_f32x4_s (; 136 ;) (type $14) (param $0 v128) (result v128) (i32x4.trunc_sat_f32x4_s (local.get $0) ) ) - (func $i32x4.trunc_sat_f32x4_u (; 132 ;) (type $14) (param $0 v128) (result v128) + (func $i32x4.trunc_sat_f32x4_u (; 137 ;) (type $14) (param $0 v128) (result v128) (i32x4.trunc_sat_f32x4_u (local.get $0) ) ) - (func $i64x2.trunc_sat_f64x2_s (; 133 ;) (type $14) (param $0 v128) (result v128) + (func $i64x2.trunc_sat_f64x2_s (; 138 ;) (type $14) (param $0 v128) (result v128) (i64x2.trunc_sat_f64x2_s (local.get $0) ) ) - (func $i64x2.trunc_sat_f64x2_u (; 134 ;) (type $14) (param $0 v128) (result v128) + (func $i64x2.trunc_sat_f64x2_u (; 139 ;) (type $14) (param $0 v128) (result v128) (i64x2.trunc_sat_f64x2_u (local.get $0) ) ) - (func $f32x4.convert_i32x4_s (; 135 ;) (type $14) (param $0 v128) (result v128) + (func $f32x4.convert_i32x4_s (; 140 ;) (type $14) (param $0 v128) (result v128) (f32x4.convert_i32x4_s (local.get $0) ) ) - (func $f32x4.convert_i32x4_u (; 136 ;) (type $14) (param $0 v128) (result v128) + (func $f32x4.convert_i32x4_u (; 141 ;) (type $14) (param $0 v128) (result v128) (f32x4.convert_i32x4_u (local.get $0) ) ) - (func $f64x2.convert_i64x2_s (; 137 ;) (type $14) (param $0 v128) (result v128) + (func $f64x2.convert_i64x2_s (; 142 ;) (type $14) (param $0 v128) (result v128) (f64x2.convert_i64x2_s (local.get $0) ) ) - (func $f64x2.convert_i64x2_u (; 138 ;) (type $14) (param $0 v128) (result v128) + (func $f64x2.convert_i64x2_u (; 143 ;) (type $14) (param $0 v128) (result v128) (f64x2.convert_i64x2_u (local.get $0) ) diff --git a/test/simd.wast.fromBinary.noDebugInfo b/test/simd.wast.fromBinary.noDebugInfo index 6ed42e288..75ff49595 100644 --- a/test/simd.wast.fromBinary.noDebugInfo +++ b/test/simd.wast.fromBinary.noDebugInfo @@ -27,781 +27,796 @@ ) ) (func $2 (; 2 ;) (type $2) (result v128) - (v128.const i32 0x00000001 0x00000002 0x00000003 0x00000004) + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) - (func $3 (; 3 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $3 (; 3 ;) (type $2) (result v128) + (v128.const i32x4 0x00020001 0x00040003 0x00060005 0x00080007) + ) + (func $4 (; 4 ;) (type $2) (result v128) + (v128.const i32x4 0x00000001 0x00000002 0x00000003 0x00000004) + ) + (func $5 (; 5 ;) (type $2) (result v128) + (v128.const i32x4 0x00000001 0x00000000 0x00000002 0x00000000) + ) + (func $6 (; 6 ;) (type $2) (result v128) + (v128.const i32x4 0x3f800000 0x40000000 0x40400000 0x40800000) + ) + (func $7 (; 7 ;) (type $2) (result v128) + (v128.const i32x4 0x00000000 0x3ff00000 0x00000000 0x40000000) + ) + (func $8 (; 8 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (v8x16.shuffle 0 17 2 19 4 21 6 23 8 25 10 27 12 29 14 31 (local.get $0) (local.get $1) ) ) - (func $4 (; 4 ;) (type $0) (param $0 i32) (result v128) + (func $9 (; 9 ;) (type $0) (param $0 i32) (result v128) (i8x16.splat (local.get $0) ) ) - (func $5 (; 5 ;) (type $4) (param $0 v128) (result i32) + (func $10 (; 10 ;) (type $4) (param $0 v128) (result i32) (i8x16.extract_lane_s 0 (local.get $0) ) ) - (func $6 (; 6 ;) (type $4) (param $0 v128) (result i32) + (func $11 (; 11 ;) (type $4) (param $0 v128) (result i32) (i8x16.extract_lane_u 0 (local.get $0) ) ) - (func $7 (; 7 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $12 (; 12 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i8x16.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $8 (; 8 ;) (type $0) (param $0 i32) (result v128) + (func $13 (; 13 ;) (type $0) (param $0 i32) (result v128) (i16x8.splat (local.get $0) ) ) - (func $9 (; 9 ;) (type $4) (param $0 v128) (result i32) + (func $14 (; 14 ;) (type $4) (param $0 v128) (result i32) (i16x8.extract_lane_s 0 (local.get $0) ) ) - (func $10 (; 10 ;) (type $4) (param $0 v128) (result i32) + (func $15 (; 15 ;) (type $4) (param $0 v128) (result i32) (i16x8.extract_lane_u 0 (local.get $0) ) ) - (func $11 (; 11 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $16 (; 16 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i16x8.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $12 (; 12 ;) (type $0) (param $0 i32) (result v128) + (func $17 (; 17 ;) (type $0) (param $0 i32) (result v128) (i32x4.splat (local.get $0) ) ) - (func $13 (; 13 ;) (type $4) (param $0 v128) (result i32) + (func $18 (; 18 ;) (type $4) (param $0 v128) (result i32) (i32x4.extract_lane 0 (local.get $0) ) ) - (func $14 (; 14 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $19 (; 19 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i32x4.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $15 (; 15 ;) (type $6) (param $0 v128) (result i64) + (func $20 (; 20 ;) (type $6) (param $0 v128) (result i64) (i64x2.extract_lane 0 (local.get $0) ) ) - (func $16 (; 16 ;) (type $7) (param $0 v128) (param $1 i64) (result v128) + (func $21 (; 21 ;) (type $7) (param $0 v128) (param $1 i64) (result v128) (i64x2.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $17 (; 17 ;) (type $8) (param $0 f32) (result v128) + (func $22 (; 22 ;) (type $8) (param $0 f32) (result v128) (f32x4.splat (local.get $0) ) ) - (func $18 (; 18 ;) (type $9) (param $0 v128) (result f32) + (func $23 (; 23 ;) (type $9) (param $0 v128) (result f32) (f32x4.extract_lane 0 (local.get $0) ) ) - (func $19 (; 19 ;) (type $10) (param $0 v128) (param $1 f32) (result v128) + (func $24 (; 24 ;) (type $10) (param $0 v128) (param $1 f32) (result v128) (f32x4.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $20 (; 20 ;) (type $11) (param $0 f64) (result v128) + (func $25 (; 25 ;) (type $11) (param $0 f64) (result v128) (f64x2.splat (local.get $0) ) ) - (func $21 (; 21 ;) (type $12) (param $0 v128) (result f64) + (func $26 (; 26 ;) (type $12) (param $0 v128) (result f64) (f64x2.extract_lane 0 (local.get $0) ) ) - (func $22 (; 22 ;) (type $13) (param $0 v128) (param $1 f64) (result v128) + (func $27 (; 27 ;) (type $13) (param $0 v128) (param $1 f64) (result v128) (f64x2.replace_lane 0 (local.get $0) (local.get $1) ) ) - (func $23 (; 23 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $28 (; 28 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.eq (local.get $0) (local.get $1) ) ) - (func $24 (; 24 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $29 (; 29 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.ne (local.get $0) (local.get $1) ) ) - (func $25 (; 25 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $30 (; 30 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.lt_s (local.get $0) (local.get $1) ) ) - (func $26 (; 26 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $31 (; 31 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.lt_u (local.get $0) (local.get $1) ) ) - (func $27 (; 27 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $32 (; 32 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.gt_s (local.get $0) (local.get $1) ) ) - (func $28 (; 28 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $33 (; 33 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.gt_u (local.get $0) (local.get $1) ) ) - (func $29 (; 29 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $34 (; 34 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.le_s (local.get $0) (local.get $1) ) ) - (func $30 (; 30 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $35 (; 35 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.le_u (local.get $0) (local.get $1) ) ) - (func $31 (; 31 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $36 (; 36 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.ge_s (local.get $0) (local.get $1) ) ) - (func $32 (; 32 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $37 (; 37 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.ge_u (local.get $0) (local.get $1) ) ) - (func $33 (; 33 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $38 (; 38 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.eq (local.get $0) (local.get $1) ) ) - (func $34 (; 34 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $39 (; 39 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.ne (local.get $0) (local.get $1) ) ) - (func $35 (; 35 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $40 (; 40 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.lt_s (local.get $0) (local.get $1) ) ) - (func $36 (; 36 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $41 (; 41 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.lt_u (local.get $0) (local.get $1) ) ) - (func $37 (; 37 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $42 (; 42 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.gt_s (local.get $0) (local.get $1) ) ) - (func $38 (; 38 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $43 (; 43 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.gt_u (local.get $0) (local.get $1) ) ) - (func $39 (; 39 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $44 (; 44 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.le_s (local.get $0) (local.get $1) ) ) - (func $40 (; 40 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $45 (; 45 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.le_u (local.get $0) (local.get $1) ) ) - (func $41 (; 41 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $46 (; 46 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.ge_s (local.get $0) (local.get $1) ) ) - (func $42 (; 42 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $47 (; 47 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.ge_u (local.get $0) (local.get $1) ) ) - (func $43 (; 43 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $48 (; 48 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.eq (local.get $0) (local.get $1) ) ) - (func $44 (; 44 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $49 (; 49 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.ne (local.get $0) (local.get $1) ) ) - (func $45 (; 45 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $50 (; 50 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.lt_s (local.get $0) (local.get $1) ) ) - (func $46 (; 46 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $51 (; 51 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.lt_u (local.get $0) (local.get $1) ) ) - (func $47 (; 47 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $52 (; 52 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.gt_s (local.get $0) (local.get $1) ) ) - (func $48 (; 48 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $53 (; 53 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.gt_u (local.get $0) (local.get $1) ) ) - (func $49 (; 49 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $54 (; 54 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.le_s (local.get $0) (local.get $1) ) ) - (func $50 (; 50 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $55 (; 55 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.le_u (local.get $0) (local.get $1) ) ) - (func $51 (; 51 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $56 (; 56 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.ge_s (local.get $0) (local.get $1) ) ) - (func $52 (; 52 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $57 (; 57 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.ge_u (local.get $0) (local.get $1) ) ) - (func $53 (; 53 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $58 (; 58 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.eq (local.get $0) (local.get $1) ) ) - (func $54 (; 54 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $59 (; 59 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.ne (local.get $0) (local.get $1) ) ) - (func $55 (; 55 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $60 (; 60 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.lt (local.get $0) (local.get $1) ) ) - (func $56 (; 56 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $61 (; 61 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.gt (local.get $0) (local.get $1) ) ) - (func $57 (; 57 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $62 (; 62 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.le (local.get $0) (local.get $1) ) ) - (func $58 (; 58 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $63 (; 63 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.ge (local.get $0) (local.get $1) ) ) - (func $59 (; 59 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $64 (; 64 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.eq (local.get $0) (local.get $1) ) ) - (func $60 (; 60 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $65 (; 65 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.ne (local.get $0) (local.get $1) ) ) - (func $61 (; 61 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $66 (; 66 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.lt (local.get $0) (local.get $1) ) ) - (func $62 (; 62 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $67 (; 67 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.gt (local.get $0) (local.get $1) ) ) - (func $63 (; 63 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $68 (; 68 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.le (local.get $0) (local.get $1) ) ) - (func $64 (; 64 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $69 (; 69 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.ge (local.get $0) (local.get $1) ) ) - (func $65 (; 65 ;) (type $14) (param $0 v128) (result v128) + (func $70 (; 70 ;) (type $14) (param $0 v128) (result v128) (v128.not (local.get $0) ) ) - (func $66 (; 66 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $71 (; 71 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (v128.and (local.get $0) (local.get $1) ) ) - (func $67 (; 67 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $72 (; 72 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (v128.or (local.get $0) (local.get $1) ) ) - (func $68 (; 68 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $73 (; 73 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (v128.xor (local.get $0) (local.get $1) ) ) - (func $69 (; 69 ;) (type $15) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) + (func $74 (; 74 ;) (type $15) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) (v128.bitselect (local.get $0) (local.get $1) (local.get $2) ) ) - (func $70 (; 70 ;) (type $14) (param $0 v128) (result v128) + (func $75 (; 75 ;) (type $14) (param $0 v128) (result v128) (i8x16.neg (local.get $0) ) ) - (func $71 (; 71 ;) (type $4) (param $0 v128) (result i32) + (func $76 (; 76 ;) (type $4) (param $0 v128) (result i32) (i8x16.any_true (local.get $0) ) ) - (func $72 (; 72 ;) (type $4) (param $0 v128) (result i32) + (func $77 (; 77 ;) (type $4) (param $0 v128) (result i32) (i8x16.all_true (local.get $0) ) ) - (func $73 (; 73 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $78 (; 78 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i8x16.shl (local.get $0) (local.get $1) ) ) - (func $74 (; 74 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $79 (; 79 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i8x16.shr_s (local.get $0) (local.get $1) ) ) - (func $75 (; 75 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $80 (; 80 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i8x16.shr_u (local.get $0) (local.get $1) ) ) - (func $76 (; 76 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $81 (; 81 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.add (local.get $0) (local.get $1) ) ) - (func $77 (; 77 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $82 (; 82 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.add_saturate_s (local.get $0) (local.get $1) ) ) - (func $78 (; 78 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $83 (; 83 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.add_saturate_u (local.get $0) (local.get $1) ) ) - (func $79 (; 79 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $84 (; 84 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.sub (local.get $0) (local.get $1) ) ) - (func $80 (; 80 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $85 (; 85 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.sub_saturate_s (local.get $0) (local.get $1) ) ) - (func $81 (; 81 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $86 (; 86 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.sub_saturate_u (local.get $0) (local.get $1) ) ) - (func $82 (; 82 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $87 (; 87 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i8x16.mul (local.get $0) (local.get $1) ) ) - (func $83 (; 83 ;) (type $14) (param $0 v128) (result v128) + (func $88 (; 88 ;) (type $14) (param $0 v128) (result v128) (i16x8.neg (local.get $0) ) ) - (func $84 (; 84 ;) (type $4) (param $0 v128) (result i32) + (func $89 (; 89 ;) (type $4) (param $0 v128) (result i32) (i16x8.any_true (local.get $0) ) ) - (func $85 (; 85 ;) (type $4) (param $0 v128) (result i32) + (func $90 (; 90 ;) (type $4) (param $0 v128) (result i32) (i16x8.all_true (local.get $0) ) ) - (func $86 (; 86 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $91 (; 91 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i16x8.shl (local.get $0) (local.get $1) ) ) - (func $87 (; 87 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $92 (; 92 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i16x8.shr_s (local.get $0) (local.get $1) ) ) - (func $88 (; 88 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $93 (; 93 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i16x8.shr_u (local.get $0) (local.get $1) ) ) - (func $89 (; 89 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $94 (; 94 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.add (local.get $0) (local.get $1) ) ) - (func $90 (; 90 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $95 (; 95 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.add_saturate_s (local.get $0) (local.get $1) ) ) - (func $91 (; 91 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $96 (; 96 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.add_saturate_u (local.get $0) (local.get $1) ) ) - (func $92 (; 92 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $97 (; 97 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.sub (local.get $0) (local.get $1) ) ) - (func $93 (; 93 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $98 (; 98 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.sub_saturate_s (local.get $0) (local.get $1) ) ) - (func $94 (; 94 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $99 (; 99 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.sub_saturate_u (local.get $0) (local.get $1) ) ) - (func $95 (; 95 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $100 (; 100 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i16x8.mul (local.get $0) (local.get $1) ) ) - (func $96 (; 96 ;) (type $14) (param $0 v128) (result v128) + (func $101 (; 101 ;) (type $14) (param $0 v128) (result v128) (i32x4.neg (local.get $0) ) ) - (func $97 (; 97 ;) (type $4) (param $0 v128) (result i32) + (func $102 (; 102 ;) (type $4) (param $0 v128) (result i32) (i32x4.any_true (local.get $0) ) ) - (func $98 (; 98 ;) (type $4) (param $0 v128) (result i32) + (func $103 (; 103 ;) (type $4) (param $0 v128) (result i32) (i32x4.all_true (local.get $0) ) ) - (func $99 (; 99 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $104 (; 104 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i32x4.shl (local.get $0) (local.get $1) ) ) - (func $100 (; 100 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $105 (; 105 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i32x4.shr_s (local.get $0) (local.get $1) ) ) - (func $101 (; 101 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $106 (; 106 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i32x4.shr_u (local.get $0) (local.get $1) ) ) - (func $102 (; 102 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $107 (; 107 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.add (local.get $0) (local.get $1) ) ) - (func $103 (; 103 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $108 (; 108 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.sub (local.get $0) (local.get $1) ) ) - (func $104 (; 104 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $109 (; 109 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i32x4.mul (local.get $0) (local.get $1) ) ) - (func $105 (; 105 ;) (type $14) (param $0 v128) (result v128) + (func $110 (; 110 ;) (type $14) (param $0 v128) (result v128) (i64x2.neg (local.get $0) ) ) - (func $106 (; 106 ;) (type $4) (param $0 v128) (result i32) + (func $111 (; 111 ;) (type $4) (param $0 v128) (result i32) (i64x2.any_true (local.get $0) ) ) - (func $107 (; 107 ;) (type $4) (param $0 v128) (result i32) + (func $112 (; 112 ;) (type $4) (param $0 v128) (result i32) (i64x2.all_true (local.get $0) ) ) - (func $108 (; 108 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $113 (; 113 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i64x2.shl (local.get $0) (local.get $1) ) ) - (func $109 (; 109 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $114 (; 114 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i64x2.shr_s (local.get $0) (local.get $1) ) ) - (func $110 (; 110 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) + (func $115 (; 115 ;) (type $5) (param $0 v128) (param $1 i32) (result v128) (i64x2.shr_u (local.get $0) (local.get $1) ) ) - (func $111 (; 111 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $116 (; 116 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i64x2.add (local.get $0) (local.get $1) ) ) - (func $112 (; 112 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $117 (; 117 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (i64x2.sub (local.get $0) (local.get $1) ) ) - (func $113 (; 113 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $118 (; 118 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.add (local.get $0) (local.get $1) ) ) - (func $114 (; 114 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $119 (; 119 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.sub (local.get $0) (local.get $1) ) ) - (func $115 (; 115 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $120 (; 120 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.mul (local.get $0) (local.get $1) ) ) - (func $116 (; 116 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $121 (; 121 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.div (local.get $0) (local.get $1) ) ) - (func $117 (; 117 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $122 (; 122 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.min (local.get $0) (local.get $1) ) ) - (func $118 (; 118 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $123 (; 123 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f32x4.max (local.get $0) (local.get $1) ) ) - (func $119 (; 119 ;) (type $14) (param $0 v128) (result v128) + (func $124 (; 124 ;) (type $14) (param $0 v128) (result v128) (f32x4.abs (local.get $0) ) ) - (func $120 (; 120 ;) (type $14) (param $0 v128) (result v128) + (func $125 (; 125 ;) (type $14) (param $0 v128) (result v128) (f32x4.neg (local.get $0) ) ) - (func $121 (; 121 ;) (type $14) (param $0 v128) (result v128) + (func $126 (; 126 ;) (type $14) (param $0 v128) (result v128) (f32x4.sqrt (local.get $0) ) ) - (func $122 (; 122 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $127 (; 127 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.add (local.get $0) (local.get $1) ) ) - (func $123 (; 123 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $128 (; 128 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.sub (local.get $0) (local.get $1) ) ) - (func $124 (; 124 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $129 (; 129 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.mul (local.get $0) (local.get $1) ) ) - (func $125 (; 125 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $130 (; 130 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.div (local.get $0) (local.get $1) ) ) - (func $126 (; 126 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $131 (; 131 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.min (local.get $0) (local.get $1) ) ) - (func $127 (; 127 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) + (func $132 (; 132 ;) (type $3) (param $0 v128) (param $1 v128) (result v128) (f64x2.max (local.get $0) (local.get $1) ) ) - (func $128 (; 128 ;) (type $14) (param $0 v128) (result v128) + (func $133 (; 133 ;) (type $14) (param $0 v128) (result v128) (f64x2.abs (local.get $0) ) ) - (func $129 (; 129 ;) (type $14) (param $0 v128) (result v128) + (func $134 (; 134 ;) (type $14) (param $0 v128) (result v128) (f64x2.neg (local.get $0) ) ) - (func $130 (; 130 ;) (type $14) (param $0 v128) (result v128) + (func $135 (; 135 ;) (type $14) (param $0 v128) (result v128) (f64x2.sqrt (local.get $0) ) ) - (func $131 (; 131 ;) (type $14) (param $0 v128) (result v128) + (func $136 (; 136 ;) (type $14) (param $0 v128) (result v128) (i32x4.trunc_sat_f32x4_s (local.get $0) ) ) - (func $132 (; 132 ;) (type $14) (param $0 v128) (result v128) + (func $137 (; 137 ;) (type $14) (param $0 v128) (result v128) (i32x4.trunc_sat_f32x4_u (local.get $0) ) ) - (func $133 (; 133 ;) (type $14) (param $0 v128) (result v128) + (func $138 (; 138 ;) (type $14) (param $0 v128) (result v128) (i64x2.trunc_sat_f64x2_s (local.get $0) ) ) - (func $134 (; 134 ;) (type $14) (param $0 v128) (result v128) + (func $139 (; 139 ;) (type $14) (param $0 v128) (result v128) (i64x2.trunc_sat_f64x2_u (local.get $0) ) ) - (func $135 (; 135 ;) (type $14) (param $0 v128) (result v128) + (func $140 (; 140 ;) (type $14) (param $0 v128) (result v128) (f32x4.convert_i32x4_s (local.get $0) ) ) - (func $136 (; 136 ;) (type $14) (param $0 v128) (result v128) + (func $141 (; 141 ;) (type $14) (param $0 v128) (result v128) (f32x4.convert_i32x4_u (local.get $0) ) ) - (func $137 (; 137 ;) (type $14) (param $0 v128) (result v128) + (func $142 (; 142 ;) (type $14) (param $0 v128) (result v128) (f64x2.convert_i64x2_s (local.get $0) ) ) - (func $138 (; 138 ;) (type $14) (param $0 v128) (result v128) + (func $143 (; 143 ;) (type $14) (param $0 v128) (result v128) (f64x2.convert_i64x2_u (local.get $0) ) diff --git a/test/spec/simd.wast b/test/spec/simd.wast index 8d2edc42e..14aabee45 100644 --- a/test/spec/simd.wast +++ b/test/spec/simd.wast @@ -6,7 +6,12 @@ (v128.store offset=0 align=16 (local.get $0) (local.get $1)) (v128.load (local.get $0)) ) - (func (export "v128.const") (result v128) (v128.const i32 1 2 3 4)) + (func (export "v128.const.i8x16") (result v128) (v128.const i8x16 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16)) + (func (export "v128.const.i16x8") (result v128) (v128.const i16x8 1 2 3 4 5 6 7 8)) + (func (export "v128.const.i32x4") (result v128) (v128.const i32x4 1 2 3 4)) + (func (export "v128.const.i64x2") (result v128) (v128.const i64x2 1 2)) + (func (export "v128.const.f32x4") (result v128) (v128.const f32x4 1.0 2 3 4)) + (func (export "v128.const.f64x2") (result v128) (v128.const f64x2 1.0 2)) (func (export "v128.shuffle_interleave_bytes") (param $0 v128) (param $1 v128) (result v128) (v8x16.shuffle 0 17 2 19 4 21 6 23 8 25 10 27 12 29 14 31 (local.get $0) (local.get $1)) ) @@ -168,494 +173,499 @@ ) ;; Basic v128 manipulation -(assert_return (invoke "v128.load" (i32.const 128)) (v128.const i32 87 65 83 77 83 73 77 68 71 79 69 83 70 65 83 84)) -(assert_return (invoke "v128.store" (i32.const 16) (v128.const i32 1 2 3 4)) (v128.const i32 1 2 3 4)) -(assert_return (invoke "v128.const") (v128.const i32 01 00 00 00 02 00 00 00 03 00 00 00 04 00 00 00)) +(assert_return (invoke "v128.load" (i32.const 128)) (v128.const i8x16 87 65 83 77 83 73 77 68 71 79 69 83 70 65 83 84)) +(assert_return (invoke "v128.store" (i32.const 16) (v128.const i32x4 1 2 3 4)) (v128.const i32x4 1 2 3 4)) +(assert_return (invoke "v128.const.i8x16") (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)) +(assert_return (invoke "v128.const.i16x8") (v128.const i8x16 01 00 02 00 03 00 04 00 05 00 06 00 07 00 08 00)) +(assert_return (invoke "v128.const.i32x4") (v128.const i8x16 01 00 00 00 02 00 00 00 03 00 00 00 04 00 00 00)) +(assert_return (invoke "v128.const.i64x2") (v128.const i8x16 01 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00)) +(assert_return (invoke "v128.const.f32x4") (v128.const f32x4 1 2 3 4)) +(assert_return (invoke "v128.const.f64x2") (v128.const f64x2 1 2)) (assert_return (invoke "v128.shuffle_interleave_bytes" - (v128.const i32 1 0 3 0 5 0 7 0 9 0 11 0 13 0 15 0) - (v128.const i32 0 2 0 4 0 6 0 8 0 10 0 12 0 14 0 16) + (v128.const i8x16 1 0 3 0 5 0 7 0 9 0 11 0 13 0 15 0) + (v128.const i8x16 0 2 0 4 0 6 0 8 0 10 0 12 0 14 0 16) ) - (v128.const i32 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16) + (v128.const i8x16 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16) ) -(assert_return (invoke "v128.shuffle_reverse_i32s" (v128.const i32 1 2 3 4)) (v128.const i32 4 3 2 1)) +(assert_return (invoke "v128.shuffle_reverse_i32s" (v128.const i32x4 1 2 3 4)) (v128.const i32x4 4 3 2 1)) ;; i8x16 lane accesses -(assert_return (invoke "i8x16.splat" (i32.const 5)) (v128.const i32 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5)) -(assert_return (invoke "i8x16.splat" (i32.const 257)) (v128.const i32 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1)) -(assert_return (invoke "i8x16.extract_lane_s_first" (v128.const i32 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) (i32.const -1)) -(assert_return (invoke "i8x16.extract_lane_s_last" (v128.const i32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255)) (i32.const -1)) -(assert_return (invoke "i8x16.extract_lane_u_first" (v128.const i32 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) (i32.const 255)) -(assert_return (invoke "i8x16.extract_lane_u_last" (v128.const i32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255)) (i32.const 255)) -(assert_return (invoke "i8x16.replace_lane_first" (v128.const i64 0 0) (i32.const 7)) (v128.const i32 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) -(assert_return (invoke "i8x16.replace_lane_last" (v128.const i64 0 0) (i32.const 7)) (v128.const i32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7)) +(assert_return (invoke "i8x16.splat" (i32.const 5)) (v128.const i8x16 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5)) +(assert_return (invoke "i8x16.splat" (i32.const 257)) (v128.const i8x16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1)) +(assert_return (invoke "i8x16.extract_lane_s_first" (v128.const i8x16 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) (i32.const -1)) +(assert_return (invoke "i8x16.extract_lane_s_last" (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255)) (i32.const -1)) +(assert_return (invoke "i8x16.extract_lane_u_first" (v128.const i8x16 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) (i32.const 255)) +(assert_return (invoke "i8x16.extract_lane_u_last" (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255)) (i32.const 255)) +(assert_return (invoke "i8x16.replace_lane_first" (v128.const i64x2 0 0) (i32.const 7)) (v128.const i8x16 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) +(assert_return (invoke "i8x16.replace_lane_last" (v128.const i64x2 0 0) (i32.const 7)) (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7)) ;; i16x8 lane accesses -(assert_return (invoke "i16x8.splat" (i32.const 5)) (v128.const i32 5 5 5 5 5 5 5 5)) -(assert_return (invoke "i16x8.splat" (i32.const 65537)) (v128.const i32 1 1 1 1 1 1 1 1)) -(assert_return (invoke "i16x8.extract_lane_s_first" (v128.const i32 65535 0 0 0 0 0 0 0)) (i32.const -1)) -(assert_return (invoke "i16x8.extract_lane_s_last" (v128.const i32 0 0 0 0 0 0 0 65535)) (i32.const -1)) -(assert_return (invoke "i16x8.extract_lane_u_first" (v128.const i32 65535 0 0 0 0 0 0 0)) (i32.const 65535)) -(assert_return (invoke "i16x8.extract_lane_u_last" (v128.const i32 0 0 0 0 0 0 0 65535)) (i32.const 65535)) -(assert_return (invoke "i16x8.replace_lane_first" (v128.const i64 0 0) (i32.const 7)) (v128.const i32 7 0 0 0 0 0 0 0)) -(assert_return (invoke "i16x8.replace_lane_last" (v128.const i64 0 0) (i32.const 7)) (v128.const i32 0 0 0 0 0 0 0 7)) +(assert_return (invoke "i16x8.splat" (i32.const 5)) (v128.const i16x8 5 5 5 5 5 5 5 5)) +(assert_return (invoke "i16x8.splat" (i32.const 65537)) (v128.const i32x4 1 1 1 1 1 1 1 1)) +(assert_return (invoke "i16x8.extract_lane_s_first" (v128.const i32x4 65535 0 0 0 0 0 0 0)) (i32.const -1)) +(assert_return (invoke "i16x8.extract_lane_s_last" (v128.const i32x4 0 0 0 0 0 0 0 65535)) (i32.const -1)) +(assert_return (invoke "i16x8.extract_lane_u_first" (v128.const i32x4 65535 0 0 0 0 0 0 0)) (i32.const 65535)) +(assert_return (invoke "i16x8.extract_lane_u_last" (v128.const i32x4 0 0 0 0 0 0 0 65535)) (i32.const 65535)) +(assert_return (invoke "i16x8.replace_lane_first" (v128.const i64x2 0 0) (i32.const 7)) (v128.const i32x4 7 0 0 0 0 0 0 0)) +(assert_return (invoke "i16x8.replace_lane_last" (v128.const i64x2 0 0) (i32.const 7)) (v128.const i32x4 0 0 0 0 0 0 0 7)) ;; i32x4 lane accesses -(assert_return (invoke "i32x4.splat" (i32.const -5)) (v128.const i32 -5 -5 -5 -5)) -(assert_return (invoke "i32x4.extract_lane_first" (v128.const i32 -5 0 0 0)) (i32.const -5)) -(assert_return (invoke "i32x4.extract_lane_last" (v128.const i32 0 0 0 -5)) (i32.const -5)) -(assert_return (invoke "i32x4.replace_lane_first" (v128.const i64 0 0) (i32.const 53)) (v128.const i32 53 0 0 0)) -(assert_return (invoke "i32x4.replace_lane_last" (v128.const i64 0 0) (i32.const 53)) (v128.const i32 0 0 0 53)) +(assert_return (invoke "i32x4.splat" (i32.const -5)) (v128.const i32x4 -5 -5 -5 -5)) +(assert_return (invoke "i32x4.extract_lane_first" (v128.const i32x4 -5 0 0 0)) (i32.const -5)) +(assert_return (invoke "i32x4.extract_lane_last" (v128.const i32x4 0 0 0 -5)) (i32.const -5)) +(assert_return (invoke "i32x4.replace_lane_first" (v128.const i64x2 0 0) (i32.const 53)) (v128.const i32x4 53 0 0 0)) +(assert_return (invoke "i32x4.replace_lane_last" (v128.const i64x2 0 0) (i32.const 53)) (v128.const i32x4 0 0 0 53)) ;; i64x2 lane accesses -(assert_return (invoke "i64x2.splat" (i64.const -5)) (v128.const i64 -5 -5)) -(assert_return (invoke "i64x2.extract_lane_first" (v128.const i64 -5 0)) (i64.const -5)) -(assert_return (invoke "i64x2.extract_lane_last" (v128.const i64 0 -5)) (i64.const -5)) -(assert_return (invoke "i64x2.replace_lane_first" (v128.const i64 0 0) (i64.const 53)) (v128.const i64 53 0)) -(assert_return (invoke "i64x2.replace_lane_last" (v128.const i64 0 0) (i64.const 53)) (v128.const i64 0 53)) +(assert_return (invoke "i64x2.splat" (i64.const -5)) (v128.const i64x2 -5 -5)) +(assert_return (invoke "i64x2.extract_lane_first" (v128.const i64x2 -5 0)) (i64.const -5)) +(assert_return (invoke "i64x2.extract_lane_last" (v128.const i64x2 0 -5)) (i64.const -5)) +(assert_return (invoke "i64x2.replace_lane_first" (v128.const i64x2 0 0) (i64.const 53)) (v128.const i64x2 53 0)) +(assert_return (invoke "i64x2.replace_lane_last" (v128.const i64x2 0 0) (i64.const 53)) (v128.const i64x2 0 53)) ;; f32x4 lane accesses -(assert_return (invoke "f32x4.splat" (f32.const -5)) (v128.const f32 -5 -5 -5 -5)) -(assert_return (invoke "f32x4.extract_lane_first" (v128.const f32 -5 0 0 0)) (f32.const -5)) -(assert_return (invoke "f32x4.extract_lane_last" (v128.const f32 0 0 0 -5)) (f32.const -5)) -(assert_return (invoke "f32x4.replace_lane_first" (v128.const i64 0 0) (f32.const 53)) (v128.const f32 53 0 0 0)) -(assert_return (invoke "f32x4.replace_lane_last" (v128.const i64 0 0) (f32.const 53)) (v128.const f32 0 0 0 53)) +(assert_return (invoke "f32x4.splat" (f32.const -5)) (v128.const f32x4 -5 -5 -5 -5)) +(assert_return (invoke "f32x4.extract_lane_first" (v128.const f32x4 -5 0 0 0)) (f32.const -5)) +(assert_return (invoke "f32x4.extract_lane_last" (v128.const f32x4 0 0 0 -5)) (f32.const -5)) +(assert_return (invoke "f32x4.replace_lane_first" (v128.const i64x2 0 0) (f32.const 53)) (v128.const f32x4 53 0 0 0)) +(assert_return (invoke "f32x4.replace_lane_last" (v128.const i64x2 0 0) (f32.const 53)) (v128.const f32x4 0 0 0 53)) ;; f64x2 lane accesses -(assert_return (invoke "f64x2.splat" (f64.const -5)) (v128.const f64 -5 -5)) -(assert_return (invoke "f64x2.extract_lane_first" (v128.const f64 -5 0)) (f64.const -5)) -(assert_return (invoke "f64x2.extract_lane_last" (v128.const f64 0 -5)) (f64.const -5)) -(assert_return (invoke "f64x2.replace_lane_first" (v128.const f64 0 0) (f64.const 53)) (v128.const f64 53 0)) -(assert_return (invoke "f64x2.replace_lane_last" (v128.const f64 0 0) (f64.const 53)) (v128.const f64 0 53)) +(assert_return (invoke "f64x2.splat" (f64.const -5)) (v128.const f64x2 -5 -5)) +(assert_return (invoke "f64x2.extract_lane_first" (v128.const f64x2 -5 0)) (f64.const -5)) +(assert_return (invoke "f64x2.extract_lane_last" (v128.const f64x2 0 -5)) (f64.const -5)) +(assert_return (invoke "f64x2.replace_lane_first" (v128.const f64x2 0 0) (f64.const 53)) (v128.const f64x2 53 0)) +(assert_return (invoke "f64x2.replace_lane_last" (v128.const f64x2 0 0) (f64.const 53)) (v128.const f64x2 0 53)) ;; i8x16 comparisons (assert_return (invoke "i8x16.eq" - (v128.const i32 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) - (v128.const i32 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) + (v128.const i32x4 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) + (v128.const i32x4 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) ) - (v128.const i32 -1 0 -1 0 0 0 0 0 -1 0 0 -1 0 0 0 0) + (v128.const i32x4 -1 0 -1 0 0 0 0 0 -1 0 0 -1 0 0 0 0) ) (assert_return (invoke "i8x16.ne" - (v128.const i32 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) - (v128.const i32 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) + (v128.const i32x4 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) + (v128.const i32x4 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) ) - (v128.const i32 0 -1 0 -1 -1 -1 -1 -1 0 -1 -1 0 -1 -1 -1 -1) + (v128.const i32x4 0 -1 0 -1 -1 -1 -1 -1 0 -1 -1 0 -1 -1 -1 -1) ) (assert_return (invoke "i8x16.lt_s" - (v128.const i32 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) - (v128.const i32 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) + (v128.const i32x4 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) + (v128.const i32x4 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) ) - (v128.const i32 0 0 0 -1 0 -1 -1 0 0 0 -1 0 0 -1 -1 0) + (v128.const i32x4 0 0 0 -1 0 -1 -1 0 0 0 -1 0 0 -1 -1 0) ) (assert_return (invoke "i8x16.lt_u" - (v128.const i32 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) - (v128.const i32 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) + (v128.const i32x4 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) + (v128.const i32x4 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) ) - (v128.const i32 0 -1 0 0 -1 -1 0 -1 0 -1 0 0 -1 -1 0 -1) + (v128.const i32x4 0 -1 0 0 -1 -1 0 -1 0 -1 0 0 -1 -1 0 -1) ) (assert_return (invoke "i8x16.gt_s" - (v128.const i32 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) - (v128.const i32 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) + (v128.const i32x4 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) + (v128.const i32x4 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) ) - (v128.const i32 0 -1 0 0 -1 0 0 -1 0 -1 0 0 -1 0 0 -1) + (v128.const i32x4 0 -1 0 0 -1 0 0 -1 0 -1 0 0 -1 0 0 -1) ) (assert_return (invoke "i8x16.gt_u" - (v128.const i32 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) - (v128.const i32 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) + (v128.const i32x4 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) + (v128.const i32x4 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) ) - (v128.const i32 0 0 0 -1 0 0 -1 0 0 0 -1 0 0 0 -1 0) + (v128.const i32x4 0 0 0 -1 0 0 -1 0 0 0 -1 0 0 0 -1 0) ) (assert_return (invoke "i8x16.le_s" - (v128.const i32 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) - (v128.const i32 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) + (v128.const i32x4 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) + (v128.const i32x4 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) ) - (v128.const i32 -1 0 -1 -1 0 -1 -1 0 -1 0 -1 -1 0 -1 -1 0) + (v128.const i32x4 -1 0 -1 -1 0 -1 -1 0 -1 0 -1 -1 0 -1 -1 0) ) (assert_return (invoke "i8x16.le_u" - (v128.const i32 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) - (v128.const i32 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) + (v128.const i32x4 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) + (v128.const i32x4 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) ) - (v128.const i32 -1 -1 -1 0 -1 -1 0 -1 -1 -1 0 -1 -1 -1 0 -1) + (v128.const i32x4 -1 -1 -1 0 -1 -1 0 -1 -1 -1 0 -1 -1 -1 0 -1) ) (assert_return (invoke "i8x16.ge_s" - (v128.const i32 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) - (v128.const i32 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) + (v128.const i32x4 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) + (v128.const i32x4 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) ) - (v128.const i32 -1 -1 -1 0 -1 0 0 -1 -1 -1 0 -1 -1 0 0 -1) + (v128.const i32x4 -1 -1 -1 0 -1 0 0 -1 -1 -1 0 -1 -1 0 0 -1) ) (assert_return (invoke "i8x16.ge_u" - (v128.const i32 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) - (v128.const i32 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) + (v128.const i32x4 0 127 13 128 1 13 129 42 0 127 255 42 1 13 129 42) + (v128.const i32x4 0 255 13 42 129 127 0 128 0 255 13 42 129 127 0 128) ) - (v128.const i32 -1 0 -1 -1 0 0 -1 0 -1 0 -1 -1 0 0 -1 0) + (v128.const i32x4 -1 0 -1 -1 0 0 -1 0 -1 0 -1 -1 0 0 -1 0) ) ;; i16x8 comparisons (assert_return (invoke "i16x8.eq" - (v128.const i32 0 32767 13 32768 1 32769 42 40000) - (v128.const i32 0 13 1 32767 32769 42 40000 32767) + (v128.const i32x4 0 32767 13 32768 1 32769 42 40000) + (v128.const i32x4 0 13 1 32767 32769 42 40000 32767) ) - (v128.const i32 -1 0 0 0 0 0 0 0) + (v128.const i32x4 -1 0 0 0 0 0 0 0) ) (assert_return (invoke "i16x8.ne" - (v128.const i32 0 32767 13 32768 1 32769 42 40000) - (v128.const i32 0 13 1 32767 32769 42 40000 32767) + (v128.const i32x4 0 32767 13 32768 1 32769 42 40000) + (v128.const i32x4 0 13 1 32767 32769 42 40000 32767) ) - (v128.const i32 0 -1 -1 -1 -1 -1 -1 -1) + (v128.const i32x4 0 -1 -1 -1 -1 -1 -1 -1) ) (assert_return (invoke "i16x8.lt_s" - (v128.const i32 0 32767 13 32768 1 32769 42 40000) - (v128.const i32 0 13 1 32767 32769 42 40000 32767) + (v128.const i32x4 0 32767 13 32768 1 32769 42 40000) + (v128.const i32x4 0 13 1 32767 32769 42 40000 32767) ) - (v128.const i32 0 0 0 -1 0 -1 0 -1) + (v128.const i32x4 0 0 0 -1 0 -1 0 -1) ) (assert_return (invoke "i16x8.lt_u" - (v128.const i32 0 32767 13 32768 1 32769 42 40000) - (v128.const i32 0 13 1 32767 32769 42 40000 32767) + (v128.const i32x4 0 32767 13 32768 1 32769 42 40000) + (v128.const i32x4 0 13 1 32767 32769 42 40000 32767) ) - (v128.const i32 0 0 0 0 -1 0 -1 0) + (v128.const i32x4 0 0 0 0 -1 0 -1 0) ) (assert_return (invoke "i16x8.gt_s" - (v128.const i32 0 32767 13 32768 1 32769 42 40000) - (v128.const i32 0 13 1 32767 32769 42 40000 32767) + (v128.const i32x4 0 32767 13 32768 1 32769 42 40000) + (v128.const i32x4 0 13 1 32767 32769 42 40000 32767) ) - (v128.const i32 0 -1 -1 0 -1 0 -1 0) + (v128.const i32x4 0 -1 -1 0 -1 0 -1 0) ) (assert_return (invoke "i16x8.gt_u" - (v128.const i32 0 32767 13 32768 1 32769 42 40000) - (v128.const i32 0 13 1 32767 32769 42 40000 32767) + (v128.const i32x4 0 32767 13 32768 1 32769 42 40000) + (v128.const i32x4 0 13 1 32767 32769 42 40000 32767) ) - (v128.const i32 0 -1 -1 -1 0 -1 0 -1) + (v128.const i32x4 0 -1 -1 -1 0 -1 0 -1) ) (assert_return (invoke "i16x8.le_s" - (v128.const i32 0 32767 13 32768 1 32769 42 40000) - (v128.const i32 0 13 1 32767 32769 42 40000 32767) + (v128.const i32x4 0 32767 13 32768 1 32769 42 40000) + (v128.const i32x4 0 13 1 32767 32769 42 40000 32767) ) - (v128.const i32 -1 0 0 -1 0 -1 0 -1) + (v128.const i32x4 -1 0 0 -1 0 -1 0 -1) ) (assert_return (invoke "i16x8.le_u" - (v128.const i32 0 32767 13 32768 1 32769 42 40000) - (v128.const i32 0 13 1 32767 32769 42 40000 32767) + (v128.const i32x4 0 32767 13 32768 1 32769 42 40000) + (v128.const i32x4 0 13 1 32767 32769 42 40000 32767) ) - (v128.const i32 -1 0 0 0 -1 0 -1 0) + (v128.const i32x4 -1 0 0 0 -1 0 -1 0) ) (assert_return (invoke "i16x8.ge_s" - (v128.const i32 0 32767 13 32768 1 32769 42 40000) - (v128.const i32 0 13 1 32767 32769 42 40000 32767) + (v128.const i32x4 0 32767 13 32768 1 32769 42 40000) + (v128.const i32x4 0 13 1 32767 32769 42 40000 32767) ) - (v128.const i32 -1 -1 -1 0 -1 0 -1 0) + (v128.const i32x4 -1 -1 -1 0 -1 0 -1 0) ) (assert_return (invoke "i16x8.ge_u" - (v128.const i32 0 32767 13 32768 1 32769 42 40000) - (v128.const i32 0 13 1 32767 32769 42 40000 32767) + (v128.const i32x4 0 32767 13 32768 1 32769 42 40000) + (v128.const i32x4 0 13 1 32767 32769 42 40000 32767) ) - (v128.const i32 -1 -1 -1 -1 0 -1 0 -1) + (v128.const i32x4 -1 -1 -1 -1 0 -1 0 -1) ) ;; i32x4 comparisons -(assert_return (invoke "i32x4.eq" (v128.const i32 0 -1 53 -7) (v128.const i32 0 53 -7 -1)) (v128.const i32 -1 0 0 0)) -(assert_return (invoke "i32x4.ne" (v128.const i32 0 -1 53 -7) (v128.const i32 0 53 -7 -1)) (v128.const i32 0 -1 -1 -1)) -(assert_return (invoke "i32x4.lt_s" (v128.const i32 0 -1 53 -7) (v128.const i32 0 53 -7 -1)) (v128.const i32 0 -1 0 -1)) -(assert_return (invoke "i32x4.lt_u" (v128.const i32 0 -1 53 -7) (v128.const i32 0 53 -7 -1)) (v128.const i32 0 0 -1 -1)) -(assert_return (invoke "i32x4.gt_s" (v128.const i32 0 -1 53 -7) (v128.const i32 0 53 -7 -1)) (v128.const i32 0 0 -1 0)) -(assert_return (invoke "i32x4.gt_u" (v128.const i32 0 -1 53 -7) (v128.const i32 0 53 -7 -1)) (v128.const i32 0 -1 0 0)) -(assert_return (invoke "i32x4.le_s" (v128.const i32 0 -1 53 -7) (v128.const i32 0 53 -7 -1)) (v128.const i32 -1 -1 0 -1)) -(assert_return (invoke "i32x4.le_u" (v128.const i32 0 -1 53 -7) (v128.const i32 0 53 -7 -1)) (v128.const i32 -1 0 -1 -1)) -(assert_return (invoke "i32x4.ge_s" (v128.const i32 0 -1 53 -7) (v128.const i32 0 53 -7 -1)) (v128.const i32 -1 0 -1 0)) -(assert_return (invoke "i32x4.ge_u" (v128.const i32 0 -1 53 -7) (v128.const i32 0 53 -7 -1)) (v128.const i32 -1 -1 0 0)) +(assert_return (invoke "i32x4.eq" (v128.const i32x4 0 -1 53 -7) (v128.const i32x4 0 53 -7 -1)) (v128.const i32x4 -1 0 0 0)) +(assert_return (invoke "i32x4.ne" (v128.const i32x4 0 -1 53 -7) (v128.const i32x4 0 53 -7 -1)) (v128.const i32x4 0 -1 -1 -1)) +(assert_return (invoke "i32x4.lt_s" (v128.const i32x4 0 -1 53 -7) (v128.const i32x4 0 53 -7 -1)) (v128.const i32x4 0 -1 0 -1)) +(assert_return (invoke "i32x4.lt_u" (v128.const i32x4 0 -1 53 -7) (v128.const i32x4 0 53 -7 -1)) (v128.const i32x4 0 0 -1 -1)) +(assert_return (invoke "i32x4.gt_s" (v128.const i32x4 0 -1 53 -7) (v128.const i32x4 0 53 -7 -1)) (v128.const i32x4 0 0 -1 0)) +(assert_return (invoke "i32x4.gt_u" (v128.const i32x4 0 -1 53 -7) (v128.const i32x4 0 53 -7 -1)) (v128.const i32x4 0 -1 0 0)) +(assert_return (invoke "i32x4.le_s" (v128.const i32x4 0 -1 53 -7) (v128.const i32x4 0 53 -7 -1)) (v128.const i32x4 -1 -1 0 -1)) +(assert_return (invoke "i32x4.le_u" (v128.const i32x4 0 -1 53 -7) (v128.const i32x4 0 53 -7 -1)) (v128.const i32x4 -1 0 -1 -1)) +(assert_return (invoke "i32x4.ge_s" (v128.const i32x4 0 -1 53 -7) (v128.const i32x4 0 53 -7 -1)) (v128.const i32x4 -1 0 -1 0)) +(assert_return (invoke "i32x4.ge_u" (v128.const i32x4 0 -1 53 -7) (v128.const i32x4 0 53 -7 -1)) (v128.const i32x4 -1 -1 0 0)) ;; f32x4 comparisons -(assert_return (invoke "f32x4.eq" (v128.const f32 0 -1 1 0) (v128.const f32 0 0 -1 1)) (v128.const i32 -1 0 0 0)) -(assert_return (invoke "f32x4.ne" (v128.const f32 0 -1 1 0) (v128.const f32 0 0 -1 1)) (v128.const i32 0 -1 -1 -1)) -(assert_return (invoke "f32x4.lt" (v128.const f32 0 -1 1 0) (v128.const f32 0 0 -1 1)) (v128.const i32 0 -1 0 -1)) -(assert_return (invoke "f32x4.gt" (v128.const f32 0 -1 1 0) (v128.const f32 0 0 -1 1)) (v128.const i32 0 0 -1 0)) -(assert_return (invoke "f32x4.le" (v128.const f32 0 -1 1 0) (v128.const f32 0 0 -1 1)) (v128.const i32 -1 -1 0 -1)) -(assert_return (invoke "f32x4.ge" (v128.const f32 0 -1 1 0) (v128.const f32 0 0 -1 1)) (v128.const i32 -1 0 -1 0)) -(assert_return (invoke "f32x4.eq" (v128.const f32 nan 0 nan infinity) (v128.const f32 0 nan nan infinity)) (v128.const i32 0 0 0 -1)) -(assert_return (invoke "f32x4.ne" (v128.const f32 nan 0 nan infinity) (v128.const f32 0 nan nan infinity)) (v128.const i32 -1 -1 -1 0)) -(assert_return (invoke "f32x4.lt" (v128.const f32 nan 0 nan infinity) (v128.const f32 0 nan nan infinity)) (v128.const i32 0 0 0 0)) -(assert_return (invoke "f32x4.gt" (v128.const f32 nan 0 nan infinity) (v128.const f32 0 nan nan infinity)) (v128.const i32 0 0 0 0)) -(assert_return (invoke "f32x4.le" (v128.const f32 nan 0 nan infinity) (v128.const f32 0 nan nan infinity)) (v128.const i32 0 0 0 -1)) -(assert_return (invoke "f32x4.ge" (v128.const f32 nan 0 nan infinity) (v128.const f32 0 nan nan infinity)) (v128.const i32 0 0 0 -1)) -(assert_return (invoke "f32x4.eq" (v128.const f32 -infinity 0 nan -infinity) (v128.const f32 0 infinity infinity nan)) (v128.const i32 0 0 0 0)) -(assert_return (invoke "f32x4.ne" (v128.const f32 -infinity 0 nan -infinity) (v128.const f32 0 infinity infinity nan)) (v128.const i32 -1 -1 -1 -1)) -(assert_return (invoke "f32x4.lt" (v128.const f32 -infinity 0 nan -infinity) (v128.const f32 0 infinity infinity nan)) (v128.const i32 -1 -1 0 0)) -(assert_return (invoke "f32x4.gt" (v128.const f32 -infinity 0 nan -infinity) (v128.const f32 0 infinity infinity nan)) (v128.const i32 0 0 0 0)) -(assert_return (invoke "f32x4.le" (v128.const f32 -infinity 0 nan -infinity) (v128.const f32 0 infinity infinity nan)) (v128.const i32 -1 -1 0 0)) -(assert_return (invoke "f32x4.ge" (v128.const f32 -infinity 0 nan -infinity) (v128.const f32 0 infinity infinity nan)) (v128.const i32 0 0 0 0)) +(assert_return (invoke "f32x4.eq" (v128.const f32x4 0 -1 1 0) (v128.const f32x4 0 0 -1 1)) (v128.const i32x4 -1 0 0 0)) +(assert_return (invoke "f32x4.ne" (v128.const f32x4 0 -1 1 0) (v128.const f32x4 0 0 -1 1)) (v128.const i32x4 0 -1 -1 -1)) +(assert_return (invoke "f32x4.lt" (v128.const f32x4 0 -1 1 0) (v128.const f32x4 0 0 -1 1)) (v128.const i32x4 0 -1 0 -1)) +(assert_return (invoke "f32x4.gt" (v128.const f32x4 0 -1 1 0) (v128.const f32x4 0 0 -1 1)) (v128.const i32x4 0 0 -1 0)) +(assert_return (invoke "f32x4.le" (v128.const f32x4 0 -1 1 0) (v128.const f32x4 0 0 -1 1)) (v128.const i32x4 -1 -1 0 -1)) +(assert_return (invoke "f32x4.ge" (v128.const f32x4 0 -1 1 0) (v128.const f32x4 0 0 -1 1)) (v128.const i32x4 -1 0 -1 0)) +(assert_return (invoke "f32x4.eq" (v128.const f32x4 nan 0 nan infinity) (v128.const f32x4 0 nan nan infinity)) (v128.const i32x4 0 0 0 -1)) +(assert_return (invoke "f32x4.ne" (v128.const f32x4 nan 0 nan infinity) (v128.const f32x4 0 nan nan infinity)) (v128.const i32x4 -1 -1 -1 0)) +(assert_return (invoke "f32x4.lt" (v128.const f32x4 nan 0 nan infinity) (v128.const f32x4 0 nan nan infinity)) (v128.const i32x4 0 0 0 0)) +(assert_return (invoke "f32x4.gt" (v128.const f32x4 nan 0 nan infinity) (v128.const f32x4 0 nan nan infinity)) (v128.const i32x4 0 0 0 0)) +(assert_return (invoke "f32x4.le" (v128.const f32x4 nan 0 nan infinity) (v128.const f32x4 0 nan nan infinity)) (v128.const i32x4 0 0 0 -1)) +(assert_return (invoke "f32x4.ge" (v128.const f32x4 nan 0 nan infinity) (v128.const f32x4 0 nan nan infinity)) (v128.const i32x4 0 0 0 -1)) +(assert_return (invoke "f32x4.eq" (v128.const f32x4 -infinity 0 nan -infinity) (v128.const f32x4 0 infinity infinity nan)) (v128.const i32x4 0 0 0 0)) +(assert_return (invoke "f32x4.ne" (v128.const f32x4 -infinity 0 nan -infinity) (v128.const f32x4 0 infinity infinity nan)) (v128.const i32x4 -1 -1 -1 -1)) +(assert_return (invoke "f32x4.lt" (v128.const f32x4 -infinity 0 nan -infinity) (v128.const f32x4 0 infinity infinity nan)) (v128.const i32x4 -1 -1 0 0)) +(assert_return (invoke "f32x4.gt" (v128.const f32x4 -infinity 0 nan -infinity) (v128.const f32x4 0 infinity infinity nan)) (v128.const i32x4 0 0 0 0)) +(assert_return (invoke "f32x4.le" (v128.const f32x4 -infinity 0 nan -infinity) (v128.const f32x4 0 infinity infinity nan)) (v128.const i32x4 -1 -1 0 0)) +(assert_return (invoke "f32x4.ge" (v128.const f32x4 -infinity 0 nan -infinity) (v128.const f32x4 0 infinity infinity nan)) (v128.const i32x4 0 0 0 0)) ;; f64x2 comparisons -(assert_return (invoke "f64x2.eq" (v128.const f64 0 1) (v128.const f64 0 0)) (v128.const i64 -1 0)) -(assert_return (invoke "f64x2.ne" (v128.const f64 0 1) (v128.const f64 0 0)) (v128.const i64 0 -1)) -(assert_return (invoke "f64x2.lt" (v128.const f64 0 1) (v128.const f64 0 0)) (v128.const i64 0 0)) -(assert_return (invoke "f64x2.gt" (v128.const f64 0 1) (v128.const f64 0 0)) (v128.const i64 0 -1)) -(assert_return (invoke "f64x2.le" (v128.const f64 0 1) (v128.const f64 0 0)) (v128.const i64 -1 0)) -(assert_return (invoke "f64x2.ge" (v128.const f64 0 1) (v128.const f64 0 0)) (v128.const i64 -1 -1)) -(assert_return (invoke "f64x2.eq" (v128.const f64 nan 0) (v128.const f64 infinity infinity)) (v128.const i64 0 0)) -(assert_return (invoke "f64x2.ne" (v128.const f64 nan 0) (v128.const f64 infinity infinity)) (v128.const i64 -1 -1)) -(assert_return (invoke "f64x2.lt" (v128.const f64 nan 0) (v128.const f64 infinity infinity)) (v128.const i64 0 -1)) -(assert_return (invoke "f64x2.gt" (v128.const f64 nan 0) (v128.const f64 infinity infinity)) (v128.const i64 0 0)) -(assert_return (invoke "f64x2.le" (v128.const f64 nan 0) (v128.const f64 infinity infinity)) (v128.const i64 0 -1)) -(assert_return (invoke "f64x2.ge" (v128.const f64 nan 0) (v128.const f64 infinity infinity)) (v128.const i64 0 0)) +(assert_return (invoke "f64x2.eq" (v128.const f64x2 0 1) (v128.const f64x2 0 0)) (v128.const i64x2 -1 0)) +(assert_return (invoke "f64x2.ne" (v128.const f64x2 0 1) (v128.const f64x2 0 0)) (v128.const i64x2 0 -1)) +(assert_return (invoke "f64x2.lt" (v128.const f64x2 0 1) (v128.const f64x2 0 0)) (v128.const i64x2 0 0)) +(assert_return (invoke "f64x2.gt" (v128.const f64x2 0 1) (v128.const f64x2 0 0)) (v128.const i64x2 0 -1)) +(assert_return (invoke "f64x2.le" (v128.const f64x2 0 1) (v128.const f64x2 0 0)) (v128.const i64x2 -1 0)) +(assert_return (invoke "f64x2.ge" (v128.const f64x2 0 1) (v128.const f64x2 0 0)) (v128.const i64x2 -1 -1)) +(assert_return (invoke "f64x2.eq" (v128.const f64x2 nan 0) (v128.const f64x2 infinity infinity)) (v128.const i64x2 0 0)) +(assert_return (invoke "f64x2.ne" (v128.const f64x2 nan 0) (v128.const f64x2 infinity infinity)) (v128.const i64x2 -1 -1)) +(assert_return (invoke "f64x2.lt" (v128.const f64x2 nan 0) (v128.const f64x2 infinity infinity)) (v128.const i64x2 0 -1)) +(assert_return (invoke "f64x2.gt" (v128.const f64x2 nan 0) (v128.const f64x2 infinity infinity)) (v128.const i64x2 0 0)) +(assert_return (invoke "f64x2.le" (v128.const f64x2 nan 0) (v128.const f64x2 infinity infinity)) (v128.const i64x2 0 -1)) +(assert_return (invoke "f64x2.ge" (v128.const f64x2 nan 0) (v128.const f64x2 infinity infinity)) (v128.const i64x2 0 0)) ;; bitwise operations -(assert_return (invoke "v128.not" (v128.const i32 0 -1 0 -1)) (v128.const i32 -1 0 -1 0)) -(assert_return (invoke "v128.and" (v128.const i32 0 0 -1 -1) (v128.const i32 0 -1 0 -1)) (v128.const i32 0 0 0 -1)) -(assert_return (invoke "v128.or" (v128.const i32 0 0 -1 -1) (v128.const i32 0 -1 0 -1)) (v128.const i32 0 -1 -1 -1)) -(assert_return (invoke "v128.xor" (v128.const i32 0 0 -1 -1) (v128.const i32 0 -1 0 -1)) (v128.const i32 0 -1 -1 0)) +(assert_return (invoke "v128.not" (v128.const i32x4 0 -1 0 -1)) (v128.const i32x4 -1 0 -1 0)) +(assert_return (invoke "v128.and" (v128.const i32x4 0 0 -1 -1) (v128.const i32x4 0 -1 0 -1)) (v128.const i32x4 0 0 0 -1)) +(assert_return (invoke "v128.or" (v128.const i32x4 0 0 -1 -1) (v128.const i32x4 0 -1 0 -1)) (v128.const i32x4 0 -1 -1 -1)) +(assert_return (invoke "v128.xor" (v128.const i32x4 0 0 -1 -1) (v128.const i32x4 0 -1 0 -1)) (v128.const i32x4 0 -1 -1 0)) (assert_return (invoke "v128.bitselect" - (v128.const i32 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA) - (v128.const i32 0xBBBBBBBB 0xBBBBBBBB 0xBBBBBBBB 0xBBBBBBBB) - (v128.const i32 0xF0F0F0F0 0xFFFFFFFF 0x00000000 0xFF00FF00) + (v128.const i32x4 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA 0xAAAAAAAA) + (v128.const i32x4 0xBBBBBBBB 0xBBBBBBBB 0xBBBBBBBB 0xBBBBBBBB) + (v128.const i32x4 0xF0F0F0F0 0xFFFFFFFF 0x00000000 0xFF00FF00) ) - (v128.const i32 0xABABABAB 0xAAAAAAAA 0xBBBBBBBB 0xAABBAABB) + (v128.const i32x4 0xABABABAB 0xAAAAAAAA 0xBBBBBBBB 0xAABBAABB) ) ;; i8x16 arithmetic -(assert_return (invoke "i8x16.neg" (v128.const i32 0 1 42 -3 -56 127 -128 -126 0 -1 -42 3 56 -127 -128 126)) - (v128.const i32 0 -1 -42 3 56 -127 -128 126 0 1 42 -3 -56 127 -128 -126) +(assert_return (invoke "i8x16.neg" (v128.const i32x4 0 1 42 -3 -56 127 -128 -126 0 -1 -42 3 56 -127 -128 126)) + (v128.const i32x4 0 -1 -42 3 56 -127 -128 126 0 1 42 -3 -56 127 -128 -126) ) -(assert_return (invoke "i8x16.any_true" (v128.const i32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) (i32.const 0)) -(assert_return (invoke "i8x16.any_true" (v128.const i32 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0)) (i32.const 1)) -(assert_return (invoke "i8x16.any_true" (v128.const i32 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1)) (i32.const 1)) -(assert_return (invoke "i8x16.any_true" (v128.const i32 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1)) (i32.const 1)) -(assert_return (invoke "i8x16.all_true" (v128.const i32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) (i32.const 0)) -(assert_return (invoke "i8x16.all_true" (v128.const i32 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0)) (i32.const 0)) -(assert_return (invoke "i8x16.all_true" (v128.const i32 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1)) (i32.const 0)) -(assert_return (invoke "i8x16.all_true" (v128.const i32 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1)) (i32.const 1)) -(assert_return (invoke "i8x16.shl" (v128.const i32 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) (i32.const 1)) - (v128.const i32 0 2 4 8 16 32 64 -128 0 6 12 24 48 96 -64 -128) +(assert_return (invoke "i8x16.any_true" (v128.const i32x4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) (i32.const 0)) +(assert_return (invoke "i8x16.any_true" (v128.const i32x4 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0)) (i32.const 1)) +(assert_return (invoke "i8x16.any_true" (v128.const i32x4 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1)) (i32.const 1)) +(assert_return (invoke "i8x16.any_true" (v128.const i32x4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1)) (i32.const 1)) +(assert_return (invoke "i8x16.all_true" (v128.const i32x4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) (i32.const 0)) +(assert_return (invoke "i8x16.all_true" (v128.const i32x4 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0)) (i32.const 0)) +(assert_return (invoke "i8x16.all_true" (v128.const i32x4 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1)) (i32.const 0)) +(assert_return (invoke "i8x16.all_true" (v128.const i32x4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1)) (i32.const 1)) +(assert_return (invoke "i8x16.shl" (v128.const i32x4 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) (i32.const 1)) + (v128.const i32x4 0 2 4 8 16 32 64 -128 0 6 12 24 48 96 -64 -128) ) -(assert_return (invoke "i8x16.shl" (v128.const i32 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) (i32.const 8)) - (v128.const i32 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) +(assert_return (invoke "i8x16.shl" (v128.const i32x4 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) (i32.const 8)) + (v128.const i32x4 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) ) -(assert_return (invoke "i8x16.shr_u" (v128.const i32 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) (i32.const 1)) - (v128.const i32 0 0 1 2 4 8 16 32 64 1 3 6 12 24 48 96) +(assert_return (invoke "i8x16.shr_u" (v128.const i32x4 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) (i32.const 1)) + (v128.const i32x4 0 0 1 2 4 8 16 32 64 1 3 6 12 24 48 96) ) -(assert_return (invoke "i8x16.shr_u" (v128.const i32 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) (i32.const 8)) - (v128.const i32 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) +(assert_return (invoke "i8x16.shr_u" (v128.const i32x4 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) (i32.const 8)) + (v128.const i32x4 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) ) -(assert_return (invoke "i8x16.shr_s" (v128.const i32 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) (i32.const 1)) - (v128.const i32 0 0 1 2 4 8 16 32 -64 1 3 6 12 24 48 -32) +(assert_return (invoke "i8x16.shr_s" (v128.const i32x4 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) (i32.const 1)) + (v128.const i32x4 0 0 1 2 4 8 16 32 -64 1 3 6 12 24 48 -32) ) -(assert_return (invoke "i8x16.shr_s" (v128.const i32 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) (i32.const 8)) - (v128.const i32 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) +(assert_return (invoke "i8x16.shr_s" (v128.const i32x4 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) (i32.const 8)) + (v128.const i32x4 0 1 2 4 8 16 32 64 -128 3 6 12 24 48 96 -64) ) (assert_return (invoke "i8x16.add" - (v128.const i32 0 42 255 128 127 129 6 29 103 196 231 142 17 250 1 73) - (v128.const i32 3 231 1 128 129 6 103 17 42 29 73 42 0 255 127 142) + (v128.const i32x4 0 42 255 128 127 129 6 29 103 196 231 142 17 250 1 73) + (v128.const i32x4 3 231 1 128 129 6 103 17 42 29 73 42 0 255 127 142) ) - (v128.const i32 3 17 0 0 0 135 109 46 145 225 48 184 17 249 128 215) + (v128.const i32x4 3 17 0 0 0 135 109 46 145 225 48 184 17 249 128 215) ) (assert_return (invoke "i8x16.add_saturate_s" - (v128.const i32 0 42 255 128 127 129 6 29 103 196 231 142 17 250 1 73) - (v128.const i32 3 231 1 128 129 6 103 17 42 29 73 42 0 255 127 142) + (v128.const i32x4 0 42 255 128 127 129 6 29 103 196 231 142 17 250 1 73) + (v128.const i32x4 3 231 1 128 129 6 103 17 42 29 73 42 0 255 127 142) ) - (v128.const i32 3 17 0 128 0 135 109 46 127 225 48 184 17 249 127 215) + (v128.const i32x4 3 17 0 128 0 135 109 46 127 225 48 184 17 249 127 215) ) (assert_return (invoke "i8x16.add_saturate_u" - (v128.const i32 0 42 255 128 127 129 6 29 103 196 231 142 17 250 1 73) - (v128.const i32 3 231 1 128 129 6 103 17 42 29 73 42 0 255 127 142) + (v128.const i32x4 0 42 255 128 127 129 6 29 103 196 231 142 17 250 1 73) + (v128.const i32x4 3 231 1 128 129 6 103 17 42 29 73 42 0 255 127 142) ) - (v128.const i32 3 255 255 255 255 135 109 46 145 225 255 184 17 255 128 215) + (v128.const i32x4 3 255 255 255 255 135 109 46 145 225 255 184 17 255 128 215) ) (assert_return (invoke "i8x16.sub" - (v128.const i32 0 42 255 128 127 129 6 29 103 196 231 142 17 250 1 73) - (v128.const i32 3 231 1 128 129 6 103 17 42 29 73 42 0 255 127 142) + (v128.const i32x4 0 42 255 128 127 129 6 29 103 196 231 142 17 250 1 73) + (v128.const i32x4 3 231 1 128 129 6 103 17 42 29 73 42 0 255 127 142) ) - (v128.const i32 253 67 254 0 254 123 159 12 61 167 158 100 17 251 130 187) + (v128.const i32x4 253 67 254 0 254 123 159 12 61 167 158 100 17 251 130 187) ) (assert_return (invoke "i8x16.sub_saturate_s" - (v128.const i32 0 42 255 128 127 129 6 29 103 196 231 142 17 250 1 73) - (v128.const i32 3 231 1 128 129 6 103 17 42 29 73 42 0 255 127 142) + (v128.const i32x4 0 42 255 128 127 129 6 29 103 196 231 142 17 250 1 73) + (v128.const i32x4 3 231 1 128 129 6 103 17 42 29 73 42 0 255 127 142) ) - (v128.const i32 253 67 254 0 127 128 159 12 61 167 158 128 17 251 130 127) + (v128.const i32x4 253 67 254 0 127 128 159 12 61 167 158 128 17 251 130 127) ) (assert_return (invoke "i8x16.sub_saturate_u" - (v128.const i32 0 42 255 128 127 129 6 29 103 196 231 142 17 250 1 73) - (v128.const i32 3 231 1 128 129 6 103 17 42 29 73 42 0 255 127 142) + (v128.const i32x4 0 42 255 128 127 129 6 29 103 196 231 142 17 250 1 73) + (v128.const i32x4 3 231 1 128 129 6 103 17 42 29 73 42 0 255 127 142) ) - (v128.const i32 0 0 254 0 0 123 0 12 61 167 158 100 17 0 0 0) + (v128.const i32x4 0 0 254 0 0 123 0 12 61 167 158 100 17 0 0 0) ) (assert_return (invoke "i8x16.mul" - (v128.const i32 0 42 255 128 127 129 6 29 103 196 231 142 17 250 1 73) - (v128.const i32 3 231 1 128 129 6 103 17 42 29 73 42 0 255 127 142) + (v128.const i32x4 0 42 255 128 127 129 6 29 103 196 231 142 17 250 1 73) + (v128.const i32x4 3 231 1 128 129 6 103 17 42 29 73 42 0 255 127 142) ) - (v128.const i32 0 230 255 0 255 6 106 237 230 52 223 76 0 6 127 126) + (v128.const i32x4 0 230 255 0 255 6 106 237 230 52 223 76 0 6 127 126) ) ;; i16x8 arithmetic -(assert_return (invoke "i16x8.neg" (v128.const i32 0 1 42 -3 -56 32767 -32768 32766)) - (v128.const i32 0 -1 -42 3 56 -32767 -32768 -32766) -) -(assert_return (invoke "i16x8.any_true" (v128.const i32 0 0 0 0 0 0 0 0)) (i32.const 0)) -(assert_return (invoke "i16x8.any_true" (v128.const i32 0 0 1 0 0 0 0 0)) (i32.const 1)) -(assert_return (invoke "i16x8.any_true" (v128.const i32 1 1 1 1 1 0 1 1)) (i32.const 1)) -(assert_return (invoke "i16x8.any_true" (v128.const i32 1 1 1 1 1 1 1 1)) (i32.const 1)) -(assert_return (invoke "i16x8.all_true" (v128.const i32 0 0 0 0 0 0 0 0)) (i32.const 0)) -(assert_return (invoke "i16x8.all_true" (v128.const i32 0 0 1 0 0 0 0 0)) (i32.const 0)) -(assert_return (invoke "i16x8.all_true" (v128.const i32 1 1 1 1 1 0 1 1)) (i32.const 0)) -(assert_return (invoke "i16x8.all_true" (v128.const i32 1 1 1 1 1 1 1 1)) (i32.const 1)) -(assert_return (invoke "i16x8.shl" (v128.const i32 0 8 16 128 256 2048 4096 -32768) (i32.const 1)) (v128.const i32 0 16 32 256 512 4096 8192 0)) -(assert_return (invoke "i16x8.shl" (v128.const i32 0 8 16 128 256 2048 4096 -32768) (i32.const 16)) (v128.const i32 0 8 16 128 256 2048 4096 -32768)) -(assert_return (invoke "i16x8.shr_u" (v128.const i32 0 8 16 128 256 2048 4096 -32768) (i32.const 1)) (v128.const i32 0 4 8 64 128 1024 2048 16384)) -(assert_return (invoke "i16x8.shr_u" (v128.const i32 0 8 16 128 256 2048 4096 -32768) (i32.const 16)) (v128.const i32 0 8 16 128 256 2048 4096 -32768)) -(assert_return (invoke "i16x8.shr_s" (v128.const i32 0 8 16 128 256 2048 4096 -32768) (i32.const 1)) (v128.const i32 0 4 8 64 128 1024 2048 -16384)) -(assert_return (invoke "i16x8.shr_s" (v128.const i32 0 8 16 128 256 2048 4096 -32768) (i32.const 16)) (v128.const i32 0 8 16 128 256 2048 4096 -32768)) +(assert_return (invoke "i16x8.neg" (v128.const i32x4 0 1 42 -3 -56 32767 -32768 32766)) + (v128.const i32x4 0 -1 -42 3 56 -32767 -32768 -32766) +) +(assert_return (invoke "i16x8.any_true" (v128.const i32x4 0 0 0 0 0 0 0 0)) (i32.const 0)) +(assert_return (invoke "i16x8.any_true" (v128.const i32x4 0 0 1 0 0 0 0 0)) (i32.const 1)) +(assert_return (invoke "i16x8.any_true" (v128.const i32x4 1 1 1 1 1 0 1 1)) (i32.const 1)) +(assert_return (invoke "i16x8.any_true" (v128.const i32x4 1 1 1 1 1 1 1 1)) (i32.const 1)) +(assert_return (invoke "i16x8.all_true" (v128.const i32x4 0 0 0 0 0 0 0 0)) (i32.const 0)) +(assert_return (invoke "i16x8.all_true" (v128.const i32x4 0 0 1 0 0 0 0 0)) (i32.const 0)) +(assert_return (invoke "i16x8.all_true" (v128.const i32x4 1 1 1 1 1 0 1 1)) (i32.const 0)) +(assert_return (invoke "i16x8.all_true" (v128.const i32x4 1 1 1 1 1 1 1 1)) (i32.const 1)) +(assert_return (invoke "i16x8.shl" (v128.const i32x4 0 8 16 128 256 2048 4096 -32768) (i32.const 1)) (v128.const i32x4 0 16 32 256 512 4096 8192 0)) +(assert_return (invoke "i16x8.shl" (v128.const i32x4 0 8 16 128 256 2048 4096 -32768) (i32.const 16)) (v128.const i32x4 0 8 16 128 256 2048 4096 -32768)) +(assert_return (invoke "i16x8.shr_u" (v128.const i32x4 0 8 16 128 256 2048 4096 -32768) (i32.const 1)) (v128.const i32x4 0 4 8 64 128 1024 2048 16384)) +(assert_return (invoke "i16x8.shr_u" (v128.const i32x4 0 8 16 128 256 2048 4096 -32768) (i32.const 16)) (v128.const i32x4 0 8 16 128 256 2048 4096 -32768)) +(assert_return (invoke "i16x8.shr_s" (v128.const i32x4 0 8 16 128 256 2048 4096 -32768) (i32.const 1)) (v128.const i32x4 0 4 8 64 128 1024 2048 -16384)) +(assert_return (invoke "i16x8.shr_s" (v128.const i32x4 0 8 16 128 256 2048 4096 -32768) (i32.const 16)) (v128.const i32x4 0 8 16 128 256 2048 4096 -32768)) (assert_return (invoke "i16x8.add" - (v128.const i32 0 65280 32768 32512 33024 59136 64000 32766) - (v128.const i32 768 1 32768 33024 1536 18688 65280 2) + (v128.const i32x4 0 65280 32768 32512 33024 59136 64000 32766) + (v128.const i32x4 768 1 32768 33024 1536 18688 65280 2) ) - (v128.const i32 768 65281 0 0 34560 12288 63744 32768) + (v128.const i32x4 768 65281 0 0 34560 12288 63744 32768) ) (assert_return (invoke "i16x8.add_saturate_s" - (v128.const i32 0 65280 32768 32512 33024 59136 64000 32766) - (v128.const i32 768 1 32768 33024 1536 18688 65280 2) + (v128.const i32x4 0 65280 32768 32512 33024 59136 64000 32766) + (v128.const i32x4 768 1 32768 33024 1536 18688 65280 2) ) - (v128.const i32 768 65281 32768 0 34560 12288 63744 32767) + (v128.const i32x4 768 65281 32768 0 34560 12288 63744 32767) ) (assert_return (invoke "i16x8.add_saturate_u" - (v128.const i32 0 65280 32768 32512 33024 59136 64000 32766) - (v128.const i32 768 1 32768 33024 1536 18688 65280 2) + (v128.const i32x4 0 65280 32768 32512 33024 59136 64000 32766) + (v128.const i32x4 768 1 32768 33024 1536 18688 65280 2) ) - (v128.const i32 768 65281 65535 65535 34560 65535 65535 32768) + (v128.const i32x4 768 65281 65535 65535 34560 65535 65535 32768) ) (assert_return (invoke "i16x8.sub" - (v128.const i32 0 65280 32768 32512 33024 59136 64000 32766) - (v128.const i32 768 1 32768 33024 1536 18688 65280 2) + (v128.const i32x4 0 65280 32768 32512 33024 59136 64000 32766) + (v128.const i32x4 768 1 32768 33024 1536 18688 65280 2) ) - (v128.const i32 64768 65279 0 65024 31488 40448 64256 32764) + (v128.const i32x4 64768 65279 0 65024 31488 40448 64256 32764) ) (assert_return (invoke "i16x8.sub_saturate_s" - (v128.const i32 0 65280 32768 32512 33024 59136 64000 32766) - (v128.const i32 768 1 32768 33024 1536 18688 65280 2) + (v128.const i32x4 0 65280 32768 32512 33024 59136 64000 32766) + (v128.const i32x4 768 1 32768 33024 1536 18688 65280 2) ) - (v128.const i32 64768 65279 0 32767 32768 40448 64256 32764) + (v128.const i32x4 64768 65279 0 32767 32768 40448 64256 32764) ) (assert_return (invoke "i16x8.sub_saturate_u" - (v128.const i32 0 65280 32768 32512 33024 59136 64000 32766) - (v128.const i32 768 1 32768 33024 1536 18688 65280 2) + (v128.const i32x4 0 65280 32768 32512 33024 59136 64000 32766) + (v128.const i32x4 768 1 32768 33024 1536 18688 65280 2) ) - (v128.const i32 0 65279 0 0 31488 40448 0 32764) + (v128.const i32x4 0 65279 0 0 31488 40448 0 32764) ) (assert_return (invoke "i16x8.mul" - (v128.const i32 0 65280 32768 32512 33024 59136 64000 32766) - (v128.const i32 768 1 32768 33024 1536 18688 65280 2) + (v128.const i32x4 0 65280 32768 32512 33024 59136 64000 32766) + (v128.const i32x4 768 1 32768 33024 1536 18688 65280 2) ) - (v128.const i32 0 65280 0 0 0 0 0 65532) + (v128.const i32x4 0 65280 0 0 0 0 0 65532) ) ;; i32x4 arithmetic -(assert_return (invoke "i32x4.neg" (v128.const i32 0 1 0x80000000 0x7fffffff)) (v128.const i32 0 -1 0x80000000 0x80000001)) -(assert_return (invoke "i32x4.any_true" (v128.const i32 0 0 0 0)) (i32.const 0)) -(assert_return (invoke "i32x4.any_true" (v128.const i32 0 0 1 0)) (i32.const 1)) -(assert_return (invoke "i32x4.any_true" (v128.const i32 1 0 1 1)) (i32.const 1)) -(assert_return (invoke "i32x4.any_true" (v128.const i32 1 1 1 1)) (i32.const 1)) -(assert_return (invoke "i32x4.all_true" (v128.const i32 0 0 0 0)) (i32.const 0)) -(assert_return (invoke "i32x4.all_true" (v128.const i32 0 0 1 0)) (i32.const 0)) -(assert_return (invoke "i32x4.all_true" (v128.const i32 1 0 1 1)) (i32.const 0)) -(assert_return (invoke "i32x4.all_true" (v128.const i32 1 1 1 1)) (i32.const 1)) -(assert_return (invoke "i32x4.shl" (v128.const i32 1 0x40000000 0x80000000 -1) (i32.const 1)) (v128.const i32 2 0x80000000 0 -2)) -(assert_return (invoke "i32x4.shl" (v128.const i32 1 0x40000000 0x80000000 -1) (i32.const 32)) (v128.const i32 1 0x40000000 0x80000000 -1)) -(assert_return (invoke "i32x4.shr_s" (v128.const i32 1 0x40000000 0x80000000 -1) (i32.const 1)) (v128.const i32 0 0x20000000 0xc0000000 -1)) -(assert_return (invoke "i32x4.shr_s" (v128.const i32 1 0x40000000 0x80000000 -1) (i32.const 32)) (v128.const i32 1 0x40000000 0x80000000 -1)) -(assert_return (invoke "i32x4.shr_u" (v128.const i32 1 0x40000000 0x80000000 -1) (i32.const 1)) (v128.const i32 0 0x20000000 0x40000000 0x7fffffff)) -(assert_return (invoke "i32x4.shr_u" (v128.const i32 1 0x40000000 0x80000000 -1) (i32.const 32)) (v128.const i32 1 0x40000000 0x80000000 -1)) -(assert_return (invoke "i32x4.add" (v128.const i32 0 0x80000001 42 5) (v128.const i32 0 0x80000001 5 42)) (v128.const i32 0 2 47 47)) -(assert_return (invoke "i32x4.sub" (v128.const i32 0 2 47 47) (v128.const i32 0 0x80000001 42 5)) (v128.const i32 0 0x80000001 5 42)) -(assert_return (invoke "i32x4.mul" (v128.const i32 0 0x80000001 42 5) (v128.const i32 0 0x80000001 42 5)) (v128.const i32 0 1 1764 25)) +(assert_return (invoke "i32x4.neg" (v128.const i32x4 0 1 0x80000000 0x7fffffff)) (v128.const i32x4 0 -1 0x80000000 0x80000001)) +(assert_return (invoke "i32x4.any_true" (v128.const i32x4 0 0 0 0)) (i32.const 0)) +(assert_return (invoke "i32x4.any_true" (v128.const i32x4 0 0 1 0)) (i32.const 1)) +(assert_return (invoke "i32x4.any_true" (v128.const i32x4 1 0 1 1)) (i32.const 1)) +(assert_return (invoke "i32x4.any_true" (v128.const i32x4 1 1 1 1)) (i32.const 1)) +(assert_return (invoke "i32x4.all_true" (v128.const i32x4 0 0 0 0)) (i32.const 0)) +(assert_return (invoke "i32x4.all_true" (v128.const i32x4 0 0 1 0)) (i32.const 0)) +(assert_return (invoke "i32x4.all_true" (v128.const i32x4 1 0 1 1)) (i32.const 0)) +(assert_return (invoke "i32x4.all_true" (v128.const i32x4 1 1 1 1)) (i32.const 1)) +(assert_return (invoke "i32x4.shl" (v128.const i32x4 1 0x40000000 0x80000000 -1) (i32.const 1)) (v128.const i32x4 2 0x80000000 0 -2)) +(assert_return (invoke "i32x4.shl" (v128.const i32x4 1 0x40000000 0x80000000 -1) (i32.const 32)) (v128.const i32x4 1 0x40000000 0x80000000 -1)) +(assert_return (invoke "i32x4.shr_s" (v128.const i32x4 1 0x40000000 0x80000000 -1) (i32.const 1)) (v128.const i32x4 0 0x20000000 0xc0000000 -1)) +(assert_return (invoke "i32x4.shr_s" (v128.const i32x4 1 0x40000000 0x80000000 -1) (i32.const 32)) (v128.const i32x4 1 0x40000000 0x80000000 -1)) +(assert_return (invoke "i32x4.shr_u" (v128.const i32x4 1 0x40000000 0x80000000 -1) (i32.const 1)) (v128.const i32x4 0 0x20000000 0x40000000 0x7fffffff)) +(assert_return (invoke "i32x4.shr_u" (v128.const i32x4 1 0x40000000 0x80000000 -1) (i32.const 32)) (v128.const i32x4 1 0x40000000 0x80000000 -1)) +(assert_return (invoke "i32x4.add" (v128.const i32x4 0 0x80000001 42 5) (v128.const i32x4 0 0x80000001 5 42)) (v128.const i32x4 0 2 47 47)) +(assert_return (invoke "i32x4.sub" (v128.const i32x4 0 2 47 47) (v128.const i32x4 0 0x80000001 42 5)) (v128.const i32x4 0 0x80000001 5 42)) +(assert_return (invoke "i32x4.mul" (v128.const i32x4 0 0x80000001 42 5) (v128.const i32x4 0 0x80000001 42 5)) (v128.const i32x4 0 1 1764 25)) ;; i64x2 arithmetic -(assert_return (invoke "i64x2.neg" (v128.const i64 0x8000000000000000 42)) (v128.const i64 0x8000000000000000 -42)) -(assert_return (invoke "i64x2.any_true" (v128.const i64 0 0)) (i32.const 0)) -(assert_return (invoke "i64x2.any_true" (v128.const i64 1 0)) (i32.const 1)) -(assert_return (invoke "i64x2.any_true" (v128.const i64 1 1)) (i32.const 1)) -(assert_return (invoke "i64x2.all_true" (v128.const i64 0 0)) (i32.const 0)) -(assert_return (invoke "i64x2.all_true" (v128.const i64 1 0)) (i32.const 0)) -(assert_return (invoke "i64x2.all_true" (v128.const i64 1 1)) (i32.const 1)) -(assert_return (invoke "i64x2.shl" (v128.const i64 1 0x8000000000000000) (i32.const 1)) (v128.const i64 2 0)) -(assert_return (invoke "i64x2.shl" (v128.const i64 1 0x8000000000000000) (i32.const 64)) (v128.const i64 1 0x8000000000000000)) -(assert_return (invoke "i64x2.shr_s" (v128.const i64 1 0x8000000000000000) (i32.const 1)) (v128.const i64 0 0xc000000000000000)) -(assert_return (invoke "i64x2.shr_s" (v128.const i64 1 0x8000000000000000) (i32.const 64)) (v128.const i64 1 0x8000000000000000)) -(assert_return (invoke "i64x2.shr_u" (v128.const i64 1 0x8000000000000000) (i32.const 1)) (v128.const i64 0 0x4000000000000000)) -(assert_return (invoke "i64x2.shr_u" (v128.const i64 1 0x8000000000000000) (i32.const 64)) (v128.const i64 1 0x8000000000000000)) -(assert_return (invoke "i64x2.add" (v128.const i64 0x8000000000000001 42) (v128.const i64 0x8000000000000001 0)) (v128.const i64 2 42)) -(assert_return (invoke "i64x2.sub" (v128.const i64 2 42) (v128.const i64 0x8000000000000001 0)) (v128.const i64 0x8000000000000001 42)) +(assert_return (invoke "i64x2.neg" (v128.const i64x2 0x8000000000000000 42)) (v128.const i64x2 0x8000000000000000 -42)) +(assert_return (invoke "i64x2.any_true" (v128.const i64x2 0 0)) (i32.const 0)) +(assert_return (invoke "i64x2.any_true" (v128.const i64x2 1 0)) (i32.const 1)) +(assert_return (invoke "i64x2.any_true" (v128.const i64x2 1 1)) (i32.const 1)) +(assert_return (invoke "i64x2.all_true" (v128.const i64x2 0 0)) (i32.const 0)) +(assert_return (invoke "i64x2.all_true" (v128.const i64x2 1 0)) (i32.const 0)) +(assert_return (invoke "i64x2.all_true" (v128.const i64x2 1 1)) (i32.const 1)) +(assert_return (invoke "i64x2.shl" (v128.const i64x2 1 0x8000000000000000) (i32.const 1)) (v128.const i64x2 2 0)) +(assert_return (invoke "i64x2.shl" (v128.const i64x2 1 0x8000000000000000) (i32.const 64)) (v128.const i64x2 1 0x8000000000000000)) +(assert_return (invoke "i64x2.shr_s" (v128.const i64x2 1 0x8000000000000000) (i32.const 1)) (v128.const i64x2 0 0xc000000000000000)) +(assert_return (invoke "i64x2.shr_s" (v128.const i64x2 1 0x8000000000000000) (i32.const 64)) (v128.const i64x2 1 0x8000000000000000)) +(assert_return (invoke "i64x2.shr_u" (v128.const i64x2 1 0x8000000000000000) (i32.const 1)) (v128.const i64x2 0 0x4000000000000000)) +(assert_return (invoke "i64x2.shr_u" (v128.const i64x2 1 0x8000000000000000) (i32.const 64)) (v128.const i64x2 1 0x8000000000000000)) +(assert_return (invoke "i64x2.add" (v128.const i64x2 0x8000000000000001 42) (v128.const i64x2 0x8000000000000001 0)) (v128.const i64x2 2 42)) +(assert_return (invoke "i64x2.sub" (v128.const i64x2 2 42) (v128.const i64x2 0x8000000000000001 0)) (v128.const i64x2 0x8000000000000001 42)) ;; f32x4 arithmetic -(assert_return (invoke "f32x4.abs" (v128.const f32 -0 nan -infinity 5)) (v128.const f32 0 nan infinity 5)) -(assert_return (invoke "f32x4.neg" (v128.const f32 -0 nan -infinity 5)) (v128.const f32 0 -nan infinity -5)) -(assert_return (invoke "f32x4.sqrt" (v128.const f32 -0 nan infinity 4)) (v128.const f32 -0 nan infinity 2)) -(assert_return (invoke "f32x4.add" (v128.const f32 nan -nan infinity 42) (v128.const f32 42 infinity infinity 1)) (v128.const f32 nan -nan infinity 43)) -(assert_return (invoke "f32x4.sub" (v128.const f32 nan -nan infinity 42) (v128.const f32 42 infinity -infinity 1)) (v128.const f32 nan -nan infinity 41)) -(assert_return (invoke "f32x4.mul" (v128.const f32 nan -nan infinity 42) (v128.const f32 42 infinity infinity 2)) (v128.const f32 nan -nan infinity 84)) -(assert_return (invoke "f32x4.div" (v128.const f32 nan -nan infinity 42) (v128.const f32 42 infinity 2 2)) (v128.const f32 nan -nan infinity 21)) -(assert_return (invoke "f32x4.min" (v128.const f32 -0 0 nan 5) (v128.const f32 0 -0 5 nan)) (v128.const f32 -0 -0 nan nan)) -(assert_return (invoke "f32x4.max" (v128.const f32 -0 0 nan 5) (v128.const f32 0 -0 5 nan)) (v128.const f32 0 0 nan nan)) +(assert_return (invoke "f32x4.abs" (v128.const f32x4 -0 nan -infinity 5)) (v128.const f32x4 0 nan infinity 5)) +(assert_return (invoke "f32x4.neg" (v128.const f32x4 -0 nan -infinity 5)) (v128.const f32x4 0 -nan infinity -5)) +(assert_return (invoke "f32x4.sqrt" (v128.const f32x4 -0 nan infinity 4)) (v128.const f32x4 -0 nan infinity 2)) +(assert_return (invoke "f32x4.add" (v128.const f32x4 nan -nan infinity 42) (v128.const f32x4 42 infinity infinity 1)) (v128.const f32x4 nan -nan infinity 43)) +(assert_return (invoke "f32x4.sub" (v128.const f32x4 nan -nan infinity 42) (v128.const f32x4 42 infinity -infinity 1)) (v128.const f32x4 nan -nan infinity 41)) +(assert_return (invoke "f32x4.mul" (v128.const f32x4 nan -nan infinity 42) (v128.const f32x4 42 infinity infinity 2)) (v128.const f32x4 nan -nan infinity 84)) +(assert_return (invoke "f32x4.div" (v128.const f32x4 nan -nan infinity 42) (v128.const f32x4 42 infinity 2 2)) (v128.const f32x4 nan -nan infinity 21)) +(assert_return (invoke "f32x4.min" (v128.const f32x4 -0 0 nan 5) (v128.const f32x4 0 -0 5 nan)) (v128.const f32x4 -0 -0 nan nan)) +(assert_return (invoke "f32x4.max" (v128.const f32x4 -0 0 nan 5) (v128.const f32x4 0 -0 5 nan)) (v128.const f32x4 0 0 nan nan)) ;; f64x2 arithmetic -(assert_return (invoke "f64x2.abs" (v128.const f64 -0 nan)) (v128.const f64 0 nan)) -(assert_return (invoke "f64x2.abs" (v128.const f64 -infinity 5)) (v128.const f64 infinity 5)) -(assert_return (invoke "f64x2.neg" (v128.const f64 -0 nan)) (v128.const f64 0 -nan)) -(assert_return (invoke "f64x2.neg" (v128.const f64 -infinity 5)) (v128.const f64 infinity -5)) -(assert_return (invoke "f64x2.sqrt" (v128.const f64 -0 nan)) (v128.const f64 -0 nan)) -(assert_return (invoke "f64x2.sqrt" (v128.const f64 infinity 4)) (v128.const f64 infinity 2)) -(assert_return (invoke "f64x2.add" (v128.const f64 nan -nan) (v128.const f64 42 infinity)) (v128.const f64 nan -nan)) -(assert_return (invoke "f64x2.add" (v128.const f64 infinity 42) (v128.const f64 infinity 1)) (v128.const f64 infinity 43)) -(assert_return (invoke "f64x2.sub" (v128.const f64 nan -nan) (v128.const f64 42 infinity)) (v128.const f64 nan -nan)) -(assert_return (invoke "f64x2.sub" (v128.const f64 infinity 42) (v128.const f64 -infinity 1)) (v128.const f64 infinity 41)) -(assert_return (invoke "f64x2.mul" (v128.const f64 nan -nan) (v128.const f64 42 infinity)) (v128.const f64 nan -nan)) -(assert_return (invoke "f64x2.mul" (v128.const f64 infinity 42) (v128.const f64 infinity 2)) (v128.const f64 infinity 84)) -(assert_return (invoke "f64x2.div" (v128.const f64 nan -nan) (v128.const f64 42 infinity)) (v128.const f64 nan -nan)) -(assert_return (invoke "f64x2.div" (v128.const f64 infinity 42) (v128.const f64 2 2)) (v128.const f64 infinity 21)) -(assert_return (invoke "f64x2.min" (v128.const f64 -0 0) (v128.const f64 0 -0)) (v128.const f64 -0 -0)) -(assert_return (invoke "f64x2.min" (v128.const f64 nan 5) (v128.const f64 5 nan)) (v128.const f64 nan nan)) -(assert_return (invoke "f64x2.max" (v128.const f64 -0 0) (v128.const f64 0 -0)) (v128.const f64 0 0)) -(assert_return (invoke "f64x2.max" (v128.const f64 nan 5) (v128.const f64 5 nan)) (v128.const f64 nan nan)) +(assert_return (invoke "f64x2.abs" (v128.const f64x2 -0 nan)) (v128.const f64x2 0 nan)) +(assert_return (invoke "f64x2.abs" (v128.const f64x2 -infinity 5)) (v128.const f64x2 infinity 5)) +(assert_return (invoke "f64x2.neg" (v128.const f64x2 -0 nan)) (v128.const f64x2 0 -nan)) +(assert_return (invoke "f64x2.neg" (v128.const f64x2 -infinity 5)) (v128.const f64x2 infinity -5)) +(assert_return (invoke "f64x2.sqrt" (v128.const f64x2 -0 nan)) (v128.const f64x2 -0 nan)) +(assert_return (invoke "f64x2.sqrt" (v128.const f64x2 infinity 4)) (v128.const f64x2 infinity 2)) +(assert_return (invoke "f64x2.add" (v128.const f64x2 nan -nan) (v128.const f64x2 42 infinity)) (v128.const f64x2 nan -nan)) +(assert_return (invoke "f64x2.add" (v128.const f64x2 infinity 42) (v128.const f64x2 infinity 1)) (v128.const f64x2 infinity 43)) +(assert_return (invoke "f64x2.sub" (v128.const f64x2 nan -nan) (v128.const f64x2 42 infinity)) (v128.const f64x2 nan -nan)) +(assert_return (invoke "f64x2.sub" (v128.const f64x2 infinity 42) (v128.const f64x2 -infinity 1)) (v128.const f64x2 infinity 41)) +(assert_return (invoke "f64x2.mul" (v128.const f64x2 nan -nan) (v128.const f64x2 42 infinity)) (v128.const f64x2 nan -nan)) +(assert_return (invoke "f64x2.mul" (v128.const f64x2 infinity 42) (v128.const f64x2 infinity 2)) (v128.const f64x2 infinity 84)) +(assert_return (invoke "f64x2.div" (v128.const f64x2 nan -nan) (v128.const f64x2 42 infinity)) (v128.const f64x2 nan -nan)) +(assert_return (invoke "f64x2.div" (v128.const f64x2 infinity 42) (v128.const f64x2 2 2)) (v128.const f64x2 infinity 21)) +(assert_return (invoke "f64x2.min" (v128.const f64x2 -0 0) (v128.const f64x2 0 -0)) (v128.const f64x2 -0 -0)) +(assert_return (invoke "f64x2.min" (v128.const f64x2 nan 5) (v128.const f64x2 5 nan)) (v128.const f64x2 nan nan)) +(assert_return (invoke "f64x2.max" (v128.const f64x2 -0 0) (v128.const f64x2 0 -0)) (v128.const f64x2 0 0)) +(assert_return (invoke "f64x2.max" (v128.const f64x2 nan 5) (v128.const f64x2 5 nan)) (v128.const f64x2 nan nan)) ;; conversions -(assert_return (invoke "i32x4.trunc_sat_f32x4_s" (v128.const f32 42 nan infinity -infinity)) (v128.const i32 42 0 2147483647 -2147483648)) -(assert_return (invoke "i32x4.trunc_sat_f32x4_u" (v128.const f32 42 nan infinity -infinity)) (v128.const i32 42 0 4294967295 0)) -(assert_return (invoke "i64x2.trunc_sat_f64x2_s" (v128.const f64 42 nan)) (v128.const i64 42 0)) -(assert_return (invoke "i64x2.trunc_sat_f64x2_s" (v128.const f64 infinity -infinity)) (v128.const i64 9223372036854775807 -9223372036854775808)) -(assert_return (invoke "i64x2.trunc_sat_f64x2_u" (v128.const f64 42 nan)) (v128.const i64 42 0)) -(assert_return (invoke "i64x2.trunc_sat_f64x2_u" (v128.const f64 infinity -infinity)) (v128.const i64 18446744073709551615 0)) -(assert_return (invoke "f32x4.convert_i32x4_s" (v128.const i32 0 -1 2147483647 -2147483648)) (v128.const f32 0 -1 2147483648 -2147483648)) -(assert_return (invoke "f32x4.convert_i32x4_u" (v128.const i32 0 -1 2147483647 -2147483648)) (v128.const f32 0 4294967296 2147483648 2147483648)) -(assert_return (invoke "f64x2.convert_i64x2_s" (v128.const i64 0 -1)) (v128.const f64 0 -1)) -(assert_return (invoke "f64x2.convert_i64x2_s" (v128.const i64 9223372036854775807 -9223372036854775808)) (v128.const f64 9223372036854775807 -9223372036854775808)) -(assert_return (invoke "f64x2.convert_i64x2_u" (v128.const i64 0 -1)) (v128.const f64 0 18446744073709551616)) -(assert_return (invoke "f64x2.convert_i64x2_u" (v128.const i64 9223372036854775807 -9223372036854775808)) (v128.const f64 9223372036854775807 9223372036854775808)) +(assert_return (invoke "i32x4.trunc_sat_f32x4_s" (v128.const f32x4 42 nan infinity -infinity)) (v128.const i32x4 42 0 2147483647 -2147483648)) +(assert_return (invoke "i32x4.trunc_sat_f32x4_u" (v128.const f32x4 42 nan infinity -infinity)) (v128.const i32x4 42 0 4294967295 0)) +(assert_return (invoke "i64x2.trunc_sat_f64x2_s" (v128.const f64x2 42 nan)) (v128.const i64x2 42 0)) +(assert_return (invoke "i64x2.trunc_sat_f64x2_s" (v128.const f64x2 infinity -infinity)) (v128.const i64x2 9223372036854775807 -9223372036854775808)) +(assert_return (invoke "i64x2.trunc_sat_f64x2_u" (v128.const f64x2 42 nan)) (v128.const i64x2 42 0)) +(assert_return (invoke "i64x2.trunc_sat_f64x2_u" (v128.const f64x2 infinity -infinity)) (v128.const i64x2 18446744073709551615 0)) +(assert_return (invoke "f32x4.convert_i32x4_s" (v128.const i32x4 0 -1 2147483647 -2147483648)) (v128.const f32x4 0 -1 2147483648 -2147483648)) +(assert_return (invoke "f32x4.convert_i32x4_u" (v128.const i32x4 0 -1 2147483647 -2147483648)) (v128.const f32x4 0 4294967296 2147483648 2147483648)) +(assert_return (invoke "f64x2.convert_i64x2_s" (v128.const i64x2 0 -1)) (v128.const f64x2 0 -1)) +(assert_return (invoke "f64x2.convert_i64x2_s" (v128.const i64x2 9223372036854775807 -9223372036854775808)) (v128.const f64x2 9223372036854775807 -9223372036854775808)) +(assert_return (invoke "f64x2.convert_i64x2_u" (v128.const i64x2 0 -1)) (v128.const f64x2 0 18446744073709551616)) +(assert_return (invoke "f64x2.convert_i64x2_u" (v128.const i64x2 9223372036854775807 -9223372036854775808)) (v128.const f64x2 9223372036854775807 9223372036854775808)) |