Rework inlining logic (#463)

This commit is contained in:
Daniel Wirtz
2019-02-06 23:42:43 +01:00
committed by GitHub
parent 01cade13f9
commit 831054dfd3
40 changed files with 14369 additions and 9544 deletions

View File

@ -28,6 +28,8 @@
(func $~lib/array/Array<Array<i32>>#__get (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32)
(local $3 i32)
(local $4 i32)
(local $5 i32)
local.get $0
i32.load
local.set $2
@ -38,14 +40,18 @@
i32.shr_u
i32.lt_u
if (result i32)
i32.const 0
local.set $3
local.get $2
local.set $3
local.get $1
local.set $4
i32.const 0
local.set $5
local.get $3
local.get $4
i32.const 2
i32.shl
i32.add
local.get $3
local.get $5
i32.add
i32.load offset=8
else
@ -55,6 +61,8 @@
(func $~lib/array/Array<i32>#__get (; 2 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32)
(local $3 i32)
(local $4 i32)
(local $5 i32)
local.get $0
i32.load
local.set $2
@ -65,14 +73,18 @@
i32.shr_u
i32.lt_u
if (result i32)
i32.const 0
local.set $3
local.get $2
local.set $3
local.get $1
local.set $4
i32.const 0
local.set $5
local.get $3
local.get $4
i32.const 2
i32.shl
i32.add
local.get $3
local.get $5
i32.add
i32.load offset=8
else
@ -89,6 +101,8 @@
(func $~lib/array/Array<String>#__get (; 4 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32)
(local $3 i32)
(local $4 i32)
(local $5 i32)
local.get $0
i32.load
local.set $2
@ -99,14 +113,18 @@
i32.shr_u
i32.lt_u
if (result i32)
i32.const 0
local.set $3
local.get $2
local.set $3
local.get $1
local.set $4
i32.const 0
local.set $5
local.get $3
local.get $4
i32.const 2
i32.shl
i32.add
local.get $3
local.get $5
i32.add
i32.load offset=8
else
@ -250,6 +268,8 @@
(func $~lib/array/Array<Array<String>>#__get (; 9 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32)
(local $3 i32)
(local $4 i32)
(local $5 i32)
local.get $0
i32.load
local.set $2
@ -260,14 +280,18 @@
i32.shr_u
i32.lt_u
if (result i32)
i32.const 0
local.set $3
local.get $2
local.set $3
local.get $1
local.set $4
i32.const 0
local.set $5
local.get $3
local.get $4
i32.const 2
i32.shl
i32.add
local.get $3
local.get $5
i32.add
i32.load offset=8
else