wa-lang.org/wazero@v1.0.2/internal/integration_test/spectest/v2/testdata/simd_i16x8_extadd_pairwise_i8x16.wast (about) 1 ;; Tests for i16x8 arithmetic operations on major boundary values and all special values. 2 3 4 (module 5 (func (export "i16x8.extadd_pairwise_i8x16_s") (param v128) (result v128) (i16x8.extadd_pairwise_i8x16_s (local.get 0))) 6 (func (export "i16x8.extadd_pairwise_i8x16_u") (param v128) (result v128) (i16x8.extadd_pairwise_i8x16_u (local.get 0))) 7 ) 8 9 10 ;; i16x8.extadd_pairwise_i8x16_s 11 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_s" (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) 12 (v128.const i16x8 0 0 0 0 0 0 0 0)) 13 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_s" (v128.const i8x16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1)) 14 (v128.const i16x8 2 2 2 2 2 2 2 2)) 15 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_s" (v128.const i8x16 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1)) 16 (v128.const i16x8 -2 -2 -2 -2 -2 -2 -2 -2)) 17 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_s" (v128.const i8x16 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126)) 18 (v128.const i16x8 252 252 252 252 252 252 252 252)) 19 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_s" (v128.const i8x16 -127 -127 -127 -127 -127 -127 -127 -127 -127 -127 -127 -127 -127 -127 -127 -127)) 20 (v128.const i16x8 -254 -254 -254 -254 -254 -254 -254 -254)) 21 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_s" (v128.const i8x16 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128)) 22 (v128.const i16x8 -256 -256 -256 -256 -256 -256 -256 -256)) 23 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_s" (v128.const i8x16 127 127 127 127 127 127 127 127 127 127 127 127 127 127 127 127)) 24 (v128.const i16x8 254 254 254 254 254 254 254 254)) 25 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_s" (v128.const i8x16 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255)) 26 (v128.const i16x8 -2 -2 -2 -2 -2 -2 -2 -2)) 27 28 ;; i16x8.extadd_pairwise_i8x16_u 29 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_u" (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)) 30 (v128.const i16x8 0 0 0 0 0 0 0 0)) 31 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_u" (v128.const i8x16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1)) 32 (v128.const i16x8 2 2 2 2 2 2 2 2)) 33 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_u" (v128.const i8x16 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1)) 34 (v128.const i16x8 510 510 510 510 510 510 510 510)) 35 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_u" (v128.const i8x16 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126)) 36 (v128.const i16x8 252 252 252 252 252 252 252 252)) 37 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_u" (v128.const i8x16 -127 -127 -127 -127 -127 -127 -127 -127 -127 -127 -127 -127 -127 -127 -127 -127)) 38 (v128.const i16x8 258 258 258 258 258 258 258 258)) 39 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_u" (v128.const i8x16 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128 -128)) 40 (v128.const i16x8 256 256 256 256 256 256 256 256)) 41 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_u" (v128.const i8x16 127 127 127 127 127 127 127 127 127 127 127 127 127 127 127 127)) 42 (v128.const i16x8 254 254 254 254 254 254 254 254)) 43 (assert_return (invoke "i16x8.extadd_pairwise_i8x16_u" (v128.const i8x16 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255)) 44 (v128.const i16x8 510 510 510 510 510 510 510 510)) 45 46 ;; type check 47 (assert_invalid (module (func (result v128) (i16x8.extadd_pairwise_i8x16_s (i32.const 0)))) "type mismatch") 48 (assert_invalid (module (func (result v128) (i16x8.extadd_pairwise_i8x16_u (i32.const 0)))) "type mismatch") 49 50 ;; Test operation with empty argument 51 52 (assert_invalid 53 (module 54 (func $i16x8.extadd_pairwise_i8x16_s-arg-empty (result v128) 55 (i16x8.extadd_pairwise_i8x16_s) 56 ) 57 ) 58 "type mismatch" 59 ) 60 (assert_invalid 61 (module 62 (func $i16x8.extadd_pairwise_i8x16_u-arg-empty (result v128) 63 (i16x8.extadd_pairwise_i8x16_u) 64 ) 65 ) 66 "type mismatch" 67 ) 68