Add SIMD prerequisites (#469)

This commit is contained in:
Daniel Wirtz
2019-02-07 15:26:26 +01:00
committed by GitHub
parent 7ce3296b5e
commit 2f1a6c44ce
201 changed files with 1485 additions and 1432 deletions

View File

@ -1,8 +1,8 @@
(module
(type $i (func (result i32)))
(type $iiv (func (param i32 i32)))
(type $iiiiv (func (param i32 i32 i32 i32)))
(type $v (func))
(type $ii_ (func (param i32 i32)))
(type $iiii_ (func (param i32 i32 i32 i32)))
(type $_ (func))
(memory $0 0)
(table $0 1 funcref)
(elem (i32.const 0) $null)
@ -47,7 +47,7 @@
(func $../../examples/i64-polyfill/assembly/i64/getLo (; 1 ;) (type $i) (result i32)
global.get $../../examples/i64-polyfill/assembly/i64/lo
)
(func $../../examples/i64-polyfill/assembly/i64/clz (; 2 ;) (type $iiv) (param $0 i32) (param $1 i32)
(func $../../examples/i64-polyfill/assembly/i64/clz (; 2 ;) (type $ii_) (param $0 i32) (param $1 i32)
local.get $0
i64.extend_i32_u
local.get $1
@ -61,7 +61,7 @@
i32.const 0
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/ctz (; 3 ;) (type $iiv) (param $0 i32) (param $1 i32)
(func $../../examples/i64-polyfill/assembly/i64/ctz (; 3 ;) (type $ii_) (param $0 i32) (param $1 i32)
local.get $0
i64.extend_i32_u
local.get $1
@ -75,7 +75,7 @@
i32.const 0
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/popcnt (; 4 ;) (type $iiv) (param $0 i32) (param $1 i32)
(func $../../examples/i64-polyfill/assembly/i64/popcnt (; 4 ;) (type $ii_) (param $0 i32) (param $1 i32)
local.get $0
i64.extend_i32_u
local.get $1
@ -89,7 +89,7 @@
i32.const 0
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/eqz (; 5 ;) (type $iiv) (param $0 i32) (param $1 i32)
(func $../../examples/i64-polyfill/assembly/i64/eqz (; 5 ;) (type $ii_) (param $0 i32) (param $1 i32)
local.get $0
i64.extend_i32_u
local.get $1
@ -102,7 +102,7 @@
i32.const 0
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/add (; 6 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/add (; 6 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
local.get $0
i64.extend_i32_u
@ -128,7 +128,7 @@
i32.wrap_i64
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/sub (; 7 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/sub (; 7 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
local.get $0
i64.extend_i32_u
@ -154,7 +154,7 @@
i32.wrap_i64
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/mul (; 8 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/mul (; 8 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
local.get $0
i64.extend_i32_u
@ -180,7 +180,7 @@
i32.wrap_i64
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/div_s (; 9 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/div_s (; 9 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
local.get $0
i64.extend_i32_u
@ -206,7 +206,7 @@
i32.wrap_i64
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/div_u (; 10 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/div_u (; 10 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
local.get $0
i64.extend_i32_u
@ -232,7 +232,7 @@
i32.wrap_i64
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/rem_s (; 11 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/rem_s (; 11 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
local.get $0
i64.extend_i32_u
@ -258,7 +258,7 @@
i32.wrap_i64
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/rem_u (; 12 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/rem_u (; 12 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
local.get $0
i64.extend_i32_u
@ -284,7 +284,7 @@
i32.wrap_i64
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/and (; 13 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/and (; 13 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
local.get $0
i64.extend_i32_u
@ -310,7 +310,7 @@
i32.wrap_i64
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/or (; 14 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/or (; 14 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
local.get $0
i64.extend_i32_u
@ -336,7 +336,7 @@
i32.wrap_i64
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/xor (; 15 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/xor (; 15 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
local.get $0
i64.extend_i32_u
@ -362,7 +362,7 @@
i32.wrap_i64
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/shl (; 16 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/shl (; 16 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
local.get $0
i64.extend_i32_u
@ -388,7 +388,7 @@
i32.wrap_i64
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/shr_s (; 17 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/shr_s (; 17 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
local.get $0
i64.extend_i32_u
@ -414,7 +414,7 @@
i32.wrap_i64
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/shr_u (; 18 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/shr_u (; 18 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
local.get $0
i64.extend_i32_u
@ -440,7 +440,7 @@
i32.wrap_i64
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/rotl (; 19 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/rotl (; 19 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
local.get $0
i64.extend_i32_u
@ -466,7 +466,7 @@
i32.wrap_i64
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/rotr (; 20 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/rotr (; 20 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
local.get $0
i64.extend_i32_u
@ -492,7 +492,7 @@
i32.wrap_i64
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/eq (; 21 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/eq (; 21 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
local.get $0
i64.extend_i32_u
local.get $1
@ -512,7 +512,7 @@
i32.const 0
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/ne (; 22 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/ne (; 22 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
local.get $0
i64.extend_i32_u
local.get $1
@ -532,7 +532,7 @@
i32.const 0
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/lt_s (; 23 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/lt_s (; 23 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
local.get $0
i64.extend_i32_u
local.get $1
@ -552,7 +552,7 @@
i32.const 0
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/lt_u (; 24 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/lt_u (; 24 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
local.get $0
i64.extend_i32_u
local.get $1
@ -572,7 +572,7 @@
i32.const 0
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/le_s (; 25 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/le_s (; 25 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
local.get $0
i64.extend_i32_u
local.get $1
@ -592,7 +592,7 @@
i32.const 0
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/le_u (; 26 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/le_u (; 26 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
local.get $0
i64.extend_i32_u
local.get $1
@ -612,7 +612,7 @@
i32.const 0
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/gt_s (; 27 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/gt_s (; 27 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
local.get $0
i64.extend_i32_u
local.get $1
@ -632,7 +632,7 @@
i32.const 0
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/gt_u (; 28 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/gt_u (; 28 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
local.get $0
i64.extend_i32_u
local.get $1
@ -652,7 +652,7 @@
i32.const 0
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/ge_s (; 29 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/ge_s (; 29 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
local.get $0
i64.extend_i32_u
local.get $1
@ -672,7 +672,7 @@
i32.const 0
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $../../examples/i64-polyfill/assembly/i64/ge_u (; 30 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/ge_u (; 30 ;) (type $iiii_) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
local.get $0
i64.extend_i32_u
local.get $1
@ -692,7 +692,7 @@
i32.const 0
global.set $../../examples/i64-polyfill/assembly/i64/hi
)
(func $null (; 31 ;) (type $v)
(func $null (; 31 ;) (type $_)
nop
)
)