assemblyscript/tests/compiler/simd.untouched.wat

2878 lines
45 KiB
Plaintext
Raw Normal View History

2019-02-28 17:36:22 +01:00
(module
(type $FUNCSIG$v (func))
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
2019-06-05 23:15:39 +02:00
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
2019-02-28 17:36:22 +01:00
(memory $0 1)
2019-06-05 23:15:39 +02:00
(data (i32.const 8) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\00s\00i\00m\00d\00.\00t\00s\00")
2019-02-28 17:36:22 +01:00
(table $0 1 funcref)
(elem (i32.const 0) $null)
(global $~lib/ASC_FEATURE_SIMD i32 (i32.const 0))
(export "memory" (memory $0))
(start $start)
2019-06-05 23:15:39 +02:00
(func $simd/test_v128 (; 1 ;) (type $FUNCSIG$v)
v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d
v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 5
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d
v128.const i32x4 0x04030202 0x08070605 0x0c0b0a09 0x100f0e0d
2019-02-28 17:36:22 +01:00
i8x16.ne
i8x16.any_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 10
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d
v128.const i32x4 0x01010101 0x01010101 0x01010101 0x01010101
2019-02-28 17:36:22 +01:00
v128.and
v128.const i32x4 0x00010001 0x00010001 0x00010001 0x00010001
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 16
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d
v128.const i32x4 0x01010101 0x01010101 0x01010101 0x01010101
2019-02-28 17:36:22 +01:00
v128.or
v128.const i32x4 0x05030301 0x09070705 0x0d0b0b09 0x110f0f0d
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 23
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d
v128.const i32x4 0x01010101 0x01010101 0x01010101 0x01010101
2019-02-28 17:36:22 +01:00
v128.xor
v128.const i32x4 0x05020300 0x09060704 0x0d0a0b08 0x110e0f0c
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 30
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d
2019-02-28 17:36:22 +01:00
v128.not
v128.const i32x4 0xfbfcfdfe 0xf7f8f9fa 0xf3f4f5f6 0xeff0f1f2
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 37
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d
v128.const i32x4 0x0d0e0f10 0x090a0b0c 0x05060708 0x01020304
v128.const i32x4 0xff00ff00 0xff00ff00 0xff00ff00 0xff00ff00
2019-02-28 17:36:22 +01:00
v128.bitselect
v128.const i32x4 0x040e0210 0x080a060c 0x0c060a08 0x10020e04
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 43
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
)
2019-06-05 23:15:39 +02:00
(func $simd/test_i8x16 (; 2 ;) (type $FUNCSIG$v)
2019-02-28 17:36:22 +01:00
(local $0 v128)
(local $1 v128)
(local $2 v128)
(local $3 v128)
(local $4 v128)
(local $5 v128)
(local $6 v128)
v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x7f0f0e0d
2019-02-28 17:36:22 +01:00
local.set $0
local.get $0
v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x7f0f0e0d
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 60
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const 1
i8x16.splat
local.set $1
local.get $1
v128.const i32x4 0x01010101 0x01010101 0x01010101 0x01010101
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 62
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
local.get $1
i8x16.add
local.set $2
local.get $2
v128.const i32x4 0x05040302 0x09080706 0x0d0c0b0a 0x80100f0e
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 64
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
local.get $1
i8x16.sub
local.get $0
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 65
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
local.get $1
i8x16.mul
local.get $2
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 66
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
i8x16.neg
v128.const i32x4 0xfcfdfeff 0xf8f9fafb 0xf4f5f6f7 0x81f1f2f3
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 67
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
i8x16.extract_lane_s 0
i32.const 24
i32.shl
i32.const 24
i32.shr_s
i32.const 2
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 72
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
i8x16.extract_lane_s 15
i32.const 24
i32.shl
i32.const 24
i32.shr_s
i32.const -128
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 73
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
i8x16.extract_lane_u 15
i32.const 255
i32.and
i32.const 128
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 74
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
i32.const 17
i8x16.replace_lane 15
v128.const i32x4 0x05040302 0x09080706 0x0d0c0b0a 0x11100f0e
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 75
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
local.get $1
v8x16.shuffle 0 1 2 3 4 5 6 7 24 25 26 27 28 29 30 31
v128.const i32x4 0x04030201 0x08070605 0x01010101 0x01010101
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 80
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x7f7f7f7e 0x7f7f7f7f 0x7f7f7f7f 0x7f7f7f7f
2019-02-28 17:36:22 +01:00
i32.const 2
i8x16.splat
i8x16.add_saturate_s
i32.const 127
i8x16.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 85
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0xfffffffe 0xffffffff 0xffffffff 0xffffffff
2019-02-28 17:36:22 +01:00
i32.const 2
i8x16.splat
i8x16.add_saturate_u
i32.const -1
i8x16.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 91
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x80808081 0x80808080 0x80808080 0x80808080
2019-02-28 17:36:22 +01:00
i32.const 2
i8x16.splat
i8x16.sub_saturate_s
i32.const -128
i8x16.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 97
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x00000001 0x00000000 0x00000000 0x00000000
2019-02-28 17:36:22 +01:00
i32.const 2
i8x16.splat
i8x16.sub_saturate_u
i32.const 0
i8x16.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 103
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const 1
i8x16.splat
i32.const 1
i8x16.shl
i32.const 2
i8x16.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 109
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const -2
i8x16.splat
i32.const 1
i8x16.shr_s
i32.const -1
i8x16.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 110
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const -1
i8x16.splat
i32.const 1
i8x16.shr_u
i32.const 127
i8x16.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 111
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x00000001 0x00000000 0x00000000 0x00000000
2019-02-28 17:36:22 +01:00
i8x16.any_true
i32.const 0
i32.ne
i32.const 1
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 112
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const 1
i8x16.splat
i8x16.all_true
i32.const 0
i32.ne
i32.const 1
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 113
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const 0
i8x16.splat
i32.const 1
i8x16.replace_lane 0
local.set $3
i32.const 0
i8x16.splat
i32.const -1
i8x16.replace_lane 0
local.set $4
local.get $4
local.set $5
local.get $4
v128.not
local.set $6
local.get $4
local.get $3
i8x16.eq
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 118
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $3
i8x16.ne
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 119
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $3
i8x16.lt_s
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 120
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $3
local.get $4
i8x16.lt_u
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 121
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $3
local.get $4
i8x16.le_s
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 122
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $3
i8x16.le_u
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 123
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $3
local.get $4
i8x16.gt_s
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 124
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $3
i8x16.gt_u
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 125
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $3
i8x16.ge_s
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 126
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $3
local.get $4
i8x16.ge_u
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 127
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
)
2019-06-05 23:15:39 +02:00
(func $simd/test_i16x8 (; 3 ;) (type $FUNCSIG$v)
2019-02-28 17:36:22 +01:00
(local $0 v128)
(local $1 v128)
(local $2 v128)
(local $3 v128)
(local $4 v128)
(local $5 v128)
(local $6 v128)
v128.const i32x4 0x00020001 0x00040003 0x00060005 0x7fff0007
2019-02-28 17:36:22 +01:00
local.set $0
local.get $0
v128.const i32x4 0x00020001 0x00040003 0x00060005 0x7fff0007
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 132
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const 1
i16x8.splat
local.set $1
local.get $1
v128.const i32x4 0x00010001 0x00010001 0x00010001 0x00010001
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 134
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
local.get $1
i16x8.add
local.set $2
local.get $2
v128.const i32x4 0x00030002 0x00050004 0x00070006 0x80000008
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 136
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
local.get $1
i16x8.sub
local.get $0
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 137
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
local.get $1
i16x8.mul
local.get $2
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 138
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
i16x8.neg
v128.const i32x4 0xfffeffff 0xfffcfffd 0xfffafffb 0x8001fff9
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 139
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
i16x8.extract_lane_s 0
i32.const 16
i32.shl
i32.const 16
i32.shr_s
i32.const 2
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 144
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
i16x8.extract_lane_s 7
i32.const 16
i32.shl
i32.const 16
i32.shr_s
i32.const -32768
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 145
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
i16x8.extract_lane_u 7
i32.const 65535
i32.and
i32.const 32768
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 146
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
i32.const 9
i16x8.replace_lane 7
v128.const i32x4 0x00030002 0x00050004 0x00070006 0x00090008
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 147
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
local.get $1
v8x16.shuffle 0 1 2 3 4 5 6 7 24 25 26 27 28 29 30 31
v128.const i32x4 0x00020001 0x00040003 0x00010001 0x00010001
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 152
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x7fff7ffe 0x7fff7fff 0x7fff7fff 0x7fff7fff
2019-02-28 17:36:22 +01:00
i32.const 2
i16x8.splat
i16x8.add_saturate_s
i32.const 32767
i16x8.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 157
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0xfffffffe 0xffffffff 0xffffffff 0xffffffff
2019-02-28 17:36:22 +01:00
i32.const 2
i16x8.splat
i16x8.add_saturate_u
i32.const -1
i16x8.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 163
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x80008001 0x80008000 0x80008000 0x80008000
2019-02-28 17:36:22 +01:00
i32.const 2
i16x8.splat
i16x8.sub_saturate_s
i32.const -32768
i16x8.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 169
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x00000001 0x00000000 0x00000000 0x00000000
2019-02-28 17:36:22 +01:00
i32.const 2
i16x8.splat
i16x8.sub_saturate_u
i32.const 0
i16x8.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 175
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const 1
i16x8.splat
i32.const 1
i16x8.shl
i32.const 2
i16x8.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 181
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const -2
i16x8.splat
i32.const 1
i16x8.shr_s
i32.const -1
i16x8.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 182
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const -1
i16x8.splat
i32.const 1
i16x8.shr_u
i32.const 32767
i16x8.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 183
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x00000001 0x00000000 0x00000000 0x00000000
2019-02-28 17:36:22 +01:00
i16x8.any_true
i32.const 0
i32.ne
i32.const 1
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 184
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const 1
i16x8.splat
i16x8.all_true
i32.const 0
i32.ne
i32.const 1
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 185
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const 0
i16x8.splat
i32.const 1
i16x8.replace_lane 0
local.set $3
i32.const 0
i16x8.splat
i32.const -1
i16x8.replace_lane 0
local.set $4
local.get $4
local.set $5
local.get $4
v128.not
local.set $6
local.get $4
local.get $3
i16x8.eq
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 190
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $3
i16x8.ne
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 191
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $3
i16x8.lt_s
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 192
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $3
local.get $4
i16x8.lt_u
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 193
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $3
local.get $4
i16x8.le_s
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 194
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $3
i16x8.le_u
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 195
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $3
local.get $4
i16x8.gt_s
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 196
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $3
i16x8.gt_u
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 197
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $3
i16x8.ge_s
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 198
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $3
local.get $4
i16x8.ge_u
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 199
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
)
2019-06-05 23:15:39 +02:00
(func $simd/test_i32x4 (; 4 ;) (type $FUNCSIG$v)
2019-02-28 17:36:22 +01:00
(local $0 v128)
(local $1 v128)
(local $2 v128)
(local $3 v128)
(local $4 v128)
(local $5 v128)
(local $6 v128)
v128.const i32x4 0x00000001 0x00000002 0x00000003 0x7fffffff
2019-02-28 17:36:22 +01:00
local.set $0
local.get $0
v128.const i32x4 0x00000001 0x00000002 0x00000003 0x7fffffff
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 204
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const 1
i32x4.splat
local.set $1
local.get $1
v128.const i32x4 0x00000001 0x00000001 0x00000001 0x00000001
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 206
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
local.get $1
i32x4.add
local.set $2
local.get $2
v128.const i32x4 0x00000002 0x00000003 0x00000004 0x80000000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 208
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
local.get $1
i32x4.sub
local.get $0
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 209
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
local.get $1
i32x4.mul
local.get $2
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 210
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
i32x4.neg
v128.const i32x4 0xffffffff 0xfffffffe 0xfffffffd 0x80000001
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 211
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
i32x4.extract_lane 0
i32.const 2
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 216
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
i32x4.extract_lane 3
i32.const -2147483648
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 217
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
i32.const 5
i32x4.replace_lane 3
v128.const i32x4 0x00000002 0x00000003 0x00000004 0x00000005
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 218
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
local.get $1
v8x16.shuffle 0 1 2 3 4 5 6 7 24 25 26 27 28 29 30 31
v128.const i32x4 0x00000001 0x00000002 0x00000001 0x00000001
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 223
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const 1
i32x4.splat
i32.const 1
i32x4.shl
i32.const 2
i32x4.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 228
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const -2
i32x4.splat
i32.const 1
i32x4.shr_s
i32.const -1
i32x4.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 229
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const -1
i32x4.splat
i32.const 1
i32x4.shr_u
i32.const 2147483647
i32x4.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 230
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x00000001 0x00000000 0x00000000 0x00000000
2019-02-28 17:36:22 +01:00
i32x4.any_true
i32.const 0
i32.ne
i32.const 1
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 231
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const 1
i32x4.splat
i32x4.all_true
i32.const 0
i32.ne
i32.const 1
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 232
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const 0
i32x4.splat
i32.const 1
i32x4.replace_lane 0
local.set $3
i32.const 0
i32x4.splat
i32.const -1
i32x4.replace_lane 0
local.set $4
local.get $4
local.set $5
local.get $4
v128.not
local.set $6
local.get $4
local.get $3
i32x4.eq
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 237
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $3
i32x4.ne
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 238
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $3
i32x4.lt_s
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 239
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $3
local.get $4
i32x4.lt_u
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 240
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $3
local.get $4
i32x4.le_s
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 241
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $3
i32x4.le_u
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 242
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $3
local.get $4
i32x4.gt_s
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 243
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $3
i32x4.gt_u
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 244
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $3
i32x4.ge_s
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 245
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $3
local.get $4
i32x4.ge_u
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 246
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
f32.const -1.5
f32x4.splat
i32x4.trunc_sat_f32x4_s
i32.const -1
i32x4.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 247
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
f32.const -1.5
f32x4.splat
i32x4.trunc_sat_f32x4_u
i32.const 0
i32x4.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 252
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
)
2019-06-05 23:15:39 +02:00
(func $simd/test_i64x2 (; 5 ;) (type $FUNCSIG$v)
2019-02-28 17:36:22 +01:00
(local $0 v128)
(local $1 v128)
(local $2 v128)
v128.const i32x4 0x00000001 0x00000000 0xffffffff 0x7fffffff
2019-02-28 17:36:22 +01:00
local.set $0
local.get $0
v128.const i32x4 0x00000001 0x00000000 0xffffffff 0x7fffffff
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 261
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i64.const 1
i64x2.splat
local.set $1
local.get $1
v128.const i32x4 0x00000001 0x00000000 0x00000001 0x00000000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 263
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
local.get $1
i64x2.add
local.set $2
local.get $2
v128.const i32x4 0x00000002 0x00000000 0x00000000 0x80000000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 265
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
local.get $1
i64x2.sub
local.get $0
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 266
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
i64x2.neg
v128.const i32x4 0xffffffff 0xffffffff 0x00000001 0x80000000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 267
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
i64x2.extract_lane 0
i64.const 2
i64.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 272
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
i64x2.extract_lane 1
i64.const -9223372036854775808
i64.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 273
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
i64.const 3
i64x2.replace_lane 1
v128.const i32x4 0x00000002 0x00000000 0x00000003 0x00000000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 274
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
local.get $1
v8x16.shuffle 0 1 2 3 4 5 6 7 24 25 26 27 28 29 30 31
v128.const i32x4 0x00000001 0x00000000 0x00000001 0x00000000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 279
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i64.const 1
i64x2.splat
i32.const 1
i64x2.shl
i64.const 2
i64x2.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 284
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i64.const -2
i64x2.splat
i32.const 1
i64x2.shr_s
i64.const -1
i64x2.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 285
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i64.const -1
i64x2.splat
i32.const 1
i64x2.shr_u
i64.const 9223372036854775807
i64x2.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 286
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x00000001 0x00000000 0x00000000 0x00000000
2019-02-28 17:36:22 +01:00
i64x2.any_true
i32.const 0
i32.ne
i32.const 1
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 287
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i64.const 1
i64x2.splat
i64x2.all_true
i32.const 0
i32.ne
i32.const 1
i32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 288
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
f64.const -1.5
f64x2.splat
i64x2.trunc_sat_f64x2_s
i64.const -1
i64x2.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 289
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
f64.const -1.5
f64x2.splat
i64x2.trunc_sat_f64x2_u
i64.const 0
i64x2.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 294
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
)
2019-06-05 23:15:39 +02:00
(func $simd/test_f32x4 (; 6 ;) (type $FUNCSIG$v)
2019-02-28 17:36:22 +01:00
(local $0 v128)
(local $1 v128)
(local $2 v128)
(local $3 v128)
(local $4 v128)
(local $5 v128)
(local $6 v128)
(local $7 v128)
v128.const i32x4 0x3fc00000 0x40200000 0x40600000 0x40900000
2019-02-28 17:36:22 +01:00
local.set $0
local.get $0
v128.const i32x4 0x3fc00000 0x40200000 0x40600000 0x40900000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 303
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
f32.const 1
f32x4.splat
local.set $1
local.get $1
v128.const i32x4 0x3f800000 0x3f800000 0x3f800000 0x3f800000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 305
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
local.get $1
f32x4.add
local.set $2
local.get $2
v128.const i32x4 0x40200000 0x40600000 0x40900000 0x40b00000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 307
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
local.get $1
f32x4.sub
local.get $0
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 308
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
local.get $1
f32x4.mul
local.get $2
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 309
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
local.get $0
f32x4.mul
local.set $3
local.get $3
local.get $0
f32x4.div
local.get $0
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 311
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $3
local.get $0
f32x4.mul
local.get $0
i8x16.ne
i8x16.any_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 312
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
f32x4.neg
v128.const i32x4 0xbfc00000 0xc0200000 0xc0600000 0xc0900000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 313
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
f32x4.extract_lane 0
f32.const 2.5
f32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 314
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
f32x4.extract_lane 3
f32.const 5.5
f32.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 315
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
f32.const 6.5
f32x4.replace_lane 3
v128.const i32x4 0x40200000 0x40600000 0x40900000 0x40d00000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 316
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
local.get $1
v8x16.shuffle 0 1 2 3 4 5 6 7 24 25 26 27 28 29 30 31
v128.const i32x4 0x3fc00000 0x40200000 0x3f800000 0x3f800000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 321
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
f32.const 0
f32x4.splat
f32.const 1
f32x4.replace_lane 0
local.set $4
f32.const 0
f32x4.splat
f32.const -1
f32x4.replace_lane 0
local.set $5
v128.const i32x4 0xffffffff 0x00000000 0x00000000 0x00000000
2019-02-28 17:36:22 +01:00
local.set $6
v128.const i32x4 0x00000000 0xffffffff 0xffffffff 0xffffffff
2019-02-28 17:36:22 +01:00
local.set $7
local.get $5
local.get $4
f32x4.eq
local.get $7
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 330
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $5
local.get $4
f32x4.ne
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 331
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $5
local.get $4
f32x4.lt
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 332
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $5
f32x4.le
local.get $7
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 333
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $5
f32x4.gt
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 334
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $5
local.get $4
f32x4.ge
local.get $7
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 335
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $5
local.get $4
f32x4.min
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 336
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $5
local.get $4
f32x4.max
local.get $4
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 337
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $5
f32x4.abs
local.get $4
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 338
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x40800000 0x41100000 0x41800000 0x41c80000
2019-02-28 17:36:22 +01:00
f32x4.sqrt
v128.const i32x4 0x40000000 0x40400000 0x40800000 0x40a00000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 339
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const -1
i32x4.splat
f32x4.convert_i32x4_s
f32.const -1
f32x4.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 340
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i32.const -1
i32x4.splat
f32x4.convert_i32x4_u
f32.const 4294967296
f32x4.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 345
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
)
2019-06-05 23:15:39 +02:00
(func $simd/test_f64x2 (; 7 ;) (type $FUNCSIG$v)
2019-02-28 17:36:22 +01:00
(local $0 v128)
(local $1 v128)
(local $2 v128)
(local $3 v128)
(local $4 v128)
(local $5 v128)
(local $6 v128)
(local $7 v128)
v128.const i32x4 0x00000000 0x3ff80000 0x00000000 0x40040000
2019-02-28 17:36:22 +01:00
local.set $0
local.get $0
v128.const i32x4 0x00000000 0x3ff80000 0x00000000 0x40040000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 354
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
f64.const 1
f64x2.splat
local.set $1
local.get $1
v128.const i32x4 0x00000000 0x3ff00000 0x00000000 0x3ff00000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 356
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
local.get $1
f64x2.add
local.set $2
local.get $2
v128.const i32x4 0x00000000 0x40040000 0x00000000 0x400c0000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 358
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
local.get $1
f64x2.sub
local.get $0
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 359
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
local.get $1
f64x2.mul
local.get $2
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 360
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
local.get $0
f64x2.mul
local.set $3
local.get $3
local.get $0
f64x2.div
local.get $0
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 362
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $3
local.get $0
f64x2.mul
local.get $0
i8x16.ne
i8x16.any_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 363
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
f64x2.neg
v128.const i32x4 0x00000000 0xbff80000 0x00000000 0xc0040000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 364
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
f64x2.extract_lane 0
f64.const 2.5
f64.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 365
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
f64x2.extract_lane 1
f64.const 3.5
f64.eq
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 366
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $2
f64.const 4.5
f64x2.replace_lane 1
v128.const i32x4 0x00000000 0x40040000 0x00000000 0x40120000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 367
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $0
local.get $1
v8x16.shuffle 0 1 2 3 4 5 6 7 24 25 26 27 28 29 30 31
v128.const i32x4 0x00000000 0x3ff80000 0x00000000 0x3ff00000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 372
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
f64.const 0
f64x2.splat
f64.const 1
f64x2.replace_lane 0
local.set $4
f64.const 0
f64x2.splat
f64.const -1
f64x2.replace_lane 0
local.set $5
v128.const i32x4 0xffffffff 0xffffffff 0x00000000 0x00000000
2019-02-28 17:36:22 +01:00
local.set $6
v128.const i32x4 0x00000000 0x00000000 0xffffffff 0xffffffff
2019-02-28 17:36:22 +01:00
local.set $7
local.get $5
local.get $4
f64x2.eq
local.get $7
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 381
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $5
local.get $4
f64x2.ne
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 382
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $5
local.get $4
f64x2.lt
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 383
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $5
f64x2.le
local.get $7
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 384
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $4
local.get $5
f64x2.gt
local.get $6
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 385
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $5
local.get $4
f64x2.ge
local.get $7
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 386
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $5
local.get $4
f64x2.min
local.get $5
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 387
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $5
local.get $4
f64x2.max
local.get $4
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 388
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
local.get $5
f64x2.abs
local.get $4
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 389
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
v128.const i32x4 0x00000000 0x40100000 0x00000000 0x40220000
2019-02-28 17:36:22 +01:00
f64x2.sqrt
v128.const i32x4 0x00000000 0x40000000 0x00000000 0x40080000
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 390
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i64.const -1
i64x2.splat
f64x2.convert_i64x2_s
f64.const -1
f64x2.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 391
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
i64.const -1
i64x2.splat
f64x2.convert_i64x2_u
f64.const 18446744073709551615
f64x2.splat
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 396
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
)
2019-06-05 23:15:39 +02:00
(func $simd/test_v8x16 (; 8 ;) (type $FUNCSIG$v)
2019-02-28 17:36:22 +01:00
(local $0 v128)
(local $1 v128)
v128.const i32x4 0x03020100 0x07060504 0x0b0a0908 0x0f0e0d0c
2019-02-28 17:36:22 +01:00
local.set $0
v128.const i32x4 0x13121110 0x17161514 0x1b1a1918 0x1f1e1d1c
2019-02-28 17:36:22 +01:00
local.set $1
local.get $0
local.get $1
v8x16.shuffle 0 17 2 19 4 21 6 23 8 25 10 27 12 29 14 31
v128.const i32x4 0x13021100 0x17061504 0x1b0a1908 0x1f0e1d0c
2019-02-28 17:36:22 +01:00
i8x16.eq
i8x16.all_true
i32.const 0
i32.ne
i32.eqz
if
i32.const 0
2019-06-05 23:15:39 +02:00
i32.const 24
i32.const 406
2019-02-28 17:36:22 +01:00
i32.const 2
2019-06-05 23:15:39 +02:00
call $~lib/builtins/abort
2019-02-28 17:36:22 +01:00
unreachable
end
)
2019-06-05 23:15:39 +02:00
(func $start:simd (; 9 ;) (type $FUNCSIG$v)
call $simd/test_v128
call $simd/test_i8x16
call $simd/test_i16x8
call $simd/test_i32x4
call $simd/test_i64x2
call $simd/test_f32x4
call $simd/test_f64x2
call $simd/test_v8x16
2019-02-28 17:36:22 +01:00
)
2019-06-05 23:15:39 +02:00
(func $start (; 10 ;) (type $FUNCSIG$v)
2019-02-28 17:36:22 +01:00
call $start:simd
)
2019-06-05 23:15:39 +02:00
(func $null (; 11 ;) (type $FUNCSIG$v)
2019-02-28 17:36:22 +01:00
)
)