9907 lines
202 KiB
Plaintext
9907 lines
202 KiB
Plaintext
(module $gsm_enc.wasm
|
|
(type (;0;) (func (param i32 i32)))
|
|
(type (;1;) (func))
|
|
(type (;2;) (func (param i32 i32 i32)))
|
|
(type (;3;) (func (param i32 i32 i32 i32 i32 i32 i32 i32)))
|
|
(type (;4;) (func (param i32 i32 i32 i32)))
|
|
(type (;5;) (func (param i32 i32 i32 i32 i32 i32)))
|
|
(type (;6;) (func (param i32)))
|
|
(type (;7;) (func (param i32 i32 i32 i32 i32)))
|
|
(type (;8;) (func (param i32 i32) (result i32)))
|
|
(type (;9;) (func (result i32)))
|
|
(import "__pragma" "loopbound" (func $__pragma_loopbound (type 0)))
|
|
(func $__wasm_apply_data_relocs (type 1))
|
|
(func $gsm_enc_encode (type 2) (param i32 i32 i32)
|
|
(local i32 i32)
|
|
global.get $__stack_pointer
|
|
i32.const 160
|
|
i32.sub
|
|
local.tee 3
|
|
global.set $__stack_pointer
|
|
local.get 0
|
|
local.get 1
|
|
local.get 3
|
|
i32.const 144
|
|
i32.add
|
|
local.get 3
|
|
i32.const 136
|
|
i32.add
|
|
local.get 3
|
|
i32.const 120
|
|
i32.add
|
|
local.get 3
|
|
i32.const 128
|
|
i32.add
|
|
local.get 3
|
|
i32.const 112
|
|
i32.add
|
|
local.get 3
|
|
call $gsm_enc_Gsm_Coder
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=146
|
|
i32.const 63
|
|
i32.and
|
|
local.get 3
|
|
i32.load16_u offset=144
|
|
local.tee 1
|
|
i32.const 6
|
|
i32.shl
|
|
i32.or
|
|
i32.store8 offset=1
|
|
local.get 2
|
|
local.get 1
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 15
|
|
i32.and
|
|
i32.const 208
|
|
i32.or
|
|
i32.store8
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=150
|
|
local.tee 1
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 7
|
|
i32.and
|
|
local.get 3
|
|
i32.load16_u offset=148
|
|
i32.const 3
|
|
i32.shl
|
|
i32.or
|
|
i32.store8 offset=2
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=120
|
|
local.tee 0
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.const 1
|
|
i32.and
|
|
local.get 3
|
|
i32.load16_u offset=136
|
|
i32.const 1
|
|
i32.shl
|
|
i32.or
|
|
i32.store8 offset=5
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=152
|
|
i32.const 2
|
|
i32.shl
|
|
i32.const 60
|
|
i32.and
|
|
local.get 1
|
|
i32.const 6
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=154
|
|
local.tee 1
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 3
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=3
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=156
|
|
i32.const 3
|
|
i32.shl
|
|
i32.const 56
|
|
i32.and
|
|
local.get 1
|
|
i32.const 6
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=158
|
|
i32.const 7
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=4
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=128
|
|
i32.const 5
|
|
i32.shl
|
|
i32.const 96
|
|
i32.and
|
|
local.get 0
|
|
i32.const 7
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=112
|
|
local.tee 1
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.const 31
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=6
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=6
|
|
i32.const 3
|
|
i32.shl
|
|
i32.const 56
|
|
i32.and
|
|
local.get 3
|
|
i32.load16_u offset=4
|
|
local.tee 0
|
|
i32.const 6
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=8
|
|
i32.const 7
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=8
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=12
|
|
i32.const 2
|
|
i32.shl
|
|
i32.const 28
|
|
i32.and
|
|
local.get 3
|
|
i32.load16_u offset=10
|
|
i32.const 5
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=14
|
|
local.tee 4
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.const 3
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=9
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u
|
|
i32.const 4
|
|
i32.shl
|
|
i32.const 112
|
|
i32.and
|
|
local.get 1
|
|
i32.const 7
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=2
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 14
|
|
i32.and
|
|
i32.or
|
|
local.get 0
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 1
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=7
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=16
|
|
i32.const 4
|
|
i32.shl
|
|
i32.const 112
|
|
i32.and
|
|
local.get 4
|
|
i32.const 7
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=18
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 14
|
|
i32.and
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=20
|
|
local.tee 1
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 1
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=10
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=22
|
|
i32.const 3
|
|
i32.shl
|
|
i32.const 56
|
|
i32.and
|
|
local.get 1
|
|
i32.const 6
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=24
|
|
i32.const 7
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=11
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=122
|
|
local.tee 1
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.const 1
|
|
i32.and
|
|
local.get 3
|
|
i32.load16_u offset=138
|
|
i32.const 1
|
|
i32.shl
|
|
i32.or
|
|
i32.store8 offset=12
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=130
|
|
i32.const 5
|
|
i32.shl
|
|
i32.const 96
|
|
i32.and
|
|
local.get 1
|
|
i32.const 7
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=114
|
|
local.tee 1
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.const 31
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=13
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=32
|
|
i32.const 3
|
|
i32.shl
|
|
i32.const 56
|
|
i32.and
|
|
local.get 3
|
|
i32.load16_u offset=30
|
|
local.tee 0
|
|
i32.const 6
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=34
|
|
i32.const 7
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=15
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=38
|
|
i32.const 2
|
|
i32.shl
|
|
i32.const 28
|
|
i32.and
|
|
local.get 3
|
|
i32.load16_u offset=36
|
|
i32.const 5
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=40
|
|
local.tee 4
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.const 3
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=16
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=26
|
|
i32.const 4
|
|
i32.shl
|
|
i32.const 112
|
|
i32.and
|
|
local.get 1
|
|
i32.const 7
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=28
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 14
|
|
i32.and
|
|
i32.or
|
|
local.get 0
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 1
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=14
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=42
|
|
i32.const 4
|
|
i32.shl
|
|
i32.const 112
|
|
i32.and
|
|
local.get 4
|
|
i32.const 7
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=44
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 14
|
|
i32.and
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=46
|
|
local.tee 1
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 1
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=17
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=48
|
|
i32.const 3
|
|
i32.shl
|
|
i32.const 56
|
|
i32.and
|
|
local.get 1
|
|
i32.const 6
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=50
|
|
i32.const 7
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=18
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=124
|
|
local.tee 1
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.const 1
|
|
i32.and
|
|
local.get 3
|
|
i32.load16_u offset=140
|
|
i32.const 1
|
|
i32.shl
|
|
i32.or
|
|
i32.store8 offset=19
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=132
|
|
i32.const 5
|
|
i32.shl
|
|
i32.const 96
|
|
i32.and
|
|
local.get 1
|
|
i32.const 7
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=116
|
|
local.tee 1
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.const 31
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=20
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=52
|
|
i32.const 4
|
|
i32.shl
|
|
i32.const 112
|
|
i32.and
|
|
local.get 1
|
|
i32.const 7
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=54
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 14
|
|
i32.and
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=56
|
|
local.tee 1
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 1
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=21
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=58
|
|
i32.const 3
|
|
i32.shl
|
|
i32.const 56
|
|
i32.and
|
|
local.get 1
|
|
i32.const 6
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=60
|
|
i32.const 7
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=22
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=64
|
|
i32.const 2
|
|
i32.shl
|
|
i32.const 28
|
|
i32.and
|
|
local.get 3
|
|
i32.load16_u offset=62
|
|
i32.const 5
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=66
|
|
local.tee 1
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.const 3
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=23
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=68
|
|
i32.const 4
|
|
i32.shl
|
|
i32.const 112
|
|
i32.and
|
|
local.get 1
|
|
i32.const 7
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=70
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 14
|
|
i32.and
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=72
|
|
local.tee 1
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 1
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=24
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=74
|
|
i32.const 3
|
|
i32.shl
|
|
i32.const 56
|
|
i32.and
|
|
local.get 1
|
|
i32.const 6
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=76
|
|
i32.const 7
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=25
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=126
|
|
local.tee 1
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.const 1
|
|
i32.and
|
|
local.get 3
|
|
i32.load16_u offset=142
|
|
i32.const 1
|
|
i32.shl
|
|
i32.or
|
|
i32.store8 offset=26
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=134
|
|
i32.const 5
|
|
i32.shl
|
|
i32.const 96
|
|
i32.and
|
|
local.get 1
|
|
i32.const 7
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=118
|
|
local.tee 1
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.const 31
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=27
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=78
|
|
i32.const 4
|
|
i32.shl
|
|
i32.const 112
|
|
i32.and
|
|
local.get 1
|
|
i32.const 7
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=80
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 14
|
|
i32.and
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=82
|
|
local.tee 1
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 1
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=28
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=84
|
|
i32.const 3
|
|
i32.shl
|
|
i32.const 56
|
|
i32.and
|
|
local.get 1
|
|
i32.const 6
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=86
|
|
i32.const 7
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=29
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=90
|
|
i32.const 2
|
|
i32.shl
|
|
i32.const 28
|
|
i32.and
|
|
local.get 3
|
|
i32.load16_u offset=88
|
|
i32.const 5
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=92
|
|
local.tee 1
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.const 3
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=30
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=94
|
|
i32.const 4
|
|
i32.shl
|
|
i32.const 112
|
|
i32.and
|
|
local.get 1
|
|
i32.const 7
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=96
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 14
|
|
i32.and
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=98
|
|
local.tee 1
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 1
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=31
|
|
local.get 2
|
|
local.get 3
|
|
i32.load16_u offset=100
|
|
i32.const 3
|
|
i32.shl
|
|
i32.const 56
|
|
i32.and
|
|
local.get 1
|
|
i32.const 6
|
|
i32.shl
|
|
i32.or
|
|
local.get 3
|
|
i32.load16_u offset=102
|
|
i32.const 7
|
|
i32.and
|
|
i32.or
|
|
i32.store8 offset=32
|
|
local.get 3
|
|
i32.const 160
|
|
i32.add
|
|
global.set $__stack_pointer)
|
|
(func $gsm_enc_Gsm_Coder (type 3) (param i32 i32 i32 i32 i32 i32 i32 i32)
|
|
(local i32 i32)
|
|
global.get $__stack_pointer
|
|
i32.const 320
|
|
i32.sub
|
|
local.tee 8
|
|
global.set $__stack_pointer
|
|
local.get 0
|
|
local.get 1
|
|
local.get 8
|
|
call $gsm_enc_Gsm_Preprocess
|
|
local.get 8
|
|
local.get 2
|
|
call $gsm_enc_Gsm_LPC_Analysis
|
|
local.get 0
|
|
local.get 2
|
|
local.get 8
|
|
call $gsm_enc_Gsm_Short_Term_Analysis_Filter
|
|
i32.const 4
|
|
i32.const 4
|
|
call $__pragma_loopbound
|
|
local.get 8
|
|
local.get 0
|
|
i32.const 240
|
|
i32.add
|
|
local.tee 2
|
|
local.get 4
|
|
local.get 3
|
|
call $gsm_enc_Calculation_of_the_LTP_parameters
|
|
local.get 4
|
|
i32.load16_s
|
|
local.get 3
|
|
i32.load16_s
|
|
local.get 2
|
|
local.get 8
|
|
local.get 2
|
|
i32.const 8410
|
|
call $gsm_enc_Long_term_analysis_filtering
|
|
i32.const 8410
|
|
local.get 6
|
|
local.get 5
|
|
local.get 7
|
|
call $gsm_enc_Gsm_RPE_Encoding
|
|
i32.const 40
|
|
i32.const 40
|
|
call $__pragma_loopbound
|
|
i32.const 0
|
|
local.set 2
|
|
loop ;; label = @1
|
|
local.get 0
|
|
local.get 2
|
|
i32.add
|
|
local.tee 1
|
|
i32.const 240
|
|
i32.add
|
|
local.tee 9
|
|
local.get 2
|
|
i32.const 8410
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 9
|
|
i32.load16_s
|
|
i32.add
|
|
local.tee 9
|
|
i32.const 32767
|
|
local.get 9
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 9
|
|
i32.const -32768
|
|
local.get 9
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16
|
|
local.get 1
|
|
i32.const 242
|
|
i32.add
|
|
local.tee 1
|
|
local.get 2
|
|
i32.const 8412
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 1
|
|
i32.load16_s
|
|
i32.add
|
|
local.tee 1
|
|
i32.const 32767
|
|
local.get 1
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 1
|
|
i32.const -32768
|
|
local.get 1
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16
|
|
local.get 2
|
|
i32.const 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 80
|
|
i32.ne
|
|
br_if 0 (;@1;)
|
|
end
|
|
local.get 8
|
|
i32.const 80
|
|
i32.add
|
|
local.tee 1
|
|
local.get 0
|
|
i32.const 320
|
|
i32.add
|
|
local.tee 2
|
|
local.get 4
|
|
i32.const 2
|
|
i32.add
|
|
local.get 3
|
|
i32.const 2
|
|
i32.add
|
|
call $gsm_enc_Calculation_of_the_LTP_parameters
|
|
local.get 4
|
|
i32.load16_s offset=2
|
|
local.get 3
|
|
i32.load16_s offset=2
|
|
local.get 2
|
|
local.get 1
|
|
local.get 2
|
|
i32.const 8410
|
|
call $gsm_enc_Long_term_analysis_filtering
|
|
i32.const 8410
|
|
local.get 6
|
|
i32.const 2
|
|
i32.add
|
|
local.get 5
|
|
i32.const 2
|
|
i32.add
|
|
local.get 7
|
|
i32.const 26
|
|
i32.add
|
|
call $gsm_enc_Gsm_RPE_Encoding
|
|
i32.const 40
|
|
i32.const 40
|
|
call $__pragma_loopbound
|
|
i32.const 0
|
|
local.set 2
|
|
loop ;; label = @1
|
|
local.get 0
|
|
local.get 2
|
|
i32.add
|
|
local.tee 1
|
|
i32.const 320
|
|
i32.add
|
|
local.tee 9
|
|
local.get 2
|
|
i32.const 8410
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 9
|
|
i32.load16_s
|
|
i32.add
|
|
local.tee 9
|
|
i32.const 32767
|
|
local.get 9
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 9
|
|
i32.const -32768
|
|
local.get 9
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16
|
|
local.get 1
|
|
i32.const 322
|
|
i32.add
|
|
local.tee 1
|
|
local.get 2
|
|
i32.const 8412
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 1
|
|
i32.load16_s
|
|
i32.add
|
|
local.tee 1
|
|
i32.const 32767
|
|
local.get 1
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 1
|
|
i32.const -32768
|
|
local.get 1
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16
|
|
local.get 2
|
|
i32.const 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 80
|
|
i32.ne
|
|
br_if 0 (;@1;)
|
|
end
|
|
local.get 8
|
|
i32.const 160
|
|
i32.add
|
|
local.tee 1
|
|
local.get 0
|
|
i32.const 400
|
|
i32.add
|
|
local.tee 2
|
|
local.get 4
|
|
i32.const 4
|
|
i32.add
|
|
local.get 3
|
|
i32.const 4
|
|
i32.add
|
|
call $gsm_enc_Calculation_of_the_LTP_parameters
|
|
local.get 4
|
|
i32.load16_s offset=4
|
|
local.get 3
|
|
i32.load16_s offset=4
|
|
local.get 2
|
|
local.get 1
|
|
local.get 2
|
|
i32.const 8410
|
|
call $gsm_enc_Long_term_analysis_filtering
|
|
i32.const 8410
|
|
local.get 6
|
|
i32.const 4
|
|
i32.add
|
|
local.get 5
|
|
i32.const 4
|
|
i32.add
|
|
local.get 7
|
|
i32.const 52
|
|
i32.add
|
|
call $gsm_enc_Gsm_RPE_Encoding
|
|
i32.const 40
|
|
i32.const 40
|
|
call $__pragma_loopbound
|
|
i32.const 0
|
|
local.set 2
|
|
loop ;; label = @1
|
|
local.get 0
|
|
local.get 2
|
|
i32.add
|
|
local.tee 1
|
|
i32.const 400
|
|
i32.add
|
|
local.tee 9
|
|
local.get 2
|
|
i32.const 8410
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 9
|
|
i32.load16_s
|
|
i32.add
|
|
local.tee 9
|
|
i32.const 32767
|
|
local.get 9
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 9
|
|
i32.const -32768
|
|
local.get 9
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16
|
|
local.get 1
|
|
i32.const 402
|
|
i32.add
|
|
local.tee 1
|
|
local.get 2
|
|
i32.const 8412
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 1
|
|
i32.load16_s
|
|
i32.add
|
|
local.tee 1
|
|
i32.const 32767
|
|
local.get 1
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 1
|
|
i32.const -32768
|
|
local.get 1
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16
|
|
local.get 2
|
|
i32.const 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 80
|
|
i32.ne
|
|
br_if 0 (;@1;)
|
|
end
|
|
local.get 8
|
|
i32.const 240
|
|
i32.add
|
|
local.tee 1
|
|
local.get 0
|
|
i32.const 480
|
|
i32.add
|
|
local.tee 2
|
|
local.get 4
|
|
i32.const 6
|
|
i32.add
|
|
local.get 3
|
|
i32.const 6
|
|
i32.add
|
|
call $gsm_enc_Calculation_of_the_LTP_parameters
|
|
local.get 4
|
|
i32.load16_s offset=6
|
|
local.get 3
|
|
i32.load16_s offset=6
|
|
local.get 2
|
|
local.get 1
|
|
local.get 2
|
|
i32.const 8410
|
|
call $gsm_enc_Long_term_analysis_filtering
|
|
i32.const 8410
|
|
local.get 6
|
|
i32.const 6
|
|
i32.add
|
|
local.get 5
|
|
i32.const 6
|
|
i32.add
|
|
local.get 7
|
|
i32.const 78
|
|
i32.add
|
|
call $gsm_enc_Gsm_RPE_Encoding
|
|
i32.const 40
|
|
i32.const 40
|
|
call $__pragma_loopbound
|
|
i32.const 0
|
|
local.set 2
|
|
loop ;; label = @1
|
|
local.get 0
|
|
local.get 2
|
|
i32.add
|
|
local.tee 1
|
|
i32.const 480
|
|
i32.add
|
|
local.tee 9
|
|
local.get 2
|
|
i32.const 8410
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 9
|
|
i32.load16_s
|
|
i32.add
|
|
local.tee 9
|
|
i32.const 32767
|
|
local.get 9
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 9
|
|
i32.const -32768
|
|
local.get 9
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16
|
|
local.get 1
|
|
i32.const 482
|
|
i32.add
|
|
local.tee 1
|
|
local.get 2
|
|
i32.const 8412
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 1
|
|
i32.load16_s
|
|
i32.add
|
|
local.tee 1
|
|
i32.const 32767
|
|
local.get 1
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 1
|
|
i32.const -32768
|
|
local.get 1
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16
|
|
local.get 2
|
|
i32.const 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 80
|
|
i32.ne
|
|
br_if 0 (;@1;)
|
|
end
|
|
local.get 8
|
|
i32.const 320
|
|
i32.add
|
|
global.set $__stack_pointer)
|
|
(func $gsm_enc_Gsm_Preprocess (type 2) (param i32 i32 i32)
|
|
(local i32 i32 i32 i32 i32 i32)
|
|
local.get 0
|
|
i32.load offset=568
|
|
local.set 3
|
|
local.get 0
|
|
i32.load offset=564
|
|
local.set 4
|
|
local.get 0
|
|
i32.load16_u offset=560
|
|
local.set 5
|
|
i32.const 160
|
|
i32.const 160
|
|
call $__pragma_loopbound
|
|
i32.const 0
|
|
local.set 6
|
|
loop ;; label = @1
|
|
local.get 3
|
|
local.set 7
|
|
local.get 5
|
|
local.set 3
|
|
local.get 1
|
|
local.get 6
|
|
i32.add
|
|
i32.load16_s
|
|
i32.const 1
|
|
i32.shr_s
|
|
i32.const -4
|
|
i32.and
|
|
local.tee 5
|
|
local.get 3
|
|
i32.sub
|
|
i32.extend16_s
|
|
i32.const 15
|
|
i32.shl
|
|
local.get 4
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.tee 3
|
|
i32.const 31
|
|
i32.shl
|
|
local.get 4
|
|
i32.const 16
|
|
i32.shl
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
i32.const 32735
|
|
i32.mul
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_s
|
|
i32.add
|
|
local.tee 8
|
|
local.get 3
|
|
i32.const 32735
|
|
i32.mul
|
|
i32.add
|
|
local.set 4
|
|
block ;; label = @2
|
|
block ;; label = @3
|
|
local.get 3
|
|
i32.const -1
|
|
i32.gt_s
|
|
br_if 0 (;@3;)
|
|
local.get 8
|
|
i32.const -1
|
|
i32.gt_s
|
|
br_if 1 (;@2;)
|
|
i32.const -2147483648
|
|
local.get 4
|
|
local.get 4
|
|
i32.const -2
|
|
i32.gt_s
|
|
select
|
|
local.set 4
|
|
br 1 (;@2;)
|
|
end
|
|
local.get 4
|
|
local.get 4
|
|
i32.const 2147483647
|
|
local.get 4
|
|
i32.const 2147483647
|
|
i32.lt_u
|
|
select
|
|
local.get 8
|
|
i32.const 1
|
|
i32.lt_s
|
|
select
|
|
local.set 4
|
|
end
|
|
local.get 2
|
|
local.get 6
|
|
i32.add
|
|
local.get 4
|
|
i32.const 16384
|
|
i32.add
|
|
local.tee 3
|
|
i32.const 2147467262
|
|
local.get 3
|
|
local.get 4
|
|
i32.const 2147467262
|
|
i32.gt_u
|
|
select
|
|
local.get 4
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.const 15
|
|
i32.shr_u
|
|
local.tee 3
|
|
i32.extend16_s
|
|
local.tee 8
|
|
local.get 7
|
|
i32.extend16_s
|
|
i32.const -56360
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
i32.add
|
|
local.tee 7
|
|
i32.const 32767
|
|
local.get 7
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 7
|
|
i32.const -32768
|
|
local.get 7
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16
|
|
local.get 6
|
|
i32.const 2
|
|
i32.add
|
|
local.tee 6
|
|
i32.const 320
|
|
i32.ne
|
|
br_if 0 (;@1;)
|
|
end
|
|
local.get 0
|
|
local.get 4
|
|
i32.store offset=564
|
|
local.get 0
|
|
local.get 5
|
|
i32.store16 offset=560
|
|
local.get 0
|
|
local.get 8
|
|
i32.store offset=568)
|
|
(func $gsm_enc_Gsm_LPC_Analysis (type 0) (param i32 i32)
|
|
(local i32)
|
|
global.get $__stack_pointer
|
|
i32.const 48
|
|
i32.sub
|
|
local.tee 2
|
|
global.set $__stack_pointer
|
|
local.get 0
|
|
local.get 2
|
|
call $gsm_enc_Autocorrelation
|
|
local.get 2
|
|
local.get 1
|
|
call $gsm_enc_Reflection_coefficients
|
|
local.get 1
|
|
call $gsm_enc_Transformation_to_Log_Area_Ratios
|
|
local.get 1
|
|
i32.const 63
|
|
i32.const 0
|
|
local.get 1
|
|
i32.load16_s
|
|
i32.const 40960
|
|
i32.mul
|
|
i32.const 16777216
|
|
i32.add
|
|
i32.const 25
|
|
i32.shr_s
|
|
local.tee 0
|
|
i32.const 32
|
|
i32.add
|
|
local.get 0
|
|
i32.const -32
|
|
i32.lt_s
|
|
select
|
|
local.get 0
|
|
i32.const 31
|
|
i32.gt_s
|
|
select
|
|
i32.store16
|
|
local.get 1
|
|
i32.const 63
|
|
i32.const 0
|
|
local.get 1
|
|
i32.load16_s offset=2
|
|
i32.const 40960
|
|
i32.mul
|
|
i32.const 16777216
|
|
i32.add
|
|
i32.const 25
|
|
i32.shr_s
|
|
local.tee 0
|
|
i32.const 32
|
|
i32.add
|
|
local.get 0
|
|
i32.const -32
|
|
i32.lt_s
|
|
select
|
|
local.get 0
|
|
i32.const 31
|
|
i32.gt_s
|
|
select
|
|
i32.store16 offset=2
|
|
local.get 1
|
|
i32.const 31
|
|
i32.const 0
|
|
local.get 1
|
|
i32.load16_s offset=4
|
|
i32.const 40960
|
|
i32.mul
|
|
i32.const 150994944
|
|
i32.add
|
|
i32.const 25
|
|
i32.shr_s
|
|
local.tee 0
|
|
i32.const 16
|
|
i32.add
|
|
local.get 0
|
|
i32.const -16
|
|
i32.lt_s
|
|
select
|
|
local.get 0
|
|
i32.const 15
|
|
i32.gt_s
|
|
select
|
|
i32.store16 offset=4
|
|
local.get 1
|
|
i32.const 31
|
|
i32.const 0
|
|
local.get 1
|
|
i32.load16_s offset=6
|
|
i32.const 40960
|
|
i32.mul
|
|
i32.const -150994944
|
|
i32.add
|
|
i32.const 25
|
|
i32.shr_s
|
|
local.tee 0
|
|
i32.const 16
|
|
i32.add
|
|
local.get 0
|
|
i32.const -16
|
|
i32.lt_s
|
|
select
|
|
local.get 0
|
|
i32.const 15
|
|
i32.gt_s
|
|
select
|
|
i32.store16 offset=6
|
|
local.get 1
|
|
i32.const 15
|
|
i32.const 0
|
|
local.get 1
|
|
i32.load16_s offset=8
|
|
i32.const 27928
|
|
i32.mul
|
|
i32.const 22937600
|
|
i32.add
|
|
i32.const 25
|
|
i32.shr_s
|
|
local.tee 0
|
|
i32.const 8
|
|
i32.add
|
|
local.get 0
|
|
i32.const -8
|
|
i32.lt_s
|
|
select
|
|
local.get 0
|
|
i32.const 7
|
|
i32.gt_s
|
|
select
|
|
i32.store16 offset=8
|
|
local.get 1
|
|
i32.const 15
|
|
i32.const 0
|
|
local.get 1
|
|
i32.load16_s offset=10
|
|
i32.const 30720
|
|
i32.mul
|
|
i32.const -100663296
|
|
i32.add
|
|
i32.const 25
|
|
i32.shr_s
|
|
local.tee 0
|
|
i32.const 8
|
|
i32.add
|
|
local.get 0
|
|
i32.const -8
|
|
i32.lt_s
|
|
select
|
|
local.get 0
|
|
i32.const 7
|
|
i32.gt_s
|
|
select
|
|
i32.store16 offset=10
|
|
local.get 1
|
|
i32.const 7
|
|
i32.const 0
|
|
local.get 1
|
|
i32.load16_s offset=12
|
|
i32.const 17068
|
|
i32.mul
|
|
i32.const -5570560
|
|
i32.add
|
|
i32.const 25
|
|
i32.shr_s
|
|
local.tee 0
|
|
i32.const 4
|
|
i32.add
|
|
local.get 0
|
|
i32.const -4
|
|
i32.lt_s
|
|
select
|
|
local.get 0
|
|
i32.const 3
|
|
i32.gt_s
|
|
select
|
|
i32.store16 offset=12
|
|
local.get 1
|
|
i32.const 7
|
|
i32.const 0
|
|
local.get 1
|
|
i32.load16_s offset=14
|
|
i32.const 18072
|
|
i32.mul
|
|
i32.const -58195968
|
|
i32.add
|
|
i32.const 25
|
|
i32.shr_s
|
|
local.tee 0
|
|
i32.const 4
|
|
i32.add
|
|
local.get 0
|
|
i32.const -4
|
|
i32.lt_s
|
|
select
|
|
local.get 0
|
|
i32.const 3
|
|
i32.gt_s
|
|
select
|
|
i32.store16 offset=14
|
|
local.get 2
|
|
i32.const 48
|
|
i32.add
|
|
global.set $__stack_pointer)
|
|
(func $gsm_enc_Gsm_Short_Term_Analysis_Filter (type 2) (param i32 i32 i32)
|
|
(local i32 i32 i32 i32)
|
|
global.get $__stack_pointer
|
|
i32.const 16
|
|
i32.sub
|
|
local.tee 3
|
|
global.set $__stack_pointer
|
|
local.get 0
|
|
local.get 0
|
|
i32.load16_s offset=620
|
|
local.tee 4
|
|
i32.const 1
|
|
i32.xor
|
|
local.tee 5
|
|
i32.store16 offset=620
|
|
local.get 1
|
|
local.get 0
|
|
i32.const 588
|
|
i32.add
|
|
local.tee 6
|
|
local.get 4
|
|
i32.const 4
|
|
i32.shl
|
|
i32.add
|
|
local.tee 4
|
|
call $gsm_enc_Decoding_of_the_coded_Log_Area_Ratios
|
|
i32.const 8
|
|
i32.const 8
|
|
call $__pragma_loopbound
|
|
local.get 3
|
|
local.get 6
|
|
local.get 5
|
|
i32.const 4
|
|
i32.shl
|
|
i32.add
|
|
local.tee 1
|
|
i32.load16_s
|
|
local.tee 5
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 5
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 4
|
|
i32.load16_s
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16
|
|
local.get 3
|
|
local.get 1
|
|
i32.load16_s offset=2
|
|
local.tee 5
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 5
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 4
|
|
i32.load16_s offset=2
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=2
|
|
local.get 3
|
|
local.get 1
|
|
i32.load16_s offset=4
|
|
local.tee 5
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 5
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 4
|
|
i32.load16_s offset=4
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=4
|
|
local.get 3
|
|
local.get 1
|
|
i32.load16_s offset=6
|
|
local.tee 5
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 5
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 4
|
|
i32.load16_s offset=6
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=6
|
|
local.get 3
|
|
local.get 1
|
|
i32.load16_s offset=8
|
|
local.tee 5
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 5
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 4
|
|
i32.load16_s offset=8
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=8
|
|
local.get 3
|
|
local.get 1
|
|
i32.load16_s offset=10
|
|
local.tee 5
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 5
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 4
|
|
i32.load16_s offset=10
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=10
|
|
local.get 3
|
|
local.get 1
|
|
i32.load16_s offset=12
|
|
local.tee 5
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 5
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 4
|
|
i32.load16_s offset=12
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=12
|
|
local.get 3
|
|
local.get 1
|
|
i32.const 14
|
|
i32.add
|
|
local.tee 5
|
|
i32.load16_s
|
|
local.tee 6
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 6
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 4
|
|
i32.load16_s offset=14
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=14
|
|
local.get 3
|
|
call $gsm_enc_LARp_to_rp
|
|
local.get 0
|
|
local.get 3
|
|
i32.const 13
|
|
local.get 2
|
|
call $gsm_enc_Short_term_analysis_filtering
|
|
i32.const 8
|
|
i32.const 8
|
|
call $__pragma_loopbound
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 1
|
|
i32.load16_s
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s offset=2
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 1
|
|
i32.load16_s offset=2
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=2
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s offset=4
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 1
|
|
i32.load16_s offset=4
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=4
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s offset=6
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 1
|
|
i32.load16_s offset=6
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=6
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s offset=8
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 1
|
|
i32.load16_s offset=8
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=8
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s offset=10
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 1
|
|
i32.load16_s offset=10
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=10
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s offset=12
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 1
|
|
i32.load16_s offset=12
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=12
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s offset=14
|
|
i32.const 1
|
|
i32.shr_u
|
|
local.get 5
|
|
i32.load16_s
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=14
|
|
local.get 3
|
|
call $gsm_enc_LARp_to_rp
|
|
local.get 0
|
|
local.get 3
|
|
i32.const 14
|
|
local.get 2
|
|
i32.const 26
|
|
i32.add
|
|
call $gsm_enc_Short_term_analysis_filtering
|
|
i32.const 8
|
|
i32.const 8
|
|
call $__pragma_loopbound
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s
|
|
local.tee 6
|
|
i32.const 2
|
|
i32.shr_u
|
|
local.get 1
|
|
i32.load16_s
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 6
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s offset=2
|
|
local.tee 6
|
|
i32.const 2
|
|
i32.shr_u
|
|
local.get 1
|
|
i32.load16_s offset=2
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 6
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=2
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s offset=4
|
|
local.tee 6
|
|
i32.const 2
|
|
i32.shr_u
|
|
local.get 1
|
|
i32.load16_s offset=4
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 6
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=4
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s offset=6
|
|
local.tee 6
|
|
i32.const 2
|
|
i32.shr_u
|
|
local.get 1
|
|
i32.load16_s offset=6
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 6
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=6
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s offset=8
|
|
local.tee 6
|
|
i32.const 2
|
|
i32.shr_u
|
|
local.get 1
|
|
i32.load16_s offset=8
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 6
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=8
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s offset=10
|
|
local.tee 6
|
|
i32.const 2
|
|
i32.shr_u
|
|
local.get 1
|
|
i32.load16_s offset=10
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 6
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=10
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s offset=12
|
|
local.tee 6
|
|
i32.const 2
|
|
i32.shr_u
|
|
local.get 1
|
|
i32.load16_s offset=12
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 6
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=12
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s offset=14
|
|
local.tee 1
|
|
i32.const 2
|
|
i32.shr_u
|
|
local.get 5
|
|
i32.load16_s
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.add
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shr_u
|
|
i32.add
|
|
i32.store16 offset=14
|
|
local.get 3
|
|
call $gsm_enc_LARp_to_rp
|
|
local.get 0
|
|
local.get 3
|
|
i32.const 13
|
|
local.get 2
|
|
i32.const 54
|
|
i32.add
|
|
call $gsm_enc_Short_term_analysis_filtering
|
|
i32.const 8
|
|
i32.const 8
|
|
call $__pragma_loopbound
|
|
local.get 3
|
|
local.get 4
|
|
i64.load align=2
|
|
i64.store
|
|
local.get 3
|
|
local.get 4
|
|
i64.load offset=8 align=2
|
|
i64.store offset=8
|
|
local.get 3
|
|
call $gsm_enc_LARp_to_rp
|
|
local.get 0
|
|
local.get 3
|
|
i32.const 120
|
|
local.get 2
|
|
i32.const 80
|
|
i32.add
|
|
call $gsm_enc_Short_term_analysis_filtering
|
|
local.get 3
|
|
i32.const 16
|
|
i32.add
|
|
global.set $__stack_pointer)
|
|
(func $gsm_enc_Calculation_of_the_LTP_parameters (type 4) (param i32 i32 i32 i32)
|
|
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
|
|
i32.const 40
|
|
i32.const 40
|
|
call $__pragma_loopbound
|
|
i32.const 0
|
|
local.set 4
|
|
i32.const 0
|
|
local.set 5
|
|
loop ;; label = @1
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 0
|
|
local.get 4
|
|
i32.add
|
|
local.tee 6
|
|
i32.const 2
|
|
i32.add
|
|
i32.load16_u
|
|
local.tee 7
|
|
i32.sub
|
|
local.get 7
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 7
|
|
local.get 7
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 8
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 6
|
|
i32.load16_u
|
|
local.tee 7
|
|
i32.sub
|
|
local.get 7
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 7
|
|
local.get 7
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 7
|
|
local.get 5
|
|
i32.extend16_s
|
|
local.tee 5
|
|
local.get 7
|
|
local.get 5
|
|
i32.gt_s
|
|
select
|
|
local.tee 7
|
|
local.get 8
|
|
local.get 7
|
|
i32.gt_s
|
|
select
|
|
local.set 5
|
|
local.get 4
|
|
i32.const 4
|
|
i32.add
|
|
local.tee 4
|
|
i32.const 80
|
|
i32.ne
|
|
br_if 0 (;@1;)
|
|
end
|
|
i32.const 6
|
|
local.set 8
|
|
block ;; label = @1
|
|
local.get 5
|
|
i32.eqz
|
|
br_if 0 (;@1;)
|
|
i32.const 0
|
|
i32.const 6
|
|
i32.const 7
|
|
i32.const -1
|
|
local.get 5
|
|
i32.const 256
|
|
i32.lt_u
|
|
local.tee 7
|
|
select
|
|
local.get 5
|
|
local.get 5
|
|
i32.const 8
|
|
i32.shr_u
|
|
local.get 7
|
|
select
|
|
i32.const 8144
|
|
i32.add
|
|
i32.load8_u
|
|
i32.add
|
|
local.tee 7
|
|
i32.sub
|
|
i32.const 65535
|
|
i32.and
|
|
local.get 7
|
|
i32.const 6
|
|
i32.gt_s
|
|
select
|
|
local.set 8
|
|
end
|
|
i32.const 40
|
|
i32.const 40
|
|
call $__pragma_loopbound
|
|
local.get 0
|
|
i32.load16_s
|
|
local.set 4
|
|
local.get 0
|
|
i32.load16_s offset=2
|
|
local.set 5
|
|
local.get 0
|
|
i32.load16_s offset=4
|
|
local.set 6
|
|
local.get 0
|
|
i32.load16_s offset=6
|
|
local.set 9
|
|
local.get 0
|
|
i32.load16_s offset=8
|
|
local.set 10
|
|
local.get 0
|
|
i32.load16_s offset=10
|
|
local.set 11
|
|
local.get 0
|
|
i32.load16_s offset=12
|
|
local.set 12
|
|
local.get 0
|
|
i32.load16_s offset=14
|
|
local.set 13
|
|
local.get 0
|
|
i32.load16_s offset=16
|
|
local.set 14
|
|
local.get 0
|
|
i32.load16_s offset=18
|
|
local.set 15
|
|
local.get 0
|
|
i32.load16_s offset=20
|
|
local.set 16
|
|
local.get 0
|
|
i32.load16_s offset=22
|
|
local.set 17
|
|
local.get 0
|
|
i32.load16_s offset=24
|
|
local.set 18
|
|
local.get 0
|
|
i32.load16_s offset=26
|
|
local.set 19
|
|
local.get 0
|
|
i32.load16_s offset=28
|
|
local.set 20
|
|
local.get 0
|
|
i32.load16_s offset=30
|
|
local.set 21
|
|
local.get 0
|
|
i32.load16_s offset=32
|
|
local.set 22
|
|
local.get 0
|
|
i32.load16_s offset=34
|
|
local.set 23
|
|
local.get 0
|
|
i32.load16_s offset=36
|
|
local.set 24
|
|
local.get 0
|
|
i32.load16_s offset=38
|
|
local.set 25
|
|
local.get 0
|
|
i32.load16_s offset=40
|
|
local.set 26
|
|
local.get 0
|
|
i32.load16_s offset=42
|
|
local.set 27
|
|
local.get 0
|
|
i32.load16_s offset=44
|
|
local.set 28
|
|
local.get 0
|
|
i32.load16_s offset=46
|
|
local.set 29
|
|
local.get 0
|
|
i32.load16_s offset=48
|
|
local.set 30
|
|
local.get 0
|
|
i32.load16_s offset=50
|
|
local.set 31
|
|
local.get 0
|
|
i32.load16_s offset=52
|
|
local.set 32
|
|
local.get 0
|
|
i32.load16_s offset=54
|
|
local.set 33
|
|
local.get 0
|
|
i32.load16_s offset=56
|
|
local.set 34
|
|
local.get 0
|
|
i32.load16_s offset=58
|
|
local.set 35
|
|
local.get 0
|
|
i32.load16_s offset=60
|
|
local.set 36
|
|
local.get 0
|
|
i32.load16_s offset=62
|
|
local.set 37
|
|
local.get 0
|
|
i32.load16_s offset=64
|
|
local.set 38
|
|
local.get 0
|
|
i32.load16_s offset=66
|
|
local.set 39
|
|
local.get 0
|
|
i32.load16_s offset=68
|
|
local.set 40
|
|
local.get 0
|
|
i32.load16_s offset=70
|
|
local.set 41
|
|
local.get 0
|
|
i32.load16_s offset=72
|
|
local.set 42
|
|
local.get 0
|
|
i32.load16_s offset=74
|
|
local.set 43
|
|
local.get 0
|
|
i32.load16_s offset=76
|
|
local.set 44
|
|
local.get 0
|
|
i32.load16_s offset=78
|
|
local.set 0
|
|
i32.const 81
|
|
i32.const 81
|
|
call $__pragma_loopbound
|
|
local.get 1
|
|
i32.const -80
|
|
i32.add
|
|
local.set 7
|
|
local.get 0
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 45
|
|
local.get 44
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 44
|
|
local.get 43
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 43
|
|
local.get 42
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 42
|
|
local.get 41
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 41
|
|
local.get 40
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 40
|
|
local.get 39
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 39
|
|
local.get 38
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 38
|
|
local.get 37
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 37
|
|
local.get 36
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 36
|
|
local.get 35
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 35
|
|
local.get 34
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 34
|
|
local.get 33
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 33
|
|
local.get 32
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 32
|
|
local.get 31
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 31
|
|
local.get 30
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 30
|
|
local.get 29
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 29
|
|
local.get 28
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 28
|
|
local.get 27
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 27
|
|
local.get 26
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 26
|
|
local.get 25
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 25
|
|
local.get 24
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 24
|
|
local.get 23
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 23
|
|
local.get 22
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 22
|
|
local.get 21
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 21
|
|
local.get 20
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 20
|
|
local.get 19
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 19
|
|
local.get 18
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 18
|
|
local.get 17
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 17
|
|
local.get 16
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 16
|
|
local.get 15
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 15
|
|
local.get 14
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 14
|
|
local.get 13
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 13
|
|
local.get 12
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 12
|
|
local.get 11
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 11
|
|
local.get 10
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 10
|
|
local.get 9
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 9
|
|
local.get 6
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 46
|
|
local.get 5
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 47
|
|
local.get 4
|
|
local.get 8
|
|
i32.shr_s
|
|
local.set 48
|
|
i32.const 0
|
|
local.set 4
|
|
i32.const 40
|
|
local.set 0
|
|
i32.const 40
|
|
local.set 5
|
|
loop ;; label = @1
|
|
local.get 47
|
|
local.get 7
|
|
i32.const 2
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
local.get 48
|
|
local.get 7
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 46
|
|
local.get 7
|
|
i32.const 4
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 9
|
|
local.get 7
|
|
i32.const 6
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 10
|
|
local.get 7
|
|
i32.const 8
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 11
|
|
local.get 7
|
|
i32.const 10
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 12
|
|
local.get 7
|
|
i32.const 12
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 13
|
|
local.get 7
|
|
i32.const 14
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 14
|
|
local.get 7
|
|
i32.const 16
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 15
|
|
local.get 7
|
|
i32.const 18
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 16
|
|
local.get 7
|
|
i32.const 20
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 17
|
|
local.get 7
|
|
i32.const 22
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 18
|
|
local.get 7
|
|
i32.const 24
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 19
|
|
local.get 7
|
|
i32.const 26
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 20
|
|
local.get 7
|
|
i32.const 28
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 21
|
|
local.get 7
|
|
i32.const 30
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 22
|
|
local.get 7
|
|
i32.const 32
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 23
|
|
local.get 7
|
|
i32.const 34
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 24
|
|
local.get 7
|
|
i32.const 36
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 25
|
|
local.get 7
|
|
i32.const 38
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 26
|
|
local.get 7
|
|
i32.const 40
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 27
|
|
local.get 7
|
|
i32.const 42
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 28
|
|
local.get 7
|
|
i32.const 44
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 29
|
|
local.get 7
|
|
i32.const 46
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 30
|
|
local.get 7
|
|
i32.const 48
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 31
|
|
local.get 7
|
|
i32.const 50
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 32
|
|
local.get 7
|
|
i32.const 52
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 33
|
|
local.get 7
|
|
i32.const 54
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 34
|
|
local.get 7
|
|
i32.const 56
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 35
|
|
local.get 7
|
|
i32.const 58
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 36
|
|
local.get 7
|
|
i32.const 60
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 37
|
|
local.get 7
|
|
i32.const 62
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 38
|
|
local.get 7
|
|
i32.const 64
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 39
|
|
local.get 7
|
|
i32.const 66
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 40
|
|
local.get 7
|
|
i32.const 68
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 41
|
|
local.get 7
|
|
i32.const 70
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 42
|
|
local.get 7
|
|
i32.const 72
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 43
|
|
local.get 7
|
|
i32.const 74
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 44
|
|
local.get 7
|
|
i32.const 76
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.get 45
|
|
local.get 7
|
|
i32.const 78
|
|
i32.add
|
|
i32.load16_s
|
|
i32.mul
|
|
i32.add
|
|
local.tee 6
|
|
local.get 4
|
|
local.get 6
|
|
local.get 4
|
|
i32.gt_s
|
|
local.tee 6
|
|
select
|
|
local.set 4
|
|
local.get 0
|
|
local.get 5
|
|
local.get 6
|
|
select
|
|
local.set 5
|
|
local.get 7
|
|
i32.const -2
|
|
i32.add
|
|
local.set 7
|
|
local.get 0
|
|
i32.const 1
|
|
i32.add
|
|
local.tee 0
|
|
i32.const 121
|
|
i32.ne
|
|
br_if 0 (;@1;)
|
|
end
|
|
local.get 3
|
|
local.get 5
|
|
i32.store16
|
|
i32.const 40
|
|
i32.const 40
|
|
call $__pragma_loopbound
|
|
i32.const 6
|
|
local.get 8
|
|
i32.sub
|
|
local.set 45
|
|
local.get 1
|
|
local.get 5
|
|
i32.extend16_s
|
|
i32.const 1
|
|
i32.shl
|
|
i32.sub
|
|
local.set 8
|
|
i32.const 0
|
|
local.set 7
|
|
i32.const 0
|
|
local.set 0
|
|
loop ;; label = @1
|
|
local.get 8
|
|
local.get 7
|
|
i32.add
|
|
local.tee 5
|
|
i32.const 2
|
|
i32.add
|
|
i32.load16_s
|
|
i32.const 3
|
|
i32.shr_s
|
|
local.tee 6
|
|
local.get 6
|
|
i32.mul
|
|
local.get 5
|
|
i32.load16_s
|
|
i32.const 3
|
|
i32.shr_s
|
|
local.tee 5
|
|
local.get 5
|
|
i32.mul
|
|
local.get 0
|
|
i32.add
|
|
i32.add
|
|
local.set 0
|
|
local.get 7
|
|
i32.const 4
|
|
i32.add
|
|
local.tee 7
|
|
i32.const 80
|
|
i32.ne
|
|
br_if 0 (;@1;)
|
|
end
|
|
block ;; label = @1
|
|
local.get 4
|
|
i32.const 1
|
|
i32.shl
|
|
local.get 45
|
|
i32.shr_s
|
|
local.tee 7
|
|
i32.const 1
|
|
i32.ge_s
|
|
br_if 0 (;@1;)
|
|
local.get 2
|
|
i32.const 0
|
|
i32.store16
|
|
return
|
|
end
|
|
block ;; label = @1
|
|
local.get 7
|
|
local.get 0
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 4
|
|
i32.lt_s
|
|
br_if 0 (;@1;)
|
|
local.get 2
|
|
i32.const 3
|
|
i32.store16
|
|
return
|
|
end
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
local.get 0
|
|
i32.const 32768
|
|
i32.lt_u
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 0
|
|
i32.const 8388608
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
local.get 0
|
|
i32.const 23
|
|
i32.shr_u
|
|
local.set 0
|
|
i32.const -1
|
|
local.set 5
|
|
br 2 (;@1;)
|
|
end
|
|
local.get 0
|
|
i32.const 15
|
|
i32.shr_u
|
|
local.set 0
|
|
i32.const 7
|
|
local.set 5
|
|
br 1 (;@1;)
|
|
end
|
|
local.get 4
|
|
local.get 0
|
|
i32.const 7
|
|
i32.shr_u
|
|
local.get 0
|
|
i32.const 128
|
|
i32.lt_u
|
|
local.tee 5
|
|
select
|
|
local.set 0
|
|
i32.const 23
|
|
i32.const 15
|
|
local.get 5
|
|
select
|
|
local.set 5
|
|
end
|
|
local.get 0
|
|
i32.const 8144
|
|
i32.add
|
|
i32.load8_u
|
|
local.set 0
|
|
i32.const 3
|
|
i32.const 3
|
|
call $__pragma_loopbound
|
|
i32.const 0
|
|
local.set 6
|
|
block ;; label = @1
|
|
local.get 7
|
|
local.get 5
|
|
local.get 0
|
|
i32.add
|
|
local.tee 0
|
|
i32.shl
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.tee 7
|
|
local.get 4
|
|
local.get 0
|
|
i32.shl
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.tee 4
|
|
i32.const 0
|
|
i32.load16_s offset=1024
|
|
i32.mul
|
|
i32.const 15
|
|
i32.shr_s
|
|
i32.le_s
|
|
br_if 0 (;@1;)
|
|
block ;; label = @2
|
|
local.get 7
|
|
local.get 4
|
|
i32.const 0
|
|
i32.load16_s offset=1026
|
|
i32.mul
|
|
i32.const 15
|
|
i32.shr_s
|
|
i32.gt_s
|
|
br_if 0 (;@2;)
|
|
local.get 2
|
|
i32.const 1
|
|
i32.store16
|
|
return
|
|
end
|
|
i32.const 3
|
|
i32.const 2
|
|
local.get 7
|
|
local.get 4
|
|
i32.const 0
|
|
i32.load16_s offset=1028
|
|
i32.mul
|
|
i32.const 15
|
|
i32.shr_s
|
|
i32.gt_s
|
|
select
|
|
local.set 6
|
|
end
|
|
local.get 2
|
|
local.get 6
|
|
i32.store16)
|
|
(func $gsm_enc_Long_term_analysis_filtering (type 5) (param i32 i32 i32 i32 i32 i32)
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
block ;; label = @3
|
|
block ;; label = @4
|
|
block ;; label = @5
|
|
local.get 0
|
|
br_table 0 (;@5;) 1 (;@4;) 2 (;@3;) 3 (;@2;) 4 (;@1;)
|
|
end
|
|
i32.const 40
|
|
i32.const 40
|
|
call $__pragma_loopbound
|
|
local.get 2
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
i32.sub
|
|
local.set 1
|
|
i32.const 0
|
|
local.set 0
|
|
loop ;; label = @5
|
|
local.get 4
|
|
local.get 0
|
|
i32.add
|
|
local.get 1
|
|
local.get 0
|
|
i32.add
|
|
i32.load16_s
|
|
i32.const 3277
|
|
i32.mul
|
|
i32.const 16384
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 5
|
|
local.get 0
|
|
i32.add
|
|
local.get 3
|
|
local.get 0
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 2
|
|
i32.const 15
|
|
i32.shr_s
|
|
i32.sub
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16
|
|
local.get 0
|
|
i32.const 2
|
|
i32.add
|
|
local.tee 0
|
|
i32.const 80
|
|
i32.ne
|
|
br_if 0 (;@5;)
|
|
br 4 (;@1;)
|
|
end
|
|
end
|
|
i32.const 40
|
|
i32.const 40
|
|
call $__pragma_loopbound
|
|
local.get 2
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
i32.sub
|
|
local.set 1
|
|
i32.const 0
|
|
local.set 0
|
|
loop ;; label = @4
|
|
local.get 4
|
|
local.get 0
|
|
i32.add
|
|
local.get 1
|
|
local.get 0
|
|
i32.add
|
|
i32.load16_s
|
|
i32.const 11469
|
|
i32.mul
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
local.tee 2
|
|
i32.store16
|
|
local.get 5
|
|
local.get 0
|
|
i32.add
|
|
local.get 3
|
|
local.get 0
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 2
|
|
i32.extend16_s
|
|
i32.sub
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16
|
|
local.get 0
|
|
i32.const 2
|
|
i32.add
|
|
local.tee 0
|
|
i32.const 80
|
|
i32.ne
|
|
br_if 0 (;@4;)
|
|
br 3 (;@1;)
|
|
end
|
|
end
|
|
i32.const 40
|
|
i32.const 40
|
|
call $__pragma_loopbound
|
|
local.get 2
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
i32.sub
|
|
local.set 1
|
|
i32.const 0
|
|
local.set 0
|
|
loop ;; label = @3
|
|
local.get 4
|
|
local.get 0
|
|
i32.add
|
|
local.get 1
|
|
local.get 0
|
|
i32.add
|
|
i32.load16_s
|
|
i32.const 21299
|
|
i32.mul
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
local.tee 2
|
|
i32.store16
|
|
local.get 5
|
|
local.get 0
|
|
i32.add
|
|
local.get 3
|
|
local.get 0
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 2
|
|
i32.extend16_s
|
|
i32.sub
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16
|
|
local.get 0
|
|
i32.const 2
|
|
i32.add
|
|
local.tee 0
|
|
i32.const 80
|
|
i32.ne
|
|
br_if 0 (;@3;)
|
|
br 2 (;@1;)
|
|
end
|
|
end
|
|
i32.const 40
|
|
i32.const 40
|
|
call $__pragma_loopbound
|
|
local.get 2
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
i32.sub
|
|
local.set 1
|
|
i32.const 0
|
|
local.set 0
|
|
loop ;; label = @2
|
|
local.get 4
|
|
local.get 0
|
|
i32.add
|
|
local.get 1
|
|
local.get 0
|
|
i32.add
|
|
i32.load16_s
|
|
i32.const 32767
|
|
i32.mul
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
local.tee 2
|
|
i32.store16
|
|
local.get 5
|
|
local.get 0
|
|
i32.add
|
|
local.get 3
|
|
local.get 0
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 2
|
|
i32.extend16_s
|
|
i32.sub
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16
|
|
local.get 0
|
|
i32.const 2
|
|
i32.add
|
|
local.tee 0
|
|
i32.const 80
|
|
i32.ne
|
|
br_if 0 (;@2;)
|
|
end
|
|
end)
|
|
(func $gsm_enc_Gsm_RPE_Encoding (type 4) (param i32 i32 i32 i32)
|
|
(local i32 i32 i32 i32 i32)
|
|
global.get $__stack_pointer
|
|
i32.const 160
|
|
i32.sub
|
|
local.tee 4
|
|
global.set $__stack_pointer
|
|
i32.const 40
|
|
i32.const 40
|
|
call $__pragma_loopbound
|
|
local.get 0
|
|
i32.const -10
|
|
i32.add
|
|
i32.load16_u
|
|
local.set 5
|
|
i32.const -80
|
|
local.set 6
|
|
loop ;; label = @1
|
|
local.get 4
|
|
i32.const 80
|
|
i32.add
|
|
local.get 6
|
|
i32.add
|
|
i32.const 80
|
|
i32.add
|
|
local.get 0
|
|
local.get 6
|
|
i32.add
|
|
local.tee 7
|
|
i32.const 82
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 7
|
|
i32.const 78
|
|
i32.add
|
|
i32.load16_s
|
|
i32.add
|
|
i32.const 5741
|
|
i32.mul
|
|
local.get 7
|
|
i32.const 80
|
|
i32.add
|
|
i32.load16_s
|
|
i32.const 13
|
|
i32.shl
|
|
i32.add
|
|
local.get 7
|
|
i32.const 84
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 7
|
|
i32.const 76
|
|
i32.add
|
|
i32.load16_s
|
|
i32.add
|
|
i32.const 2054
|
|
i32.mul
|
|
i32.add
|
|
local.get 7
|
|
i32.const 88
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 7
|
|
i32.const 72
|
|
i32.add
|
|
i32.load16_s
|
|
local.tee 8
|
|
i32.add
|
|
i32.const -374
|
|
i32.mul
|
|
i32.add
|
|
local.get 7
|
|
i32.const 90
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 5
|
|
i32.extend16_s
|
|
i32.add
|
|
i32.const -134
|
|
i32.mul
|
|
i32.add
|
|
i32.const 4096
|
|
i32.add
|
|
i32.const 13
|
|
i32.shr_s
|
|
local.tee 7
|
|
i32.const 32767
|
|
local.get 7
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 7
|
|
i32.const -32768
|
|
local.get 7
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16
|
|
local.get 8
|
|
local.set 5
|
|
local.get 6
|
|
i32.const 2
|
|
i32.add
|
|
local.tee 6
|
|
br_if 0 (;@1;)
|
|
end
|
|
local.get 4
|
|
i32.const 80
|
|
i32.add
|
|
local.get 4
|
|
i32.const 48
|
|
i32.add
|
|
local.get 2
|
|
call $gsm_enc_RPE_grid_selection
|
|
local.get 4
|
|
i32.const 48
|
|
i32.add
|
|
local.get 3
|
|
local.get 4
|
|
i32.const 14
|
|
i32.add
|
|
local.get 4
|
|
i32.const 12
|
|
i32.add
|
|
local.get 1
|
|
call $gsm_enc_APCM_quantization
|
|
local.get 3
|
|
local.get 4
|
|
i32.load16_s offset=14
|
|
local.get 4
|
|
i32.load16_s offset=12
|
|
local.get 4
|
|
i32.const 16
|
|
i32.add
|
|
call $gsm_enc_APCM_inverse_quantization
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
block ;; label = @3
|
|
block ;; label = @4
|
|
block ;; label = @5
|
|
block ;; label = @6
|
|
local.get 2
|
|
i32.load16_u
|
|
local.tee 8
|
|
br_table 4 (;@2;) 3 (;@3;) 2 (;@4;) 1 (;@5;) 0 (;@6;)
|
|
end
|
|
i32.const 13
|
|
local.set 6
|
|
local.get 4
|
|
i32.const 16
|
|
i32.add
|
|
local.set 7
|
|
br 4 (;@1;)
|
|
end
|
|
local.get 0
|
|
i32.const 0
|
|
i32.store16
|
|
local.get 0
|
|
i32.const 2
|
|
i32.add
|
|
local.set 0
|
|
end
|
|
local.get 0
|
|
i32.const 0
|
|
i32.store16
|
|
local.get 0
|
|
i32.const 2
|
|
i32.add
|
|
local.set 0
|
|
end
|
|
local.get 0
|
|
i32.const 0
|
|
i32.store16
|
|
local.get 0
|
|
i32.const 2
|
|
i32.add
|
|
local.set 0
|
|
end
|
|
local.get 0
|
|
local.get 4
|
|
i32.load16_u offset=16
|
|
i32.store16
|
|
local.get 0
|
|
i32.const 2
|
|
i32.add
|
|
local.set 0
|
|
local.get 4
|
|
i32.const 16
|
|
i32.add
|
|
i32.const 2
|
|
i32.or
|
|
local.set 7
|
|
i32.const 12
|
|
local.set 6
|
|
end
|
|
i32.const 12
|
|
i32.const 12
|
|
call $__pragma_loopbound
|
|
block ;; label = @1
|
|
local.get 6
|
|
i32.const 1
|
|
i32.and
|
|
local.tee 5
|
|
i32.eqz
|
|
br_if 0 (;@1;)
|
|
local.get 6
|
|
i32.const -1
|
|
i32.add
|
|
local.set 6
|
|
loop ;; label = @2
|
|
local.get 0
|
|
i32.const 0
|
|
i32.store align=2
|
|
local.get 0
|
|
local.get 7
|
|
i32.load16_u
|
|
i32.store16 offset=4
|
|
local.get 0
|
|
i32.const 6
|
|
i32.add
|
|
local.set 0
|
|
local.get 7
|
|
i32.const 2
|
|
i32.add
|
|
local.set 7
|
|
local.get 5
|
|
i32.const -1
|
|
i32.add
|
|
local.tee 5
|
|
br_if 0 (;@2;)
|
|
end
|
|
end
|
|
loop ;; label = @1
|
|
local.get 0
|
|
i32.const 0
|
|
i32.store align=2
|
|
local.get 7
|
|
i32.load16_u
|
|
local.set 5
|
|
local.get 0
|
|
i32.const 0
|
|
i32.store offset=6 align=2
|
|
local.get 0
|
|
local.get 5
|
|
i32.store16 offset=4
|
|
local.get 7
|
|
i32.const 2
|
|
i32.add
|
|
i32.load16_u
|
|
local.set 5
|
|
local.get 0
|
|
i32.const 0
|
|
i32.store offset=12 align=2
|
|
local.get 0
|
|
local.get 5
|
|
i32.store16 offset=10
|
|
local.get 7
|
|
i32.const 4
|
|
i32.add
|
|
i32.load16_u
|
|
local.set 5
|
|
local.get 0
|
|
i32.const 0
|
|
i32.store offset=18 align=2
|
|
local.get 0
|
|
local.get 5
|
|
i32.store16 offset=16
|
|
local.get 0
|
|
local.get 7
|
|
i32.const 6
|
|
i32.add
|
|
i32.load16_u
|
|
i32.store16 offset=22
|
|
local.get 7
|
|
i32.const 8
|
|
i32.add
|
|
local.set 7
|
|
local.get 0
|
|
i32.const 24
|
|
i32.add
|
|
local.set 0
|
|
local.get 6
|
|
i32.const -4
|
|
i32.add
|
|
local.tee 6
|
|
br_if 0 (;@1;)
|
|
end
|
|
i32.const 0
|
|
i32.const 3
|
|
call $__pragma_loopbound
|
|
block ;; label = @1
|
|
local.get 8
|
|
i32.const 1
|
|
i32.add
|
|
i32.extend16_s
|
|
local.tee 7
|
|
i32.const 3
|
|
i32.gt_s
|
|
br_if 0 (;@1;)
|
|
block ;; label = @2
|
|
i32.const 3
|
|
local.get 8
|
|
i32.sub
|
|
i32.const 7
|
|
i32.and
|
|
local.tee 5
|
|
i32.eqz
|
|
br_if 0 (;@2;)
|
|
i32.const 0
|
|
local.set 6
|
|
loop ;; label = @3
|
|
local.get 0
|
|
i32.const 0
|
|
i32.store16
|
|
local.get 7
|
|
i32.const 1
|
|
i32.add
|
|
local.set 7
|
|
local.get 0
|
|
i32.const 2
|
|
i32.add
|
|
local.set 0
|
|
local.get 6
|
|
i32.const 1
|
|
i32.add
|
|
local.tee 6
|
|
i32.const 65535
|
|
i32.and
|
|
local.get 5
|
|
i32.ne
|
|
br_if 0 (;@3;)
|
|
end
|
|
end
|
|
local.get 8
|
|
i32.const 4
|
|
i32.add
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 7
|
|
i32.lt_u
|
|
br_if 0 (;@1;)
|
|
loop ;; label = @2
|
|
local.get 0
|
|
i64.const 0
|
|
i64.store offset=8 align=2
|
|
local.get 0
|
|
i64.const 0
|
|
i64.store align=2
|
|
local.get 0
|
|
i32.const 16
|
|
i32.add
|
|
local.set 0
|
|
local.get 7
|
|
i32.extend16_s
|
|
local.set 6
|
|
local.get 7
|
|
i32.const 8
|
|
i32.add
|
|
local.set 7
|
|
local.get 6
|
|
i32.const -4
|
|
i32.lt_s
|
|
br_if 0 (;@2;)
|
|
end
|
|
end
|
|
local.get 4
|
|
i32.const 160
|
|
i32.add
|
|
global.set $__stack_pointer)
|
|
(func $gsm_enc_Autocorrelation (type 0) (param i32 i32)
|
|
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
|
|
i32.const 160
|
|
i32.const 160
|
|
call $__pragma_loopbound
|
|
i32.const 0
|
|
local.set 2
|
|
i32.const 0
|
|
local.set 3
|
|
loop ;; label = @1
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 0
|
|
local.get 2
|
|
i32.add
|
|
local.tee 4
|
|
i32.const 2
|
|
i32.add
|
|
i32.load16_u
|
|
local.tee 5
|
|
i32.sub
|
|
local.get 5
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 5
|
|
local.get 5
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.const 65535
|
|
i32.and
|
|
local.tee 6
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 4
|
|
i32.load16_u
|
|
local.tee 5
|
|
i32.sub
|
|
local.get 5
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 5
|
|
local.get 5
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.const 65535
|
|
i32.and
|
|
local.tee 5
|
|
local.get 3
|
|
i32.const 65535
|
|
i32.and
|
|
local.tee 3
|
|
local.get 5
|
|
local.get 3
|
|
i32.gt_u
|
|
select
|
|
local.tee 5
|
|
local.get 6
|
|
local.get 5
|
|
i32.gt_u
|
|
select
|
|
local.set 3
|
|
local.get 2
|
|
i32.const 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 320
|
|
i32.ne
|
|
br_if 0 (;@1;)
|
|
end
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
local.get 3
|
|
br_if 0 (;@2;)
|
|
i32.const 0
|
|
local.set 7
|
|
i32.const 0
|
|
local.set 4
|
|
br 1 (;@1;)
|
|
end
|
|
i32.const 4
|
|
i32.const 7
|
|
i32.const -1
|
|
local.get 3
|
|
i32.const 256
|
|
i32.lt_u
|
|
local.tee 5
|
|
select
|
|
local.get 3
|
|
local.get 3
|
|
i32.const 8
|
|
i32.shr_u
|
|
local.get 5
|
|
select
|
|
i32.const 8144
|
|
i32.add
|
|
i32.load8_u
|
|
i32.add
|
|
local.tee 5
|
|
i32.sub
|
|
local.set 6
|
|
block ;; label = @2
|
|
block ;; label = @3
|
|
local.get 5
|
|
i32.const 3
|
|
i32.le_s
|
|
br_if 0 (;@3;)
|
|
i32.const 0
|
|
local.set 7
|
|
br 1 (;@2;)
|
|
end
|
|
i32.const 5
|
|
local.set 4
|
|
i32.const 1
|
|
local.set 7
|
|
block ;; label = @3
|
|
block ;; label = @4
|
|
block ;; label = @5
|
|
block ;; label = @6
|
|
local.get 5
|
|
br_table 3 (;@3;) 2 (;@4;) 1 (;@5;) 0 (;@6;) 5 (;@1;)
|
|
end
|
|
i32.const 160
|
|
i32.const 160
|
|
call $__pragma_loopbound
|
|
i32.const 0
|
|
local.set 2
|
|
loop ;; label = @6
|
|
local.get 0
|
|
local.get 2
|
|
i32.add
|
|
local.tee 5
|
|
local.get 5
|
|
i32.load16_s
|
|
i32.const 14
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 2
|
|
i32.add
|
|
local.tee 3
|
|
local.get 3
|
|
i32.load16_s
|
|
i32.const 14
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 4
|
|
i32.add
|
|
local.tee 3
|
|
local.get 3
|
|
i32.load16_s
|
|
i32.const 14
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 6
|
|
i32.add
|
|
local.tee 5
|
|
local.get 5
|
|
i32.load16_s
|
|
i32.const 14
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 2
|
|
i32.const 8
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 320
|
|
i32.ne
|
|
br_if 0 (;@6;)
|
|
br 4 (;@2;)
|
|
end
|
|
end
|
|
i32.const 160
|
|
i32.const 160
|
|
call $__pragma_loopbound
|
|
i32.const 0
|
|
local.set 2
|
|
loop ;; label = @5
|
|
local.get 0
|
|
local.get 2
|
|
i32.add
|
|
local.tee 5
|
|
local.get 5
|
|
i32.load16_s
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 2
|
|
i32.add
|
|
local.tee 3
|
|
local.get 3
|
|
i32.load16_s
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 4
|
|
i32.add
|
|
local.tee 3
|
|
local.get 3
|
|
i32.load16_s
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 6
|
|
i32.add
|
|
local.tee 5
|
|
local.get 5
|
|
i32.load16_s
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 2
|
|
i32.const 8
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 320
|
|
i32.ne
|
|
br_if 0 (;@5;)
|
|
br 3 (;@2;)
|
|
end
|
|
end
|
|
i32.const 160
|
|
i32.const 160
|
|
call $__pragma_loopbound
|
|
i32.const 0
|
|
local.set 2
|
|
loop ;; label = @4
|
|
local.get 0
|
|
local.get 2
|
|
i32.add
|
|
local.tee 5
|
|
local.get 5
|
|
i32.load16_s
|
|
i32.const 12
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 2
|
|
i32.add
|
|
local.tee 3
|
|
local.get 3
|
|
i32.load16_s
|
|
i32.const 12
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 4
|
|
i32.add
|
|
local.tee 3
|
|
local.get 3
|
|
i32.load16_s
|
|
i32.const 12
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 6
|
|
i32.add
|
|
local.tee 5
|
|
local.get 5
|
|
i32.load16_s
|
|
i32.const 12
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 2
|
|
i32.const 8
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 320
|
|
i32.ne
|
|
br_if 0 (;@4;)
|
|
br 2 (;@2;)
|
|
end
|
|
end
|
|
i32.const 160
|
|
i32.const 160
|
|
call $__pragma_loopbound
|
|
i32.const 0
|
|
local.set 2
|
|
loop ;; label = @3
|
|
local.get 0
|
|
local.get 2
|
|
i32.add
|
|
local.tee 5
|
|
local.get 5
|
|
i32.load16_s
|
|
i32.const 11
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 2
|
|
i32.add
|
|
local.tee 3
|
|
local.get 3
|
|
i32.load16_s
|
|
i32.const 11
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 4
|
|
i32.add
|
|
local.tee 3
|
|
local.get 3
|
|
i32.load16_s
|
|
i32.const 11
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 6
|
|
i32.add
|
|
local.tee 5
|
|
local.get 5
|
|
i32.load16_s
|
|
i32.const 11
|
|
i32.shl
|
|
i32.const 16384
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 2
|
|
i32.const 8
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 320
|
|
i32.ne
|
|
br_if 0 (;@3;)
|
|
end
|
|
end
|
|
local.get 6
|
|
local.set 4
|
|
end
|
|
local.get 0
|
|
i32.load16_s
|
|
local.set 8
|
|
i32.const 9
|
|
i32.const 9
|
|
call $__pragma_loopbound
|
|
local.get 1
|
|
i32.const 0
|
|
i32.store offset=32
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_s offset=14
|
|
local.tee 5
|
|
local.get 0
|
|
i32.load16_s
|
|
local.tee 9
|
|
i32.mul
|
|
i32.store offset=28
|
|
local.get 1
|
|
local.get 5
|
|
local.get 0
|
|
i32.load16_s offset=2
|
|
local.tee 10
|
|
i32.mul
|
|
local.get 9
|
|
local.get 0
|
|
i32.load16_s offset=12
|
|
local.tee 2
|
|
i32.mul
|
|
i32.add
|
|
i32.store offset=24
|
|
local.get 1
|
|
local.get 5
|
|
local.get 0
|
|
i32.load16_s offset=4
|
|
local.tee 3
|
|
i32.mul
|
|
local.get 2
|
|
local.get 10
|
|
i32.mul
|
|
local.get 9
|
|
local.get 0
|
|
i32.load16_s offset=10
|
|
local.tee 6
|
|
i32.mul
|
|
i32.add
|
|
i32.add
|
|
i32.store offset=20
|
|
local.get 1
|
|
local.get 5
|
|
local.get 0
|
|
i32.load16_s offset=6
|
|
local.tee 11
|
|
i32.mul
|
|
local.get 2
|
|
local.get 3
|
|
i32.mul
|
|
local.get 6
|
|
local.get 10
|
|
i32.mul
|
|
local.get 9
|
|
local.get 0
|
|
i32.load16_s offset=8
|
|
local.tee 12
|
|
i32.mul
|
|
i32.add
|
|
i32.add
|
|
i32.add
|
|
i32.store offset=16
|
|
local.get 1
|
|
local.get 5
|
|
local.get 12
|
|
i32.mul
|
|
local.get 2
|
|
local.get 11
|
|
i32.mul
|
|
local.get 6
|
|
local.get 3
|
|
i32.mul
|
|
local.get 12
|
|
local.get 10
|
|
i32.mul
|
|
local.get 11
|
|
local.get 9
|
|
i32.mul
|
|
i32.add
|
|
i32.add
|
|
i32.add
|
|
i32.add
|
|
i32.store offset=12
|
|
local.get 1
|
|
local.get 5
|
|
local.get 6
|
|
i32.mul
|
|
local.get 2
|
|
local.get 12
|
|
i32.mul
|
|
local.get 6
|
|
local.get 11
|
|
i32.mul
|
|
local.get 12
|
|
local.get 3
|
|
i32.mul
|
|
local.get 11
|
|
local.get 10
|
|
i32.mul
|
|
local.get 3
|
|
local.get 9
|
|
i32.mul
|
|
i32.add
|
|
i32.add
|
|
i32.add
|
|
i32.add
|
|
i32.add
|
|
i32.store offset=8
|
|
local.get 1
|
|
local.get 5
|
|
local.get 2
|
|
i32.mul
|
|
local.get 2
|
|
local.get 6
|
|
i32.mul
|
|
local.get 6
|
|
local.get 12
|
|
i32.mul
|
|
local.get 12
|
|
local.get 11
|
|
i32.mul
|
|
local.get 11
|
|
local.get 3
|
|
i32.mul
|
|
local.get 10
|
|
local.get 3
|
|
local.get 9
|
|
i32.add
|
|
i32.mul
|
|
i32.add
|
|
i32.add
|
|
i32.add
|
|
i32.add
|
|
i32.add
|
|
i32.store offset=4
|
|
local.get 1
|
|
local.get 5
|
|
local.get 5
|
|
i32.mul
|
|
local.get 2
|
|
local.get 2
|
|
i32.mul
|
|
local.get 6
|
|
local.get 6
|
|
i32.mul
|
|
local.get 12
|
|
local.get 12
|
|
i32.mul
|
|
local.get 11
|
|
local.get 11
|
|
i32.mul
|
|
local.get 3
|
|
local.get 3
|
|
i32.mul
|
|
local.get 10
|
|
local.get 10
|
|
i32.mul
|
|
local.get 9
|
|
local.get 8
|
|
i32.mul
|
|
i32.add
|
|
i32.add
|
|
i32.add
|
|
i32.add
|
|
i32.add
|
|
i32.add
|
|
i32.add
|
|
i32.store
|
|
i32.const 152
|
|
i32.const 152
|
|
call $__pragma_loopbound
|
|
local.get 0
|
|
i32.load16_u offset=14
|
|
local.set 13
|
|
local.get 1
|
|
i32.load offset=32
|
|
local.set 6
|
|
local.get 1
|
|
i32.load offset=28
|
|
local.set 11
|
|
local.get 1
|
|
i32.load offset=24
|
|
local.set 12
|
|
local.get 1
|
|
i32.load offset=20
|
|
local.set 9
|
|
local.get 1
|
|
i32.load offset=16
|
|
local.set 10
|
|
local.get 1
|
|
i32.load offset=12
|
|
local.set 8
|
|
local.get 1
|
|
i32.load offset=8
|
|
local.set 14
|
|
local.get 1
|
|
i32.load offset=4
|
|
local.set 15
|
|
local.get 1
|
|
i32.load
|
|
local.set 16
|
|
i32.const -304
|
|
local.set 3
|
|
loop ;; label = @1
|
|
local.get 0
|
|
local.get 3
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 304
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 2
|
|
i32.const 320
|
|
i32.add
|
|
i32.load16_s
|
|
local.tee 5
|
|
i32.mul
|
|
local.get 6
|
|
i32.add
|
|
local.set 6
|
|
local.get 2
|
|
i32.const 306
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 5
|
|
i32.mul
|
|
local.get 11
|
|
i32.add
|
|
local.set 11
|
|
local.get 2
|
|
i32.const 308
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 5
|
|
i32.mul
|
|
local.get 12
|
|
i32.add
|
|
local.set 12
|
|
local.get 2
|
|
i32.const 310
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 5
|
|
i32.mul
|
|
local.get 9
|
|
i32.add
|
|
local.set 9
|
|
local.get 2
|
|
i32.const 312
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 5
|
|
i32.mul
|
|
local.get 10
|
|
i32.add
|
|
local.set 10
|
|
local.get 2
|
|
i32.const 314
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 5
|
|
i32.mul
|
|
local.get 8
|
|
i32.add
|
|
local.set 8
|
|
local.get 2
|
|
i32.const 316
|
|
i32.add
|
|
i32.load16_s
|
|
local.get 5
|
|
i32.mul
|
|
local.get 14
|
|
i32.add
|
|
local.set 14
|
|
local.get 13
|
|
i32.extend16_s
|
|
local.get 5
|
|
i32.mul
|
|
local.get 15
|
|
i32.add
|
|
local.set 15
|
|
local.get 5
|
|
local.get 5
|
|
i32.mul
|
|
local.get 16
|
|
i32.add
|
|
local.set 16
|
|
local.get 5
|
|
local.set 13
|
|
local.get 3
|
|
i32.const 2
|
|
i32.add
|
|
local.tee 3
|
|
br_if 0 (;@1;)
|
|
end
|
|
local.get 1
|
|
local.get 6
|
|
i32.store offset=32
|
|
local.get 1
|
|
local.get 11
|
|
i32.store offset=28
|
|
local.get 1
|
|
local.get 12
|
|
i32.store offset=24
|
|
local.get 1
|
|
local.get 9
|
|
i32.store offset=20
|
|
local.get 1
|
|
local.get 10
|
|
i32.store offset=16
|
|
local.get 1
|
|
local.get 8
|
|
i32.store offset=12
|
|
local.get 1
|
|
local.get 14
|
|
i32.store offset=8
|
|
local.get 1
|
|
local.get 15
|
|
i32.store offset=4
|
|
local.get 1
|
|
local.get 16
|
|
i32.store
|
|
i32.const 9
|
|
i32.const 9
|
|
call $__pragma_loopbound
|
|
local.get 1
|
|
local.get 1
|
|
i32.load offset=32
|
|
i32.const 1
|
|
i32.shl
|
|
i32.store offset=32
|
|
local.get 1
|
|
local.get 1
|
|
i32.load offset=28
|
|
i32.const 1
|
|
i32.shl
|
|
i32.store offset=28
|
|
local.get 1
|
|
local.get 1
|
|
i32.load offset=24
|
|
i32.const 1
|
|
i32.shl
|
|
i32.store offset=24
|
|
local.get 1
|
|
local.get 1
|
|
i32.load offset=20
|
|
i32.const 1
|
|
i32.shl
|
|
i32.store offset=20
|
|
local.get 1
|
|
local.get 1
|
|
i32.load offset=16
|
|
i32.const 1
|
|
i32.shl
|
|
i32.store offset=16
|
|
local.get 1
|
|
local.get 1
|
|
i32.load offset=12
|
|
i32.const 1
|
|
i32.shl
|
|
i32.store offset=12
|
|
local.get 1
|
|
local.get 1
|
|
i32.load offset=8
|
|
i32.const 1
|
|
i32.shl
|
|
i32.store offset=8
|
|
local.get 1
|
|
local.get 1
|
|
i32.load offset=4
|
|
i32.const 1
|
|
i32.shl
|
|
i32.store offset=4
|
|
local.get 1
|
|
local.get 1
|
|
i32.load
|
|
i32.const 1
|
|
i32.shl
|
|
i32.store
|
|
block ;; label = @1
|
|
local.get 7
|
|
i32.eqz
|
|
br_if 0 (;@1;)
|
|
i32.const 160
|
|
i32.const 160
|
|
call $__pragma_loopbound
|
|
i32.const 0
|
|
local.set 2
|
|
loop ;; label = @2
|
|
local.get 0
|
|
local.get 2
|
|
i32.add
|
|
local.tee 5
|
|
local.get 5
|
|
i32.load16_u
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 2
|
|
i32.add
|
|
local.tee 3
|
|
local.get 3
|
|
i32.load16_u
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 4
|
|
i32.add
|
|
local.tee 3
|
|
local.get 3
|
|
i32.load16_u
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 6
|
|
i32.add
|
|
local.tee 3
|
|
local.get 3
|
|
i32.load16_u
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16
|
|
local.get 5
|
|
i32.const 8
|
|
i32.add
|
|
local.tee 5
|
|
local.get 5
|
|
i32.load16_u
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16
|
|
local.get 2
|
|
i32.const 10
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 320
|
|
i32.ne
|
|
br_if 0 (;@2;)
|
|
end
|
|
end)
|
|
(func $gsm_enc_Reflection_coefficients (type 0) (param i32 i32)
|
|
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
|
|
block ;; label = @1
|
|
local.get 0
|
|
i32.load
|
|
local.tee 2
|
|
br_if 0 (;@1;)
|
|
i32.const 8
|
|
i32.const 8
|
|
call $__pragma_loopbound
|
|
local.get 1
|
|
i64.const 0
|
|
i64.store offset=8 align=2
|
|
local.get 1
|
|
i64.const 0
|
|
i64.store align=2
|
|
return
|
|
end
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
local.get 2
|
|
i32.const -1
|
|
i32.gt_s
|
|
br_if 0 (;@2;)
|
|
i32.const 0
|
|
local.set 3
|
|
local.get 2
|
|
i32.const -1073741823
|
|
i32.lt_u
|
|
br_if 1 (;@1;)
|
|
local.get 2
|
|
i32.const -1
|
|
i32.xor
|
|
local.set 2
|
|
end
|
|
block ;; label = @2
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 65536
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
block ;; label = @4
|
|
local.get 2
|
|
i32.const 16777216
|
|
i32.lt_u
|
|
br_if 0 (;@4;)
|
|
local.get 2
|
|
i32.const 24
|
|
i32.shr_u
|
|
local.set 3
|
|
i32.const 65535
|
|
local.set 2
|
|
br 2 (;@2;)
|
|
end
|
|
local.get 2
|
|
i32.const 16
|
|
i32.shr_u
|
|
local.set 3
|
|
i32.const 7
|
|
local.set 2
|
|
br 1 (;@2;)
|
|
end
|
|
local.get 2
|
|
local.get 2
|
|
i32.const 8
|
|
i32.shr_u
|
|
local.get 2
|
|
i32.const 256
|
|
i32.lt_u
|
|
local.tee 4
|
|
select
|
|
local.set 3
|
|
i32.const 23
|
|
i32.const 15
|
|
local.get 4
|
|
select
|
|
local.set 2
|
|
end
|
|
local.get 2
|
|
local.get 3
|
|
i32.const 8144
|
|
i32.add
|
|
i32.load8_u
|
|
i32.add
|
|
i32.const 65535
|
|
i32.and
|
|
local.set 3
|
|
end
|
|
i32.const 9
|
|
i32.const 9
|
|
call $__pragma_loopbound
|
|
local.get 0
|
|
i32.load offset=28
|
|
local.set 5
|
|
local.get 0
|
|
i32.load offset=24
|
|
local.set 6
|
|
local.get 0
|
|
i32.load offset=20
|
|
local.set 7
|
|
local.get 0
|
|
i32.load offset=16
|
|
local.set 8
|
|
local.get 0
|
|
i32.load offset=12
|
|
local.set 9
|
|
local.get 0
|
|
i32.load offset=8
|
|
local.set 10
|
|
local.get 0
|
|
i32.load offset=32
|
|
local.set 11
|
|
local.get 0
|
|
i32.load
|
|
local.set 2
|
|
local.get 0
|
|
i32.load offset=4
|
|
local.set 0
|
|
i32.const 7
|
|
i32.const 7
|
|
call $__pragma_loopbound
|
|
i32.const 9
|
|
i32.const 9
|
|
call $__pragma_loopbound
|
|
i32.const 8
|
|
i32.const 8
|
|
call $__pragma_loopbound
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
block ;; label = @3
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 0
|
|
local.get 3
|
|
i32.shl
|
|
local.tee 4
|
|
i32.const 16
|
|
i32.shr_u
|
|
local.tee 0
|
|
i32.sub
|
|
local.get 0
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 0
|
|
local.get 4
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 12
|
|
local.get 2
|
|
local.get 3
|
|
i32.shl
|
|
local.tee 2
|
|
i32.const 16
|
|
i32.shr_s
|
|
i32.le_s
|
|
br_if 0 (;@3;)
|
|
i32.const 1
|
|
local.set 3
|
|
br 1 (;@2;)
|
|
end
|
|
local.get 2
|
|
i32.const 16
|
|
i32.shr_u
|
|
local.set 4
|
|
local.get 11
|
|
local.get 3
|
|
i32.shl
|
|
local.tee 2
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.set 13
|
|
local.get 2
|
|
i32.const 16
|
|
i32.shr_u
|
|
i32.extend16_s
|
|
local.set 14
|
|
i32.const 6
|
|
local.set 2
|
|
local.get 6
|
|
local.get 3
|
|
i32.shl
|
|
i32.const 16
|
|
i32.shr_u
|
|
local.tee 15
|
|
local.set 16
|
|
local.get 7
|
|
local.get 3
|
|
i32.shl
|
|
i32.const 16
|
|
i32.shr_u
|
|
local.tee 17
|
|
local.set 18
|
|
local.get 8
|
|
local.get 3
|
|
i32.shl
|
|
i32.const 16
|
|
i32.shr_u
|
|
local.tee 19
|
|
local.set 20
|
|
local.get 9
|
|
local.get 3
|
|
i32.shl
|
|
i32.const 16
|
|
i32.shr_u
|
|
local.tee 11
|
|
local.set 21
|
|
local.get 10
|
|
local.get 3
|
|
i32.shl
|
|
i32.const 16
|
|
i32.shr_u
|
|
local.tee 8
|
|
local.set 9
|
|
local.get 0
|
|
local.set 7
|
|
local.get 5
|
|
local.get 3
|
|
i32.shl
|
|
i32.const 16
|
|
i32.shr_u
|
|
local.tee 22
|
|
local.set 23
|
|
i32.const 7
|
|
local.set 5
|
|
i32.const 1
|
|
local.set 3
|
|
loop ;; label = @3
|
|
local.get 1
|
|
i32.const 0
|
|
local.get 12
|
|
i32.extend16_s
|
|
local.get 4
|
|
i32.extend16_s
|
|
local.tee 12
|
|
call $gsm_enc_div
|
|
local.tee 4
|
|
i32.sub
|
|
local.get 4
|
|
local.get 0
|
|
i32.extend16_s
|
|
local.tee 6
|
|
i32.const 0
|
|
i32.gt_s
|
|
select
|
|
local.tee 4
|
|
i32.store16
|
|
local.get 3
|
|
i32.const 8
|
|
i32.eq
|
|
br_if 2 (;@1;)
|
|
i32.const 1
|
|
i32.const 7
|
|
call $__pragma_loopbound
|
|
local.get 6
|
|
local.get 4
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 12
|
|
i32.add
|
|
local.tee 4
|
|
i32.const 32767
|
|
local.get 4
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 4
|
|
i32.const -32768
|
|
local.get 4
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 4
|
|
block ;; label = @4
|
|
local.get 3
|
|
i32.const 7
|
|
i32.gt_u
|
|
br_if 0 (;@4;)
|
|
local.get 1
|
|
i32.load16_s
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 12
|
|
local.get 8
|
|
i32.extend16_s
|
|
local.tee 0
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 7
|
|
i32.extend16_s
|
|
local.tee 6
|
|
i32.add
|
|
local.tee 7
|
|
i32.const 32767
|
|
local.get 7
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 7
|
|
i32.const -32768
|
|
local.get 7
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 7
|
|
local.get 12
|
|
local.get 6
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 0
|
|
i32.add
|
|
local.tee 0
|
|
i32.const 32767
|
|
local.get 0
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 0
|
|
i32.const -32768
|
|
local.get 0
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 0
|
|
local.get 5
|
|
i32.const 1
|
|
i32.eq
|
|
br_if 0 (;@4;)
|
|
local.get 12
|
|
local.get 11
|
|
i32.extend16_s
|
|
local.tee 6
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 9
|
|
i32.extend16_s
|
|
local.tee 8
|
|
i32.add
|
|
local.tee 9
|
|
i32.const 32767
|
|
local.get 9
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 9
|
|
i32.const -32768
|
|
local.get 9
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 9
|
|
local.get 12
|
|
local.get 8
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 6
|
|
i32.add
|
|
local.tee 6
|
|
i32.const 32767
|
|
local.get 6
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 6
|
|
i32.const -32768
|
|
local.get 6
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 8
|
|
local.get 5
|
|
i32.const 2
|
|
i32.eq
|
|
br_if 0 (;@4;)
|
|
local.get 12
|
|
local.get 19
|
|
i32.extend16_s
|
|
local.tee 6
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 21
|
|
i32.extend16_s
|
|
local.tee 11
|
|
i32.add
|
|
local.tee 21
|
|
i32.const 32767
|
|
local.get 21
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 21
|
|
i32.const -32768
|
|
local.get 21
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 21
|
|
local.get 12
|
|
local.get 11
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 6
|
|
i32.add
|
|
local.tee 6
|
|
i32.const 32767
|
|
local.get 6
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 6
|
|
i32.const -32768
|
|
local.get 6
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 11
|
|
local.get 5
|
|
i32.const 3
|
|
i32.eq
|
|
br_if 0 (;@4;)
|
|
local.get 12
|
|
local.get 17
|
|
i32.extend16_s
|
|
local.tee 6
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 20
|
|
i32.extend16_s
|
|
local.tee 19
|
|
i32.add
|
|
local.tee 10
|
|
i32.const 32767
|
|
local.get 10
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 10
|
|
i32.const -32768
|
|
local.get 10
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 20
|
|
local.get 12
|
|
local.get 19
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 6
|
|
i32.add
|
|
local.tee 6
|
|
i32.const 32767
|
|
local.get 6
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 6
|
|
i32.const -32768
|
|
local.get 6
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 19
|
|
local.get 5
|
|
i32.const 4
|
|
i32.eq
|
|
br_if 0 (;@4;)
|
|
local.get 12
|
|
local.get 15
|
|
i32.extend16_s
|
|
local.tee 6
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 18
|
|
i32.extend16_s
|
|
local.tee 10
|
|
i32.add
|
|
local.tee 17
|
|
i32.const 32767
|
|
local.get 17
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 17
|
|
i32.const -32768
|
|
local.get 17
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 18
|
|
local.get 12
|
|
local.get 10
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 6
|
|
i32.add
|
|
local.tee 6
|
|
i32.const 32767
|
|
local.get 6
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 6
|
|
i32.const -32768
|
|
local.get 6
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 17
|
|
local.get 5
|
|
i32.const 5
|
|
i32.eq
|
|
br_if 0 (;@4;)
|
|
local.get 12
|
|
local.get 23
|
|
i32.extend16_s
|
|
local.tee 6
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 16
|
|
i32.extend16_s
|
|
local.tee 10
|
|
i32.add
|
|
local.tee 15
|
|
i32.const 32767
|
|
local.get 15
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 15
|
|
i32.const -32768
|
|
local.get 15
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 16
|
|
local.get 12
|
|
local.get 10
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 6
|
|
i32.add
|
|
local.tee 6
|
|
i32.const 32767
|
|
local.get 6
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 6
|
|
i32.const -32768
|
|
local.get 6
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 15
|
|
local.get 5
|
|
i32.const 6
|
|
i32.eq
|
|
br_if 0 (;@4;)
|
|
local.get 12
|
|
local.get 13
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 22
|
|
i32.extend16_s
|
|
local.tee 5
|
|
i32.add
|
|
local.tee 6
|
|
i32.const 32767
|
|
local.get 6
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 6
|
|
i32.const -32768
|
|
local.get 6
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 22
|
|
local.get 12
|
|
local.get 5
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 14
|
|
i32.add
|
|
local.tee 12
|
|
i32.const 32767
|
|
local.get 12
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 12
|
|
i32.const -32768
|
|
local.get 12
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 23
|
|
end
|
|
local.get 2
|
|
i32.const 1
|
|
local.get 2
|
|
i32.const 1
|
|
i32.gt_s
|
|
select
|
|
local.set 5
|
|
local.get 2
|
|
i32.const -1
|
|
i32.add
|
|
local.set 2
|
|
local.get 1
|
|
i32.const 2
|
|
i32.add
|
|
local.set 1
|
|
local.get 3
|
|
i32.const 1
|
|
i32.add
|
|
local.set 3
|
|
local.get 4
|
|
i32.extend16_s
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 0
|
|
i32.sub
|
|
local.get 0
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 0
|
|
local.get 0
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 12
|
|
i32.ge_s
|
|
br_if 0 (;@3;)
|
|
end
|
|
end
|
|
i32.const 1
|
|
i32.const 8
|
|
call $__pragma_loopbound
|
|
local.get 3
|
|
i32.const 8
|
|
i32.gt_u
|
|
br_if 0 (;@1;)
|
|
local.get 1
|
|
i32.const 0
|
|
i32.store16
|
|
local.get 3
|
|
i32.const 8
|
|
i32.eq
|
|
br_if 0 (;@1;)
|
|
local.get 1
|
|
i32.const 0
|
|
i32.store16 offset=2
|
|
local.get 3
|
|
i32.const 7
|
|
i32.eq
|
|
br_if 0 (;@1;)
|
|
local.get 1
|
|
i32.const 0
|
|
i32.store16 offset=4
|
|
local.get 3
|
|
i32.const 6
|
|
i32.eq
|
|
br_if 0 (;@1;)
|
|
local.get 1
|
|
i32.const 0
|
|
i32.store16 offset=6
|
|
local.get 3
|
|
i32.const 5
|
|
i32.eq
|
|
br_if 0 (;@1;)
|
|
local.get 1
|
|
i32.const 0
|
|
i32.store16 offset=8
|
|
local.get 3
|
|
i32.const 4
|
|
i32.eq
|
|
br_if 0 (;@1;)
|
|
local.get 1
|
|
i32.const 0
|
|
i32.store16 offset=10
|
|
local.get 3
|
|
i32.const 3
|
|
i32.eq
|
|
br_if 0 (;@1;)
|
|
local.get 1
|
|
i32.const 0
|
|
i32.store16 offset=12
|
|
local.get 3
|
|
i32.const 2
|
|
i32.eq
|
|
br_if 0 (;@1;)
|
|
local.get 1
|
|
i32.const 0
|
|
i32.store16 offset=14
|
|
end)
|
|
(func $gsm_enc_Transformation_to_Log_Area_Ratios (type 6) (param i32)
|
|
(local i32 i32 i32)
|
|
i32.const 8
|
|
i32.const 8
|
|
call $__pragma_loopbound
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_u
|
|
local.tee 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 1
|
|
local.get 1
|
|
i32.extend16_s
|
|
local.tee 2
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
local.tee 1
|
|
i32.extend16_s
|
|
local.tee 3
|
|
i32.const 22117
|
|
i32.gt_s
|
|
br_if 0 (;@2;)
|
|
local.get 3
|
|
i32.const 1
|
|
i32.shr_s
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
block ;; label = @2
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 31129
|
|
i32.gt_u
|
|
br_if 0 (;@2;)
|
|
local.get 1
|
|
i32.const -11059
|
|
i32.add
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 2
|
|
i32.shl
|
|
i32.const 26624
|
|
i32.add
|
|
local.set 1
|
|
end
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 1
|
|
i32.sub
|
|
local.get 1
|
|
local.get 2
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.store16
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_s offset=2
|
|
local.tee 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 1
|
|
local.get 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.extend16_s
|
|
local.tee 3
|
|
i32.const 22118
|
|
i32.lt_s
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 31130
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
local.get 2
|
|
i32.const 2
|
|
i32.shl
|
|
i32.const 26624
|
|
i32.add
|
|
local.set 2
|
|
br 2 (;@1;)
|
|
end
|
|
local.get 2
|
|
i32.const -11059
|
|
i32.add
|
|
local.set 2
|
|
br 1 (;@1;)
|
|
end
|
|
local.get 3
|
|
i32.const 1
|
|
i32.shr_s
|
|
local.set 2
|
|
end
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 2
|
|
i32.sub
|
|
local.get 2
|
|
local.get 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.store16 offset=2
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_s offset=4
|
|
local.tee 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 1
|
|
local.get 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.extend16_s
|
|
local.tee 3
|
|
i32.const 22118
|
|
i32.lt_s
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 31130
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
local.get 2
|
|
i32.const 2
|
|
i32.shl
|
|
i32.const 26624
|
|
i32.add
|
|
local.set 2
|
|
br 2 (;@1;)
|
|
end
|
|
local.get 2
|
|
i32.const -11059
|
|
i32.add
|
|
local.set 2
|
|
br 1 (;@1;)
|
|
end
|
|
local.get 3
|
|
i32.const 1
|
|
i32.shr_s
|
|
local.set 2
|
|
end
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 2
|
|
i32.sub
|
|
local.get 2
|
|
local.get 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.store16 offset=4
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_s offset=6
|
|
local.tee 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 1
|
|
local.get 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.extend16_s
|
|
local.tee 3
|
|
i32.const 22118
|
|
i32.lt_s
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 31130
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
local.get 2
|
|
i32.const 2
|
|
i32.shl
|
|
i32.const 26624
|
|
i32.add
|
|
local.set 2
|
|
br 2 (;@1;)
|
|
end
|
|
local.get 2
|
|
i32.const -11059
|
|
i32.add
|
|
local.set 2
|
|
br 1 (;@1;)
|
|
end
|
|
local.get 3
|
|
i32.const 1
|
|
i32.shr_s
|
|
local.set 2
|
|
end
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 2
|
|
i32.sub
|
|
local.get 2
|
|
local.get 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.store16 offset=6
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_s offset=8
|
|
local.tee 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 1
|
|
local.get 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.extend16_s
|
|
local.tee 3
|
|
i32.const 22118
|
|
i32.lt_s
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 31130
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
local.get 2
|
|
i32.const 2
|
|
i32.shl
|
|
i32.const 26624
|
|
i32.add
|
|
local.set 2
|
|
br 2 (;@1;)
|
|
end
|
|
local.get 2
|
|
i32.const -11059
|
|
i32.add
|
|
local.set 2
|
|
br 1 (;@1;)
|
|
end
|
|
local.get 3
|
|
i32.const 1
|
|
i32.shr_s
|
|
local.set 2
|
|
end
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 2
|
|
i32.sub
|
|
local.get 2
|
|
local.get 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.store16 offset=8
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_s offset=10
|
|
local.tee 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 1
|
|
local.get 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.extend16_s
|
|
local.tee 3
|
|
i32.const 22118
|
|
i32.lt_s
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 31130
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
local.get 2
|
|
i32.const 2
|
|
i32.shl
|
|
i32.const 26624
|
|
i32.add
|
|
local.set 2
|
|
br 2 (;@1;)
|
|
end
|
|
local.get 2
|
|
i32.const -11059
|
|
i32.add
|
|
local.set 2
|
|
br 1 (;@1;)
|
|
end
|
|
local.get 3
|
|
i32.const 1
|
|
i32.shr_s
|
|
local.set 2
|
|
end
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 2
|
|
i32.sub
|
|
local.get 2
|
|
local.get 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.store16 offset=10
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_s offset=12
|
|
local.tee 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 1
|
|
local.get 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.extend16_s
|
|
local.tee 3
|
|
i32.const 22118
|
|
i32.lt_s
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 31130
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
local.get 2
|
|
i32.const 2
|
|
i32.shl
|
|
i32.const 26624
|
|
i32.add
|
|
local.set 2
|
|
br 2 (;@1;)
|
|
end
|
|
local.get 2
|
|
i32.const -11059
|
|
i32.add
|
|
local.set 2
|
|
br 1 (;@1;)
|
|
end
|
|
local.get 3
|
|
i32.const 1
|
|
i32.shr_s
|
|
local.set 2
|
|
end
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 2
|
|
i32.sub
|
|
local.get 2
|
|
local.get 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.store16 offset=12
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_s offset=14
|
|
local.tee 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 1
|
|
local.get 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.extend16_s
|
|
local.tee 3
|
|
i32.const 22118
|
|
i32.lt_s
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 31130
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
local.get 2
|
|
i32.const 2
|
|
i32.shl
|
|
i32.const 26624
|
|
i32.add
|
|
local.set 2
|
|
br 2 (;@1;)
|
|
end
|
|
local.get 2
|
|
i32.const -11059
|
|
i32.add
|
|
local.set 2
|
|
br 1 (;@1;)
|
|
end
|
|
local.get 3
|
|
i32.const 1
|
|
i32.shr_s
|
|
local.set 2
|
|
end
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 2
|
|
i32.sub
|
|
local.get 2
|
|
local.get 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.store16 offset=14)
|
|
(func $gsm_enc_Decoding_of_the_coded_Log_Area_Ratios (type 0) (param i32 i32)
|
|
(local i32 i32)
|
|
local.get 1
|
|
i32.const 63
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_s
|
|
local.tee 2
|
|
i32.const 32
|
|
i32.gt_s
|
|
select
|
|
local.get 2
|
|
i32.const 32
|
|
i32.xor
|
|
local.get 2
|
|
i32.const -32800
|
|
i32.add
|
|
i32.const -65536
|
|
i32.lt_u
|
|
select
|
|
i32.const 10
|
|
i32.shl
|
|
i32.extend16_s
|
|
i32.const 26214
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.const 65534
|
|
i32.and
|
|
i32.store16
|
|
local.get 1
|
|
i32.const 63
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_s offset=2
|
|
local.tee 2
|
|
i32.const 32
|
|
i32.gt_s
|
|
select
|
|
local.get 2
|
|
i32.const 32
|
|
i32.xor
|
|
local.get 2
|
|
i32.const -32800
|
|
i32.add
|
|
i32.const -65536
|
|
i32.lt_u
|
|
select
|
|
i32.const 10
|
|
i32.shl
|
|
i32.extend16_s
|
|
i32.const 26214
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.const 65534
|
|
i32.and
|
|
i32.store16 offset=2
|
|
local.get 1
|
|
i32.const -32768
|
|
i32.const 63
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_s offset=4
|
|
local.tee 2
|
|
i32.const 16
|
|
i32.gt_s
|
|
select
|
|
local.get 2
|
|
i32.const 48
|
|
i32.add
|
|
local.get 2
|
|
i32.const -32784
|
|
i32.add
|
|
i32.const -65536
|
|
i32.lt_u
|
|
select
|
|
i32.const 10
|
|
i32.shl
|
|
local.tee 2
|
|
i32.const -4096
|
|
i32.add
|
|
local.get 2
|
|
i32.extend16_s
|
|
i32.const -28671
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
i32.const 26214
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.const 65534
|
|
i32.and
|
|
i32.store16 offset=4
|
|
local.get 1
|
|
i32.const 32767
|
|
i32.const 63
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_s offset=6
|
|
local.tee 2
|
|
i32.const 16
|
|
i32.gt_s
|
|
select
|
|
local.get 2
|
|
i32.const 48
|
|
i32.add
|
|
local.get 2
|
|
i32.const -32784
|
|
i32.add
|
|
i32.const -65536
|
|
i32.lt_u
|
|
select
|
|
i32.const 10
|
|
i32.shl
|
|
local.tee 2
|
|
i32.const 5120
|
|
i32.add
|
|
local.get 2
|
|
i32.extend16_s
|
|
i32.const 27646
|
|
i32.gt_s
|
|
select
|
|
i32.extend16_s
|
|
i32.const 26214
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.const 65534
|
|
i32.and
|
|
i32.store16 offset=6
|
|
local.get 1
|
|
i32.const 32767
|
|
i32.const 32768
|
|
i32.const -32768
|
|
i32.const 63
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_s offset=8
|
|
local.tee 2
|
|
i32.const 8
|
|
i32.gt_s
|
|
select
|
|
local.get 2
|
|
i32.const 56
|
|
i32.add
|
|
local.get 2
|
|
i32.const -32776
|
|
i32.add
|
|
i32.const -65536
|
|
i32.lt_u
|
|
select
|
|
i32.const 10
|
|
i32.shl
|
|
local.tee 2
|
|
i32.const -188
|
|
i32.add
|
|
local.get 2
|
|
i32.extend16_s
|
|
i32.const -32579
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
i32.const 38446
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_s
|
|
local.tee 2
|
|
i32.const -2
|
|
i32.and
|
|
local.tee 3
|
|
i32.const 0
|
|
i32.gt_s
|
|
select
|
|
local.get 3
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.add
|
|
i32.const -65536
|
|
i32.lt_u
|
|
select
|
|
i32.store16 offset=8
|
|
local.get 1
|
|
i32.const 32767
|
|
i32.const 32768
|
|
i32.const 32767
|
|
i32.const 63
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_s offset=10
|
|
local.tee 2
|
|
i32.const 8
|
|
i32.gt_s
|
|
select
|
|
local.get 2
|
|
i32.const 56
|
|
i32.add
|
|
local.get 2
|
|
i32.const -32776
|
|
i32.add
|
|
i32.const -65536
|
|
i32.lt_u
|
|
select
|
|
i32.const 10
|
|
i32.shl
|
|
local.tee 2
|
|
i32.const 3584
|
|
i32.add
|
|
local.get 2
|
|
i32.extend16_s
|
|
i32.const 29182
|
|
i32.gt_s
|
|
select
|
|
i32.extend16_s
|
|
i32.const 34952
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_s
|
|
local.tee 2
|
|
i32.const -2
|
|
i32.and
|
|
local.tee 3
|
|
i32.const 0
|
|
i32.gt_s
|
|
select
|
|
local.get 3
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.add
|
|
i32.const -65536
|
|
i32.lt_u
|
|
select
|
|
i32.store16 offset=10
|
|
local.get 1
|
|
i32.const 32767
|
|
i32.const 32768
|
|
i32.const 63
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_s offset=12
|
|
local.tee 2
|
|
i32.const 4
|
|
i32.gt_s
|
|
select
|
|
local.get 2
|
|
i32.const 60
|
|
i32.add
|
|
local.get 2
|
|
i32.const -32772
|
|
i32.add
|
|
i32.const -65536
|
|
i32.lt_u
|
|
select
|
|
i32.const 10
|
|
i32.shl
|
|
i32.const 682
|
|
i32.or
|
|
i32.extend16_s
|
|
i32.const 62908
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_s
|
|
local.tee 2
|
|
i32.const -2
|
|
i32.and
|
|
local.tee 3
|
|
i32.const 0
|
|
i32.gt_s
|
|
select
|
|
local.get 3
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.add
|
|
i32.const -65536
|
|
i32.lt_u
|
|
select
|
|
i32.store16 offset=12
|
|
local.get 1
|
|
i32.const 32767
|
|
i32.const 32768
|
|
i32.const 32767
|
|
i32.const 63
|
|
i32.const 0
|
|
local.get 0
|
|
i32.load16_s offset=14
|
|
local.tee 0
|
|
i32.const 4
|
|
i32.gt_s
|
|
select
|
|
local.get 0
|
|
i32.const 60
|
|
i32.add
|
|
local.get 0
|
|
i32.const -32772
|
|
i32.add
|
|
i32.const -65536
|
|
i32.lt_u
|
|
select
|
|
i32.const 10
|
|
i32.shl
|
|
local.tee 0
|
|
i32.const 2288
|
|
i32.add
|
|
local.get 0
|
|
i32.extend16_s
|
|
i32.const 30478
|
|
i32.gt_s
|
|
select
|
|
i32.extend16_s
|
|
i32.const 59416
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 15
|
|
i32.shr_s
|
|
local.tee 0
|
|
i32.const -2
|
|
i32.and
|
|
local.tee 2
|
|
i32.const 0
|
|
i32.gt_s
|
|
select
|
|
local.get 2
|
|
local.get 0
|
|
i32.const -32768
|
|
i32.add
|
|
i32.const -65536
|
|
i32.lt_u
|
|
select
|
|
i32.store16 offset=14)
|
|
(func $gsm_enc_LARp_to_rp (type 6) (param i32)
|
|
(local i32 i32)
|
|
i32.const 8
|
|
i32.const 8
|
|
call $__pragma_loopbound
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
local.get 0
|
|
i32.load16_s
|
|
local.tee 1
|
|
i32.const -1
|
|
i32.gt_s
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const -32768
|
|
i32.eq
|
|
select
|
|
local.tee 1
|
|
i32.const 65535
|
|
i32.and
|
|
local.tee 2
|
|
i32.const 11058
|
|
i32.gt_u
|
|
br_if 0 (;@3;)
|
|
i32.const 0
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
i32.sub
|
|
local.set 1
|
|
br 2 (;@1;)
|
|
end
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 20069
|
|
i32.gt_u
|
|
br_if 0 (;@3;)
|
|
i32.const -11059
|
|
local.get 1
|
|
i32.sub
|
|
local.set 1
|
|
br 2 (;@1;)
|
|
end
|
|
block ;; label = @3
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@3;)
|
|
i32.const 32769
|
|
local.set 1
|
|
br 2 (;@1;)
|
|
end
|
|
i32.const -26112
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.sub
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
block ;; label = @2
|
|
local.get 1
|
|
i32.const 11058
|
|
i32.gt_u
|
|
br_if 0 (;@2;)
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
block ;; label = @2
|
|
local.get 1
|
|
i32.const 20069
|
|
i32.gt_u
|
|
br_if 0 (;@2;)
|
|
local.get 1
|
|
i32.const 11059
|
|
i32.add
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
block ;; label = @2
|
|
local.get 1
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@2;)
|
|
i32.const 32767
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 26112
|
|
i32.add
|
|
local.set 1
|
|
end
|
|
local.get 0
|
|
local.get 1
|
|
i32.store16
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
local.get 0
|
|
i32.load16_s offset=2
|
|
local.tee 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 1
|
|
i32.const 11059
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
block ;; label = @4
|
|
local.get 1
|
|
i32.const 20070
|
|
i32.lt_u
|
|
br_if 0 (;@4;)
|
|
block ;; label = @5
|
|
local.get 1
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@5;)
|
|
i32.const 32767
|
|
local.set 1
|
|
br 4 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 26112
|
|
i32.add
|
|
local.set 1
|
|
br 3 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 11059
|
|
i32.add
|
|
local.set 1
|
|
br 2 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
block ;; label = @2
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const -32768
|
|
i32.eq
|
|
select
|
|
local.tee 1
|
|
i32.const 65535
|
|
i32.and
|
|
local.tee 2
|
|
i32.const 11059
|
|
i32.lt_u
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 20070
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
block ;; label = @4
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@4;)
|
|
i32.const 32769
|
|
local.set 1
|
|
br 3 (;@1;)
|
|
end
|
|
i32.const -26112
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.sub
|
|
local.set 1
|
|
br 2 (;@1;)
|
|
end
|
|
i32.const -11059
|
|
local.get 1
|
|
i32.sub
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
i32.const 0
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
i32.sub
|
|
local.set 1
|
|
end
|
|
local.get 0
|
|
local.get 1
|
|
i32.store16 offset=2
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
local.get 0
|
|
i32.load16_s offset=4
|
|
local.tee 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 1
|
|
i32.const 11059
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
block ;; label = @4
|
|
local.get 1
|
|
i32.const 20070
|
|
i32.lt_u
|
|
br_if 0 (;@4;)
|
|
block ;; label = @5
|
|
local.get 1
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@5;)
|
|
i32.const 32767
|
|
local.set 1
|
|
br 4 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 26112
|
|
i32.add
|
|
local.set 1
|
|
br 3 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 11059
|
|
i32.add
|
|
local.set 1
|
|
br 2 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
block ;; label = @2
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const -32768
|
|
i32.eq
|
|
select
|
|
local.tee 1
|
|
i32.const 65535
|
|
i32.and
|
|
local.tee 2
|
|
i32.const 11059
|
|
i32.lt_u
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 20070
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
block ;; label = @4
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@4;)
|
|
i32.const 32769
|
|
local.set 1
|
|
br 3 (;@1;)
|
|
end
|
|
i32.const -26112
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.sub
|
|
local.set 1
|
|
br 2 (;@1;)
|
|
end
|
|
i32.const -11059
|
|
local.get 1
|
|
i32.sub
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
i32.const 0
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
i32.sub
|
|
local.set 1
|
|
end
|
|
local.get 0
|
|
local.get 1
|
|
i32.store16 offset=4
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
local.get 0
|
|
i32.load16_s offset=6
|
|
local.tee 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 1
|
|
i32.const 11059
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
block ;; label = @4
|
|
local.get 1
|
|
i32.const 20070
|
|
i32.lt_u
|
|
br_if 0 (;@4;)
|
|
block ;; label = @5
|
|
local.get 1
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@5;)
|
|
i32.const 32767
|
|
local.set 1
|
|
br 4 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 26112
|
|
i32.add
|
|
local.set 1
|
|
br 3 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 11059
|
|
i32.add
|
|
local.set 1
|
|
br 2 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
block ;; label = @2
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const -32768
|
|
i32.eq
|
|
select
|
|
local.tee 1
|
|
i32.const 65535
|
|
i32.and
|
|
local.tee 2
|
|
i32.const 11059
|
|
i32.lt_u
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 20070
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
block ;; label = @4
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@4;)
|
|
i32.const 32769
|
|
local.set 1
|
|
br 3 (;@1;)
|
|
end
|
|
i32.const -26112
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.sub
|
|
local.set 1
|
|
br 2 (;@1;)
|
|
end
|
|
i32.const -11059
|
|
local.get 1
|
|
i32.sub
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
i32.const 0
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
i32.sub
|
|
local.set 1
|
|
end
|
|
local.get 0
|
|
local.get 1
|
|
i32.store16 offset=6
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
local.get 0
|
|
i32.load16_s offset=8
|
|
local.tee 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 1
|
|
i32.const 11059
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
block ;; label = @4
|
|
local.get 1
|
|
i32.const 20070
|
|
i32.lt_u
|
|
br_if 0 (;@4;)
|
|
block ;; label = @5
|
|
local.get 1
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@5;)
|
|
i32.const 32767
|
|
local.set 1
|
|
br 4 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 26112
|
|
i32.add
|
|
local.set 1
|
|
br 3 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 11059
|
|
i32.add
|
|
local.set 1
|
|
br 2 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
block ;; label = @2
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const -32768
|
|
i32.eq
|
|
select
|
|
local.tee 1
|
|
i32.const 65535
|
|
i32.and
|
|
local.tee 2
|
|
i32.const 11059
|
|
i32.lt_u
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 20070
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
block ;; label = @4
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@4;)
|
|
i32.const 32769
|
|
local.set 1
|
|
br 3 (;@1;)
|
|
end
|
|
i32.const -26112
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.sub
|
|
local.set 1
|
|
br 2 (;@1;)
|
|
end
|
|
i32.const -11059
|
|
local.get 1
|
|
i32.sub
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
i32.const 0
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
i32.sub
|
|
local.set 1
|
|
end
|
|
local.get 0
|
|
local.get 1
|
|
i32.store16 offset=8
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
local.get 0
|
|
i32.load16_s offset=10
|
|
local.tee 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 1
|
|
i32.const 11059
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
block ;; label = @4
|
|
local.get 1
|
|
i32.const 20070
|
|
i32.lt_u
|
|
br_if 0 (;@4;)
|
|
block ;; label = @5
|
|
local.get 1
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@5;)
|
|
i32.const 32767
|
|
local.set 1
|
|
br 4 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 26112
|
|
i32.add
|
|
local.set 1
|
|
br 3 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 11059
|
|
i32.add
|
|
local.set 1
|
|
br 2 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
block ;; label = @2
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const -32768
|
|
i32.eq
|
|
select
|
|
local.tee 1
|
|
i32.const 65535
|
|
i32.and
|
|
local.tee 2
|
|
i32.const 11059
|
|
i32.lt_u
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 20070
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
block ;; label = @4
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@4;)
|
|
i32.const 32769
|
|
local.set 1
|
|
br 3 (;@1;)
|
|
end
|
|
i32.const -26112
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.sub
|
|
local.set 1
|
|
br 2 (;@1;)
|
|
end
|
|
i32.const -11059
|
|
local.get 1
|
|
i32.sub
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
i32.const 0
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
i32.sub
|
|
local.set 1
|
|
end
|
|
local.get 0
|
|
local.get 1
|
|
i32.store16 offset=10
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
local.get 0
|
|
i32.load16_s offset=12
|
|
local.tee 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 1
|
|
i32.const 11059
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
block ;; label = @4
|
|
local.get 1
|
|
i32.const 20070
|
|
i32.lt_u
|
|
br_if 0 (;@4;)
|
|
block ;; label = @5
|
|
local.get 1
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@5;)
|
|
i32.const 32767
|
|
local.set 1
|
|
br 4 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 26112
|
|
i32.add
|
|
local.set 1
|
|
br 3 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 11059
|
|
i32.add
|
|
local.set 1
|
|
br 2 (;@1;)
|
|
end
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
block ;; label = @2
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const -32768
|
|
i32.eq
|
|
select
|
|
local.tee 1
|
|
i32.const 65535
|
|
i32.and
|
|
local.tee 2
|
|
i32.const 11059
|
|
i32.lt_u
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 20070
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
block ;; label = @4
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@4;)
|
|
i32.const 32769
|
|
local.set 1
|
|
br 3 (;@1;)
|
|
end
|
|
i32.const -26112
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.sub
|
|
local.set 1
|
|
br 2 (;@1;)
|
|
end
|
|
i32.const -11059
|
|
local.get 1
|
|
i32.sub
|
|
local.set 1
|
|
br 1 (;@1;)
|
|
end
|
|
i32.const 0
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
i32.sub
|
|
local.set 1
|
|
end
|
|
local.get 0
|
|
local.get 1
|
|
i32.store16 offset=12
|
|
block ;; label = @1
|
|
local.get 0
|
|
i32.load16_s offset=14
|
|
local.tee 1
|
|
i32.const 0
|
|
i32.lt_s
|
|
br_if 0 (;@1;)
|
|
block ;; label = @2
|
|
local.get 1
|
|
i32.const 11059
|
|
i32.lt_u
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 1
|
|
i32.const 20070
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
block ;; label = @4
|
|
local.get 1
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@4;)
|
|
local.get 0
|
|
i32.const 32767
|
|
i32.store16 offset=14
|
|
return
|
|
end
|
|
local.get 0
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.const 26112
|
|
i32.add
|
|
i32.store16 offset=14
|
|
return
|
|
end
|
|
local.get 0
|
|
local.get 1
|
|
i32.const 11059
|
|
i32.add
|
|
i32.store16 offset=14
|
|
return
|
|
end
|
|
local.get 0
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
i32.store16 offset=14
|
|
return
|
|
end
|
|
block ;; label = @1
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const -32768
|
|
i32.eq
|
|
select
|
|
local.tee 1
|
|
i32.const 65535
|
|
i32.and
|
|
local.tee 2
|
|
i32.const 11059
|
|
i32.lt_u
|
|
br_if 0 (;@1;)
|
|
block ;; label = @2
|
|
local.get 2
|
|
i32.const 20070
|
|
i32.lt_u
|
|
br_if 0 (;@2;)
|
|
block ;; label = @3
|
|
local.get 1
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 26623
|
|
i32.le_u
|
|
br_if 0 (;@3;)
|
|
local.get 0
|
|
i32.const 32769
|
|
i32.store16 offset=14
|
|
return
|
|
end
|
|
local.get 0
|
|
i32.const -26112
|
|
local.get 1
|
|
i32.const 65532
|
|
i32.and
|
|
i32.const 2
|
|
i32.shr_u
|
|
i32.sub
|
|
i32.store16 offset=14
|
|
return
|
|
end
|
|
local.get 0
|
|
i32.const -11059
|
|
local.get 1
|
|
i32.sub
|
|
i32.store16 offset=14
|
|
return
|
|
end
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
i32.sub
|
|
i32.store16 offset=14)
|
|
(func $gsm_enc_Short_term_analysis_filtering (type 4) (param i32 i32 i32 i32)
|
|
(local i32 i32 i32 i32 i32 i32 i32)
|
|
i32.const 13
|
|
i32.const 120
|
|
call $__pragma_loopbound
|
|
block ;; label = @1
|
|
local.get 2
|
|
i32.const 1
|
|
i32.lt_s
|
|
br_if 0 (;@1;)
|
|
local.get 3
|
|
i32.load16_u
|
|
local.set 4
|
|
loop ;; label = @2
|
|
i32.const 8
|
|
i32.const 8
|
|
call $__pragma_loopbound
|
|
local.get 0
|
|
i32.load16_s offset=572
|
|
local.set 5
|
|
local.get 1
|
|
i32.load16_s
|
|
local.set 6
|
|
local.get 0
|
|
local.get 4
|
|
i32.store16 offset=572
|
|
local.get 0
|
|
i32.load16_s offset=574
|
|
local.set 7
|
|
local.get 1
|
|
i32.load16_s offset=2
|
|
local.set 8
|
|
local.get 0
|
|
local.get 5
|
|
local.get 6
|
|
local.get 4
|
|
i32.extend16_s
|
|
local.tee 9
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
i32.add
|
|
local.tee 4
|
|
i32.const 32767
|
|
local.get 4
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 4
|
|
i32.const -32768
|
|
local.get 4
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16 offset=574
|
|
local.get 0
|
|
i32.load16_s offset=576
|
|
local.set 4
|
|
local.get 1
|
|
i32.load16_s offset=4
|
|
local.set 10
|
|
local.get 0
|
|
local.get 7
|
|
local.get 8
|
|
local.get 5
|
|
local.get 6
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 9
|
|
i32.add
|
|
local.tee 5
|
|
i32.const 32767
|
|
local.get 5
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 5
|
|
i32.const -32768
|
|
local.get 5
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.tee 9
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
i32.add
|
|
local.tee 5
|
|
i32.const 32767
|
|
local.get 5
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 5
|
|
i32.const -32768
|
|
local.get 5
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16 offset=576
|
|
local.get 0
|
|
i32.load16_s offset=578
|
|
local.set 5
|
|
local.get 1
|
|
i32.load16_s offset=6
|
|
local.set 6
|
|
local.get 0
|
|
local.get 4
|
|
local.get 10
|
|
local.get 7
|
|
local.get 8
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 9
|
|
i32.add
|
|
local.tee 7
|
|
i32.const 32767
|
|
local.get 7
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 7
|
|
i32.const -32768
|
|
local.get 7
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.tee 9
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
i32.add
|
|
local.tee 7
|
|
i32.const 32767
|
|
local.get 7
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 7
|
|
i32.const -32768
|
|
local.get 7
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16 offset=578
|
|
local.get 0
|
|
i32.load16_s offset=580
|
|
local.set 7
|
|
local.get 1
|
|
i32.load16_s offset=8
|
|
local.set 8
|
|
local.get 0
|
|
local.get 5
|
|
local.get 6
|
|
local.get 4
|
|
local.get 10
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 9
|
|
i32.add
|
|
local.tee 4
|
|
i32.const 32767
|
|
local.get 4
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 4
|
|
i32.const -32768
|
|
local.get 4
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.tee 9
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
i32.add
|
|
local.tee 4
|
|
i32.const 32767
|
|
local.get 4
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 4
|
|
i32.const -32768
|
|
local.get 4
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16 offset=580
|
|
local.get 0
|
|
i32.load16_s offset=582
|
|
local.set 4
|
|
local.get 1
|
|
i32.load16_s offset=10
|
|
local.set 10
|
|
local.get 0
|
|
local.get 7
|
|
local.get 8
|
|
local.get 5
|
|
local.get 6
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 9
|
|
i32.add
|
|
local.tee 5
|
|
i32.const 32767
|
|
local.get 5
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 5
|
|
i32.const -32768
|
|
local.get 5
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.tee 9
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
i32.add
|
|
local.tee 5
|
|
i32.const 32767
|
|
local.get 5
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 5
|
|
i32.const -32768
|
|
local.get 5
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16 offset=582
|
|
local.get 0
|
|
i32.load16_s offset=584
|
|
local.set 5
|
|
local.get 1
|
|
i32.load16_s offset=12
|
|
local.set 6
|
|
local.get 0
|
|
local.get 4
|
|
local.get 10
|
|
local.get 7
|
|
local.get 8
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 9
|
|
i32.add
|
|
local.tee 7
|
|
i32.const 32767
|
|
local.get 7
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 7
|
|
i32.const -32768
|
|
local.get 7
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.tee 7
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
i32.add
|
|
local.tee 8
|
|
i32.const 32767
|
|
local.get 8
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 8
|
|
i32.const -32768
|
|
local.get 8
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16 offset=584
|
|
local.get 1
|
|
i32.load16_s offset=14
|
|
local.set 8
|
|
local.get 0
|
|
i32.load16_s offset=586
|
|
local.set 9
|
|
local.get 0
|
|
local.get 5
|
|
local.get 6
|
|
local.get 4
|
|
local.get 10
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 7
|
|
i32.add
|
|
local.tee 4
|
|
i32.const 32767
|
|
local.get 4
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 4
|
|
i32.const -32768
|
|
local.get 4
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.tee 4
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
i32.add
|
|
local.tee 7
|
|
i32.const 32767
|
|
local.get 7
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 7
|
|
i32.const -32768
|
|
local.get 7
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.store16 offset=586
|
|
local.get 3
|
|
local.get 9
|
|
local.get 8
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
local.get 6
|
|
i32.mul
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 4
|
|
i32.add
|
|
local.tee 4
|
|
i32.const 32767
|
|
local.get 4
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 4
|
|
i32.const -32768
|
|
local.get 4
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.add
|
|
local.tee 4
|
|
i32.const 32767
|
|
local.get 4
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 4
|
|
i32.const -32768
|
|
local.get 4
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.tee 4
|
|
i32.store16
|
|
local.get 2
|
|
i32.const -1
|
|
i32.add
|
|
local.tee 2
|
|
br_if 0 (;@2;)
|
|
end
|
|
end)
|
|
(func $gsm_enc_RPE_grid_selection (type 2) (param i32 i32 i32)
|
|
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
|
|
local.get 0
|
|
i32.load16_s offset=78
|
|
local.set 3
|
|
local.get 0
|
|
i32.load16_s offset=76
|
|
local.set 4
|
|
local.get 0
|
|
i32.load16_s offset=70
|
|
local.set 5
|
|
local.get 0
|
|
i32.load16_s offset=64
|
|
local.set 6
|
|
local.get 0
|
|
i32.load16_s offset=58
|
|
local.set 7
|
|
local.get 0
|
|
i32.load16_s offset=52
|
|
local.set 8
|
|
local.get 0
|
|
i32.load16_s offset=46
|
|
local.set 9
|
|
local.get 0
|
|
i32.load16_s offset=40
|
|
local.set 10
|
|
local.get 0
|
|
i32.load16_s offset=34
|
|
local.set 11
|
|
local.get 0
|
|
i32.load16_s offset=28
|
|
local.set 12
|
|
local.get 0
|
|
i32.load16_s offset=22
|
|
local.set 13
|
|
local.get 0
|
|
i32.load16_s offset=16
|
|
local.set 14
|
|
local.get 0
|
|
i32.load16_s offset=10
|
|
local.set 15
|
|
local.get 0
|
|
i32.load16_s offset=4
|
|
local.set 16
|
|
local.get 0
|
|
i32.load16_s offset=74
|
|
local.set 17
|
|
local.get 0
|
|
i32.load16_s offset=68
|
|
local.set 18
|
|
local.get 0
|
|
i32.load16_s offset=62
|
|
local.set 19
|
|
local.get 0
|
|
i32.load16_s offset=56
|
|
local.set 20
|
|
local.get 0
|
|
i32.load16_s offset=50
|
|
local.set 21
|
|
local.get 0
|
|
i32.load16_s offset=44
|
|
local.set 22
|
|
local.get 0
|
|
i32.load16_s offset=38
|
|
local.set 23
|
|
local.get 0
|
|
i32.load16_s offset=32
|
|
local.set 24
|
|
local.get 0
|
|
i32.load16_s offset=26
|
|
local.set 25
|
|
local.get 0
|
|
i32.load16_s offset=20
|
|
local.set 26
|
|
local.get 0
|
|
i32.load16_s offset=14
|
|
local.set 27
|
|
local.get 0
|
|
i32.load16_s offset=8
|
|
local.set 28
|
|
local.get 0
|
|
i32.load16_s offset=2
|
|
local.set 29
|
|
local.get 0
|
|
i32.load16_s
|
|
local.set 30
|
|
local.get 0
|
|
i32.load16_s offset=72
|
|
local.set 31
|
|
local.get 0
|
|
i32.load16_s offset=66
|
|
local.set 32
|
|
local.get 0
|
|
i32.load16_s offset=60
|
|
local.set 33
|
|
local.get 0
|
|
i32.load16_s offset=54
|
|
local.set 34
|
|
local.get 0
|
|
i32.load16_s offset=48
|
|
local.set 35
|
|
local.get 0
|
|
i32.load16_s offset=42
|
|
local.set 36
|
|
local.get 0
|
|
i32.load16_s offset=36
|
|
local.set 37
|
|
local.get 0
|
|
i32.load16_s offset=30
|
|
local.set 38
|
|
local.get 0
|
|
i32.load16_s offset=24
|
|
local.set 39
|
|
local.get 0
|
|
i32.load16_s offset=18
|
|
local.set 40
|
|
local.get 0
|
|
i32.load16_s offset=12
|
|
local.set 41
|
|
local.get 0
|
|
i32.load16_s offset=6
|
|
local.set 42
|
|
i32.const 13
|
|
i32.const 13
|
|
call $__pragma_loopbound
|
|
local.get 1
|
|
local.get 0
|
|
i32.const 3
|
|
i32.const 2
|
|
local.get 28
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 28
|
|
local.get 28
|
|
i32.mul
|
|
local.get 29
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 28
|
|
local.get 28
|
|
i32.mul
|
|
i32.add
|
|
local.get 27
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 27
|
|
local.get 27
|
|
i32.mul
|
|
i32.add
|
|
local.get 26
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 26
|
|
local.get 26
|
|
i32.mul
|
|
i32.add
|
|
local.get 25
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 25
|
|
local.get 25
|
|
i32.mul
|
|
i32.add
|
|
local.get 24
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 24
|
|
local.get 24
|
|
i32.mul
|
|
i32.add
|
|
local.get 23
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 23
|
|
local.get 23
|
|
i32.mul
|
|
i32.add
|
|
local.get 22
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 22
|
|
local.get 22
|
|
i32.mul
|
|
i32.add
|
|
local.get 21
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 21
|
|
local.get 21
|
|
i32.mul
|
|
i32.add
|
|
local.get 20
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 20
|
|
local.get 20
|
|
i32.mul
|
|
i32.add
|
|
local.get 19
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 19
|
|
local.get 19
|
|
i32.mul
|
|
i32.add
|
|
local.get 18
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 18
|
|
local.get 18
|
|
i32.mul
|
|
i32.add
|
|
local.get 17
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 17
|
|
local.get 17
|
|
i32.mul
|
|
i32.add
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 17
|
|
local.get 41
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 18
|
|
local.get 18
|
|
i32.mul
|
|
local.get 42
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 18
|
|
local.get 18
|
|
i32.mul
|
|
i32.add
|
|
local.get 40
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 18
|
|
local.get 18
|
|
i32.mul
|
|
i32.add
|
|
local.get 39
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 18
|
|
local.get 18
|
|
i32.mul
|
|
i32.add
|
|
local.get 38
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 18
|
|
local.get 18
|
|
i32.mul
|
|
i32.add
|
|
local.get 37
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 18
|
|
local.get 18
|
|
i32.mul
|
|
i32.add
|
|
local.get 36
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 18
|
|
local.get 18
|
|
i32.mul
|
|
i32.add
|
|
local.get 35
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 18
|
|
local.get 18
|
|
i32.mul
|
|
i32.add
|
|
local.get 34
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 18
|
|
local.get 18
|
|
i32.mul
|
|
i32.add
|
|
local.get 33
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 18
|
|
local.get 18
|
|
i32.mul
|
|
i32.add
|
|
local.get 32
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 18
|
|
local.get 18
|
|
i32.mul
|
|
i32.add
|
|
local.get 31
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 18
|
|
local.get 18
|
|
i32.mul
|
|
i32.add
|
|
local.tee 18
|
|
local.get 30
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 19
|
|
local.get 19
|
|
i32.mul
|
|
i32.add
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 19
|
|
i32.gt_s
|
|
local.tee 20
|
|
local.get 15
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 15
|
|
local.get 15
|
|
i32.mul
|
|
local.get 16
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 15
|
|
local.get 15
|
|
i32.mul
|
|
i32.add
|
|
local.get 14
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 14
|
|
local.get 14
|
|
i32.mul
|
|
i32.add
|
|
local.get 13
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 13
|
|
local.get 13
|
|
i32.mul
|
|
i32.add
|
|
local.get 12
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 12
|
|
local.get 12
|
|
i32.mul
|
|
i32.add
|
|
local.get 11
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 11
|
|
local.get 11
|
|
i32.mul
|
|
i32.add
|
|
local.get 10
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 10
|
|
local.get 10
|
|
i32.mul
|
|
i32.add
|
|
local.get 9
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 9
|
|
local.get 9
|
|
i32.mul
|
|
i32.add
|
|
local.get 8
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 8
|
|
local.get 8
|
|
i32.mul
|
|
i32.add
|
|
local.get 7
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 7
|
|
local.get 7
|
|
i32.mul
|
|
i32.add
|
|
local.get 6
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 6
|
|
local.get 6
|
|
i32.mul
|
|
i32.add
|
|
local.get 5
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 5
|
|
local.get 5
|
|
i32.mul
|
|
i32.add
|
|
local.get 4
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 4
|
|
local.get 4
|
|
i32.mul
|
|
i32.add
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 4
|
|
local.get 17
|
|
local.get 19
|
|
local.get 20
|
|
select
|
|
local.tee 5
|
|
i32.gt_s
|
|
local.tee 6
|
|
select
|
|
local.get 3
|
|
i32.const 2
|
|
i32.shr_s
|
|
local.tee 3
|
|
local.get 3
|
|
i32.mul
|
|
local.get 18
|
|
i32.add
|
|
i32.const 1
|
|
i32.shl
|
|
local.get 4
|
|
local.get 5
|
|
local.get 6
|
|
select
|
|
i32.gt_s
|
|
select
|
|
local.tee 3
|
|
i32.const 1
|
|
i32.shl
|
|
i32.add
|
|
local.tee 0
|
|
i32.load16_u
|
|
i32.store16
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=6
|
|
i32.store16 offset=2
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=12
|
|
i32.store16 offset=4
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=18
|
|
i32.store16 offset=6
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=24
|
|
i32.store16 offset=8
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=30
|
|
i32.store16 offset=10
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=36
|
|
i32.store16 offset=12
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=42
|
|
i32.store16 offset=14
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=48
|
|
i32.store16 offset=16
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=54
|
|
i32.store16 offset=18
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=60
|
|
i32.store16 offset=20
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=66
|
|
i32.store16 offset=22
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=72
|
|
i32.store16 offset=24
|
|
local.get 2
|
|
local.get 3
|
|
i32.store16)
|
|
(func $gsm_enc_APCM_quantization (type 7) (param i32 i32 i32 i32 i32)
|
|
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
|
|
i32.const 13
|
|
i32.const 13
|
|
call $__pragma_loopbound
|
|
local.get 0
|
|
i32.load16_u offset=24
|
|
local.set 5
|
|
local.get 0
|
|
i32.load16_u offset=22
|
|
local.set 6
|
|
local.get 0
|
|
i32.load16_u offset=20
|
|
local.set 7
|
|
local.get 0
|
|
i32.load16_u offset=18
|
|
local.set 8
|
|
local.get 0
|
|
i32.load16_u offset=16
|
|
local.set 9
|
|
local.get 0
|
|
i32.load16_u offset=14
|
|
local.set 10
|
|
local.get 0
|
|
i32.load16_u offset=12
|
|
local.set 11
|
|
local.get 0
|
|
i32.load16_u offset=10
|
|
local.set 12
|
|
local.get 0
|
|
i32.load16_u offset=8
|
|
local.set 13
|
|
local.get 0
|
|
i32.load16_u offset=6
|
|
local.set 14
|
|
local.get 0
|
|
i32.load16_u offset=4
|
|
local.set 15
|
|
local.get 0
|
|
i32.load16_u
|
|
local.set 16
|
|
local.get 0
|
|
i32.load16_u offset=2
|
|
local.set 17
|
|
i32.const 6
|
|
i32.const 6
|
|
call $__pragma_loopbound
|
|
block ;; label = @1
|
|
block ;; label = @2
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 16
|
|
i32.sub
|
|
local.get 16
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 16
|
|
local.get 16
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 16
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 17
|
|
i32.sub
|
|
local.get 17
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 17
|
|
local.get 17
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 17
|
|
local.get 16
|
|
local.get 17
|
|
i32.gt_s
|
|
select
|
|
local.tee 16
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 15
|
|
i32.sub
|
|
local.get 15
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 15
|
|
local.get 15
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 15
|
|
local.get 16
|
|
local.get 15
|
|
i32.gt_s
|
|
select
|
|
local.tee 15
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 14
|
|
i32.sub
|
|
local.get 14
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 14
|
|
local.get 14
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 14
|
|
local.get 15
|
|
local.get 14
|
|
i32.gt_s
|
|
select
|
|
local.tee 14
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 13
|
|
i32.sub
|
|
local.get 13
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 13
|
|
local.get 13
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 13
|
|
local.get 14
|
|
local.get 13
|
|
i32.gt_s
|
|
select
|
|
local.tee 13
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 12
|
|
i32.sub
|
|
local.get 12
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 12
|
|
local.get 12
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 12
|
|
local.get 13
|
|
local.get 12
|
|
i32.gt_s
|
|
select
|
|
local.tee 12
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 11
|
|
i32.sub
|
|
local.get 11
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 11
|
|
local.get 11
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 11
|
|
local.get 12
|
|
local.get 11
|
|
i32.gt_s
|
|
select
|
|
local.tee 11
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 10
|
|
i32.sub
|
|
local.get 10
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 10
|
|
local.get 10
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 10
|
|
local.get 11
|
|
local.get 10
|
|
i32.gt_s
|
|
select
|
|
local.tee 10
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 9
|
|
i32.sub
|
|
local.get 9
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 9
|
|
local.get 9
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 9
|
|
local.get 10
|
|
local.get 9
|
|
i32.gt_s
|
|
select
|
|
local.tee 9
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 8
|
|
i32.sub
|
|
local.get 8
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 8
|
|
local.get 8
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 8
|
|
local.get 9
|
|
local.get 8
|
|
i32.gt_s
|
|
select
|
|
local.tee 8
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 7
|
|
i32.sub
|
|
local.get 7
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 7
|
|
local.get 7
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 7
|
|
local.get 8
|
|
local.get 7
|
|
i32.gt_s
|
|
select
|
|
local.tee 7
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 6
|
|
i32.sub
|
|
local.get 6
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 6
|
|
local.get 6
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 6
|
|
local.get 7
|
|
local.get 6
|
|
i32.gt_s
|
|
select
|
|
local.tee 6
|
|
i32.const 32767
|
|
i32.const 0
|
|
local.get 5
|
|
i32.sub
|
|
local.get 5
|
|
i32.const 32768
|
|
i32.eq
|
|
select
|
|
local.get 5
|
|
local.get 5
|
|
i32.extend16_s
|
|
i32.const 0
|
|
i32.lt_s
|
|
select
|
|
i32.extend16_s
|
|
local.tee 5
|
|
local.get 6
|
|
local.get 5
|
|
i32.gt_s
|
|
select
|
|
local.tee 5
|
|
i32.const 0
|
|
local.get 5
|
|
i32.const 0
|
|
i32.gt_s
|
|
select
|
|
local.get 5
|
|
i32.const 511
|
|
i32.gt_s
|
|
local.get 5
|
|
i32.const 1023
|
|
i32.gt_s
|
|
i32.add
|
|
local.get 5
|
|
i32.const 2047
|
|
i32.gt_s
|
|
i32.add
|
|
local.get 5
|
|
i32.const 4095
|
|
i32.gt_s
|
|
i32.add
|
|
local.get 5
|
|
i32.const 8191
|
|
i32.gt_s
|
|
i32.add
|
|
local.get 5
|
|
i32.const 16383
|
|
i32.gt_s
|
|
i32.add
|
|
local.tee 5
|
|
i32.const 5
|
|
i32.add
|
|
i32.const 65535
|
|
i32.and
|
|
i32.shr_u
|
|
local.get 5
|
|
i32.const 3
|
|
i32.shl
|
|
i32.const 65528
|
|
i32.and
|
|
i32.add
|
|
local.tee 8
|
|
local.get 8
|
|
i32.const 65528
|
|
i32.and
|
|
i32.const 3
|
|
i32.shr_u
|
|
i32.const -1
|
|
i32.add
|
|
i32.const 0
|
|
local.get 8
|
|
i32.const 15
|
|
i32.gt_u
|
|
select
|
|
local.tee 5
|
|
i32.const 3
|
|
i32.shl
|
|
i32.sub
|
|
local.tee 6
|
|
i32.const 65535
|
|
i32.and
|
|
br_if 0 (;@2;)
|
|
i32.const 7
|
|
local.set 9
|
|
i32.const 65532
|
|
local.set 5
|
|
br 1 (;@1;)
|
|
end
|
|
i32.const 0
|
|
i32.const 3
|
|
call $__pragma_loopbound
|
|
block ;; label = @2
|
|
local.get 6
|
|
i32.extend16_s
|
|
local.tee 6
|
|
i32.const 7
|
|
i32.gt_s
|
|
br_if 0 (;@2;)
|
|
loop ;; label = @3
|
|
local.get 5
|
|
i32.const -1
|
|
i32.add
|
|
local.set 5
|
|
local.get 6
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 1
|
|
i32.or
|
|
i32.extend16_s
|
|
local.tee 6
|
|
i32.const 8
|
|
i32.lt_s
|
|
br_if 0 (;@3;)
|
|
end
|
|
end
|
|
local.get 6
|
|
i32.const -8
|
|
i32.add
|
|
local.set 9
|
|
end
|
|
local.get 9
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 1040
|
|
i32.add
|
|
i32.load16_s
|
|
local.set 6
|
|
i32.const 13
|
|
i32.const 13
|
|
call $__pragma_loopbound
|
|
local.get 1
|
|
local.get 6
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 6
|
|
local.get 0
|
|
i32.load16_u
|
|
i32.const 6
|
|
local.get 5
|
|
i32.sub
|
|
i32.const 65535
|
|
i32.and
|
|
local.tee 7
|
|
i32.shl
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 28
|
|
i32.shr_s
|
|
i32.const 4
|
|
i32.add
|
|
i32.store16
|
|
local.get 1
|
|
local.get 6
|
|
local.get 0
|
|
i32.load16_u offset=2
|
|
local.get 7
|
|
i32.shl
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 28
|
|
i32.shr_s
|
|
i32.const 4
|
|
i32.add
|
|
i32.store16 offset=2
|
|
local.get 1
|
|
local.get 6
|
|
local.get 0
|
|
i32.load16_u offset=4
|
|
local.get 7
|
|
i32.shl
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 28
|
|
i32.shr_s
|
|
i32.const 4
|
|
i32.add
|
|
i32.store16 offset=4
|
|
local.get 1
|
|
local.get 6
|
|
local.get 0
|
|
i32.load16_u offset=6
|
|
local.get 7
|
|
i32.shl
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 28
|
|
i32.shr_s
|
|
i32.const 4
|
|
i32.add
|
|
i32.store16 offset=6
|
|
local.get 1
|
|
local.get 6
|
|
local.get 0
|
|
i32.load16_u offset=8
|
|
local.get 7
|
|
i32.shl
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 28
|
|
i32.shr_s
|
|
i32.const 4
|
|
i32.add
|
|
i32.store16 offset=8
|
|
local.get 1
|
|
local.get 6
|
|
local.get 0
|
|
i32.load16_u offset=10
|
|
local.get 7
|
|
i32.shl
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 28
|
|
i32.shr_s
|
|
i32.const 4
|
|
i32.add
|
|
i32.store16 offset=10
|
|
local.get 1
|
|
local.get 6
|
|
local.get 0
|
|
i32.load16_u offset=12
|
|
local.get 7
|
|
i32.shl
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 28
|
|
i32.shr_s
|
|
i32.const 4
|
|
i32.add
|
|
i32.store16 offset=12
|
|
local.get 1
|
|
local.get 6
|
|
local.get 0
|
|
i32.load16_u offset=14
|
|
local.get 7
|
|
i32.shl
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 28
|
|
i32.shr_s
|
|
i32.const 4
|
|
i32.add
|
|
i32.store16 offset=14
|
|
local.get 1
|
|
local.get 6
|
|
local.get 0
|
|
i32.load16_u offset=16
|
|
local.get 7
|
|
i32.shl
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 28
|
|
i32.shr_s
|
|
i32.const 4
|
|
i32.add
|
|
i32.store16 offset=16
|
|
local.get 1
|
|
local.get 6
|
|
local.get 0
|
|
i32.load16_u offset=18
|
|
local.get 7
|
|
i32.shl
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 28
|
|
i32.shr_s
|
|
i32.const 4
|
|
i32.add
|
|
i32.store16 offset=18
|
|
local.get 1
|
|
local.get 6
|
|
local.get 0
|
|
i32.load16_u offset=20
|
|
local.get 7
|
|
i32.shl
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 28
|
|
i32.shr_s
|
|
i32.const 4
|
|
i32.add
|
|
i32.store16 offset=20
|
|
local.get 1
|
|
local.get 6
|
|
local.get 0
|
|
i32.load16_u offset=22
|
|
local.get 7
|
|
i32.shl
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 28
|
|
i32.shr_s
|
|
i32.const 4
|
|
i32.add
|
|
i32.store16 offset=22
|
|
local.get 1
|
|
local.get 6
|
|
local.get 0
|
|
i32.load16_u offset=24
|
|
local.get 7
|
|
i32.shl
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 28
|
|
i32.shr_s
|
|
i32.const 4
|
|
i32.add
|
|
i32.store16 offset=24
|
|
local.get 2
|
|
local.get 9
|
|
i32.store16
|
|
local.get 3
|
|
local.get 5
|
|
i32.store16
|
|
local.get 4
|
|
local.get 8
|
|
i32.store16)
|
|
(func $gsm_enc_APCM_inverse_quantization (type 4) (param i32 i32 i32 i32)
|
|
(local i32 i32 i32)
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
i32.const 1056
|
|
i32.add
|
|
i32.load16_s
|
|
local.set 1
|
|
i32.const 13
|
|
i32.const 13
|
|
call $__pragma_loopbound
|
|
i32.const 0
|
|
i32.const 0
|
|
i32.const 1
|
|
i32.const 6
|
|
local.get 2
|
|
i32.sub
|
|
local.tee 4
|
|
i32.const 32767
|
|
local.get 4
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 4
|
|
i32.const -32768
|
|
local.get 4
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.tee 4
|
|
i32.const -1
|
|
i32.add
|
|
i32.const 65535
|
|
i32.and
|
|
i32.shl
|
|
local.get 4
|
|
i32.const -17
|
|
i32.add
|
|
i32.const 65535
|
|
i32.and
|
|
i32.const 65505
|
|
i32.lt_u
|
|
select
|
|
local.get 2
|
|
i32.const 5
|
|
i32.gt_s
|
|
select
|
|
local.set 5
|
|
local.get 1
|
|
i32.const 1
|
|
i32.shl
|
|
local.set 1
|
|
block ;; label = @1
|
|
local.get 4
|
|
i32.const 16
|
|
i32.lt_s
|
|
br_if 0 (;@1;)
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.extend16_s
|
|
local.tee 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=2
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16 offset=2
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=4
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16 offset=4
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=6
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16 offset=6
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=8
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16 offset=8
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=10
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16 offset=10
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=12
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16 offset=12
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=14
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16 offset=14
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=16
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16 offset=16
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=18
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16 offset=18
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=20
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16 offset=20
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=22
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 4
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16 offset=22
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=24
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 4
|
|
i32.add
|
|
local.tee 0
|
|
i32.const 32767
|
|
local.get 0
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 0
|
|
i32.const -32768
|
|
local.get 0
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
i32.const 15
|
|
i32.shr_u
|
|
i32.store16 offset=24
|
|
return
|
|
end
|
|
block ;; label = @1
|
|
local.get 4
|
|
i32.extend16_s
|
|
i32.const -16
|
|
i32.gt_s
|
|
br_if 0 (;@1;)
|
|
local.get 3
|
|
i32.const 0
|
|
i32.store16 offset=24
|
|
local.get 3
|
|
i64.const 0
|
|
i64.store offset=16 align=2
|
|
local.get 3
|
|
i64.const 0
|
|
i64.store offset=8 align=2
|
|
local.get 3
|
|
i64.const 0
|
|
i64.store align=2
|
|
return
|
|
end
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.extend16_s
|
|
local.tee 5
|
|
i32.add
|
|
local.tee 6
|
|
i32.const 32767
|
|
local.get 6
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 6
|
|
i32.const -32768
|
|
local.get 6
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.set 6
|
|
block ;; label = @1
|
|
local.get 2
|
|
i32.const 6
|
|
i32.gt_s
|
|
br_if 0 (;@1;)
|
|
local.get 3
|
|
local.get 6
|
|
i32.extend16_s
|
|
local.get 4
|
|
i32.shr_s
|
|
i32.store16
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=2
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shr_s
|
|
i32.store16 offset=2
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=4
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shr_s
|
|
i32.store16 offset=4
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=6
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shr_s
|
|
i32.store16 offset=6
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=8
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shr_s
|
|
i32.store16 offset=8
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=10
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shr_s
|
|
i32.store16 offset=10
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=12
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shr_s
|
|
i32.store16 offset=12
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=14
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shr_s
|
|
i32.store16 offset=14
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=16
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shr_s
|
|
i32.store16 offset=16
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=18
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shr_s
|
|
i32.store16 offset=18
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=20
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shr_s
|
|
i32.store16 offset=20
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=22
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shr_s
|
|
i32.store16 offset=22
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=24
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 0
|
|
i32.const 32767
|
|
local.get 0
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 0
|
|
i32.const -32768
|
|
local.get 0
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shr_s
|
|
i32.store16 offset=24
|
|
return
|
|
end
|
|
local.get 3
|
|
local.get 6
|
|
i32.const 0
|
|
local.get 4
|
|
i32.sub
|
|
local.tee 4
|
|
i32.shl
|
|
i32.store16
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=2
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16 offset=2
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=4
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16 offset=4
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=6
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16 offset=6
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=8
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16 offset=8
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=10
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16 offset=10
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=12
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16 offset=12
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=14
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16 offset=14
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=16
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16 offset=16
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=18
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16 offset=18
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=20
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16 offset=20
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=22
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 2
|
|
i32.const 32767
|
|
local.get 2
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 2
|
|
i32.const -32768
|
|
local.get 2
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16 offset=22
|
|
local.get 3
|
|
local.get 1
|
|
local.get 0
|
|
i32.load16_u offset=24
|
|
i32.const 13
|
|
i32.shl
|
|
i32.const -28672
|
|
i32.add
|
|
i32.extend16_s
|
|
i32.mul
|
|
i32.const 32768
|
|
i32.add
|
|
i32.const 16
|
|
i32.shr_s
|
|
local.get 5
|
|
i32.add
|
|
local.tee 0
|
|
i32.const 32767
|
|
local.get 0
|
|
i32.const 32767
|
|
i32.lt_s
|
|
select
|
|
local.tee 0
|
|
i32.const -32768
|
|
local.get 0
|
|
i32.const -32768
|
|
i32.gt_s
|
|
select
|
|
local.get 4
|
|
i32.shl
|
|
i32.store16 offset=24)
|
|
(func $gsm_enc_div (type 8) (param i32 i32) (result i32)
|
|
(local i32)
|
|
block ;; label = @1
|
|
local.get 0
|
|
br_if 0 (;@1;)
|
|
i32.const 0
|
|
i32.extend16_s
|
|
return
|
|
end
|
|
i32.const 15
|
|
i32.const 15
|
|
call $__pragma_loopbound
|
|
local.get 0
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 0
|
|
local.get 1
|
|
i32.ge_s
|
|
i32.const 3
|
|
i32.shl
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 1
|
|
local.get 0
|
|
local.get 1
|
|
i32.lt_s
|
|
select
|
|
i32.sub
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 0
|
|
local.get 1
|
|
i32.ge_s
|
|
local.tee 2
|
|
i32.const 2
|
|
i32.shl
|
|
i32.or
|
|
local.get 0
|
|
local.get 1
|
|
i32.const 0
|
|
local.get 2
|
|
select
|
|
i32.sub
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 0
|
|
local.get 1
|
|
i32.ge_s
|
|
i32.const 1
|
|
i32.shl
|
|
i32.or
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 1
|
|
local.get 0
|
|
local.get 1
|
|
i32.lt_s
|
|
select
|
|
i32.sub
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 0
|
|
local.get 1
|
|
i32.ge_s
|
|
local.tee 2
|
|
i32.or
|
|
i32.const 2
|
|
i32.shl
|
|
local.get 0
|
|
local.get 1
|
|
i32.const 0
|
|
local.get 2
|
|
select
|
|
i32.sub
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 0
|
|
local.get 1
|
|
i32.ge_s
|
|
i32.const 1
|
|
i32.shl
|
|
i32.or
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 1
|
|
local.get 0
|
|
local.get 1
|
|
i32.lt_s
|
|
select
|
|
i32.sub
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 0
|
|
local.get 1
|
|
i32.ge_s
|
|
local.tee 2
|
|
i32.or
|
|
i32.const 2
|
|
i32.shl
|
|
local.get 0
|
|
local.get 1
|
|
i32.const 0
|
|
local.get 2
|
|
select
|
|
i32.sub
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 0
|
|
local.get 1
|
|
i32.ge_s
|
|
i32.const 1
|
|
i32.shl
|
|
i32.or
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 1
|
|
local.get 0
|
|
local.get 1
|
|
i32.lt_s
|
|
select
|
|
i32.sub
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 0
|
|
local.get 1
|
|
i32.ge_s
|
|
local.tee 2
|
|
i32.or
|
|
i32.const 2
|
|
i32.shl
|
|
local.get 0
|
|
local.get 1
|
|
i32.const 0
|
|
local.get 2
|
|
select
|
|
i32.sub
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 0
|
|
local.get 1
|
|
i32.ge_s
|
|
i32.const 1
|
|
i32.shl
|
|
i32.or
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 1
|
|
local.get 0
|
|
local.get 1
|
|
i32.lt_s
|
|
select
|
|
i32.sub
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 0
|
|
local.get 1
|
|
i32.ge_s
|
|
local.tee 2
|
|
i32.or
|
|
i32.const 2
|
|
i32.shl
|
|
local.get 0
|
|
local.get 1
|
|
i32.const 0
|
|
local.get 2
|
|
select
|
|
i32.sub
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 0
|
|
local.get 1
|
|
i32.ge_s
|
|
i32.const 1
|
|
i32.shl
|
|
i32.or
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 1
|
|
local.get 0
|
|
local.get 1
|
|
i32.lt_s
|
|
select
|
|
i32.sub
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 0
|
|
local.get 1
|
|
i32.ge_s
|
|
local.tee 2
|
|
i32.or
|
|
i32.const 2
|
|
i32.shl
|
|
local.get 0
|
|
local.get 1
|
|
i32.const 0
|
|
local.get 2
|
|
select
|
|
i32.sub
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 0
|
|
local.get 1
|
|
i32.ge_s
|
|
i32.const 1
|
|
i32.shl
|
|
i32.or
|
|
local.get 0
|
|
i32.const 0
|
|
local.get 1
|
|
local.get 0
|
|
local.get 1
|
|
i32.lt_s
|
|
select
|
|
i32.sub
|
|
i32.const 1
|
|
i32.shl
|
|
local.tee 0
|
|
local.get 1
|
|
i32.ge_s
|
|
local.tee 2
|
|
i32.or
|
|
i32.const 1
|
|
i32.shl
|
|
local.get 0
|
|
local.get 1
|
|
i32.const 0
|
|
local.get 2
|
|
select
|
|
i32.sub
|
|
i32.const 1
|
|
i32.shl
|
|
local.get 1
|
|
i32.ge_s
|
|
i32.or
|
|
i32.extend16_s)
|
|
(func $gsm_enc_main (type 1)
|
|
(local i32)
|
|
i32.const 0
|
|
i32.const 0
|
|
i32.store offset=9152
|
|
i32.const 0
|
|
i32.load offset=9148
|
|
local.set 0
|
|
i32.const 20
|
|
i32.const 20
|
|
call $__pragma_loopbound
|
|
local.get 0
|
|
i32.const 1072
|
|
i32.const 7472
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 1392
|
|
i32.const 7505
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 1712
|
|
i32.const 7538
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 2032
|
|
i32.const 7571
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 2352
|
|
i32.const 7604
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 2672
|
|
i32.const 7637
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 2992
|
|
i32.const 7670
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 3312
|
|
i32.const 7703
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 3632
|
|
i32.const 7736
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 3952
|
|
i32.const 7769
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 4272
|
|
i32.const 7802
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 4592
|
|
i32.const 7835
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 4912
|
|
i32.const 7868
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 5232
|
|
i32.const 7901
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 5552
|
|
i32.const 7934
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 5872
|
|
i32.const 7967
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 6192
|
|
i32.const 8000
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 6512
|
|
i32.const 8033
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 6832
|
|
i32.const 8066
|
|
call $gsm_enc_encode
|
|
local.get 0
|
|
i32.const 7152
|
|
i32.const 8099
|
|
call $gsm_enc_encode)
|
|
(func $__original_main (type 9) (result i32)
|
|
(local i32)
|
|
i32.const 648
|
|
i32.const 648
|
|
call $__pragma_loopbound
|
|
i32.const -648
|
|
local.set 0
|
|
loop ;; label = @1
|
|
local.get 0
|
|
i32.const 9156
|
|
i32.add
|
|
i32.const 0
|
|
i32.store8
|
|
local.get 0
|
|
i32.const 9148
|
|
i32.add
|
|
i64.const 0
|
|
i64.store align=1
|
|
local.get 0
|
|
i32.const 9
|
|
i32.add
|
|
local.tee 0
|
|
br_if 0 (;@1;)
|
|
end
|
|
i32.const 0
|
|
i32.const 8500
|
|
i32.store offset=9148
|
|
i32.const 0
|
|
i32.const 40
|
|
i32.store16 offset=9122
|
|
call $gsm_enc_main
|
|
i32.const 0
|
|
i32.load offset=9152)
|
|
(table (;0;) 1 1 funcref)
|
|
(memory (;0;) 1)
|
|
(global $__stack_pointer (mut i32) (i32.const 13264))
|
|
(global (;1;) i32 (i32.const 9156))
|
|
(global (;2;) i32 (i32.const 13264))
|
|
(export "memory" (memory 0))
|
|
(export "__wasm_apply_data_relocs" (func $__wasm_apply_data_relocs))
|
|
(export "entrypoint" (func $gsm_enc_main))
|
|
(export "main" (func $__original_main))
|
|
(export "__data_end" (global 1))
|
|
(export "__heap_base" (global 2))
|
|
(data $.data (i32.const 1024) "\9a\19\00@ff\ff\7f\00\00\00\00\00\00\00\00\c8qgf\18]VU\c5N%IDD\00@\ffG\ffO\ffW\ff_\ffg\ffo\ffw\ff\7f\00\00\00\00\10\00\10\00\10\00 \00 \00\18\00(\00 \00 \00(\00(\00 \000\000\00(\00\10\00\08\00\00\00P\00`\00X\00\d0\00\e0\00\d0\00\18\01(\01\18\01(\01\10\01\00\01\a0\00X\00H\00X\00`\00X\00P\00H\00@\000\00 \00\10\00\08\00\f8\ff\e8\ff\e0\ff\d8\ff\c8\ff\c0\ff\c0\ff\98\ffx\ffx\ff\c8\ff\00\00\10\00@\00`\00h\00x\00x\00p\00\a8\00\c8\00\c8\00\e0\00\f0\00\e8\00\f8\00\f8\00\f0\00\e0\00\c8\00\b8\00\e8\00\00\01\f8\00\e8\00\d8\00\c0\00\a8\00 \00\c0\ff\a0\ff\a0\ff\a8\ff\b0\ff\d0\ff\f8\ff\00\00 \000\000\000\00(\00 \00\f0\ff\d0\ff\c8\ff\c8\ff\d0\ff\d8\ff\e8\ff\f8\ff\f8\ff\08\00\18\00\18\00x\00\b8\00\c0\00\00\010\01(\01\08\01\d8\00\c0\00x\008\00 \00 \00\00\00\e0\ff\e0\ff\d8\ff\c8\ff\c8\ff\a0\ff\88\ff\98\ff\80\ffp\ff\80\ffx\ffx\ff\90\ff\80\ffx\ffx\ffP\ff0\ffP\ff8\ff0\ff@\ffX\ffp\ff\80\ffP\ff8\ff@\ff\18\ff\00\ff\08\ff@\ffh\ff\80\ff\88\ff\88\ff\88\ff\88\ff\b8\ff\e0\ff\f0\ff\d0\ff\b8\ff\b8\ff\90\ffp\ffp\ffP\ff@\ff@\ffX\ffp\ff\80\ff\c8\ff\00\00\18\000\00H\00H\00(\00\08\00\f8\ff\d8\ff\c8\ff\b8\ff\98\ffx\ffp\ff\f0\ffX\00\88\00\b8\00\d0\00\d8\00\e8\008\01`\01X\01p\01x\01`\01h\01`\01@\01\18\01\f0\00\c8\00\98\00x\00`\00\18\00\c0\ff\90\ffH\ff\00\ff\e8\fe\c8\fe\b8\fe\b8\fe\a0\fe\88\fe\80\fe\b8\fe\f8\fe8\ff\a0\ff\e8\ff\08\000\00X\00h\00h\00p\00h\00P\00@\00@\00 \00\00\00\e8\ff\f0\ff\f8\ff\f8\ff8\00h\00x\008\00\08\00\f0\ff\e0\ff\d8\ff\d8\ff\e0\ff\d0\ff\c8\ff\00\000\00H\00h\00\80\00\88\00\88\00\88\00\88\00\88\00\88\00x\00\98\00\b0\00\b8\00\98\00p\00X\00`\00x\00\a8\00\b8\00\a8\00\a0\00\80\00h\00`\00X\00H\000\008\008\000\00P\00X\00`\000\00\08\00\f8\ff\90\ffH\ff(\ff\10\ff\f8\fe\f0\fe\d8\fe\b0\fe\b0\fe\a8\fe\b8\fe\d8\fe\f8\fe\10\ff \ff@\ffX\ff\80\ff\a0\ff\b8\ff\c8\ff\d8\ff\e0\ff\f0\ffH\00\98\00\b0\00h\00\18\00\f8\ff\e8\ff\f0\ff\f8\ff \008\008\00P\00h\00p\00h\00`\00`\008\00 \00\18\00@\00`\00h\00@\00\10\00\00\00\b0\ffx\ffp\ff\90\ff\a8\ff\c8\ff\98\ffP\ffP\ffP\ffX\ffh\ffH\ff \ff\18\ff8\ff`\ffp\ff\80\ff\98\ff\a0\ff\b8\ff\d0\ff\e0\ff\18\00H\00X\00\b0\00\f8\00\08\01\18\01 \01\18\010\01H\01@\010\01 \01\08\01\98\008\00\18\00\d0\ff\90\ff\80\ffX\ff8\ff0\ffH\ffh\ffx\ff\88\ff\b8\ff\d8\ff\e8\ff\d8\ff\f0\ff\10\00 \00 \00\18\00(\000\000\008\00`\00\80\00\80\00\b0\00\d8\00\d0\00\b8\00\a8\00\a8\00\a0\00\90\00x\00p\00h\00H\00\18\00\08\00\08\00\00\00\00\00\e8\ff\b0\ff\90\ff\88\ffp\ff`\ff`\ff\90\ff\c0\ff\d0\ff\d8\ff\e0\ff\e8\ff\18\00P\00X\000\00\08\00\00\00\18\008\008\00H\00P\00P\00 \00\00\00\f8\ff\b0\ffp\ffh\ff\b0\ff\e8\ff\f8\ff\f8\ff\f8\ff\f0\ff0\00p\00\90\00\98\00\98\00\90\00\a0\00\b0\00\b8\00\c0\00\c0\00\a8\00\98\00\88\00x\00P\000\00 \00\d8\ff\98\ff\88\ffP\ff \ff\18\ff\f8\fe\e0\fe\e8\fep\fe\08\fe\00\feH\fe\98\fe\b8\fe\e8\fe\10\ff(\ff\18\ff\10\ff\18\ffH\ffp\ff\88\ff\e0\ff(\00@\00X\00h\00p\00x\00p\00h\00h\00x\00\80\00\80\00\88\00\88\00\80\00X\000\00 \00\18\00\18\00\18\00P\00\90\00\a0\00\80\00`\00P\000\00\18\00\10\00(\008\008\00\18\00\f8\ff\f0\ff\00\00 \00 \000\000\000\00@\00P\00P\00P\00H\00H\00H\00H\00H\00x\00\a0\00\a8\00\c0\00\c8\00\c0\00\d0\00\e0\00\d8\00\e8\00\f0\00\e0\00\00\01\18\01\10\01\00\01\f0\00\d8\00\90\00H\00(\00 \00 \00 \008\00P\00P\00P\00H\00@\00P\00`\00`\00@\00\c0\ffX\ff@\ff\90\ff\e8\ff\00\00 \000\000\00h\00\98\00\a8\00\10\01h\01p\01H\01\18\01\f0\00\e8\00\e0\00\d0\00\98\00`\00@\00\00\00\d8\ff\d8\ff\c0\ff\b0\ff\b0\ffx\ff0\ff\10\ff\f0\fe\e8\fe\f0\fe\c8\fe\d0\fe\f8\fe\00\ff\10\ff \ffP\ffx\ff\90\ff\80\ffp\ffp\ff\80\ff\98\ff\a0\ff\b8\ff\d0\ff\d8\ff\f0\ff\00\00\08\00(\00H\00X\00x\00p\00X\00h\00\98\00\b8\00\d8\00\f0\00\f0\00\e8\00\f8\00\00\01\d8\00\d0\00\c8\00\e8\00\00\01\f0\00\e0\00\c8\00\b8\00\a0\00x\00X\008\00 \00\10\00\10\00\18\00\10\00\10\00\10\00\18\00(\00\08\00\e0\ff\c8\ff\80\ffH\ff8\ff@\ffH\ffH\ffp\ff\90\ff\a8\ff\b8\ff\c0\ff\c8\ff\c0\ff\c0\ff\c0\ff\b0\ff\a0\ff\a0\ff\a0\ff\a8\ff\b0\ffh\ff(\ff\08\ff\f8\fe\f8\fe\e8\fe\e0\fe\d8\fe\a8\fe\98\fe\a8\fe\a8\fe\a0\fe\a0\fe\d0\fe\00\ff0\ff(\ff8\ffX\ffH\ff@\ffH\ff\b0\ff\10\008\00(\00\10\00\08\00P\00\a0\00\b8\00\a0\00\80\00p\00\90\00\b0\00\b0\00\b8\00\b8\00\b0\00\c0\00\d0\00\c8\00\a0\00h\008\00\f0\ff\b0\ff\88\ffx\ffh\ff`\ff\90\ff\c0\ff\e0\ff\00\00 \000\00\a0\00\10\018\01@\01H\01H\01\10\01\e8\00\c0\00\a0\00\88\00h\00\08\00\b0\ff\88\ffX\ff0\ff \ff\f8\fe\d8\fe\d8\fe\00\ff \ff8\ffP\ffh\ff\88\ff\a0\ff\b8\ff \00\80\00\a0\00\d8\00\00\01\00\018\01h\01H\01(\01 \01\f8\00\e8\00\e0\00\c0\00\a8\00\b0\00\98\00p\00H\000\00\d0\ff`\ffH\ff\10\ff\a8\fe\a8\fe\c0\fe\c0\fe\e8\fe\b0\feX\fe\88\fe\d0\fe\b8\feH\feX\fe\e8\fe(\ff\18\ff`\ff\a0\00\a0\01\88\01x\01\08\02\08\02\00\01\18\00\e0\ff\e0\feh\fd\00\fd`\fdp\fd\a8\fd\00\ff\a0\00p\01\10\02\d8\02\10\03\18\02\a0\00\a0\ff\f0\fd\d8\fb\08\fb\c0\f90\f8\d8\f8\c0\fc8\00\a0\01\80\03\18\0aP\0f\b0\0d0\0c\18\0e\a8\0cp\05\98\ff8\fe\a0\fb\00\f7\d0\f5\c8\f7\a8\f9H\fb\b0\fbx\fc\00\ff\98\fe \fbH\fa\c0\fa\c8\f8\e0\f6\c0\f9\08\fe\80\ff(\04p\0b\18\0e8\0d8\0d(\0c\d0\01x\f5\08\f1P\fb\98\04(\04\e8\0c\90!\f0)\e0\22h\1fP \10\18\10\07\98\fa8\f4h\eeP\e9\c8\eb8\f5\b8\fe@\02`\04\d0\09x\09\f8\ff\10\f8\90\f1\d0\e8\90\e2`\df\f0\dfh\e6 \ec8\f1\c0\fa\f0\04\d0\08\c8\08\18\0b\f8\090\028\fah\fax\fc\b8\f9P\f8\a8\fe\b8\05\90\06\e8\02h\02\98\04\b0\fc\18\f0\f8\ed\90\00H\0fp\0cx\12\b8'\a0.\f8! \19\18\190\158\06X\f8 \f7\f8\f9\00\f6P\f8\90\05\e0\0e\00\10\d8\10`\14\f8\10\00\05\c0\fb\a8\f7P\f2\00\ec0\eb\c8\f1 \f9\90\fc\90\01`\0a\80\0e\b0\0d\d8\0a\90\06h\01 \ff\d0\fb\f8\f6`\f6\80\f6\b0\f5\c0\f7 \f1\90\ea0\f0\18\ec\90\e1X\e5 \ff\90\10P\0cH\12\88'\d0*(\16\f0\08\a8\0b8\05H\ef\10\e4\10\ebh\ef(\ea@\ec\18\fc\a8\08\18\08x\07X\08\f8\02\e8\f8\f0\f1@\ef\d0\ecX\e9p\ea`\f2\f0\fa\a0\ff\a0\04\f8\0c\f8\10\a0\0eH\0d\e8\0b\e0\05\b0\03X\03\18\ff@\fb\b0\f9\c0\f9\c0\f7\90\ee\a0\ea\00\ee\88\e8\00\e2\00\efH\09\00\14p\12\88\1d\d8,\88$\a8\0d\b8\04H\05\b0\f7\f0\e3h\e2\f8\ef\a0\f5 \f3h\fc\f0\0b\a0\0fP\0a\f8\01`\feH\fc@\f3(\ebX\ed\c0\f3\b8\f58\f7\f8\00p\0c\90\0e\e8\0d\90\11\b0\12X\10\98\0b8\06h\08\98\09\b0\02P\fe \01\a0\02\90\fc\10\f8\d0\f9\18\f8\90\f2@\f2\d0\f6H\0a\d8\1a@\18\18\1c\18+\f0)\08\16\b8\08x\07(\01\18\f1h\e8\a0\ed\10\f3H\f2X\f5X\00p\09\88\06\08\01\08\fd\88\f9X\f5\a0\f0\b0\f0@\f5\e8\f6\a0\fcX\07\d0\0c`\0f8\13X\14x\12\d0\0f\a8\0cP\0d\10\0d\98\07\98\03(\04\f0\04x\02\98\ffx\01\88\00\08\fb`\f6\a8\f1\18\ef\e8\f9\00\0c\c8\11`\12`\1b\b0!\e0\18\08\0b\c8\04x\000\f7`\ef\18\eb\10\ec\90\f2\00\f8`\fb`\ff\80\00\a8\ff\08\fb\a8\f1\10\ed\f0\ef\d0\ee\10\eb\e8\ef\f0\f8\e0\fd\98\02(\05\98\05(\090\0ap\06\e8\08\c0\0b\98\06\10\02\90\03`\05\88\02\10\f9h\f4`\f5\e0\f3\10\ee\b0\e8\08\e5\d0\ee\e0\038\06\a8\ff\b8\0bx \a8\1f\f0\0eH\06\c8\05\18\ff\88\f5 \ee\88\ed\a0\f5\a8\fb\c0\fb\98\fa \fa\d8\f7\d0\f2H\ef\98\e9x\e30\e5h\e8\90\e8\d0\ed\98\f7\c0\fb \fdx\01\90\04\a0\04X\07X\08\90\04\f8\04X\08\f0\06\f8\05P\04\98\00`\fe\a0\fd\e0\f9X\f3\c0\ed\08\f3\e0\ff\18\00\80\fbH\09\b8\1d\08\1d\88\0fH\0bP\0c\c0\09x\ff\a0\f1(\ef\b8\f6\f0\f9\f0\f6\88\f6\e0\f9\c0\f9\c8\f4\d8\eb\e8\e7\e0\eb\c8\e8\00\e1\18\e5\b8\f0(\f7p\f7x\f8X\ff\b0\060\04`\00\90\03\18\0a\98\0b\c8\06\10\07\f0\0c\d0\08\f8\01\80\028\02x\fdh\f8\98\f1p\f60\09x\0a8\fb\f0\04\b8\1e\98\1eh\0f\c8\0eH\15\80\14`\0c\b0\00\f8\fe0\088\08`\01\80\03\e8\07p\02\a0\fb\c0\f9P\f4\08\ee\08\ed\10\ee \ef\c0\f1\00\f8p\fe\b0\00\d8\02\c8\07\f0\09\a8\09`\0a(\0b\80\0cX\0d\d0\0bH\0a\00\09h\07\d0\03\e0\00\f8\ff\d8\fb\e8\f5\18\fe\e8\0f`\10\c8\05x\108&\80%@\17\e8\14\d0\19\d8\17\10\0ep\02 \01\00\09p\08\90\02\a0\03\00\06\00\01(\fe(\ff8\f8\b8\f08\f20\f5@\f4@\f48\fa\98\01\a8\03\d0\03\80\07\b8\0aX\0b\10\0b\d8\0a\08\0ax\08\c8\07H\06\a0\01H\ffX\feh\fa\d0\f7X\f7p\f4\b0\f5\a8\02X\0aH\04\c8\07\08\17p\19\c8\0e@\0a\d0\0c(\0d8\08\10\00\e0\fa\b0\fc\b8\fe\e8\fc\a8\fb\10\fd\c8\fb\10\f9`\f90\f8\d8\f4\00\f5`\f8\f0\f9X\fbH\feP\00\18\04\10\09@\090\08\c8\0a\88\0cP\0a\c0\07\00\07\90\05h\02\f0\ff\a8\fb \f7\98\f6\e0\f2h\eb\a0\ed\00\fcX\030\ff\98\03 \12`\18h\13\c0\10\f0\12\a0\12\08\0e\80\07\10\00\d8\fa\90\f9\e0\f7x\f2\10\ee\98\eb\a0\e7\f8\e60\ea\80\e9 \e4@\e4\a8\eb\98\efh\ef\88\f2\a8\f7\90\fc\f8\01(\050\06\e8\08\98\0cP\0d\98\0b \09x\06\f0\03`\02\00\fe\10\f8\b8\f4\c0\f0h\ebX\ef\e8\fa\e0\fd\80\f6\10\f9\e0\06 \0c\d8\05\08\04\c8\05P\04\d0\02(\01x\fbh\f60\f4P\f1\90\edp\e8H\e4\e0\e2H\e0\d0\dd\08\df\e0\e0\98\e0X\e2 \e5\a8\e6(\ea\88\ef\a8\f2H\f5\a8\fb\c8\01\f8\03H\07\88\0c\98\0e\b8\0d\98\0dP\0dh\0bp\09\c0\068\02\18\fe\08\fb \f8\80\f7p\f9\b0\f9\80\f8(\fa(\00\98\06H\09\d0\08\e0\09\d0\0d\10\10@\0dX\09(\07\08\03\a0\fd\f8\f9\18\f4\98\ec\b8\e8\18\e6\00\e2\d0\deH\df\00\e1\80\e1`\e1\c8\e3\98\e8\d8\edP\f2X\f5\00\fb\f8\02\b0\07\80\0b\08\11\18\15`\16p\17p\18\f8\16\00\13x\0f\c0\0fp\10\e8\0c\f8\0a\d8\0b(\0d\a8\10p\13\a0\10@\10\18\15@\17P\15\98\13\e0\10\c8\0a@\06H\03\18\fdX\f6\d8\f1 \ec`\e7P\e5\b8\e4\18\e48\e4\08\e58\e7\18\eb\c8\f0\18\f6\88\f9\c8\fe\18\05\d8\09\18\11\f0\17\b0\1b(\1e !\d8#8&\18$\80 0\1d\e8\1c\98\1d\a8\1c\d8\1a`\19\f8\17@\1a\f8\1c8\1d0\1ch\1a`\18\80\14 \10h\0b\e8\03\a8\fb\08\f5@\ee \e88\e3\88\de0\da\d0\d7(\d7\d8\d7\98\d9\10\dc\b0\dfp\e4H\e9\98\ef\f0\f58\fc(\02\98\07\98\0d \13`\17p\1a\e0\1b\c0\1c\98\1d\88\1aX\16\a0\12\80\11\a8\10\d0\0e\c8\0c\d8\0a \09p\0b0\0e\e8\0e\80\0d\e0\0b\c0\0a\b8\09\90\08\90\06\f8\010\fd\f0\f9\b0\f5\88\f18\ee\e8\e9\e8\e5\e0\e3\a0\e4\08\e68\e7X\e8\80\e9 \ec0\f0P\f4x\f8h\fch\ff\c8\03\b8\08\00\0d8\10\d8\12\90\14H\16\b8\16h\14`\11\a8\0f8\10X\10\88\0fP\0e\c8\0c\c0\0c\c0\0f \12\a0\12\f8\10 \0f(\0dx\0c\b8\0b\d0\08\c8\018\fb`\f60\f3x\f0(\ec\c8\e6\c0\e2P\e0\c8\df8\e0`\e1\00\e3h\e5\b8\e6\a0\e9P\ed8\f2\d8\f6\08\fb\10\ff\e8\02\a0\06\c0\0a\c8\0d\10\10h\11\18\10\90\0e\f8\0b\08\0bP\0a\f0\09`\09\88\08\08\08\c8\09\a8\0b\e8\0ep\10\d0\10X\0f`\0d\a0\0b`\0a\f0\08\08\06\b0\ff8\f9`\f30\f0 \eep\eb\a8\e7\10\e4@\e1\c8\df\f8\df\f0\e1H\e4\d0\e6\80\e7\e8\e9\f0\ecH\f20\f7\c0\fb\80\ff\10\03p\06\98\0a\88\0d\d8\0f\c0\10\b0\0eH\0c\b8\08\98\09\c0\0ah\0cx\0b\c8\098\08\f8\08\80\0a\a0\0c\10\0eH\0eX\0d(\0aP\07\f0\04(\02\e8\fe\80\fah\f4\d0\ee\e0\ea\b8\e8\18\e7\b0\e5\a8\e4\10\e4\80\e4H\e58\e7\b0\e9\80\ed\b8\f0\80\f4\b0\f7p\fb\d0\fe(\03 \07\98\0a\00\0e\f8\10\e0\12\a8\12\b0\11X\0f8\0f\88\0e\08\0f\c0\0f\f0\0f\b8\108\11\98\11\d0\138\16\e8\17X\17(\16`\14\e8\10\a0\0cH\08\80\02\90\fc\00\f7\f8\f0\18\eb8\e6\b8\e1x\deX\dc\b8\db(\dc\b0\dd0\e00\e3\f0\e6 \ec\10\f2\c0\f7\e0\fcP\01p\05\f0\08p\0cP\0f\b8\12`\15\e0\160\16\e8\14\98\12\b8\11p\11\b8\11\c0\11\e8\0fX\0e\b8\0cP\0ch\0d\98\0e0\0e(\0c\10\0a\d8\06\e0\02\a0\fe\18\fa\e8\f4\18\f0h\eb\e8\e6\10\e3\c8\df8\dd\f8\db8\dc\d0\ddp\e0\90\e3`\e7\88\eb \efx\f30\f8\e0\fc\f8\00\80\04h\07h\09\e0\0a\b8\0b\10\0c\b0\0bx\0a\e0\08\e8\06@\05p\08\e0\0b\d0\0e@\0e\10\0d\c8\0c(\0e\a0\0f\b0\0f\18\0f\d0\0d\c8\0b\e8\08(\06\00\03\18\ff@\fb\80\f7\88\f3(\f0\80\ed\18\ebh\e9\c0\e88\e7X\e6\98\e6\88\e88\eb\a0\edx\f1\b8\f5(\fa\a8\fe\00\03\c8\06`\09p\0b\e0\0cp\0dP\0d`\0c\90\08\18\04(\00\d0\01\f8\03\a8\05\00\07\08\08\a0\09\18\0b\c8\0c\90\0dh\0e\c0\0e0\0e(\0c\d8\090\07\08\03\d8\fe\c0\fa\98\f5\d8\f0\e0\ec\a8\eaH\e9\d0\e8P\e8\88\e8\10\e9\d0\eah\ed\18\f0P\f3\b8\f6\e0\fa\00\ff\d8\02\e8\050\08\f8\09\08\0b\80\0b`\0b\88\09H\06\d0\02P\01\e8\01p\02\e0\038\05X\06\18\09\00\0c\88\0e\b8\10\a0\12\e0\13\88\14H\14h\13 \11\d0\0d@\0a\08\06H\01\80\fc`\f8\d8\f4\c0\f1\08\f08\efx\ee\98\ee\90\efp\f1\90\f3\c0\f5\88\f8H\fb\f0\fdx\00\d0\03\c8\06\f8\08\a0\0a\c8\0bH\0c0\0bx\09\a8\060\05\f0\038\04\c0\03P\03`\03\e8\04\98\06\d0\07\d0\08\98\09p\0aH\0bp\0b\d0\0a\c0\09\90\080\07\88\05X\03@\01X\ff@\fdh\fb\e8\f9(\f8\d0\f6\08\f6\d8\f5\10\f6h\f6x\f7\e8\f8H\fa\c8\fcP\ff\c8\01(\04@\06\d0\07\d0\09@\0b\f8\0b0\0c\08\0c\08\0b\88\09\c0\07p\06\08\06\90\05\88\05\b0\05\e0\05\b8\06H\07X\07\00\07\a8\06 \06\d8\05\90\05(\05\a8\03@\02\08\018\ffP\fd\a0\fb8\fa \f9`\f8\e8\f6@\f6(\f6\80\f6 \f7\00\f8\e0\f8\a0\f9x\fa\88\fb \fd\a0\fe\08\00\10\01\00\02`\03\e0\04\08\068\078\08\d8\08(\088\07\00\06\a8\04\e0\020\01\a0\ffH\ff\10\ff\f0\fe0\ff\d0\ff\90\00\90\00p\00`\00\e8\ffP\ff\b8\fe\98\fe\88\fe\80\feX\feP\feX\fe\b0\fd\08\fd\80\fc\f8\fa\88\f9`\f8\98\f7 \f7\e8\f6(\f7\c0\f7\a8\f8\f8\f8`\f9\18\fa\c0\faX\fb\18\fc\e0\fc\a0\fd \fe\88\fe\f8\fe\f0\fe\c8\fe\a8\fe\e0\fd\10\fdp\fc\a8\fb\10\fb\b8\fa\a0\fa\d0\fa\18\fb\90\fa\18\fa\10\fa\80\fa\10\fb\88\fb\90\fc\b8\fd\b8\fe\80\ffX\008\01\18\01\c8\00\c0\00\98\ff0\fe8\fdh\fcx\fb\b8\fa\e8\fax\fb\d0\fb\e8\fb\18\fc\98\fc(\fdH\fdh\fdh\fd\90\fd\b8\fd\90\fdh\fdx\fd\a0\fcp\fb\d0\fa\f0\f9p\f8H\f7H\f7p\f7H\f7 \f7\a8\f7x\f80\f9\98\f98\fa\10\fc\a0\fdp\fe0\00H\02\a0\03h\058\07p\08`\09\10\0a@\0a(\0a\b8\09\e8\08\e8\07\e0\06\88\050\04\00\03`\02\d0\01\18\01\b0\ff\98\fe\18\fe\a0\fd\08\fd\b8\fc\f8\fc`\fd\90\fd\90\fd\d8\fdP\fe\a0\fd\e0\fc\c0\fc\e8\fc\b0\fc`\fcp\fc\b8\fc\e0\fc@\fd\d8\fdh\fex\ffh\00\08\01x\02\a0\03 \04\90\05\08\07\b8\07\d8\07\08\088\08\d8\07\e8\06\00\06\b0\05\18\05\10\04\a0\02\98\01\d0\00\c8\00\b0\00h\00\c0\00P\01\80\01 \02\d8\02@\03`\03\80\03\80\038\03\c8\02\b8\02\80\02\00\02\00\01\98\00\80\00 \00\f0\ff\00\00 \00\98\00 \01p\010\02\f0\02P\03\80\04\b8\05P\06\a8\068\07\98\07\b0\07\c0\07\98\07h\06\98\050\05\c8\04\10\04P\03x\02\d8\01H\01\80\00\00\00\c0\ff\d8\ff\a8\ff`\ff\80\ff\18\00p\00\e0\ff\88\ff\c0\ff8\ff\98\feP\fe\10\fe\d8\fd\90\fd0\fd\b8\fdh\fep\fe`\fep\fe\d0\fe\90\ff\e0\ff\f0\ff\a8\00h\01\d0\01\f8\01\10\02x\02h\02\08\02 \02\f8\01\98\01X\01\00\01\c0\00\a0\00\18\00\98\ff(\ff\c0\fe\80\fe`\fe\88\fd\f0\fc\c8\fcp\fc\10\fc\c8\fb\b0\fb\e8\fb\e8\fb\80\fb\88\fb@\fb\18\fb \fb\b8\faP\faP\fa\b8\fa\f8\fa\18\fb\b0\fb\88\fc\10\fd@\fd\98\fd8\fe\e0\fe\f8\fe\f0\fe\18\ff\18\ff\18\ffh\ff\98\ff\98\ff\d0\ff\f8\ffH\008\00\08\00\08\00\e0\ff\b0\ff\b8\ff\d0\fe\18\fe\18\fe\f0\fd8\fe\90\fe\90\fe\a8\fdH\fdp\fdh\fd\00\fd\b8\fc\b8\fc\f8\fc\00\fd0\fc\d0\fb\10\fc \fc\e0\fb\a8\fb0\fc\00\fdP\fd\90\fd\10\fe\a8\fe@\ff\a0\ff\d0\ff\c8\ff\c8\ff\d8\ff\a0\ff\98\ff\b8\ffP\00\b8\00\b0\00\b0\01\e0\02\18\030\03\e0\02\c8\02x\02P\01P\00\c0\ff\88\ff\18\ff\90\fe@\fe0\fe\e8\fd\d0\fdp\fdH\fd\10\fd\98\fc8\fc8\fcx\fc\98\fc\f0\fc\a8\fdH\fe\c8\fe0\ff\98\ff\00\00P\00X\00\a8\00\e8\00\d0\008\01\e0\01\18\02\08\020\02X\02H\02\b0\02\18\030\03X\03\80\03x\03\08\04\80\04`\04\c8\03\18\03\b0\02\e8\01\b8\00\d8\ff0\ff\c8\fe`\fe`\fex\fex\fe\c0\fdp\fdP\fd\08\fd\88\fc(\fc\98\fc\18\fd`\fd`\fd\d8\fd\90\fe\e8\fe\10\ffX\ff\90\ff\b8\ff\e0\ff\f0\ff\f0\ff\d0\00\90\01\c8\01\80\01\88\01\b0\018\02\98\02\b8\02h\02X\02X\020\02(\020\02X\02H\02\f8\01P\01\c8\00X\00X\008\00\00\00P\ff\00\ff\f8\fe\80\fe\b8\fdp\fd\00\fd\90\fc@\fc(\fcX\fc\98\fc\10\fdx\fd\e0\fd\80\fe\08\ff`\ff\d0\ff0\00h\00\10\01\98\01\c0\01\08\02`\02\80\02 \03\90\03\98\03\10\04\88\04\a0\04H\04\08\04\e0\03\c8\03\98\03P\03\08\03\c8\02x\02\d8\01H\01\e8\00@\00\a0\ffP\ff\c0\fd\88\fc0\fc\88\fb\a8\faP\fa0\fa@\fap\fa\b8\fa\e0\fa(\fbX\fb\80\fb\b0\fb\00\fc\80\fc\f0\fc\b8\fdX\fe\d8\fe\08\00\00\01\80\01\d0\01\10\02H\028\02\00\02\d0\01\d0\02\a0\03\d8\03\c0\03\d8\03\f8\03p\03\c0\02X\02\b8\01 \01\90\00\88\00\a8\00\a8\00\88\00h\00`\00\e0\ff\00\ffP\fe\c8\fd\f0\fc0\fc\b0\fb\d8\fb \fcX\fc0\fc@\fcx\fc\c0\fc\e8\fc\10\fdH\fd\88\fd\e8\fd\10\ff \00\10\01\b8\01H\02\c0\02X\03\b8\03\c8\03 \03\88\02\80\02\00\03@\03 \03\80\03\f8\03\18\04x\03\e0\02\88\02\80\028\02\d0\01h\018\01\10\01@\01H\01P\01\a8\00\10\00\b0\ff\b8\fe\e0\fdH\fd\e8\fc\a8\fcx\fcH\fcP\fcp\fc\a8\fc\e8\fc(\fd\d0\fdp\fe\d8\fe@\00\88\01X\02\c0\03\f0\04\b8\058\06p\06\90\06\08\07\08\07\b8\06`\06P\060\06\c8\05x\05H\05\08\05p\04\d0\03P\03x\02\a0\01\f8\00\b0\00x\000\00\e8\ff\c8\ff\b8\ff\d0\fe\08\fe\98\fdp\fc`\fb\a8\fa\10\fa\b8\f9\80\f9\a0\f9\00\fah\fa\90\fb\b8\fc\98\fdh\fe\18\ff\c0\ffx\00\f8\00\18\02 \03\c0\03x\04\10\05p\05\d8\05\e0\05\b8\05\08\05h\04\e0\03\f0\02\18\02h\01\f0\00`\00\d0\ffX\ff\c0\feH\fe\b0\fdX\fd8\fd\d8\fc\80\fcP\fc\08\fcH\fb\98\fa\f8\f9\f8\f8\10\f8\f8\f7\18\f8H\f8\e8\f8\e0\f9\08\fb8\fc\10\fd\e8\fd\10\ff\d0\ffH\00\e0\00`\01\b8\01\c8\01\e0\01\00\02(\02@\02@\02@\02`\02\80\02\80\02\f0\02p\03\c8\03\c8\03\a8\03\a0\03\f8\02 \02P\01\98\00\e0\ff \ff\a0\feP\fe\18\fe8\fd`\fc\e0\fb\c8\fa\a0\f9\b8\f80\f8\88\f8\b8\f8\08\f9\80\fa\f8\fbH\fd\c8\fe@\00\b0\01\98\028\03\c0\03p\04 \05\88\05\10\06\88\06\c8\06p\06\e8\05x\05\80\05x\05(\05\98\04\08\04\90\03\f8\03X\04\88\04h\04P\04X\04\a8\03\d0\02\10\02X\01\88\00\a8\ff\00\ff\88\fe0\fe\88\fd\b8\fc(\fc0\fb\f0\f9\e8\f8\90\f8\90\f8\c0\f8x\f9x\fa\e8\fb \fd(\fe`\ff\d8\00 \02\f8\02x\03\e0\038\04\88\04\98\04\a8\04\80\04@\04\c0\03\d8\02\e8\01@\01\d8\00h\00\e0\ffh\000\01(\02`\02x\02\d0\02\d8\02\90\02\e0\01\d0\00\e0\ff\f8\fe\08\fe(\fd\88\fc\e0\fb`\fb\d8\fa\08\fax\f9\e8\f8\b0\f8\b0\f8\d0\f8\d0\f9\f8\fa\18\fc\b0\fd8\ff\a0\00\f8\01\f8\02\c0\03`\04\b8\04\c8\04\c8\04\c0\04\98\04\90\04x\04H\04 \04\f8\03(\038\02\b0\01p\01(\01\90\00\e8\00\b8\01\b8\02\80\02\18\02\18\02\f0\01H\01\00\00\c0\fe\08\fep\fd\a0\fc\f0\fb\c0\fb\a0\fb\80\fb\18\fb(\fb\98\fb\c0\fb\d0\fb\08\fcx\fc\c8\fd\c8\fex\ff\d0\008\02`\03\98\03`\03h\03\80\03\18\03P\02\08\02 \02\18\02\f0\01\c8\01\10\02p\02p\02@\02\90\02\10\03`\03@\03\10\03\18\03 \03\d8\02@\02X\01\a0\00\08\000\ffP\fe\a8\fd(\fd\c8\fc`\fc\a8\fb@\fb\10\fb\18\fb(\fbH\fbh\fb\a8\fb\f8\fb\b8\fcx\fd\00\fe\88\fe0\ff\98\ff\c8\ff\e8\ffP\00\b0\00\e0\00@\00h\ff\d8\fe\e8\fe\e0\fe\90\fe\a8\fe\88\ff\80\00\88\01\08\02\90\02\90\038\04P\04(\04\f8\03\e0\03\88\03\e0\02@\02\90\01\d0\00\00\00\00\00\18\00\ff\00h\00\fe\00\f8\00\fd\00\d5\1ft!\a0P@\c9${\fakR\e0\b6\d6\8e\b9+\ae\e0\8b#R;\13\86\e0\14JAD2\d3\a1\83\a1\1d\a6\80\ba\d2\96&\fb\84\80m\9c%\1d\9b\aa\c0\bbL\95\b9S\ae\a0\b6\e4F7\1b\d4\a5{\1d\22\97\00\ba\a5m\d2\a1~\c0\b9%\d2\b4\94\9e\e0>\de\ed\d6\d2\e2\c0\d7]\8dY\ac\d3\e4\83\95Y\c0\a1H\d2f\c7,\9e\a0*\d3\eeE\1c\80\e0k4\8cK)\cb\00\ba\f6\0d&\9a\d3\a4\82\9dcz\c0g$\ba\d6|\c2\c07 O\10\e0\c7\80jwc\bekZ\c0\b54\d14\9c\d4\e8V\b2X_\00\b7\af\92\12\90\d5\a49#NF\87Q\ac\d8\dbm\cb\17P\89{D(\03k\d5\a966\d9k\a8\93:\96\ee\ffg\8b6\da\09\b4\99g+\88\e4\b5\a5\daeG\da\1e\96\fa\ec\d5\a9Ec\1a\cb\c9H\9d\83_o\cb\08\1b\97\c9\18\0ac\cb\a6\e1\84\f5baj\84\dc\b67\9e\d6\ab<S\93\c1*\aa\81\8dke`\a8\fb.\22Yta\a6]s\94\f8\e4\c1F&^\8a\86\ed\d4\a6-Wk\be\e8X\da=\98\99\be\a8\c2\dbj.Qb\e5\80Xv\b8\e4l\84\ca\98\06\0b\fc\d2f|b:[\c5\df}uI\1eR\c7U\f7\84\a6\da]C&\85\98\d8\8f\b6\c5(\eb>u\04\d2'\ba*+\b7\03\13E5\1bx_\c3\ba\db\ae'\c2^\a4P\8c\8a\bbO`\c3\eeAFJ\df\d2'\b2\ad\eb_CLj\09*\cc\b7G*\b9\91\b6\d4[%X\d8\fdF\95Z\c3'[?\fb\12\d2&\c3\a9\a1\b6\a2\cb\1b\d0s\e4\ba\a1\e9\05\bey#\a4\c2:K\11\e5h\c4\c1\ba\c1\cc\8b\02\d2cl\ee\19^\e1\b6L\1a\b4^\f0\c2' U\bdmd\e1\c7E\a9em}BV\d8\b2\b6\ec\d3a[ba`\a1[\d6\15)\09l\a1>\ade4\c3\c0\c1\22mLW\10\dbA\d2\e1wd\f7\d3!s\a9)X\c1\a1ZR\b72d\c1gBt,\dcaae\8b\cb\04\e5`\c1\c9^\8e6\83\d2\a2\83\a9\d9\cd!\b9%\cd\e6\1d`\a1\b4\aa\8f\bau\c3\01\0b;Q\db\ecb\e18\cd@;\d3\d2&\94)\d2a!kJ\8d$\b5\bb!\12\a5\99\a5\1a\ca\a1\ef]\aa\ae\d3d\e1\a3k\ae59\d2fs\b6\90\c6\c12\d1\ba\c9%e\81\a8\d2\b1\e7\18\be\c0\fc\e4\85\b5\06\b4\815F\b6\c8\9b\00\00\00\00\00\00\00\00\00\00\00\00\08\07\06\06\05\05\05\05\04\04\04\04\04\04\04\04\03\03\03\03\03\03\03\03\03\03\03\03\03\03\03\03\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00"))
|