(module $cubic.wasm (type (;0;) (func (param i32 i32))) (type (;1;) (func)) (type (;2;) (func (param f32 f32 f32 f32 i32 i32))) (type (;3;) (func (result i32))) (type (;4;) (func (param f32) (result f32))) (type (;5;) (func (param f32 f32) (result f32))) (type (;6;) (func (param f32 i32) (result f32))) (type (;7;) (func (param f32 i32) (result i32))) (import "__pragma" "loopbound" (func $__pragma_loopbound (type 0))) (func $__wasm_apply_data_relocs (type 1)) (func $cubic_main (type 1) (local f32) i32.const 0 f32.load offset=1184 i32.const 0 f32.load offset=1188 i32.const 0 f32.load offset=1192 i32.const 0 f32.load offset=1196 i32.const 1260 i32.const 1264 call $cubic_solveCubic i32.const 0 i32.const 0 i32.load offset=1256 i32.const 0 i32.load offset=1260 i32.add i32.store offset=1256 i32.const 0 f32.load offset=1200 i32.const 0 f32.load offset=1204 i32.const 0 f32.load offset=1208 i32.const 0 f32.load offset=1212 i32.const 1260 i32.const 1264 call $cubic_solveCubic i32.const 0 i32.const 0 i32.load offset=1256 i32.const 0 i32.load offset=1260 i32.add i32.store offset=1256 i32.const 0 f32.load offset=1216 i32.const 0 f32.load offset=1220 i32.const 0 f32.load offset=1224 i32.const 0 f32.load offset=1228 i32.const 1260 i32.const 1264 call $cubic_solveCubic i32.const 0 i32.const 0 i32.load offset=1256 i32.const 0 i32.load offset=1260 i32.add i32.store offset=1256 i32.const 0 f32.load offset=1232 i32.const 0 f32.load offset=1236 i32.const 0 f32.load offset=1240 i32.const 0 f32.load offset=1244 i32.const 1260 i32.const 1264 call $cubic_solveCubic i32.const 0 i32.const 0 i32.load offset=1256 i32.const 0 i32.load offset=1260 i32.add i32.store offset=1256 i32.const 5 i32.const 5 call $__pragma_loopbound i32.const 0 i32.const 1065353216 i32.store offset=1184 loop ;; label = @1 i32.const 5 i32.const 5 call $__pragma_loopbound i32.const 0 i32.const 1092616192 i32.store offset=1188 loop ;; label = @2 i32.const 7 i32.const 7 call $__pragma_loopbound i32.const 0 i32.const 1084227584 i32.store offset=1192 loop ;; label = @3 i32.const 5 i32.const 5 call $__pragma_loopbound i32.const 0 i32.const -1082130432 i32.store offset=1196 f32.const -0x1p+0 (;=-1;) local.set 0 loop ;; label = @4 i32.const 0 f32.load offset=1184 i32.const 0 f32.load offset=1188 i32.const 0 f32.load offset=1192 local.get 0 i32.const 1260 i32.const 1264 call $cubic_solveCubic i32.const 0 i32.const 0 i32.load offset=1256 i32.const 0 i32.load offset=1260 i32.add i32.store offset=1256 i32.const 0 i32.const 0 f32.load offset=1196 f32.const -0x1p+1 (;=-2;) f32.add local.tee 0 f32.store offset=1196 local.get 0 f32.const -0x1.6p+3 (;=-11;) f32.gt br_if 0 (;@4;) end i32.const 0 i32.const 0 f32.load offset=1192 f32.const 0x1.8p+0 (;=1.5;) f32.add local.tee 0 f32.store offset=1192 local.get 0 f32.const 0x1.ep+3 (;=15;) f32.lt br_if 0 (;@3;) end i32.const 0 i32.const 0 f32.load offset=1188 f32.const -0x1p+1 (;=-2;) f32.add local.tee 0 f32.store offset=1188 local.get 0 f32.const 0x0p+0 (;=0;) f32.gt br_if 0 (;@2;) end i32.const 0 i32.const 0 f32.load offset=1184 f32.const 0x1p+1 (;=2;) f32.add local.tee 0 f32.store offset=1184 local.get 0 f32.const 0x1.4p+3 (;=10;) f32.lt br_if 0 (;@1;) end) (func $cubic_solveCubic (type 2) (param f32 f32 f32 f32 i32 i32) (local f32) block ;; label = @1 local.get 3 local.get 0 f32.div f32.const 0x1.bp+4 (;=27;) f32.mul local.get 1 local.get 0 f32.div local.tee 1 local.get 1 local.get 1 f32.add f32.mul local.get 1 f32.mul local.get 1 f32.const -0x1.2p+3 (;=-9;) f32.mul local.get 2 local.get 0 f32.div local.tee 0 f32.mul f32.add f32.add f32.const 0x1.bp+5 (;=54;) f32.div local.tee 2 local.get 2 f32.mul local.get 1 local.get 1 f32.mul local.get 0 f32.const -0x1.8p+1 (;=-3;) f32.mul f32.add f32.const 0x1.2p+3 (;=9;) f32.div local.tee 0 local.get 0 local.get 0 f32.mul f32.mul local.tee 3 f32.sub local.tee 6 f32.const 0x0p+0 (;=0;) f32.le i32.eqz br_if 0 (;@1;) local.get 4 i32.const 3 i32.store local.get 2 local.get 3 call $basicmath___ieee754_sqrtf f32.div call $basicmath___ieee754_acosf local.set 2 local.get 5 local.get 0 call $basicmath___ieee754_sqrtf f32.const -0x1p+1 (;=-2;) f32.mul local.get 2 f32.const 0x1.8p+1 (;=3;) f32.div call $basicmath___cosf f32.mul local.get 1 f32.const -0x1.8p+1 (;=-3;) f32.div local.tee 1 f32.add f32.store local.get 5 local.get 0 call $basicmath___ieee754_sqrtf f32.const -0x1p+1 (;=-2;) f32.mul local.get 2 f32.const 0x1.91eb86p+2 (;=6.28;) f32.add f32.const 0x1.8p+1 (;=3;) f32.div call $basicmath___cosf f32.mul local.get 1 f32.add f32.store offset=4 local.get 5 local.get 0 call $basicmath___ieee754_sqrtf f32.const -0x1p+1 (;=-2;) f32.mul local.get 2 f32.const 0x1.91eb86p+3 (;=12.56;) f32.add f32.const 0x1.8p+1 (;=3;) f32.div call $basicmath___cosf f32.mul local.get 1 f32.add f32.store offset=8 return end local.get 4 i32.const 1 i32.store local.get 5 local.get 6 call $basicmath___ieee754_sqrtf local.get 2 call $basicmath___fabsf f32.add f32.const 0x1.555556p-2 (;=0.333333;) call $basicmath___ieee754_powf local.tee 3 local.get 0 local.get 3 f32.div f32.add local.tee 0 local.get 0 f32.neg local.get 2 f32.const 0x0p+0 (;=0;) f32.lt select local.get 1 f32.const -0x1.8p+1 (;=-3;) f32.div f32.add f32.store) (func $__original_main (type 3) (result i32) i32.const 0 i32.const -1054343168 i32.store offset=1188 i32.const 0 i32.const 1065353216 i32.store offset=1184 i32.const 0 i32.const 1107296256 i32.store offset=1192 i32.const 0 i32.const -1041235968 i32.store offset=1196 i32.const 0 i32.const 1065353216 i32.store offset=1200 i32.const 0 i32.const -1064304640 i32.store offset=1204 i32.const 0 i32.const 1099431936 i32.store offset=1208 i32.const 0 i32.const -1041235968 i32.store offset=1212 i32.const 0 i32.const 1065353216 i32.store offset=1216 i32.const 0 i32.const -1067450368 i32.store offset=1220 i32.const 0 i32.const 1102053376 i32.store offset=1224 i32.const 0 i32.const -1040711680 i32.store offset=1228 i32.const 0 i32.const 1065353216 i32.store offset=1232 i32.const 0 i32.const -1050987725 i32.store offset=1236 i32.const 0 i32.const 1065353216 i32.store offset=1240 i32.const 0 i32.const -1039400960 i32.store offset=1244 i32.const 0 i32.const 0 i32.store offset=1248 i32.const 0 i32.const 0 i32.store offset=1252 i32.const 0 i32.const 0 i32.store offset=1256 call $cubic_main i32.const -1 i32.const 0 i32.const 0 i32.load offset=1256 i32.const 1051 i32.ne select) (func $basicmath___ieee754_acosf (type 4) (param f32) (result f32) (local i32 i32 f32 f32) block ;; label = @1 local.get 0 i32.reinterpret_f32 local.tee 1 i32.const 2147483647 i32.and local.tee 2 i32.const 1065353216 i32.ne br_if 0 (;@1;) f32.const 0x0p+0 (;=0;) f32.const 0x1.921fb6p+1 (;=3.14159;) local.get 1 i32.const 0 i32.gt_s select return end block ;; label = @1 local.get 2 i32.const 1065353217 i32.lt_u br_if 0 (;@1;) local.get 0 local.get 0 f32.sub local.tee 0 local.get 0 f32.div return end block ;; label = @1 block ;; label = @2 local.get 2 i32.const 1056964607 i32.gt_u br_if 0 (;@2;) f32.const 0x1.921fb6p+0 (;=1.5708;) local.set 3 local.get 2 i32.const 587202561 i32.lt_u br_if 1 (;@1;) f32.const 0x1.4442dp-24 (;=7.54979e-08;) local.get 0 local.get 0 local.get 0 f32.mul local.tee 3 local.get 3 local.get 3 local.get 3 local.get 3 local.get 3 f32.const 0x1.23de1p-15 (;=3.47933e-05;) f32.mul f32.const 0x1.9efe08p-11 (;=0.000791535;) f32.add f32.mul f32.const -0x1.48228cp-5 (;=-0.0400555;) f32.add f32.mul f32.const 0x1.9c155p-3 (;=0.201213;) f32.add f32.mul f32.const -0x1.4d612p-2 (;=-0.325566;) f32.add f32.mul f32.const 0x1.555556p-3 (;=0.166667;) f32.add f32.mul local.get 3 local.get 3 local.get 3 local.get 3 f32.const 0x1.3b8c5cp-4 (;=0.0770382;) f32.mul f32.const -0x1.6066c2p-1 (;=-0.688284;) f32.add f32.mul f32.const 0x1.02ae5ap+1 (;=2.02095;) f32.add f32.mul f32.const -0x1.33a272p+1 (;=-2.40339;) f32.add f32.mul f32.const 0x1p+0 (;=1;) f32.add f32.div f32.mul f32.sub local.get 0 f32.sub f32.const 0x1.921fb4p+0 (;=1.5708;) f32.add return end block ;; label = @2 local.get 1 i32.const -1 i32.gt_s br_if 0 (;@2;) f32.const 0x1.921fb4p+1 (;=3.14159;) local.get 0 f32.const 0x1p+0 (;=1;) f32.add f32.const 0x1p-1 (;=0.5;) f32.mul local.tee 0 call $basicmath___ieee754_sqrtf local.tee 3 local.get 3 local.get 0 local.get 0 local.get 0 local.get 0 local.get 0 local.get 0 f32.const 0x1.23de1p-15 (;=3.47933e-05;) f32.mul f32.const 0x1.9efe08p-11 (;=0.000791535;) f32.add f32.mul f32.const -0x1.48228cp-5 (;=-0.0400555;) f32.add f32.mul f32.const 0x1.9c155p-3 (;=0.201213;) f32.add f32.mul f32.const -0x1.4d612p-2 (;=-0.325566;) f32.add f32.mul f32.const 0x1.555556p-3 (;=0.166667;) f32.add f32.mul local.get 0 local.get 0 local.get 0 local.get 0 f32.const 0x1.3b8c5cp-4 (;=0.0770382;) f32.mul f32.const -0x1.6066c2p-1 (;=-0.688284;) f32.add f32.mul f32.const 0x1.02ae5ap+1 (;=2.02095;) f32.add f32.mul f32.const -0x1.33a272p+1 (;=-2.40339;) f32.add f32.mul f32.const 0x1p+0 (;=1;) f32.add f32.div f32.mul f32.const -0x1.4442dp-24 (;=-7.54979e-08;) f32.add f32.add local.tee 0 local.get 0 f32.add f32.sub return end f32.const 0x1p+0 (;=1;) local.get 0 f32.sub f32.const 0x1p-1 (;=0.5;) f32.mul local.tee 0 local.get 0 local.get 0 local.get 0 local.get 0 local.get 0 f32.const 0x1.23de1p-15 (;=3.47933e-05;) f32.mul f32.const 0x1.9efe08p-11 (;=0.000791535;) f32.add f32.mul f32.const -0x1.48228cp-5 (;=-0.0400555;) f32.add f32.mul f32.const 0x1.9c155p-3 (;=0.201213;) f32.add f32.mul f32.const -0x1.4d612p-2 (;=-0.325566;) f32.add f32.mul f32.const 0x1.555556p-3 (;=0.166667;) f32.add f32.mul local.get 0 local.get 0 local.get 0 local.get 0 f32.const 0x1.3b8c5cp-4 (;=0.0770382;) f32.mul f32.const -0x1.6066c2p-1 (;=-0.688284;) f32.add f32.mul f32.const 0x1.02ae5ap+1 (;=2.02095;) f32.add f32.mul f32.const -0x1.33a272p+1 (;=-2.40339;) f32.add f32.mul f32.const 0x1p+0 (;=1;) f32.add f32.div local.get 0 call $basicmath___ieee754_sqrtf local.tee 4 f32.mul local.get 0 local.get 4 i32.reinterpret_f32 i32.const -4096 i32.and f32.reinterpret_i32 local.tee 3 local.get 3 f32.mul f32.sub local.get 4 local.get 3 f32.add f32.div f32.add local.get 3 f32.add local.tee 0 local.get 0 f32.add local.set 3 end local.get 3) (func $basicmath___ieee754_sqrtf (type 4) (param f32) (result f32) (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) block ;; label = @1 local.get 0 i32.reinterpret_f32 local.tee 1 i32.const 2139095040 i32.and i32.const 2139095040 i32.ne br_if 0 (;@1;) local.get 0 local.get 0 f32.mul local.get 0 f32.add return end block ;; label = @1 block ;; label = @2 block ;; label = @3 block ;; label = @4 local.get 1 i32.const 0 i32.gt_s br_if 0 (;@4;) local.get 0 f32.const 0x0p+0 (;=0;) f32.eq br_if 3 (;@1;) local.get 1 i32.const -1 i32.gt_s br_if 1 (;@3;) local.get 0 local.get 0 f32.sub local.tee 0 local.get 0 f32.div return end local.get 1 i32.const 8388607 i32.le_u br_if 0 (;@3;) local.get 1 i32.const 23 i32.shr_u local.set 2 br 1 (;@2;) end i32.const 0 i32.const 0 call $__pragma_loopbound i32.const 9 local.get 1 i32.clz local.tee 3 i32.sub local.set 2 local.get 1 i32.const 23 local.get 3 i32.const 31 i32.xor i32.sub i32.shl local.set 1 end i32.const 25 i32.const 25 call $__pragma_loopbound local.get 2 i32.const -127 i32.add local.tee 2 i32.const 22 i32.shl i32.const -8388608 i32.and i32.const 0 i32.const 33554432 i32.const 50331648 local.get 1 i32.const 8388607 i32.and i32.const 8388608 i32.or local.get 2 i32.const 1 i32.and i32.shl local.tee 3 i32.const 18874368 i32.lt_u local.tee 1 select local.tee 2 local.get 2 i32.const 8388608 i32.or local.get 2 i32.const 4194304 i32.or local.tee 2 local.get 3 i32.const 2 i32.shl i32.const 0 i32.const -41943040 local.get 1 select i32.add i32.const 1 i32.shl i32.const -67108864 i32.add local.tee 3 i32.gt_s local.tee 4 select local.tee 5 local.get 5 i32.const 4194304 i32.or local.get 5 i32.const 2097152 i32.or local.tee 5 local.get 3 i32.const 0 local.get 2 local.get 4 select i32.sub i32.const 1 i32.shl local.tee 4 i32.gt_s local.tee 6 select local.tee 7 local.get 7 i32.const 2097152 i32.or local.get 7 i32.const 1048576 i32.or local.tee 7 local.get 4 i32.const 0 local.get 5 local.get 6 select i32.sub i32.const 1 i32.shl local.tee 6 i32.gt_s local.tee 8 select local.tee 9 local.get 9 i32.const 1048576 i32.add local.get 9 i32.const 524288 i32.add local.tee 9 local.get 6 i32.const 0 local.get 7 local.get 8 select i32.sub i32.const 1 i32.shl local.tee 8 i32.gt_s local.tee 10 select local.tee 11 local.get 11 i32.const 524288 i32.add local.get 11 i32.const 262144 i32.add local.tee 11 local.get 8 i32.const 0 local.get 9 local.get 10 select i32.sub i32.const 1 i32.shl local.tee 10 i32.gt_s local.tee 12 select local.tee 13 local.get 13 i32.const 262144 i32.add local.get 13 i32.const 131072 i32.add local.tee 13 local.get 10 i32.const 0 local.get 11 local.get 12 select i32.sub i32.const 1 i32.shl local.tee 12 i32.gt_s local.tee 14 select local.tee 15 local.get 15 i32.const 131072 i32.add local.get 15 i32.const 65536 i32.add local.tee 15 local.get 12 i32.const 0 local.get 13 local.get 14 select i32.sub i32.const 1 i32.shl local.tee 14 i32.gt_s local.tee 16 select local.tee 17 local.get 17 i32.const 65536 i32.add local.get 17 i32.const 32768 i32.add local.tee 17 local.get 14 i32.const 0 local.get 15 local.get 16 select i32.sub i32.const 1 i32.shl local.tee 16 i32.gt_s local.tee 18 select local.tee 19 local.get 19 i32.const 32768 i32.add local.get 19 i32.const 16384 i32.add local.tee 19 local.get 16 i32.const 0 local.get 17 local.get 18 select i32.sub i32.const 1 i32.shl local.tee 18 i32.gt_s local.tee 20 select local.tee 21 local.get 21 i32.const 16384 i32.add local.get 21 i32.const 8192 i32.add local.tee 21 local.get 18 i32.const 0 local.get 19 local.get 20 select i32.sub i32.const 1 i32.shl local.tee 20 i32.gt_s local.tee 22 select local.tee 23 local.get 23 i32.const 8192 i32.add local.get 23 i32.const 4096 i32.add local.tee 23 local.get 20 i32.const 0 local.get 21 local.get 22 select i32.sub i32.const 1 i32.shl local.tee 22 i32.gt_s local.tee 24 select local.tee 25 local.get 25 i32.const 4096 i32.add local.get 25 i32.const 2048 i32.add local.tee 25 local.get 22 i32.const 0 local.get 23 local.get 24 select i32.sub i32.const 1 i32.shl local.tee 24 i32.gt_s local.tee 26 select local.tee 27 local.get 27 i32.const 2048 i32.add local.get 27 i32.const 1024 i32.add local.tee 27 local.get 24 i32.const 0 local.get 25 local.get 26 select i32.sub i32.const 1 i32.shl local.tee 26 i32.gt_s local.tee 28 select local.tee 29 local.get 29 i32.const 1024 i32.add local.get 29 i32.const 512 i32.add local.tee 29 local.get 26 i32.const 0 local.get 27 local.get 28 select i32.sub i32.const 1 i32.shl local.tee 28 i32.gt_s local.tee 30 select local.tee 31 local.get 31 i32.const 512 i32.add local.get 31 i32.const 256 i32.add local.tee 31 local.get 28 i32.const 0 local.get 29 local.get 30 select i32.sub i32.const 1 i32.shl local.tee 30 i32.gt_s local.tee 32 select local.tee 33 local.get 33 i32.const 256 i32.add local.get 33 i32.const 128 i32.add local.tee 33 local.get 30 i32.const 0 local.get 31 local.get 32 select i32.sub i32.const 1 i32.shl local.tee 32 i32.gt_s local.tee 34 select local.tee 35 local.get 35 i32.const 128 i32.add local.get 35 i32.const 64 i32.add local.tee 35 local.get 32 i32.const 0 local.get 33 local.get 34 select i32.sub i32.const 1 i32.shl local.tee 34 i32.gt_s local.tee 36 select local.tee 37 local.get 37 i32.const 64 i32.add local.get 37 i32.const 32 i32.add local.tee 37 local.get 34 i32.const 0 local.get 35 local.get 36 select i32.sub i32.const 1 i32.shl local.tee 36 i32.gt_s local.tee 38 select local.tee 39 local.get 39 i32.const 32 i32.add local.get 39 i32.const 16 i32.add local.tee 39 local.get 36 i32.const 0 local.get 37 local.get 38 select i32.sub i32.const 1 i32.shl local.tee 38 i32.gt_s local.tee 40 select local.tee 41 local.get 41 i32.const 16 i32.add local.get 41 i32.const 8 i32.add local.tee 41 local.get 38 i32.const 0 local.get 39 local.get 40 select i32.sub i32.const 1 i32.shl local.tee 40 i32.gt_s local.tee 42 select local.tee 43 local.get 43 i32.const 8 i32.add local.get 43 i32.const 4 i32.add local.tee 43 local.get 40 i32.const 0 local.get 41 local.get 42 select i32.sub i32.const 1 i32.shl local.tee 42 i32.gt_s local.tee 44 select local.tee 45 i32.const 2 i32.add local.tee 46 local.get 42 i32.const 0 local.get 43 local.get 44 select i32.sub i32.const 1 i32.shl local.tee 44 i32.le_s i32.const 1 i32.shl local.get 43 local.get 42 i32.le_s i32.const 2 i32.shl local.get 41 local.get 40 i32.le_s i32.const 3 i32.shl local.get 39 local.get 38 i32.le_s i32.const 4 i32.shl local.get 37 local.get 36 i32.le_s i32.const 5 i32.shl local.get 35 local.get 34 i32.le_s i32.const 6 i32.shl local.get 33 local.get 32 i32.le_s i32.const 7 i32.shl local.get 31 local.get 30 i32.le_s i32.const 8 i32.shl local.get 29 local.get 28 i32.le_s i32.const 9 i32.shl local.get 27 local.get 26 i32.le_s i32.const 10 i32.shl local.get 25 local.get 24 i32.le_s i32.const 11 i32.shl local.get 23 local.get 22 i32.le_s i32.const 12 i32.shl local.get 21 local.get 20 i32.le_s i32.const 13 i32.shl local.get 19 local.get 18 i32.le_s i32.const 14 i32.shl local.get 17 local.get 16 i32.le_s i32.const 15 i32.shl local.get 15 local.get 14 i32.le_s i32.const 16 i32.shl local.get 13 local.get 12 i32.le_s i32.const 17 i32.shl local.get 11 local.get 10 i32.le_s i32.const 18 i32.shl local.get 9 local.get 8 i32.le_s i32.const 19 i32.shl local.get 7 local.get 6 i32.le_s i32.const 20 i32.shl local.get 5 local.get 4 i32.le_s i32.const 21 i32.shl local.get 2 local.get 3 i32.le_s i32.const 22 i32.shl i32.const 16777216 i32.const 25165824 local.get 1 select i32.or i32.or i32.or i32.or i32.or i32.or i32.add i32.add i32.add i32.add i32.add i32.add i32.add i32.add i32.add i32.add i32.add i32.add i32.add i32.add i32.add i32.add local.get 45 local.get 45 i32.const 4 i32.add local.get 46 local.get 44 i32.gt_s local.tee 1 select local.tee 2 local.get 44 i32.const 0 local.get 46 local.get 1 select i32.sub i32.const 1 i32.shl local.tee 1 i32.lt_s local.tee 3 i32.add local.tee 5 i32.const 1 i32.and local.get 2 i32.const -1 local.get 3 select local.get 1 i32.const -1 i32.add i32.eq select local.get 5 i32.add i32.const 1 i32.shr_u i32.add i32.const 1056964608 i32.add f32.reinterpret_i32 local.set 0 end local.get 0) (func $basicmath___ieee754_powf (type 5) (param f32 f32) (result f32) (local f32 i32 i32 i32 i32 i32 i32 i32 f32 f32 f32 f32 f32 f32) f32.const 0x1p+0 (;=1;) local.set 2 block ;; label = @1 local.get 0 f32.const 0x1p+0 (;=1;) f32.eq br_if 0 (;@1;) local.get 1 i32.reinterpret_f32 local.tee 3 i32.const 2147483647 i32.and local.tee 4 i32.eqz br_if 0 (;@1;) block ;; label = @2 local.get 0 f32.const -0x1p+0 (;=-1;) f32.ne br_if 0 (;@2;) local.get 1 f32.abs f32.const inf (;=inf;) f32.ne br_if 0 (;@2;) local.get 3 i32.const 1073741823 i32.gt_u br_if 1 (;@1;) end block ;; label = @2 block ;; label = @3 local.get 0 f32.abs local.tee 2 i32.reinterpret_f32 local.tee 5 i32.const 2139095040 i32.gt_u br_if 0 (;@3;) local.get 4 i32.const 2139095041 i32.lt_u br_if 1 (;@2;) end local.get 0 local.get 1 f32.add return end block ;; label = @2 block ;; label = @3 local.get 0 i32.reinterpret_f32 local.tee 6 i32.const -1 i32.le_s br_if 0 (;@3;) i32.const 0 local.set 7 br 1 (;@2;) end i32.const 2 local.set 7 local.get 4 i32.const 1266679807 i32.gt_u br_if 0 (;@2;) block ;; label = @3 local.get 4 i32.const 1065353216 i32.ge_u br_if 0 (;@3;) i32.const 0 local.set 7 br 1 (;@2;) end i32.const 0 local.set 7 local.get 4 i32.const 150 local.get 4 i32.const 23 i32.shr_u i32.sub local.tee 8 i32.shr_u local.tee 9 local.get 8 i32.shl local.get 4 i32.ne br_if 0 (;@2;) i32.const 2 local.get 9 i32.const 1 i32.and i32.sub local.set 7 end block ;; label = @2 block ;; label = @3 local.get 4 i32.const 1065353216 i32.eq br_if 0 (;@3;) local.get 4 i32.const 2139095040 i32.ne br_if 1 (;@2;) block ;; label = @4 local.get 5 i32.const 1065353216 i32.ne br_if 0 (;@4;) local.get 1 local.get 1 f32.sub return end block ;; label = @4 local.get 5 i32.const 1065353217 i32.lt_u br_if 0 (;@4;) local.get 1 f32.const 0x0p+0 (;=0;) local.get 3 i32.const -1 i32.gt_s select return end local.get 1 f32.neg f32.const 0x0p+0 (;=0;) local.get 3 i32.const 0 i32.lt_s select return end block ;; label = @3 local.get 3 i32.const -1 i32.le_s br_if 0 (;@3;) local.get 0 return end f32.const 0x1p+0 (;=1;) local.get 0 f32.div return end block ;; label = @2 local.get 3 i32.const 1073741824 i32.ne br_if 0 (;@2;) local.get 0 local.get 0 f32.mul return end block ;; label = @2 local.get 6 i32.const 0 i32.lt_s br_if 0 (;@2;) local.get 3 i32.const 1056964608 i32.ne br_if 0 (;@2;) local.get 0 call $basicmath___ieee754_sqrtf return end block ;; label = @2 block ;; label = @3 local.get 5 i32.eqz br_if 0 (;@3;) local.get 5 i32.const 1073741823 i32.and i32.const 1065353216 i32.ne br_if 1 (;@2;) end f32.const 0x1p+0 (;=1;) local.get 2 f32.div local.get 2 local.get 3 i32.const 0 i32.lt_s select local.set 2 local.get 6 i32.const -1 i32.gt_s br_if 1 (;@1;) block ;; label = @3 local.get 5 local.get 7 i32.add i32.const 1065353216 i32.ne br_if 0 (;@3;) local.get 2 local.get 2 f32.sub local.tee 0 local.get 0 f32.div return end local.get 2 f32.neg local.get 2 local.get 7 i32.const 1 i32.eq select return end block ;; label = @2 local.get 7 local.get 6 i32.const 31 i32.shr_u i32.const -1 i32.add local.tee 6 i32.or br_if 0 (;@2;) local.get 0 local.get 0 f32.sub local.tee 0 local.get 0 f32.div return end block ;; label = @2 block ;; label = @3 local.get 4 i32.const 1291845633 i32.lt_u br_if 0 (;@3;) block ;; label = @4 local.get 5 i32.const 1065353207 i32.gt_u br_if 0 (;@4;) f32.const inf (;=inf;) f32.const 0x0p+0 (;=0;) local.get 3 i32.const 0 i32.lt_s select return end block ;; label = @4 local.get 5 i32.const 1065353224 i32.lt_u br_if 0 (;@4;) f32.const inf (;=inf;) f32.const 0x0p+0 (;=0;) local.get 3 i32.const 0 i32.gt_s select return end local.get 0 f32.const -0x1p+0 (;=-1;) f32.add local.tee 0 f32.const 0x1.d94aep-18 (;=7.05261e-06;) f32.mul local.get 0 local.get 0 f32.mul f32.const 0x1p-1 (;=0.5;) local.get 0 local.get 0 f32.const -0x1p-2 (;=-0.25;) f32.mul f32.const 0x1.555556p-2 (;=0.333333;) f32.add f32.mul f32.sub f32.mul f32.const -0x1.715476p+0 (;=-1.4427;) f32.mul f32.add local.tee 2 local.get 2 local.get 0 f32.const 0x1.7154p+0 (;=1.44269;) f32.mul local.tee 10 f32.add i32.reinterpret_f32 i32.const -4096 i32.and f32.reinterpret_i32 local.tee 0 local.get 10 f32.sub f32.sub local.set 2 br 1 (;@2;) end local.get 2 f32.const 0x1p+24 (;=1.67772e+07;) f32.mul i32.reinterpret_f32 local.get 5 local.get 5 i32.const 8388608 i32.lt_u local.tee 9 select local.tee 5 i32.const 8388607 i32.and local.tee 8 i32.const 1065353216 i32.or local.set 4 i32.const -151 i32.const -127 local.get 9 select local.get 5 i32.const 23 i32.shr_s i32.add local.set 9 i32.const 0 local.set 5 block ;; label = @3 local.get 8 i32.const 1885298 i32.lt_u br_if 0 (;@3;) block ;; label = @4 local.get 8 i32.const 6140887 i32.ge_u br_if 0 (;@4;) i32.const 1 local.set 5 br 1 (;@3;) end local.get 8 i32.const 1056964608 i32.or local.set 4 local.get 9 i32.const 1 i32.add local.set 9 end local.get 5 i32.const 2 i32.shl local.tee 8 i32.const 1032 i32.add f32.load local.get 4 f32.reinterpret_i32 local.tee 10 local.get 8 i32.const 1024 i32.add f32.load local.tee 11 f32.sub local.tee 12 f32.const 0x1p+0 (;=1;) local.get 11 local.get 10 f32.add f32.div local.tee 13 f32.mul local.tee 2 i32.reinterpret_f32 i32.const -4096 i32.and f32.reinterpret_i32 local.tee 0 local.get 0 local.get 0 f32.mul local.tee 14 f32.const 0x1.8p+1 (;=3;) f32.add local.get 13 local.get 12 local.get 0 local.get 5 i32.const 21 i32.shl local.get 4 i32.const 1 i32.shr_u i32.add i32.const 537133056 i32.add f32.reinterpret_i32 local.tee 15 f32.mul f32.sub local.get 0 local.get 10 local.get 15 local.get 11 f32.sub f32.sub f32.mul f32.sub f32.mul local.tee 10 local.get 2 local.get 0 f32.add f32.mul local.get 2 local.get 2 f32.mul local.tee 0 local.get 0 f32.mul local.get 0 local.get 0 local.get 0 local.get 0 local.get 0 f32.const 0x1.a7e284p-3 (;=0.206975;) f32.mul f32.const 0x1.d864aap-3 (;=0.230661;) f32.add f32.mul f32.const 0x1.17460ap-2 (;=0.272728;) f32.add f32.mul f32.const 0x1.555556p-2 (;=0.333333;) f32.add f32.mul f32.const 0x1.b6db6ep-2 (;=0.428571;) f32.add f32.mul f32.const 0x1.333334p-1 (;=0.6;) f32.add f32.mul f32.add local.tee 11 f32.add i32.reinterpret_f32 i32.const -4096 i32.and f32.reinterpret_i32 local.tee 0 f32.mul local.tee 12 local.get 10 local.get 0 f32.mul local.get 2 local.get 11 local.get 0 f32.const -0x1.8p+1 (;=-3;) f32.add local.get 14 f32.sub f32.sub f32.mul f32.add local.tee 2 f32.add i32.reinterpret_f32 i32.const -4096 i32.and f32.reinterpret_i32 local.tee 0 f32.const 0x1.3b874p-18 (;=4.70174e-06;) f32.mul local.get 2 local.get 0 local.get 12 f32.sub f32.sub f32.const 0x1.ec709ep-1 (;=0.961797;) f32.mul f32.add f32.add local.tee 2 local.get 8 i32.const 1040 i32.add f32.load local.tee 10 local.get 2 local.get 0 f32.const 0x1.ec7p-1 (;=0.961792;) f32.mul local.tee 11 f32.add f32.add local.get 9 f32.convert_i32_s local.tee 2 f32.add i32.reinterpret_f32 i32.const -4096 i32.and f32.reinterpret_i32 local.tee 0 local.get 2 f32.sub local.get 10 f32.sub local.get 11 f32.sub f32.sub local.set 2 end f32.const 0x1p+0 (;=1;) f32.const -0x1p+0 (;=-1;) local.get 7 i32.const -1 i32.add local.get 6 i32.or select local.set 10 block ;; label = @2 local.get 1 local.get 3 i32.const -4096 i32.and f32.reinterpret_i32 local.tee 11 f32.sub local.get 0 f32.mul local.get 2 local.get 1 f32.mul f32.add local.tee 2 local.get 0 local.get 11 f32.mul local.tee 0 f32.add local.tee 1 i32.reinterpret_f32 local.tee 4 i32.const 1124073473 i32.lt_s br_if 0 (;@2;) local.get 10 f32.const 0x1.93e594p+99 (;=1e+30;) f32.mul f32.const 0x1.93e594p+99 (;=1e+30;) f32.mul return end block ;; label = @2 block ;; label = @3 local.get 4 i32.const 1124073472 i32.ne br_if 0 (;@3;) block ;; label = @4 local.get 2 f32.const 0x1.715478p-25 (;=4.29957e-08;) f32.add local.get 1 local.get 0 f32.sub f32.gt br_if 0 (;@4;) local.get 1 i32.reinterpret_f32 i32.const 2147483647 i32.and local.set 3 br 2 (;@2;) end local.get 10 f32.const 0x1.93e594p+99 (;=1e+30;) f32.mul f32.const 0x1.93e594p+99 (;=1e+30;) f32.mul return end block ;; label = @3 local.get 1 i32.reinterpret_f32 i32.const 2147483647 i32.and local.tee 3 i32.const 1125515265 i32.lt_u br_if 0 (;@3;) local.get 10 f32.const 0x1.4484cp-100 (;=1e-30;) f32.mul f32.const 0x1.4484cp-100 (;=1e-30;) f32.mul return end local.get 4 i32.const -1021968384 i32.ne br_if 0 (;@2;) local.get 2 local.get 1 local.get 0 f32.sub f32.le i32.eqz br_if 0 (;@2;) local.get 10 f32.const 0x1.4484cp-100 (;=1e-30;) f32.mul f32.const 0x1.4484cp-100 (;=1e-30;) f32.mul return end i32.const 0 local.set 5 block ;; label = @2 local.get 3 i32.const 1056964609 i32.lt_u br_if 0 (;@2;) i32.const 0 i32.const 8388608 local.get 3 i32.const 23 i32.shr_u i32.const -126 i32.add i32.shr_u local.get 4 i32.add local.tee 3 i32.const 8388607 i32.and i32.const 8388608 i32.or i32.const 150 local.get 3 i32.const 23 i32.shr_u i32.const 255 i32.and local.tee 7 i32.sub i32.shr_u local.tee 5 i32.sub local.get 5 local.get 4 i32.const 0 i32.lt_s select local.set 5 local.get 2 local.get 0 i32.const -8388608 local.get 7 i32.const -127 i32.add i32.shr_s local.get 3 i32.and f32.reinterpret_i32 f32.sub local.tee 0 f32.add i32.reinterpret_f32 local.set 4 end block ;; label = @2 block ;; label = @3 local.get 5 i32.const 23 i32.shl local.get 4 i32.const -4096 i32.and f32.reinterpret_i32 local.tee 1 f32.const 0x1.62e4p-1 (;=0.693146;) f32.mul local.tee 11 local.get 2 local.get 1 local.get 0 f32.sub f32.sub f32.const 0x1.62e43p-1 (;=0.693147;) f32.mul local.get 1 f32.const 0x1.7f7d18p-20 (;=1.42861e-06;) f32.mul f32.add local.tee 2 f32.add local.tee 0 local.get 0 local.get 0 local.get 0 local.get 0 f32.mul local.tee 1 local.get 1 local.get 1 local.get 1 local.get 1 f32.const 0x1.637698p-25 (;=4.13814e-08;) f32.mul f32.const -0x1.bbd41cp-20 (;=-1.65339e-06;) f32.add f32.mul f32.const 0x1.1566aap-14 (;=6.61376e-05;) f32.add f32.mul f32.const -0x1.6c16c2p-9 (;=-0.00277778;) f32.add f32.mul f32.const 0x1.555556p-3 (;=0.166667;) f32.add f32.mul f32.sub local.tee 1 f32.mul local.get 1 f32.const -0x1p+1 (;=-2;) f32.add f32.div local.get 0 local.get 2 local.get 0 local.get 11 f32.sub f32.sub local.tee 1 f32.mul local.get 1 f32.add f32.sub f32.sub f32.const 0x1p+0 (;=1;) f32.add local.tee 0 i32.reinterpret_f32 i32.add local.tee 4 i32.const 8388607 i32.gt_s br_if 0 (;@3;) local.get 0 local.get 5 call $basicmath___scalbnf local.set 0 br 1 (;@2;) end local.get 4 f32.reinterpret_i32 local.set 0 end local.get 10 local.get 0 f32.mul local.set 2 end local.get 2) (func $basicmath___scalbnf (type 6) (param f32 i32) (result f32) (local i32 i32) block ;; label = @1 local.get 0 i32.reinterpret_f32 local.tee 2 i32.const 23 i32.shr_u i32.const 255 i32.and local.tee 3 i32.const 255 i32.eq br_if 0 (;@1;) block ;; label = @2 block ;; label = @3 local.get 3 br_if 0 (;@3;) local.get 0 f32.const 0x0p+0 (;=0;) f32.eq br_if 1 (;@2;) local.get 0 f32.const 0x1p+25 (;=3.35544e+07;) f32.mul local.tee 0 i32.reinterpret_f32 local.tee 2 i32.const 23 i32.shr_u i32.const 255 i32.and i32.const -25 i32.add local.set 3 end block ;; label = @3 block ;; label = @4 local.get 1 i32.const 50000 i32.gt_s br_if 0 (;@4;) local.get 3 local.get 1 i32.add local.tee 3 i32.const 255 i32.lt_s br_if 1 (;@3;) end local.get 0 i32.reinterpret_f32 i32.const -2147483648 i32.and i32.const 1900671690 i32.or f32.reinterpret_i32 f32.const 0x1.93e594p+99 (;=1e+30;) f32.mul return end block ;; label = @3 local.get 1 i32.const -50001 i32.gt_s br_if 0 (;@3;) local.get 0 i32.reinterpret_f32 i32.const -2147483648 i32.and i32.const 228737632 i32.or f32.reinterpret_i32 f32.const 0x1.4484cp-100 (;=1e-30;) f32.mul return end block ;; label = @3 local.get 3 i32.const 1 i32.lt_s br_if 0 (;@3;) local.get 2 i32.const -2139095041 i32.and local.get 3 i32.const 23 i32.shl i32.or f32.reinterpret_i32 return end block ;; label = @3 local.get 3 i32.const -25 i32.gt_s br_if 0 (;@3;) local.get 0 i32.reinterpret_f32 i32.const -2147483648 i32.and i32.const 228737632 i32.or f32.reinterpret_i32 f32.const 0x1.4484cp-100 (;=1e-30;) f32.mul return end local.get 3 i32.const 23 i32.shl i32.const 209715200 i32.add local.get 2 i32.const -2139095041 i32.and i32.or f32.reinterpret_i32 f32.const 0x1p-25 (;=2.98023e-08;) f32.mul local.set 0 end local.get 0 return end local.get 0 local.get 0 f32.add) (func $basicmath___fabsf (type 4) (param f32) (result f32) local.get 0 f32.abs) (func $basicmath___ieee754_rem_pio2f (type 7) (param f32 i32) (result i32) (local f32 i32 i32 i32 f32 f32 f32) block ;; label = @1 local.get 0 f32.abs local.tee 2 i32.reinterpret_f32 local.tee 3 i32.const 1061752792 i32.gt_u br_if 0 (;@1;) local.get 1 i32.const 0 i32.store offset=4 local.get 1 local.get 0 f32.store i32.const 0 return end local.get 0 i32.reinterpret_f32 local.set 4 block ;; label = @1 local.get 3 i32.const 1075235811 i32.gt_u br_if 0 (;@1;) local.get 3 i32.const 2147483632 i32.and local.set 3 block ;; label = @2 local.get 4 i32.const 1 i32.lt_s br_if 0 (;@2;) local.get 0 f32.const -0x1.921fp+0 (;=-1.57079;) f32.add local.set 0 block ;; label = @3 local.get 3 i32.const 1070141392 i32.eq br_if 0 (;@3;) local.get 1 local.get 0 f32.const -0x1.6a8886p-17 (;=-1.08043e-05;) f32.add local.tee 2 f32.store local.get 1 local.get 0 local.get 2 f32.sub f32.const -0x1.6a8886p-17 (;=-1.08043e-05;) f32.add f32.store offset=4 i32.const 1 return end local.get 1 local.get 0 f32.const -0x1.6a88p-17 (;=-1.08043e-05;) f32.add local.tee 0 f32.const -0x1.0b461p-34 (;=-6.0771e-11;) f32.add local.tee 2 f32.store local.get 1 local.get 0 local.get 2 f32.sub f32.const -0x1.0b461p-34 (;=-6.0771e-11;) f32.add f32.store offset=4 i32.const 1 return end local.get 0 f32.const 0x1.921fp+0 (;=1.57079;) f32.add local.set 0 block ;; label = @2 local.get 3 i32.const 1070141392 i32.eq br_if 0 (;@2;) local.get 1 local.get 0 f32.const 0x1.6a8886p-17 (;=1.08043e-05;) f32.add local.tee 2 f32.store local.get 1 local.get 0 local.get 2 f32.sub f32.const 0x1.6a8886p-17 (;=1.08043e-05;) f32.add f32.store offset=4 i32.const -1 return end local.get 1 local.get 0 f32.const 0x1.6a88p-17 (;=1.08043e-05;) f32.add local.tee 0 f32.const 0x1.0b461p-34 (;=6.0771e-11;) f32.add local.tee 2 f32.store local.get 1 local.get 0 local.get 2 f32.sub f32.const 0x1.0b461p-34 (;=6.0771e-11;) f32.add f32.store offset=4 i32.const -1 return end block ;; label = @1 block ;; label = @2 local.get 3 i32.const 1128861568 i32.gt_u br_if 0 (;@2;) block ;; label = @3 block ;; label = @4 local.get 2 f32.const 0x1.45f308p-1 (;=0.63662;) f32.mul f32.const 0x1p-1 (;=0.5;) f32.add local.tee 0 f32.abs f32.const 0x1p+31 (;=2.14748e+09;) f32.lt i32.eqz br_if 0 (;@4;) local.get 0 i32.trunc_f32_s local.set 5 br 1 (;@3;) end i32.const -2147483648 local.set 5 end local.get 5 f32.convert_i32_s local.tee 6 f32.const 0x1.6a8886p-17 (;=1.08043e-05;) f32.mul local.set 7 local.get 2 local.get 6 f32.const -0x1.921fp+0 (;=-1.57079;) f32.mul f32.add local.set 0 block ;; label = @3 block ;; label = @4 block ;; label = @5 local.get 5 i32.const 31 i32.gt_s br_if 0 (;@5;) local.get 3 i32.const 2147483392 i32.and local.get 5 i32.const 2 i32.shl i32.const 1052 i32.add i32.load i32.ne br_if 1 (;@4;) end local.get 1 local.get 0 local.get 7 f32.sub local.tee 2 f32.store local.get 3 i32.const 23 i32.shr_u local.tee 3 local.get 2 i32.reinterpret_f32 i32.const 23 i32.shr_u i32.const 255 i32.and i32.sub i32.const 9 i32.lt_s br_if 1 (;@3;) local.get 1 local.get 0 local.get 6 f32.const 0x1.6a88p-17 (;=1.08043e-05;) f32.mul local.tee 2 f32.sub local.tee 8 local.get 6 f32.const 0x1.0b461p-34 (;=6.0771e-11;) f32.mul local.get 0 local.get 8 f32.sub local.get 2 f32.sub f32.sub local.tee 7 f32.sub local.tee 2 f32.store block ;; label = @5 local.get 3 local.get 2 i32.reinterpret_f32 i32.const 23 i32.shr_u i32.const 255 i32.and i32.sub i32.const 26 i32.ge_s br_if 0 (;@5;) local.get 8 local.set 0 br 2 (;@3;) end local.get 6 f32.const 0x1.1a6264p-54 (;=6.12323e-17;) f32.mul local.get 8 local.get 8 local.get 6 f32.const 0x1.0b46p-34 (;=6.07709e-11;) f32.mul local.tee 2 f32.sub local.tee 0 f32.sub local.get 2 f32.sub f32.sub local.set 7 end local.get 1 local.get 0 local.get 7 f32.sub local.tee 2 f32.store end local.get 1 local.get 0 local.get 2 f32.sub local.get 7 f32.sub local.tee 0 f32.store offset=4 local.get 4 i32.const -1 i32.gt_s br_if 1 (;@1;) local.get 1 local.get 0 f32.neg f32.store offset=4 local.get 1 local.get 2 f32.neg f32.store i32.const 0 local.get 5 i32.sub return end local.get 1 local.get 0 local.get 0 f32.sub local.tee 0 f32.store local.get 1 local.get 0 f32.store offset=4 i32.const 0 local.set 5 end local.get 5) (func $basicmath___cosf (type 4) (param f32) (result f32) (local i32 i32 i32 i32 f32 f32 f32 f32) global.get $__stack_pointer i32.const 16 i32.sub local.tee 1 global.set $__stack_pointer block ;; label = @1 block ;; label = @2 local.get 0 i32.reinterpret_f32 i32.const 2147483647 i32.and local.tee 2 i32.const 1061752792 i32.gt_u br_if 0 (;@2;) local.get 2 i32.const 838860799 i32.gt_u local.set 3 block ;; label = @3 block ;; label = @4 local.get 0 f32.abs f32.const 0x1p+31 (;=2.14748e+09;) f32.lt i32.eqz br_if 0 (;@4;) local.get 0 i32.trunc_f32_s local.set 4 br 1 (;@3;) end i32.const -2147483648 local.set 4 end block ;; label = @3 local.get 3 br_if 0 (;@3;) local.get 4 br_if 0 (;@3;) f32.const 0x1p+0 (;=1;) local.set 0 br 2 (;@1;) end local.get 0 local.get 0 f32.mul local.tee 5 local.get 5 local.get 5 local.get 5 local.get 5 local.get 5 f32.const -0x1.8fae9cp-37 (;=-1.13596e-11;) f32.mul f32.const 0x1.1ee9ecp-29 (;=2.08757e-09;) f32.add f32.mul f32.const -0x1.27e4f8p-22 (;=-2.75573e-07;) f32.add f32.mul f32.const 0x1.a01a02p-16 (;=2.48016e-05;) f32.add f32.mul f32.const -0x1.6c16c2p-10 (;=-0.00138889;) f32.add f32.mul f32.const 0x1.555556p-5 (;=0.0416667;) f32.add f32.mul local.set 6 block ;; label = @3 local.get 2 i32.const 1050253721 i32.gt_u br_if 0 (;@3;) f32.const 0x1p+0 (;=1;) local.get 5 f32.const 0x1p-1 (;=0.5;) f32.mul local.get 5 local.get 6 f32.mul local.get 0 f32.const -0x0p+0 (;=-0;) f32.mul f32.add f32.sub f32.sub local.set 0 br 2 (;@1;) end f32.const 0x1p+0 (;=1;) f32.const 0x1.2p-2 (;=0.28125;) local.get 2 i32.const -16777216 i32.add f32.reinterpret_i32 local.get 2 i32.const 1061683200 i32.gt_u select local.tee 7 f32.sub local.get 5 local.get 6 f32.mul local.get 0 f32.const -0x0p+0 (;=-0;) f32.mul f32.add local.get 5 f32.const 0x1p-1 (;=0.5;) f32.mul local.get 7 f32.sub f32.sub f32.add local.set 0 br 1 (;@1;) end block ;; label = @2 local.get 2 i32.const 2139095040 i32.lt_u br_if 0 (;@2;) local.get 0 local.get 0 f32.sub local.set 0 br 1 (;@1;) end local.get 0 local.get 1 i32.const 8 i32.add call $basicmath___ieee754_rem_pio2f local.set 2 local.get 1 f32.load offset=8 local.set 0 block ;; label = @2 block ;; label = @3 block ;; label = @4 block ;; label = @5 local.get 2 i32.const 3 i32.and br_table 0 (;@5;) 1 (;@4;) 2 (;@3;) 3 (;@2;) 0 (;@5;) end local.get 0 i32.reinterpret_f32 i32.const 2147483647 i32.and local.tee 2 i32.const 838860799 i32.gt_u local.set 3 block ;; label = @5 block ;; label = @6 local.get 0 f32.abs f32.const 0x1p+31 (;=2.14748e+09;) f32.lt i32.eqz br_if 0 (;@6;) local.get 0 i32.trunc_f32_s local.set 4 br 1 (;@5;) end i32.const -2147483648 local.set 4 end local.get 1 f32.load offset=12 local.set 6 block ;; label = @5 local.get 3 br_if 0 (;@5;) local.get 4 br_if 0 (;@5;) f32.const 0x1p+0 (;=1;) local.set 0 br 4 (;@1;) end local.get 0 local.get 0 f32.mul local.tee 5 local.get 5 local.get 5 local.get 5 local.get 5 local.get 5 f32.const -0x1.8fae9cp-37 (;=-1.13596e-11;) f32.mul f32.const 0x1.1ee9ecp-29 (;=2.08757e-09;) f32.add f32.mul f32.const -0x1.27e4f8p-22 (;=-2.75573e-07;) f32.add f32.mul f32.const 0x1.a01a02p-16 (;=2.48016e-05;) f32.add f32.mul f32.const -0x1.6c16c2p-10 (;=-0.00138889;) f32.add f32.mul f32.const 0x1.555556p-5 (;=0.0416667;) f32.add f32.mul local.set 7 block ;; label = @5 local.get 2 i32.const 1050253721 i32.gt_u br_if 0 (;@5;) f32.const 0x1p+0 (;=1;) local.get 5 f32.const 0x1p-1 (;=0.5;) f32.mul local.get 5 local.get 7 f32.mul local.get 6 local.get 0 f32.mul f32.sub f32.sub f32.sub local.set 0 br 4 (;@1;) end f32.const 0x1p+0 (;=1;) f32.const 0x1.2p-2 (;=0.28125;) local.get 2 i32.const -16777216 i32.add f32.reinterpret_i32 local.get 2 i32.const 1061683200 i32.gt_u select local.tee 8 f32.sub local.get 5 local.get 7 f32.mul local.get 6 local.get 0 f32.mul f32.sub local.get 5 f32.const 0x1p-1 (;=0.5;) f32.mul local.get 8 f32.sub f32.sub f32.add local.set 0 br 3 (;@1;) end local.get 0 i32.reinterpret_f32 i32.const 2147483647 i32.and i32.const 838860799 i32.gt_u local.set 2 block ;; label = @4 block ;; label = @5 local.get 0 f32.abs f32.const 0x1p+31 (;=2.14748e+09;) f32.lt i32.eqz br_if 0 (;@5;) local.get 0 i32.trunc_f32_s local.set 3 br 1 (;@4;) end i32.const -2147483648 local.set 3 end block ;; label = @4 block ;; label = @5 local.get 2 br_if 0 (;@5;) local.get 3 i32.eqz br_if 1 (;@4;) end local.get 0 local.get 0 local.get 0 local.get 0 f32.mul local.tee 5 f32.neg f32.mul local.tee 6 f32.const -0x1.555556p-3 (;=-0.166667;) f32.mul local.get 5 local.get 1 f32.load offset=12 local.tee 7 f32.const 0x1p-1 (;=0.5;) f32.mul local.get 6 local.get 5 local.get 5 local.get 5 local.get 5 f32.const 0x1.5d93a6p-33 (;=1.58969e-10;) f32.mul f32.const -0x1.ae5e68p-26 (;=-2.50508e-08;) f32.add f32.mul f32.const 0x1.71de36p-19 (;=2.75573e-06;) f32.add f32.mul f32.const -0x1.a01a02p-13 (;=-0.000198413;) f32.add f32.mul f32.const 0x1.111112p-7 (;=0.00833333;) f32.add f32.mul f32.add f32.mul local.get 7 f32.sub f32.add f32.sub local.set 0 end local.get 0 f32.neg local.set 0 br 2 (;@1;) end local.get 0 i32.reinterpret_f32 i32.const 2147483647 i32.and local.tee 2 i32.const 838860799 i32.gt_u local.set 3 block ;; label = @3 block ;; label = @4 local.get 0 f32.abs f32.const 0x1p+31 (;=2.14748e+09;) f32.lt i32.eqz br_if 0 (;@4;) local.get 0 i32.trunc_f32_s local.set 4 br 1 (;@3;) end i32.const -2147483648 local.set 4 end local.get 1 f32.load offset=12 local.set 6 block ;; label = @3 block ;; label = @4 local.get 3 br_if 0 (;@4;) f32.const 0x1p+0 (;=1;) local.set 5 local.get 4 i32.eqz br_if 1 (;@3;) end local.get 0 local.get 0 f32.mul local.tee 5 local.get 5 local.get 5 local.get 5 local.get 5 local.get 5 f32.const -0x1.8fae9cp-37 (;=-1.13596e-11;) f32.mul f32.const 0x1.1ee9ecp-29 (;=2.08757e-09;) f32.add f32.mul f32.const -0x1.27e4f8p-22 (;=-2.75573e-07;) f32.add f32.mul f32.const 0x1.a01a02p-16 (;=2.48016e-05;) f32.add f32.mul f32.const -0x1.6c16c2p-10 (;=-0.00138889;) f32.add f32.mul f32.const 0x1.555556p-5 (;=0.0416667;) f32.add f32.mul local.set 7 block ;; label = @4 local.get 2 i32.const 1050253721 i32.gt_u br_if 0 (;@4;) f32.const 0x1p+0 (;=1;) local.get 5 f32.const 0x1p-1 (;=0.5;) f32.mul local.get 5 local.get 7 f32.mul local.get 6 local.get 0 f32.mul f32.sub f32.sub f32.sub f32.neg local.set 0 br 3 (;@1;) end f32.const 0x1p+0 (;=1;) f32.const 0x1.2p-2 (;=0.28125;) local.get 2 i32.const -16777216 i32.add f32.reinterpret_i32 local.get 2 i32.const 1061683200 i32.gt_u select local.tee 8 f32.sub local.get 5 local.get 7 f32.mul local.get 6 local.get 0 f32.mul f32.sub local.get 5 f32.const 0x1p-1 (;=0.5;) f32.mul local.get 8 f32.sub f32.sub f32.add local.set 5 end local.get 5 f32.neg local.set 0 br 1 (;@1;) end local.get 0 i32.reinterpret_f32 i32.const 2147483647 i32.and i32.const 838860799 i32.gt_u local.set 2 block ;; label = @2 block ;; label = @3 local.get 0 f32.abs f32.const 0x1p+31 (;=2.14748e+09;) f32.lt i32.eqz br_if 0 (;@3;) local.get 0 i32.trunc_f32_s local.set 3 br 1 (;@2;) end i32.const -2147483648 local.set 3 end block ;; label = @2 local.get 2 br_if 0 (;@2;) local.get 3 i32.eqz br_if 1 (;@1;) end local.get 0 local.get 0 local.get 0 local.get 0 f32.mul local.tee 5 f32.neg f32.mul local.tee 6 f32.const -0x1.555556p-3 (;=-0.166667;) f32.mul local.get 5 local.get 1 f32.load offset=12 local.tee 7 f32.const 0x1p-1 (;=0.5;) f32.mul local.get 6 local.get 5 local.get 5 local.get 5 local.get 5 f32.const 0x1.5d93a6p-33 (;=1.58969e-10;) f32.mul f32.const -0x1.ae5e68p-26 (;=-2.50508e-08;) f32.add f32.mul f32.const 0x1.71de36p-19 (;=2.75573e-06;) f32.add f32.mul f32.const -0x1.a01a02p-13 (;=-0.000198413;) f32.add f32.mul f32.const 0x1.111112p-7 (;=0.00833333;) f32.add f32.mul f32.add f32.mul local.get 7 f32.sub f32.add f32.sub local.set 0 end local.get 1 i32.const 16 i32.add global.set $__stack_pointer local.get 0) (table (;0;) 1 1 funcref) (memory (;0;) 1) (global $__stack_pointer (mut i32) (i32.const 5376)) (global (;1;) i32 (i32.const 1276)) (global (;2;) i32 (i32.const 5376)) (export "memory" (memory 0)) (export "__wasm_apply_data_relocs" (func $__wasm_apply_data_relocs)) (export "entrypoint" (func $cubic_main)) (export "main" (func $__original_main)) (export "__data_end" (global 1)) (export "__heap_base" (global 2)) (data $.rodata (i32.const 1024) "\00\00\80?\00\00\c0?\00\00\00\00\dc\cf\d15\00\00\00\00\00\c0\15?\00\00\00\00\00\00\00\00\00\0f\c9?\00\0fI@\00\cb\96@\00\0f\c9@\00S\fb@\00\cb\16A\00\ed/A\00\0fIA\001bA\00S{A\00:\8aA\00\cb\96A\00\5c\a3A\00\ed\afA\00~\bcA\00\0f\c9A\00\a0\d5A\001\e2A\00\c2\eeA\00S\fbA\00\f2\03B\00:\0aB\00\83\10B\00\cb\16B\00\14\1dB\00\5c#B\00\a5)B\00\ed/B\0066B\00~