657 lines
13 KiB
Plaintext
657 lines
13 KiB
Plaintext
(module $lms.wasm
|
|
(type (;0;) (func (param i32 i32)))
|
|
(type (;1;) (func))
|
|
(type (;2;) (func (result i32)))
|
|
(import "__pragma" "loopbound" (func $__pragma_loopbound (type 0)))
|
|
(func $__wasm_apply_data_relocs (type 1))
|
|
(func $lms_init (type 1)
|
|
(local i32 i32 i32 i32 f64 f64 f64 f64)
|
|
i32.const 0
|
|
i32.const 0
|
|
f64.load offset=1032
|
|
f64.const -0x1.8a068e044faddp+0 (;=-1.53916;)
|
|
f64.add
|
|
f32.demote_f64
|
|
f32.store offset=1076
|
|
i32.const 0
|
|
i32.const 0
|
|
i32.store offset=1072
|
|
i32.const 100
|
|
i32.const 100
|
|
call $__pragma_loopbound
|
|
i32.const -1770082073
|
|
local.set 0
|
|
i32.const 2
|
|
local.set 1
|
|
loop ;; label = @1
|
|
local.get 1
|
|
local.set 2
|
|
local.get 0
|
|
local.set 1
|
|
loop ;; label = @2
|
|
local.get 1
|
|
i32.const 1103515245
|
|
i32.mul
|
|
local.set 3
|
|
local.get 1
|
|
i32.const -1029531031
|
|
i32.mul
|
|
i32.const -740551042
|
|
i32.add
|
|
local.tee 0
|
|
local.set 1
|
|
local.get 3
|
|
i32.const 12345
|
|
i32.add
|
|
i32.const 2147483647
|
|
i32.and
|
|
f64.convert_i32_u
|
|
f64.const 0x1p-30 (;=9.31323e-10;)
|
|
f64.mul
|
|
f64.const -0x1p+0 (;=-1;)
|
|
f64.add
|
|
local.tee 4
|
|
local.get 4
|
|
f64.mul
|
|
local.get 0
|
|
i32.const 2147483647
|
|
i32.and
|
|
f64.convert_i32_u
|
|
f64.const 0x1p-30 (;=9.31323e-10;)
|
|
f64.mul
|
|
f64.const -0x1p+0 (;=-1;)
|
|
f64.add
|
|
local.tee 5
|
|
local.get 5
|
|
f64.mul
|
|
f64.add
|
|
local.tee 6
|
|
f64.const 0x1p+0 (;=1;)
|
|
f64.gt
|
|
br_if 0 (;@2;)
|
|
end
|
|
block ;; label = @2
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 20
|
|
i32.rem_u
|
|
local.tee 1
|
|
i32.const 10
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
i32.const 20
|
|
local.get 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const -10
|
|
i32.add
|
|
local.get 1
|
|
i32.const 15
|
|
i32.gt_u
|
|
select
|
|
i32.const 3
|
|
i32.shl
|
|
i32.const 1024
|
|
i32.add
|
|
f64.load
|
|
f64.neg
|
|
local.set 7
|
|
br 1 (;@2;)
|
|
end
|
|
i32.const 10
|
|
local.get 1
|
|
i32.sub
|
|
local.get 1
|
|
local.get 1
|
|
i32.const 5
|
|
i32.gt_u
|
|
select
|
|
i32.const 3
|
|
i32.shl
|
|
i32.const 1024
|
|
i32.add
|
|
f64.load
|
|
local.set 7
|
|
end
|
|
local.get 2
|
|
i32.const 2
|
|
i32.shl
|
|
i32.const 1072
|
|
i32.add
|
|
f64.const 0x1p+0 (;=1;)
|
|
local.get 6
|
|
f64.div
|
|
local.tee 6
|
|
local.get 5
|
|
f64.mul
|
|
local.get 7
|
|
f64.add
|
|
f32.demote_f64
|
|
f32.store
|
|
block ;; label = @2
|
|
block ;; label = @3
|
|
local.get 2
|
|
i32.const 1
|
|
i32.or
|
|
local.tee 3
|
|
i32.const 20
|
|
i32.rem_u
|
|
local.tee 1
|
|
i32.const 10
|
|
i32.lt_u
|
|
br_if 0 (;@3;)
|
|
i32.const 20
|
|
local.get 1
|
|
i32.sub
|
|
local.get 1
|
|
i32.const -10
|
|
i32.add
|
|
local.get 1
|
|
i32.const 15
|
|
i32.gt_u
|
|
select
|
|
i32.const 3
|
|
i32.shl
|
|
i32.const 1024
|
|
i32.add
|
|
f64.load
|
|
f64.neg
|
|
local.set 5
|
|
br 1 (;@2;)
|
|
end
|
|
i32.const 10
|
|
local.get 1
|
|
i32.sub
|
|
local.get 1
|
|
local.get 1
|
|
i32.const 5
|
|
i32.gt_u
|
|
select
|
|
i32.const 3
|
|
i32.shl
|
|
i32.const 1024
|
|
i32.add
|
|
f64.load
|
|
local.set 5
|
|
end
|
|
local.get 3
|
|
i32.const 2
|
|
i32.shl
|
|
i32.const 1072
|
|
i32.add
|
|
local.get 6
|
|
local.get 4
|
|
f64.mul
|
|
local.get 5
|
|
f64.add
|
|
f32.demote_f64
|
|
f32.store
|
|
local.get 2
|
|
i32.const 2
|
|
i32.add
|
|
local.set 1
|
|
local.get 2
|
|
i32.const 199
|
|
i32.lt_u
|
|
br_if 0 (;@1;)
|
|
end)
|
|
(func $lms_main (type 1)
|
|
(local f32 i32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32 f32)
|
|
i32.const 21
|
|
i32.const 21
|
|
call $__pragma_loopbound
|
|
i32.const 201
|
|
i32.const 201
|
|
call $__pragma_loopbound
|
|
f32.const 0x1p+1 (;=2;)
|
|
local.set 0
|
|
i32.const -804
|
|
local.set 1
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 2
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 3
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 4
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 5
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 6
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 7
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 8
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 9
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 10
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 11
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 12
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 13
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 14
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 15
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 16
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 17
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 18
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 19
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 20
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 21
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 22
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 23
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 24
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 25
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 26
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 27
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 28
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 29
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 30
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 31
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 32
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 33
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 34
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 35
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 36
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 37
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 38
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 39
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 40
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 41
|
|
f32.const 0x0p+0 (;=0;)
|
|
local.set 42
|
|
loop ;; label = @1
|
|
local.get 1
|
|
i32.const 1880
|
|
i32.add
|
|
f32.load
|
|
local.set 43
|
|
local.get 1
|
|
i32.const 1876
|
|
i32.add
|
|
f32.load
|
|
local.set 44
|
|
i32.const 20
|
|
i32.const 20
|
|
call $__pragma_loopbound
|
|
i32.const 21
|
|
i32.const 21
|
|
call $__pragma_loopbound
|
|
i32.const 21
|
|
i32.const 21
|
|
call $__pragma_loopbound
|
|
local.get 1
|
|
i32.const 2692
|
|
i32.add
|
|
local.get 2
|
|
local.get 23
|
|
f32.mul
|
|
local.get 3
|
|
local.get 24
|
|
f32.mul
|
|
local.get 4
|
|
local.get 25
|
|
f32.mul
|
|
local.get 5
|
|
local.get 26
|
|
f32.mul
|
|
local.get 6
|
|
local.get 27
|
|
f32.mul
|
|
local.get 7
|
|
local.get 28
|
|
f32.mul
|
|
local.get 8
|
|
local.get 29
|
|
f32.mul
|
|
local.get 9
|
|
local.get 30
|
|
f32.mul
|
|
local.get 10
|
|
local.get 31
|
|
f32.mul
|
|
local.get 11
|
|
local.get 32
|
|
f32.mul
|
|
local.get 12
|
|
local.get 33
|
|
f32.mul
|
|
local.get 13
|
|
local.get 34
|
|
f32.mul
|
|
local.get 14
|
|
local.get 35
|
|
f32.mul
|
|
local.get 15
|
|
local.get 36
|
|
f32.mul
|
|
local.get 16
|
|
local.get 37
|
|
f32.mul
|
|
local.get 17
|
|
local.get 38
|
|
f32.mul
|
|
local.get 18
|
|
local.get 39
|
|
f32.mul
|
|
local.get 19
|
|
local.get 40
|
|
f32.mul
|
|
local.get 20
|
|
local.get 41
|
|
f32.mul
|
|
local.get 21
|
|
local.get 42
|
|
f32.mul
|
|
local.get 22
|
|
local.get 44
|
|
f32.mul
|
|
f32.const 0x0p+0 (;=0;)
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
f32.add
|
|
local.tee 45
|
|
f32.store
|
|
local.get 43
|
|
local.get 45
|
|
f32.sub
|
|
f32.const 0x1.f35268p-11 (;=0.000952381;)
|
|
f32.mul
|
|
local.get 44
|
|
local.get 44
|
|
f32.const 0x1.47ae14p-7 (;=0.01;)
|
|
f32.mul
|
|
f32.mul
|
|
local.get 0
|
|
f32.const 0x1.fae148p-1 (;=0.99;)
|
|
f32.mul
|
|
f32.add
|
|
local.tee 0
|
|
f32.div
|
|
local.tee 43
|
|
local.get 23
|
|
f32.mul
|
|
local.get 2
|
|
f32.add
|
|
local.set 2
|
|
local.get 43
|
|
local.get 24
|
|
f32.mul
|
|
local.get 3
|
|
f32.add
|
|
local.set 3
|
|
local.get 43
|
|
local.get 25
|
|
f32.mul
|
|
local.get 4
|
|
f32.add
|
|
local.set 4
|
|
local.get 43
|
|
local.get 26
|
|
f32.mul
|
|
local.get 5
|
|
f32.add
|
|
local.set 5
|
|
local.get 43
|
|
local.get 27
|
|
f32.mul
|
|
local.get 6
|
|
f32.add
|
|
local.set 6
|
|
local.get 43
|
|
local.get 28
|
|
f32.mul
|
|
local.get 7
|
|
f32.add
|
|
local.set 7
|
|
local.get 43
|
|
local.get 29
|
|
f32.mul
|
|
local.get 8
|
|
f32.add
|
|
local.set 8
|
|
local.get 43
|
|
local.get 30
|
|
f32.mul
|
|
local.get 9
|
|
f32.add
|
|
local.set 9
|
|
local.get 43
|
|
local.get 31
|
|
f32.mul
|
|
local.get 10
|
|
f32.add
|
|
local.set 10
|
|
local.get 43
|
|
local.get 32
|
|
f32.mul
|
|
local.get 11
|
|
f32.add
|
|
local.set 11
|
|
local.get 43
|
|
local.get 33
|
|
f32.mul
|
|
local.get 12
|
|
f32.add
|
|
local.set 12
|
|
local.get 43
|
|
local.get 34
|
|
f32.mul
|
|
local.get 13
|
|
f32.add
|
|
local.set 13
|
|
local.get 43
|
|
local.get 35
|
|
f32.mul
|
|
local.get 14
|
|
f32.add
|
|
local.set 14
|
|
local.get 43
|
|
local.get 36
|
|
f32.mul
|
|
local.get 15
|
|
f32.add
|
|
local.set 15
|
|
local.get 43
|
|
local.get 37
|
|
f32.mul
|
|
local.get 16
|
|
f32.add
|
|
local.set 16
|
|
local.get 43
|
|
local.get 38
|
|
f32.mul
|
|
local.get 17
|
|
f32.add
|
|
local.set 17
|
|
local.get 43
|
|
local.get 39
|
|
f32.mul
|
|
local.get 18
|
|
f32.add
|
|
local.set 18
|
|
local.get 43
|
|
local.get 40
|
|
f32.mul
|
|
local.get 19
|
|
f32.add
|
|
local.set 19
|
|
local.get 43
|
|
local.get 41
|
|
f32.mul
|
|
local.get 20
|
|
f32.add
|
|
local.set 20
|
|
local.get 43
|
|
local.get 42
|
|
f32.mul
|
|
local.get 21
|
|
f32.add
|
|
local.set 21
|
|
local.get 43
|
|
local.get 44
|
|
f32.mul
|
|
local.get 22
|
|
f32.add
|
|
local.set 22
|
|
local.get 24
|
|
local.set 23
|
|
local.get 25
|
|
local.set 24
|
|
local.get 26
|
|
local.set 25
|
|
local.get 27
|
|
local.set 26
|
|
local.get 28
|
|
local.set 27
|
|
local.get 29
|
|
local.set 28
|
|
local.get 30
|
|
local.set 29
|
|
local.get 31
|
|
local.set 30
|
|
local.get 32
|
|
local.set 31
|
|
local.get 33
|
|
local.set 32
|
|
local.get 34
|
|
local.set 33
|
|
local.get 35
|
|
local.set 34
|
|
local.get 36
|
|
local.set 35
|
|
local.get 37
|
|
local.set 36
|
|
local.get 38
|
|
local.set 37
|
|
local.get 39
|
|
local.set 38
|
|
local.get 40
|
|
local.set 39
|
|
local.get 41
|
|
local.set 40
|
|
local.get 42
|
|
local.set 41
|
|
local.get 44
|
|
local.set 42
|
|
local.get 1
|
|
i32.const 4
|
|
i32.add
|
|
local.tee 1
|
|
br_if 0 (;@1;)
|
|
end)
|
|
(func $__original_main (type 2) (result i32)
|
|
(local f64 i32)
|
|
call $lms_init
|
|
call $lms_main
|
|
i32.const 201
|
|
i32.const 201
|
|
call $__pragma_loopbound
|
|
f64.const 0x0p+0 (;=0;)
|
|
local.set 0
|
|
i32.const -804
|
|
local.set 1
|
|
loop ;; label = @1
|
|
local.get 0
|
|
local.get 1
|
|
i32.const 2692
|
|
i32.add
|
|
f32.load
|
|
f64.promote_f32
|
|
f64.add
|
|
local.get 1
|
|
i32.const 2696
|
|
i32.add
|
|
f32.load
|
|
f64.promote_f32
|
|
f64.add
|
|
local.get 1
|
|
i32.const 2700
|
|
i32.add
|
|
f32.load
|
|
f64.promote_f32
|
|
f64.add
|
|
local.set 0
|
|
local.get 1
|
|
i32.const 12
|
|
i32.add
|
|
local.tee 1
|
|
br_if 0 (;@1;)
|
|
end
|
|
block ;; label = @1
|
|
local.get 0
|
|
f64.const 0x1.2d2a80064a9cep+2 (;=4.70572;)
|
|
f64.add
|
|
f64.const 0x1.e848p+19 (;=1e+06;)
|
|
f64.mul
|
|
local.tee 0
|
|
f64.abs
|
|
f64.const 0x1p+31 (;=2.14748e+09;)
|
|
f64.lt
|
|
i32.eqz
|
|
br_if 0 (;@1;)
|
|
local.get 0
|
|
i32.trunc_f64_s
|
|
return
|
|
end
|
|
i32.const -2147483648)
|
|
(table (;0;) 1 1 funcref)
|
|
(memory (;0;) 1)
|
|
(global $__stack_pointer (mut i32) (i32.const 6800))
|
|
(global (;1;) i32 (i32.const 2696))
|
|
(global (;2;) i32 (i32.const 6800))
|
|
(export "memory" (memory 0))
|
|
(export "__wasm_apply_data_relocs" (func $__wasm_apply_data_relocs))
|
|
(export "entrypoint" (func $lms_main))
|
|
(export "main" (func $__original_main))
|
|
(export "__data_end" (global 1))
|
|
(export "__heap_base" (global 2))
|
|
(data $.data (i32.const 1024) "\00\00\00\00\00\00\00\00R\96\d5\1b\12\f8\db?\884\03\c5\a1\99\ea?\9f&\e7\bcSN\f2?\96\fa\89\9d\1b\85\f5?\c7;\7ff\9e\a0\f6?"))
|