diff options
Diffstat (limited to 'test/lit/basic/relaxed-simd.wast')
-rw-r--r-- | test/lit/basic/relaxed-simd.wast | 594 |
1 files changed, 303 insertions, 291 deletions
diff --git a/test/lit/basic/relaxed-simd.wast b/test/lit/basic/relaxed-simd.wast index d20e5c42b..0024d5b93 100644 --- a/test/lit/basic/relaxed-simd.wast +++ b/test/lit/basic/relaxed-simd.wast @@ -1,30 +1,17 @@ ;; NOTE: Assertions have been generated by update_lit_checks.py --all-items and should not be edited. +;; RUN: wasm-opt %s -all -o %t.text.wast -g -S ;; RUN: wasm-as %s -all -g -o %t.wasm -;; RUN: wasm-dis %t.wasm -all -o %t.wast +;; RUN: wasm-dis %t.wasm -all -o %t.bin.wast ;; RUN: wasm-as %s -all -o %t.nodebug.wasm -;; RUN: wasm-dis %t.nodebug.wasm -all -o %t.nodebug.wast -;; RUN: wasm-opt %t.wast -all -o %t.text.wast -g -S -;; RUN: cat %t.wast | filecheck %s --check-prefix=CHECK-BINARY -;; RUN: cat %t.nodebug.wast | filecheck %s --check-prefix=CHECK-NODEBUG +;; RUN: wasm-dis %t.nodebug.wasm -all -o %t.bin.nodebug.wast ;; RUN: cat %t.text.wast | filecheck %s --check-prefix=CHECK-TEXT +;; RUN: cat %t.bin.wast | filecheck %s --check-prefix=CHECK-BIN +;; RUN: cat %t.bin.nodebug.wast | filecheck %s --check-prefix=CHECK-BIN-NODEBUG + (module (memory 1 1) - ;; CHECK-BINARY: (type $0 (func (param v128 v128 v128) (result v128))) - - ;; CHECK-BINARY: (type $1 (func (param v128 v128) (result v128))) - - ;; CHECK-BINARY: (type $2 (func (param v128) (result v128))) - - ;; CHECK-BINARY: (memory $0 1 1) - - ;; CHECK-BINARY: (func $i8x16.relaxed_swizzle (type $1) (param $0 v128) (param $1 v128) (result v128) - ;; CHECK-BINARY-NEXT: (i8x16.relaxed_swizzle - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: (local.get $1) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) ;; CHECK-TEXT: (type $0 (func (param v128 v128 v128) (result v128))) ;; CHECK-TEXT: (type $1 (func (param v128 v128) (result v128))) @@ -39,6 +26,20 @@ ;; CHECK-TEXT-NEXT: (local.get $1) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (type $0 (func (param v128 v128 v128) (result v128))) + + ;; CHECK-BIN: (type $1 (func (param v128 v128) (result v128))) + + ;; CHECK-BIN: (type $2 (func (param v128) (result v128))) + + ;; CHECK-BIN: (memory $0 1 1) + + ;; CHECK-BIN: (func $i8x16.relaxed_swizzle (type $1) (param $0 v128) (param $1 v128) (result v128) + ;; CHECK-BIN-NEXT: (i8x16.relaxed_swizzle + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: (local.get $1) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $i8x16.relaxed_swizzle (param $0 v128) (param $1 v128) (result v128) (i8x16.relaxed_swizzle (local.get $0) @@ -46,74 +47,70 @@ ) ) - ;; CHECK-BINARY: (func $i32x4.relaxed_trunc_f32x4_s (type $2) (param $0 v128) (result v128) - ;; CHECK-BINARY-NEXT: (i32x4.relaxed_trunc_f32x4_s - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) ;; CHECK-TEXT: (func $i32x4.relaxed_trunc_f32x4_s (type $2) (param $0 v128) (result v128) ;; CHECK-TEXT-NEXT: (i32x4.relaxed_trunc_f32x4_s ;; CHECK-TEXT-NEXT: (local.get $0) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $i32x4.relaxed_trunc_f32x4_s (type $2) (param $0 v128) (result v128) + ;; CHECK-BIN-NEXT: (i32x4.relaxed_trunc_f32x4_s + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $i32x4.relaxed_trunc_f32x4_s (param $0 v128) (result v128) (i32x4.relaxed_trunc_f32x4_s (local.get $0) ) ) - ;; CHECK-BINARY: (func $i32x4.relaxed_trunc_f32x4_u (type $2) (param $0 v128) (result v128) - ;; CHECK-BINARY-NEXT: (i32x4.relaxed_trunc_f32x4_u - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) + ;; CHECK-TEXT: (func $i32x4.relaxed_trunc_f32x4_u (type $2) (param $0 v128) (result v128) ;; CHECK-TEXT-NEXT: (i32x4.relaxed_trunc_f32x4_u ;; CHECK-TEXT-NEXT: (local.get $0) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $i32x4.relaxed_trunc_f32x4_u (type $2) (param $0 v128) (result v128) + ;; CHECK-BIN-NEXT: (i32x4.relaxed_trunc_f32x4_u + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $i32x4.relaxed_trunc_f32x4_u (param $0 v128) (result v128) (i32x4.relaxed_trunc_f32x4_u (local.get $0) ) ) - ;; CHECK-BINARY: (func $i32x4.relaxed_trunc_f64x2_s_zero (type $2) (param $0 v128) (result v128) - ;; CHECK-BINARY-NEXT: (i32x4.relaxed_trunc_f64x2_s_zero - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) + ;; CHECK-TEXT: (func $i32x4.relaxed_trunc_f64x2_s_zero (type $2) (param $0 v128) (result v128) ;; CHECK-TEXT-NEXT: (i32x4.relaxed_trunc_f64x2_s_zero ;; CHECK-TEXT-NEXT: (local.get $0) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $i32x4.relaxed_trunc_f64x2_s_zero (type $2) (param $0 v128) (result v128) + ;; CHECK-BIN-NEXT: (i32x4.relaxed_trunc_f64x2_s_zero + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $i32x4.relaxed_trunc_f64x2_s_zero (param $0 v128) (result v128) (i32x4.relaxed_trunc_f64x2_s_zero (local.get $0) ) ) - ;; CHECK-BINARY: (func $i32x4.relaxed_trunc_f64x2_u_zero (type $2) (param $0 v128) (result v128) - ;; CHECK-BINARY-NEXT: (i32x4.relaxed_trunc_f64x2_u_zero - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) + ;; CHECK-TEXT: (func $i32x4.relaxed_trunc_f64x2_u_zero (type $2) (param $0 v128) (result v128) ;; CHECK-TEXT-NEXT: (i32x4.relaxed_trunc_f64x2_u_zero ;; CHECK-TEXT-NEXT: (local.get $0) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $i32x4.relaxed_trunc_f64x2_u_zero (type $2) (param $0 v128) (result v128) + ;; CHECK-BIN-NEXT: (i32x4.relaxed_trunc_f64x2_u_zero + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $i32x4.relaxed_trunc_f64x2_u_zero (param $0 v128) (result v128) (i32x4.relaxed_trunc_f64x2_u_zero (local.get $0) ) ) - ;; CHECK-BINARY: (func $f32x4.relaxed_fma (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) - ;; CHECK-BINARY-NEXT: (f32x4.relaxed_fma - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: (local.get $1) - ;; CHECK-BINARY-NEXT: (local.get $2) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) ;; CHECK-TEXT: (func $f32x4.relaxed_fma (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) ;; CHECK-TEXT-NEXT: (f32x4.relaxed_fma ;; CHECK-TEXT-NEXT: (local.get $0) @@ -121,6 +118,13 @@ ;; CHECK-TEXT-NEXT: (local.get $2) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $f32x4.relaxed_fma (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) + ;; CHECK-BIN-NEXT: (f32x4.relaxed_fma + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: (local.get $1) + ;; CHECK-BIN-NEXT: (local.get $2) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $f32x4.relaxed_fma (param $0 v128) (param $1 v128) (param $2 v128) (result v128) (f32x4.relaxed_fma (local.get $0) @@ -128,13 +132,7 @@ (local.get $2) ) ) - ;; CHECK-BINARY: (func $f32x4.relaxed_fms (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) - ;; CHECK-BINARY-NEXT: (f32x4.relaxed_fms - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: (local.get $1) - ;; CHECK-BINARY-NEXT: (local.get $2) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) + ;; CHECK-TEXT: (func $f32x4.relaxed_fms (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) ;; CHECK-TEXT-NEXT: (f32x4.relaxed_fms ;; CHECK-TEXT-NEXT: (local.get $0) @@ -142,6 +140,13 @@ ;; CHECK-TEXT-NEXT: (local.get $2) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $f32x4.relaxed_fms (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) + ;; CHECK-BIN-NEXT: (f32x4.relaxed_fms + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: (local.get $1) + ;; CHECK-BIN-NEXT: (local.get $2) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $f32x4.relaxed_fms (param $0 v128) (param $1 v128) (param $2 v128) (result v128) (f32x4.relaxed_fms (local.get $0) @@ -149,13 +154,7 @@ (local.get $2) ) ) - ;; CHECK-BINARY: (func $f64x2.relaxed_fma (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) - ;; CHECK-BINARY-NEXT: (f64x2.relaxed_fma - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: (local.get $1) - ;; CHECK-BINARY-NEXT: (local.get $2) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) + ;; CHECK-TEXT: (func $f64x2.relaxed_fma (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) ;; CHECK-TEXT-NEXT: (f64x2.relaxed_fma ;; CHECK-TEXT-NEXT: (local.get $0) @@ -163,6 +162,13 @@ ;; CHECK-TEXT-NEXT: (local.get $2) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $f64x2.relaxed_fma (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) + ;; CHECK-BIN-NEXT: (f64x2.relaxed_fma + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: (local.get $1) + ;; CHECK-BIN-NEXT: (local.get $2) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $f64x2.relaxed_fma (param $0 v128) (param $1 v128) (param $2 v128) (result v128) (f64x2.relaxed_fma (local.get $0) @@ -170,13 +176,7 @@ (local.get $2) ) ) - ;; CHECK-BINARY: (func $f64x2.relaxed_fms (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) - ;; CHECK-BINARY-NEXT: (f64x2.relaxed_fms - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: (local.get $1) - ;; CHECK-BINARY-NEXT: (local.get $2) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) + ;; CHECK-TEXT: (func $f64x2.relaxed_fms (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) ;; CHECK-TEXT-NEXT: (f64x2.relaxed_fms ;; CHECK-TEXT-NEXT: (local.get $0) @@ -184,6 +184,13 @@ ;; CHECK-TEXT-NEXT: (local.get $2) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $f64x2.relaxed_fms (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) + ;; CHECK-BIN-NEXT: (f64x2.relaxed_fms + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: (local.get $1) + ;; CHECK-BIN-NEXT: (local.get $2) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $f64x2.relaxed_fms (param $0 v128) (param $1 v128) (param $2 v128) (result v128) (f64x2.relaxed_fms (local.get $0) @@ -192,13 +199,6 @@ ) ) - ;; CHECK-BINARY: (func $i8x16.laneselect (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) - ;; CHECK-BINARY-NEXT: (i8x16.laneselect - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: (local.get $1) - ;; CHECK-BINARY-NEXT: (local.get $2) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) ;; CHECK-TEXT: (func $i8x16.laneselect (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) ;; CHECK-TEXT-NEXT: (i8x16.laneselect ;; CHECK-TEXT-NEXT: (local.get $0) @@ -206,6 +206,13 @@ ;; CHECK-TEXT-NEXT: (local.get $2) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $i8x16.laneselect (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) + ;; CHECK-BIN-NEXT: (i8x16.laneselect + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: (local.get $1) + ;; CHECK-BIN-NEXT: (local.get $2) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $i8x16.laneselect (param $0 v128) (param $1 v128) (param $2 v128) (result v128) (i8x16.laneselect (local.get $0) @@ -213,13 +220,7 @@ (local.get $2) ) ) - ;; CHECK-BINARY: (func $i16x8.laneselect (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) - ;; CHECK-BINARY-NEXT: (i16x8.laneselect - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: (local.get $1) - ;; CHECK-BINARY-NEXT: (local.get $2) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) + ;; CHECK-TEXT: (func $i16x8.laneselect (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) ;; CHECK-TEXT-NEXT: (i16x8.laneselect ;; CHECK-TEXT-NEXT: (local.get $0) @@ -227,6 +228,13 @@ ;; CHECK-TEXT-NEXT: (local.get $2) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $i16x8.laneselect (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) + ;; CHECK-BIN-NEXT: (i16x8.laneselect + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: (local.get $1) + ;; CHECK-BIN-NEXT: (local.get $2) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $i16x8.laneselect (param $0 v128) (param $1 v128) (param $2 v128) (result v128) (i16x8.laneselect (local.get $0) @@ -234,13 +242,7 @@ (local.get $2) ) ) - ;; CHECK-BINARY: (func $i32x4.laneselect (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) - ;; CHECK-BINARY-NEXT: (i32x4.laneselect - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: (local.get $1) - ;; CHECK-BINARY-NEXT: (local.get $2) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) + ;; CHECK-TEXT: (func $i32x4.laneselect (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) ;; CHECK-TEXT-NEXT: (i32x4.laneselect ;; CHECK-TEXT-NEXT: (local.get $0) @@ -248,6 +250,13 @@ ;; CHECK-TEXT-NEXT: (local.get $2) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $i32x4.laneselect (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) + ;; CHECK-BIN-NEXT: (i32x4.laneselect + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: (local.get $1) + ;; CHECK-BIN-NEXT: (local.get $2) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $i32x4.laneselect (param $0 v128) (param $1 v128) (param $2 v128) (result v128) (i32x4.laneselect (local.get $0) @@ -255,13 +264,7 @@ (local.get $2) ) ) - ;; CHECK-BINARY: (func $i64x2.laneselect (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) - ;; CHECK-BINARY-NEXT: (i64x2.laneselect - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: (local.get $1) - ;; CHECK-BINARY-NEXT: (local.get $2) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) + ;; CHECK-TEXT: (func $i64x2.laneselect (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) ;; CHECK-TEXT-NEXT: (i64x2.laneselect ;; CHECK-TEXT-NEXT: (local.get $0) @@ -269,6 +272,13 @@ ;; CHECK-TEXT-NEXT: (local.get $2) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $i64x2.laneselect (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) + ;; CHECK-BIN-NEXT: (i64x2.laneselect + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: (local.get $1) + ;; CHECK-BIN-NEXT: (local.get $2) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $i64x2.laneselect (param $0 v128) (param $1 v128) (param $2 v128) (result v128) (i64x2.laneselect (local.get $0) @@ -277,72 +287,75 @@ ) ) - ;; CHECK-BINARY: (func $f32x4.relaxed_min (type $1) (param $0 v128) (param $1 v128) (result v128) - ;; CHECK-BINARY-NEXT: (f32x4.relaxed_min - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: (local.get $1) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) ;; CHECK-TEXT: (func $f32x4.relaxed_min (type $1) (param $0 v128) (param $1 v128) (result v128) ;; CHECK-TEXT-NEXT: (f32x4.relaxed_min ;; CHECK-TEXT-NEXT: (local.get $0) ;; CHECK-TEXT-NEXT: (local.get $1) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $f32x4.relaxed_min (type $1) (param $0 v128) (param $1 v128) (result v128) + ;; CHECK-BIN-NEXT: (f32x4.relaxed_min + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: (local.get $1) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $f32x4.relaxed_min (param $0 v128) (param $1 v128) (result v128) (f32x4.relaxed_min (local.get $0) (local.get $1) ) ) - ;; CHECK-BINARY: (func $f32x4.relaxed_max (type $1) (param $0 v128) (param $1 v128) (result v128) - ;; CHECK-BINARY-NEXT: (f32x4.relaxed_max - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: (local.get $1) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) + ;; CHECK-TEXT: (func $f32x4.relaxed_max (type $1) (param $0 v128) (param $1 v128) (result v128) ;; CHECK-TEXT-NEXT: (f32x4.relaxed_max ;; CHECK-TEXT-NEXT: (local.get $0) ;; CHECK-TEXT-NEXT: (local.get $1) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $f32x4.relaxed_max (type $1) (param $0 v128) (param $1 v128) (result v128) + ;; CHECK-BIN-NEXT: (f32x4.relaxed_max + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: (local.get $1) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $f32x4.relaxed_max (param $0 v128) (param $1 v128) (result v128) (f32x4.relaxed_max (local.get $0) (local.get $1) ) ) - ;; CHECK-BINARY: (func $f64x2.relaxed_min (type $1) (param $0 v128) (param $1 v128) (result v128) - ;; CHECK-BINARY-NEXT: (f64x2.relaxed_min - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: (local.get $1) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) + ;; CHECK-TEXT: (func $f64x2.relaxed_min (type $1) (param $0 v128) (param $1 v128) (result v128) ;; CHECK-TEXT-NEXT: (f64x2.relaxed_min ;; CHECK-TEXT-NEXT: (local.get $0) ;; CHECK-TEXT-NEXT: (local.get $1) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $f64x2.relaxed_min (type $1) (param $0 v128) (param $1 v128) (result v128) + ;; CHECK-BIN-NEXT: (f64x2.relaxed_min + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: (local.get $1) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $f64x2.relaxed_min (param $0 v128) (param $1 v128) (result v128) (f64x2.relaxed_min (local.get $0) (local.get $1) ) ) - ;; CHECK-BINARY: (func $f64x2.relaxed_max (type $1) (param $0 v128) (param $1 v128) (result v128) - ;; CHECK-BINARY-NEXT: (f64x2.relaxed_max - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: (local.get $1) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) + ;; CHECK-TEXT: (func $f64x2.relaxed_max (type $1) (param $0 v128) (param $1 v128) (result v128) ;; CHECK-TEXT-NEXT: (f64x2.relaxed_max ;; CHECK-TEXT-NEXT: (local.get $0) ;; CHECK-TEXT-NEXT: (local.get $1) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $f64x2.relaxed_max (type $1) (param $0 v128) (param $1 v128) (result v128) + ;; CHECK-BIN-NEXT: (f64x2.relaxed_max + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: (local.get $1) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $f64x2.relaxed_max (param $0 v128) (param $1 v128) (result v128) (f64x2.relaxed_max (local.get $0) @@ -350,18 +363,18 @@ ) ) - ;; CHECK-BINARY: (func $i16x8.relaxed_q15mulr_s (type $1) (param $0 v128) (param $1 v128) (result v128) - ;; CHECK-BINARY-NEXT: (i16x8.relaxed_q15mulr_s - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: (local.get $1) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) ;; CHECK-TEXT: (func $i16x8.relaxed_q15mulr_s (type $1) (param $0 v128) (param $1 v128) (result v128) ;; CHECK-TEXT-NEXT: (i16x8.relaxed_q15mulr_s ;; CHECK-TEXT-NEXT: (local.get $0) ;; CHECK-TEXT-NEXT: (local.get $1) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $i16x8.relaxed_q15mulr_s (type $1) (param $0 v128) (param $1 v128) (result v128) + ;; CHECK-BIN-NEXT: (i16x8.relaxed_q15mulr_s + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: (local.get $1) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $i16x8.relaxed_q15mulr_s (param $0 v128) (param $1 v128) (result v128) (i16x8.relaxed_q15mulr_s (local.get $0) @@ -369,18 +382,18 @@ ) ) - ;; CHECK-BINARY: (func $i16x8.dot_i8x16_i7x16_s (type $1) (param $0 v128) (param $1 v128) (result v128) - ;; CHECK-BINARY-NEXT: (i16x8.dot_i8x16_i7x16_s - ;; CHECK-BINARY-NEXT: (local.get $0) - ;; CHECK-BINARY-NEXT: (local.get $1) - ;; CHECK-BINARY-NEXT: ) - ;; CHECK-BINARY-NEXT: ) ;; CHECK-TEXT: (func $i16x8.dot_i8x16_i7x16_s (type $1) (param $0 v128) (param $1 v128) (result v128) ;; CHECK-TEXT-NEXT: (i16x8.dot_i8x16_i7x16_s ;; CHECK-TEXT-NEXT: (local.get $0) ;; CHECK-TEXT-NEXT: (local.get $1) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (func $i16x8.dot_i8x16_i7x16_s (type $1) (param $0 v128) (param $1 v128) (result v128) + ;; CHECK-BIN-NEXT: (i16x8.dot_i8x16_i7x16_s + ;; CHECK-BIN-NEXT: (local.get $0) + ;; CHECK-BIN-NEXT: (local.get $1) + ;; CHECK-BIN-NEXT: ) + ;; CHECK-BIN-NEXT: ) (func $i16x8.dot_i8x16_i7x16_s (param $0 v128) (param $1 v128) (result v128) (i16x8.dot_i8x16_i7x16_s (local.get $0) @@ -388,13 +401,6 @@ ) ) -;; CHECK-BINARY: (func $i32x4.dot_i8x16_i7x16_add_s (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) -;; CHECK-BINARY-NEXT: (i32x4.dot_i8x16_i7x16_add_s -;; CHECK-BINARY-NEXT: (local.get $0) -;; CHECK-BINARY-NEXT: (local.get $1) -;; CHECK-BINARY-NEXT: (local.get $2) -;; CHECK-BINARY-NEXT: ) -;; CHECK-BINARY-NEXT: ) ;; CHECK-TEXT: (func $i32x4.dot_i8x16_i7x16_add_s (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) ;; CHECK-TEXT-NEXT: (i32x4.dot_i8x16_i7x16_add_s ;; CHECK-TEXT-NEXT: (local.get $0) @@ -402,6 +408,13 @@ ;; CHECK-TEXT-NEXT: (local.get $2) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) +;; CHECK-BIN: (func $i32x4.dot_i8x16_i7x16_add_s (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) +;; CHECK-BIN-NEXT: (i32x4.dot_i8x16_i7x16_add_s +;; CHECK-BIN-NEXT: (local.get $0) +;; CHECK-BIN-NEXT: (local.get $1) +;; CHECK-BIN-NEXT: (local.get $2) +;; CHECK-BIN-NEXT: ) +;; CHECK-BIN-NEXT: ) (func $i32x4.dot_i8x16_i7x16_add_s (param $0 v128) (param $1 v128) (param $2 v128) (result v128) (i32x4.dot_i8x16_i7x16_add_s (local.get $0) @@ -409,157 +422,156 @@ (local.get $2) ) ) - ) -;; CHECK-NODEBUG: (type $0 (func (param v128 v128 v128) (result v128))) - -;; CHECK-NODEBUG: (type $1 (func (param v128 v128) (result v128))) - -;; CHECK-NODEBUG: (type $2 (func (param v128) (result v128))) - -;; CHECK-NODEBUG: (memory $0 1 1) - -;; CHECK-NODEBUG: (func $0 (type $1) (param $0 v128) (param $1 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (i8x16.relaxed_swizzle -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $1 (type $2) (param $0 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (i32x4.relaxed_trunc_f32x4_s -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $2 (type $2) (param $0 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (i32x4.relaxed_trunc_f32x4_u -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $3 (type $2) (param $0 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (i32x4.relaxed_trunc_f64x2_s_zero -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $4 (type $2) (param $0 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (i32x4.relaxed_trunc_f64x2_u_zero -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $5 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (f32x4.relaxed_fma -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: (local.get $2) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $6 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (f32x4.relaxed_fms -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: (local.get $2) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $7 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (f64x2.relaxed_fma -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: (local.get $2) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $8 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (f64x2.relaxed_fms -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: (local.get $2) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $9 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (i8x16.laneselect -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: (local.get $2) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $10 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (i16x8.laneselect -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: (local.get $2) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $11 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (i32x4.laneselect -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: (local.get $2) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $12 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (i64x2.laneselect -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: (local.get $2) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $13 (type $1) (param $0 v128) (param $1 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (f32x4.relaxed_min -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $14 (type $1) (param $0 v128) (param $1 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (f32x4.relaxed_max -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $15 (type $1) (param $0 v128) (param $1 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (f64x2.relaxed_min -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $16 (type $1) (param $0 v128) (param $1 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (f64x2.relaxed_max -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $17 (type $1) (param $0 v128) (param $1 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (i16x8.relaxed_q15mulr_s -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $18 (type $1) (param $0 v128) (param $1 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (i16x8.dot_i8x16_i7x16_s -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) - -;; CHECK-NODEBUG: (func $19 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) -;; CHECK-NODEBUG-NEXT: (i32x4.dot_i8x16_i7x16_add_s -;; CHECK-NODEBUG-NEXT: (local.get $0) -;; CHECK-NODEBUG-NEXT: (local.get $1) -;; CHECK-NODEBUG-NEXT: (local.get $2) -;; CHECK-NODEBUG-NEXT: ) -;; CHECK-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG: (type $0 (func (param v128 v128 v128) (result v128))) + +;; CHECK-BIN-NODEBUG: (type $1 (func (param v128 v128) (result v128))) + +;; CHECK-BIN-NODEBUG: (type $2 (func (param v128) (result v128))) + +;; CHECK-BIN-NODEBUG: (memory $0 1 1) + +;; CHECK-BIN-NODEBUG: (func $0 (type $1) (param $0 v128) (param $1 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (i8x16.relaxed_swizzle +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $1 (type $2) (param $0 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (i32x4.relaxed_trunc_f32x4_s +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $2 (type $2) (param $0 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (i32x4.relaxed_trunc_f32x4_u +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $3 (type $2) (param $0 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (i32x4.relaxed_trunc_f64x2_s_zero +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $4 (type $2) (param $0 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (i32x4.relaxed_trunc_f64x2_u_zero +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $5 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (f32x4.relaxed_fma +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $2) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $6 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (f32x4.relaxed_fms +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $2) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $7 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (f64x2.relaxed_fma +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $2) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $8 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (f64x2.relaxed_fms +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $2) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $9 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (i8x16.laneselect +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $2) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $10 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (i16x8.laneselect +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $2) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $11 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (i32x4.laneselect +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $2) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $12 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (i64x2.laneselect +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $2) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $13 (type $1) (param $0 v128) (param $1 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (f32x4.relaxed_min +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $14 (type $1) (param $0 v128) (param $1 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (f32x4.relaxed_max +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $15 (type $1) (param $0 v128) (param $1 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (f64x2.relaxed_min +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $16 (type $1) (param $0 v128) (param $1 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (f64x2.relaxed_max +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $17 (type $1) (param $0 v128) (param $1 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (i16x8.relaxed_q15mulr_s +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $18 (type $1) (param $0 v128) (param $1 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (i16x8.dot_i8x16_i7x16_s +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) + +;; CHECK-BIN-NODEBUG: (func $19 (type $0) (param $0 v128) (param $1 v128) (param $2 v128) (result v128) +;; CHECK-BIN-NODEBUG-NEXT: (i32x4.dot_i8x16_i7x16_add_s +;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) +;; CHECK-BIN-NODEBUG-NEXT: (local.get $2) +;; CHECK-BIN-NODEBUG-NEXT: ) +;; CHECK-BIN-NODEBUG-NEXT: ) |