Files
failnix/targets/wasm-tacle/kernel/st/generated/default/st.wat

755 lines
15 KiB
Plaintext

(module $st.wasm
(type (;0;) (func (param i32 i32)))
(type (;1;) (func))
(type (;2;) (func (param i32 i32 f32 f32 i32)))
(type (;3;) (func (result i32)))
(import "__pragma" "loopbound" (func $__pragma_loopbound (type 0)))
(func $__wasm_apply_data_relocs (type 1))
(func $st_calc_LinCorrCoef (type 2) (param i32 i32 f32 f32 i32)
(local f32 i32 f32 f32 i32 f32 i32 f32 f32 f32)
i32.const 1000
i32.const 1000
call $__pragma_loopbound
f32.const 0x0p+0 (;=0;)
local.set 5
i32.const 0
local.set 6
f32.const 0x0p+0 (;=0;)
local.set 7
f32.const 0x0p+0 (;=0;)
local.set 8
loop ;; label = @1
local.get 0
local.get 6
i32.add
local.tee 9
i32.const 4
i32.add
f32.load
local.get 2
f32.sub
local.tee 10
local.get 1
local.get 6
i32.add
local.tee 11
i32.const 4
i32.add
f32.load
local.get 3
f32.sub
local.tee 12
f32.mul
local.get 9
f32.load
local.get 2
f32.sub
local.tee 13
local.get 11
f32.load
local.get 3
f32.sub
local.tee 14
f32.mul
local.get 8
f32.add
f32.add
local.set 8
local.get 5
local.get 14
local.get 14
f32.mul
f32.add
local.get 12
local.get 12
f32.mul
f32.add
local.set 5
local.get 7
local.get 13
local.get 13
f32.mul
f32.add
local.get 10
local.get 10
f32.mul
f32.add
local.set 7
local.get 6
i32.const 8
i32.add
local.tee 6
i32.const 4000
i32.ne
br_if 0 (;@1;)
end
f32.const 0x0p+0 (;=0;)
local.set 10
f32.const 0x0p+0 (;=0;)
local.set 12
block ;; label = @1
local.get 7
f32.const 0x0p+0 (;=0;)
f32.eq
br_if 0 (;@1;)
i32.const 19
local.set 9
i32.const 19
i32.const 19
call $__pragma_loopbound
local.get 7
f32.const 0x1.4p+3 (;=10;)
f32.div
local.set 12
i32.const 0
local.set 6
loop ;; label = @2
block ;; label = @3
block ;; label = @4
local.get 6
br_if 0 (;@4;)
i32.const 0
local.set 6
local.get 7
local.get 12
local.get 7
local.get 12
local.get 12
f32.mul
f32.sub
local.get 12
local.get 12
f32.add
f32.div
f32.add
local.tee 12
local.get 12
f32.mul
f32.sub
local.tee 13
local.get 13
f32.neg
local.get 13
f32.const 0x0p+0 (;=0;)
f32.ge
select
f32.const 0x1.4f8b58p-17 (;=1e-05;)
f32.le
i32.eqz
br_if 1 (;@3;)
end
i32.const 1
local.set 6
end
local.get 9
i32.const -1
i32.add
local.tee 9
br_if 0 (;@2;)
end
end
block ;; label = @1
local.get 5
f32.const 0x0p+0 (;=0;)
f32.eq
br_if 0 (;@1;)
i32.const 19
local.set 9
i32.const 19
i32.const 19
call $__pragma_loopbound
local.get 5
f32.const 0x1.4p+3 (;=10;)
f32.div
local.set 10
i32.const 0
local.set 6
loop ;; label = @2
block ;; label = @3
block ;; label = @4
local.get 6
br_if 0 (;@4;)
i32.const 0
local.set 6
local.get 5
local.get 10
local.get 5
local.get 10
local.get 10
f32.mul
f32.sub
local.get 10
local.get 10
f32.add
f32.div
f32.add
local.tee 10
local.get 10
f32.mul
f32.sub
local.tee 13
local.get 13
f32.neg
local.get 13
f32.const 0x0p+0 (;=0;)
f32.ge
select
f32.const 0x1.4f8b58p-17 (;=1e-05;)
f32.le
i32.eqz
br_if 1 (;@3;)
end
i32.const 1
local.set 6
end
local.get 9
i32.const -1
i32.add
local.tee 9
br_if 0 (;@2;)
end
end
local.get 4
local.get 8
local.get 12
local.get 10
f32.mul
f32.div
f32.store)
(func $st_main (type 1)
(local f32 i32 f32 f32 i32)
i32.const 0
i32.const 0
i32.store offset=9060
i32.const 1000
i32.const 1000
call $__pragma_loopbound
i32.const 0
f32.load offset=9060
local.set 0
i32.const -4000
local.set 1
loop ;; label = @1
local.get 0
local.get 1
i32.const 5040
i32.add
f32.load
f32.add
local.get 1
i32.const 5044
i32.add
f32.load
f32.add
local.get 1
i32.const 5048
i32.add
f32.load
f32.add
local.get 1
i32.const 5052
i32.add
f32.load
f32.add
local.get 1
i32.const 5056
i32.add
f32.load
f32.add
local.set 0
local.get 1
i32.const 20
i32.add
local.tee 1
br_if 0 (;@1;)
end
i32.const 0
local.get 0
f32.store offset=9060
i32.const 0
local.get 0
f32.const 0x1.f4p+9 (;=1000;)
f32.div
local.tee 0
f32.store offset=9040
i32.const 1000
i32.const 1000
call $__pragma_loopbound
f32.const 0x0p+0 (;=0;)
local.set 2
i32.const -4000
local.set 1
loop ;; label = @1
local.get 2
local.get 1
i32.const 5040
i32.add
f32.load
local.get 0
f32.sub
local.tee 3
local.get 3
f32.mul
f32.add
local.get 1
i32.const 5044
i32.add
f32.load
local.get 0
f32.sub
local.tee 2
local.get 2
f32.mul
f32.add
local.get 1
i32.const 5048
i32.add
f32.load
local.get 0
f32.sub
local.tee 2
local.get 2
f32.mul
f32.add
local.get 1
i32.const 5052
i32.add
f32.load
local.get 0
f32.sub
local.tee 2
local.get 2
f32.mul
f32.add
local.set 2
local.get 1
i32.const 16
i32.add
local.tee 1
br_if 0 (;@1;)
end
i32.const 0
local.set 1
i32.const 0
local.get 2
f32.const 0x1.f4p+9 (;=1000;)
f32.div
local.tee 3
f32.store offset=9064
f32.const 0x0p+0 (;=0;)
local.set 0
block ;; label = @1
local.get 3
f32.const 0x0p+0 (;=0;)
f32.eq
br_if 0 (;@1;)
i32.const 19
local.set 4
i32.const 19
i32.const 19
call $__pragma_loopbound
local.get 3
f32.const 0x1.4p+3 (;=10;)
f32.div
local.set 0
loop ;; label = @2
block ;; label = @3
block ;; label = @4
local.get 1
br_if 0 (;@4;)
i32.const 0
local.set 1
local.get 3
local.get 0
local.get 3
local.get 0
local.get 0
f32.mul
f32.sub
local.get 0
local.get 0
f32.add
f32.div
f32.add
local.tee 0
local.get 0
f32.mul
f32.sub
local.tee 2
local.get 2
f32.neg
local.get 2
f32.const 0x0p+0 (;=0;)
f32.ge
select
f32.const 0x1.4f8b58p-17 (;=1e-05;)
f32.le
i32.eqz
br_if 1 (;@3;)
end
i32.const 1
local.set 1
end
local.get 4
i32.const -1
i32.add
local.tee 4
br_if 0 (;@2;)
end
end
i32.const 0
local.get 0
f32.store offset=9048
i32.const 0
i32.const 0
i32.store offset=9068
i32.const 1000
i32.const 1000
call $__pragma_loopbound
i32.const 0
f32.load offset=9068
local.set 0
i32.const -4000
local.set 1
loop ;; label = @1
local.get 0
local.get 1
i32.const 9040
i32.add
f32.load
f32.add
local.get 1
i32.const 9044
i32.add
f32.load
f32.add
local.get 1
i32.const 9048
i32.add
f32.load
f32.add
local.get 1
i32.const 9052
i32.add
f32.load
f32.add
local.get 1
i32.const 9056
i32.add
f32.load
f32.add
local.set 0
local.get 1
i32.const 20
i32.add
local.tee 1
br_if 0 (;@1;)
end
i32.const 0
local.get 0
f32.store offset=9068
i32.const 0
local.get 0
f32.const 0x1.f4p+9 (;=1000;)
f32.div
local.tee 0
f32.store offset=9044
i32.const 1000
i32.const 1000
call $__pragma_loopbound
f32.const 0x0p+0 (;=0;)
local.set 2
i32.const -4000
local.set 1
loop ;; label = @1
local.get 2
local.get 1
i32.const 9040
i32.add
f32.load
local.get 0
f32.sub
local.tee 3
local.get 3
f32.mul
f32.add
local.get 1
i32.const 9044
i32.add
f32.load
local.get 0
f32.sub
local.tee 2
local.get 2
f32.mul
f32.add
local.get 1
i32.const 9048
i32.add
f32.load
local.get 0
f32.sub
local.tee 2
local.get 2
f32.mul
f32.add
local.get 1
i32.const 9052
i32.add
f32.load
local.get 0
f32.sub
local.tee 2
local.get 2
f32.mul
f32.add
local.set 2
local.get 1
i32.const 16
i32.add
local.tee 1
br_if 0 (;@1;)
end
i32.const 0
local.set 1
i32.const 0
local.get 2
f32.const 0x1.f4p+9 (;=1000;)
f32.div
local.tee 3
f32.store offset=9072
f32.const 0x0p+0 (;=0;)
local.set 0
block ;; label = @1
local.get 3
f32.const 0x0p+0 (;=0;)
f32.eq
br_if 0 (;@1;)
i32.const 19
local.set 4
i32.const 19
i32.const 19
call $__pragma_loopbound
local.get 3
f32.const 0x1.4p+3 (;=10;)
f32.div
local.set 0
loop ;; label = @2
block ;; label = @3
block ;; label = @4
local.get 1
br_if 0 (;@4;)
i32.const 0
local.set 1
local.get 3
local.get 0
local.get 3
local.get 0
local.get 0
f32.mul
f32.sub
local.get 0
local.get 0
f32.add
f32.div
f32.add
local.tee 0
local.get 0
f32.mul
f32.sub
local.tee 2
local.get 2
f32.neg
local.get 2
f32.const 0x0p+0 (;=0;)
f32.ge
select
f32.const 0x1.4f8b58p-17 (;=1e-05;)
f32.le
i32.eqz
br_if 1 (;@3;)
end
i32.const 1
local.set 1
end
local.get 4
i32.const -1
i32.add
local.tee 4
br_if 0 (;@2;)
end
end
i32.const 0
local.get 0
f32.store offset=9052
i32.const 1040
i32.const 5040
i32.const 0
f32.load offset=9040
i32.const 0
f32.load offset=9044
i32.const 9056
call $st_calc_LinCorrCoef)
(func $__original_main (type 3) (result i32)
(local i32 i32 i32)
i32.const 0
i32.const 0
i32.store offset=1024
i32.const 1000
i32.const 1000
call $__pragma_loopbound
i32.const 1
local.set 0
i32.const 1040
local.set 1
loop ;; label = @1
i32.const 0
i32.const 0
i32.load offset=1024
i32.const 133
i32.mul
i32.const 81
i32.add
i32.const 8095
i32.rem_s
i32.store offset=1024
i32.const 0
i32.load offset=1024
local.set 2
i32.const 0
i32.const 0
i32.load offset=1024
i32.const 133
i32.mul
i32.const 81
i32.add
i32.const 8095
i32.rem_s
i32.store offset=1024
local.get 1
local.get 0
local.get 2
i32.add
i32.const -1
i32.add
f32.convert_i32_s
f32.store
local.get 1
i32.const 4
i32.add
local.get 0
i32.const 0
i32.load offset=1024
i32.add
f32.convert_i32_s
f32.store
local.get 1
i32.const 8
i32.add
local.set 1
local.get 0
i32.const 2
i32.add
local.tee 0
i32.const 1001
i32.ne
br_if 0 (;@1;)
end
i32.const 1000
i32.const 1000
call $__pragma_loopbound
i32.const 1
local.set 0
i32.const 5040
local.set 1
loop ;; label = @1
i32.const 0
i32.const 0
i32.load offset=1024
i32.const 133
i32.mul
i32.const 81
i32.add
i32.const 8095
i32.rem_s
i32.store offset=1024
i32.const 0
i32.load offset=1024
local.set 2
i32.const 0
i32.const 0
i32.load offset=1024
i32.const 133
i32.mul
i32.const 81
i32.add
i32.const 8095
i32.rem_s
i32.store offset=1024
local.get 1
local.get 0
local.get 2
i32.add
i32.const -1
i32.add
f32.convert_i32_s
f32.store
local.get 1
i32.const 4
i32.add
local.get 0
i32.const 0
i32.load offset=1024
i32.add
f32.convert_i32_s
f32.store
local.get 1
i32.const 8
i32.add
local.set 1
local.get 0
i32.const 2
i32.add
local.tee 0
i32.const 1001
i32.ne
br_if 0 (;@1;)
end
call $st_main
i32.const 0
i32.const -1
i32.const 0
f32.load offset=9040
i32.const 0
f32.load offset=9044
f32.add
i32.const 0
f32.load offset=9048
f32.add
i32.const 0
f32.load offset=9052
f32.add
i32.const 0
f32.load offset=9056
f32.add
f64.promote_f32
f64.const -0x1.abffe3ffef391p+13 (;=-13696;)
f64.add
f32.demote_f64
f32.abs
f64.promote_f32
f64.const 0x1.0c6f7a0b5ed8dp-20 (;=1e-06;)
f64.lt
select)
(table (;0;) 1 1 funcref)
(memory (;0;) 1)
(global $__stack_pointer (mut i32) (i32.const 13184))
(global (;1;) i32 (i32.const 9076))
(global (;2;) i32 (i32.const 13184))
(export "memory" (memory 0))
(export "__wasm_apply_data_relocs" (func $__wasm_apply_data_relocs))
(export "entrypoint" (func $st_main))
(export "main" (func $__original_main))
(export "__data_end" (global 1))
(export "__heap_base" (global 2)))