;;; TOOL: run-interp
;;; FLAGS: --enable-simd
(module
  ;; i8x16 add
  (func (export "i8x16_add_0") (result v128)
    v128.const i32 0x00000001 0x00000002 0x00000003 0x00000004
    v128.const i32 0x00000001 0x00000002 0x00000003 0x00000004
    i8x16.add)
  (func (export "i8x16_add_1") (result v128)
    v128.const i32 0x00ff0001 0x04000002 0x00000003 0x00000004
    v128.const i32 0x00020001 0xfe000002 0x00000003 0x00000004
    i8x16.add)

  ;; i16x8 add
  (func (export "i16x8_add_0") (result v128)
    v128.const i32 0x00000001 0x00000002 0x00000003 0x00000004
    v128.const i32 0x00000001 0x00000002 0x00000003 0x00000004
    i16x8.add)
  (func (export "i16x8_add_1") (result v128)
    v128.const i32 0x00ffffff 0x0400ffff 0x00000003 0x00000004
    v128.const i32 0x00020001 0xfe000002 0x00000003 0x00000004
    i16x8.add)

  ;; i32x4 add
  (func (export "i32x4_add_0") (result v128)
    v128.const i32 0x00000001 0x00000002 0x00000003 0x00000004
    v128.const i32 0x00000001 0x00000002 0x00000003 0x00000004
    i32x4.add)
  (func (export "i32x4_add_1") (result v128)
    v128.const i32 0xffffffff 0x0400ffff 0x00000003 0x00000004
    v128.const i32 0x00020001 0xfe000002 0x00000003 0x00000004
    i32x4.add)

  ;; i64x2 add
  (func (export "i64x2_add_0") (result v128)
    v128.const i32 0x00000001 0x00000002 0x00000003 0x00000004
    v128.const i32 0x00000001 0x00000002 0x00000003 0x00000004
    i64x2.add)
  (func (export "i64x2_add_1") (result v128)
    v128.const i32 0x00000000 0x0400ffff 0x00000003 0x00000004
    v128.const i32 0x00020001 0xfe000002 0x00000003 0x00000004
    i64x2.add)
)

(;; STDOUT ;;;
i8x16_add_0() => v128:0x00000002 0x00000004 0x00000006 0x00000008
i8x16_add_1() => v128:0x00010002 0x02000004 0x00000006 0x00000008
i16x8_add_0() => v128:0x00000002 0x00000004 0x00000006 0x00000008
i16x8_add_1() => v128:0x01010000 0x02000001 0x00000006 0x00000008
i32x4_add_0() => v128:0x00000002 0x00000004 0x00000006 0x00000008
i32x4_add_1() => v128:0x00020000 0x02010001 0x00000006 0x00000008
i64x2_add_0() => v128:0x00000002 0x00000004 0x00000006 0x00000008
i64x2_add_1() => v128:0x00020001 0x02010001 0x00000006 0x00000008
;;; STDOUT ;;)
