UniformSampleCone 2

Time bar (total: 8.5s)

start0.0ms (0.0%)

Memory
1.2MiB live, 1.2MiB allocated; 0ms collecting garbage

analyze246.0ms (2.9%)

Memory
-1.1MiB live, 322.5MiB allocated; 18ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0.0%0.0%0.0%100.0%0.0%0.0%0.0%0
0.0%0.0%0.0%100.0%0.0%0.0%0.0%1
0.0%0.0%0.0%100.0%0.0%0.0%0.0%2
0.0%0.0%0.0%100.0%0.0%0.0%0.0%3
0.0%0.0%0.0%100.0%0.0%0.0%0.0%4
0.0%0.0%0.0%100.0%0.0%0.0%0.0%5
25.0%0.0%0.0%100.0%0.0%0.0%0.0%6
25.0%0.0%0.0%100.0%0.0%0.0%0.0%7
25.0%0.0%0.0%100.0%0.0%0.0%0.0%8
25.0%0.0%0.0%100.0%0.0%0.0%0.0%9
25.0%0.0%0.0%100.0%0.0%0.0%0.0%10
37.5%0.0%0.0%100.0%0.0%0.0%0.0%11
56.2%0.0%0.0%100.0%0.0%0.0%0.0%12
Compiler

Compiled 113 to 52 computations (54.0% saved)

sample717.0ms (8.4%)

Memory
-42.4MiB live, 636.1MiB allocated; 100ms collecting garbage
Samples
425.0ms8 252×0valid
0.0ms1valid
Precisions
Click to see histograms. Total time spent on operations: 72.0ms
Sinu: 23.0ms (31.8% of total, 0.0 MiB)
Cosu: 19.0ms (26.3% of total, 0.0 MiB)
Mul: 14.0ms (19.4% of total, 0.0 MiB)
Sub: 5.0ms (6.9% of total, 0.0 MiB)
Sqrt: 5.0ms (6.9% of total, 0.0 MiB)
Add: 4.0ms (5.5% of total, 0.0 MiB)
Le: 1.0ms (1.4% of total, 0.0 MiB)
And: 1.0ms (1.4% of total, 0.0 MiB)
adjust: 0.0ms (0.0% of total, 0.0 MiB)
Assert: 0.0ms (0.0% of total, 0.0 MiB)
Bogosity

preprocess30.0ms (0.4%)

Memory
2.1MiB live, 34.0MiB allocated; 2ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02451344
113731340
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.1%
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
Compiler

Compiled 130 to 52 computations (60.0% saved)

sample0.0ms (0.0%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage
Calls
Call 1
Inputs
2
(PI )
1
Outputs
#s(literal 2 binary32)
#s(literal 13176795/4194304 binary32)
#s(literal 1 binary32)
Samples
0.0ms0valid
Compiler

Compiled 5 to 4 computations (20.0% saved)

series85.0ms (1.0%)

Memory
-0.2MiB live, 60.8MiB allocated; 3ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0131721066
Stop Event
iter-limit
Counts
26 → 243
Calls
Call 1
Inputs
%2 = (*.f32 uy #s(literal 2 binary32))
%3 = (PI.f32 )
%4 = (*.f32 %2 %3)
%5 = (cos.f32 %4)
%8 = (-.f32 #s(literal 1 binary32) ux)
%10 = (*.f32 %8 maxCos)
%11 = (*.f32 %10 ux)
%12 = (*.f32 %11 %11)
%13 = (-.f32 #s(literal 1 binary32) %12)
%14 = (sqrt.f32 %13)
%15 = (*.f32 %5 %14)
%17 = (*.f32 %15 xi)
%18 = (sin.f32 %4)
%19 = (*.f32 %18 %14)
%21 = (*.f32 %19 yi)
%22 = (+.f32 %17 %21)
%24 = (*.f32 %11 zi)
uy
#s(literal 2 binary32)
%2
%3
%4
%5
#s(literal 1 binary32)
ux
%8
maxCos
%10
%11
%12
%13
%14
%15
xi
%17
%18
%19
yi
%21
%22
zi
%24
(+.f32 %22 %24)
Outputs
%6 = (* uy 2)
%8 = (* %6 (PI ))
%9 = (cos %8)
%12 = (- 1 ux)
%14 = (* %12 maxCos)
%15 = (* %14 ux)
%16 = (* %15 %15)
%17 = (- 1 %16)
%18 = (sqrt %17)
%19 = (* %9 %18)
%20 = (* %19 xi)
%22 = (PI.f32 )
%24 = (*.f32 #s(literal 2 binary32) (*.f32 uy %22))
%25 = (cos.f32 %24)
%27 = (pow.f32 maxCos #s(literal 2 binary32))
%28 = (pow.f32 ux #s(literal 2 binary32))
%29 = (-.f32 #s(literal 1 binary32) ux)
%30 = (pow.f32 %29 #s(literal 2 binary32))
%31 = (*.f32 %28 %30)
%32 = (*.f32 %27 %31)
%34 = (sqrt.f32 (-.f32 #s(literal 1 binary32) %32))
%35 = (*.f32 %25 %34)
%36 = (*.f32 xi %35)
%38 = (sin %8)
%39 = (* %38 %18)
%41 = (* %39 yi)
%42 = (+ %20 %41)
%43 = (sin.f32 %24)
%44 = (*.f32 %43 %34)
%45 = (*.f32 yi %44)
%47 = (fma.f32 xi %35 %45)
%50 = (* %15 zi)
%51 = (+ %42 %50)
%52 = (*.f32 zi %29)
%53 = (*.f32 ux %52)
%54 = (fma.f32 maxCos %53 %45)
%58 = (/.f32 %45 xi)
%62 = (*.f32 maxCos %53)
%81 = (fma.f32 maxCos %53 %36)
%83 = (/.f32 %36 yi)
%105 = (*.f32 ux %29)
%112 = (*.f32 maxCos %105)
%121 = (*.f32 #s(literal -1 binary32) ux)
%125 = (*.f32 maxCos ux)
%126 = (*.f32 #s(literal -1 binary32) %125)
%127 = (+.f32 maxCos %126)
%132 = (*.f32 %27 %28)
%135 = (*.f32 %27 ux)
%169 = (pow.f32 maxCos #s(literal 4 binary32))
%170 = (fma.f32 #s(literal 1/4 binary32) %169 %27)
%184 = (*.f32 %27 %25)
%191 = (*.f32 %25 %170)
%199 = (*.f32 xi %25)
%205 = (*.f32 %27 %199)
%212 = (*.f32 xi %191)
%226 = (*.f32 %27 %43)
%233 = (*.f32 %43 %170)
%241 = (*.f32 yi %43)
%247 = (*.f32 %27 %241)
%254 = (*.f32 yi %233)
%262 = (fma.f32 xi %25 %241)
%265 = (fma.f32 #s(literal -1/2 binary32) %205 (*.f32 #s(literal -1/2 binary32) %247))
%270 = (fma.f32 %27 %199 %247)
%273 = (fma.f32 #s(literal -1/2 binary32) %205 (fma.f32 #s(literal -1/2 binary32) %247 (*.f32 ux %270)))
%288 = (*.f32 ux zi)
%289 = (*.f32 maxCos %288)
%291 = (*.f32 maxCos zi)
%308 = (/.f32 #s(literal 1 binary32) ux)
%313 = (/.f32 maxCos ux)
%314 = (fma.f32 #s(literal -1 binary32) maxCos %313)
%322 = (pow.f32 ux #s(literal 4 binary32))
%323 = (*.f32 %27 %322)
%325 = (/.f32 %27 ux)
%326 = (fma.f32 #s(literal -2 binary32) %325 %27)
%329 = (/.f32 %27 %28)
%331 = (fma.f32 #s(literal -2 binary32) %325 (+.f32 %329 %27))
%349 = (sqrt.f32 (neg.f32 %27))
%350 = (*.f32 %28 %349)
%352 = (*.f32 ux %349)
%353 = (/.f32 %27 %352)
%359 = (+.f32 (/.f32 %169 (pow.f32 %349 #s(literal 2 binary32))) %27)
%360 = (/.f32 %359 %350)
%366 = (*.f32 %27 %359)
%369 = (pow.f32 %349 #s(literal 3 binary32))
%370 = (*.f32 (pow.f32 ux #s(literal 3 binary32)) %369)
%377 = (*.f32 %25 %349)
%381 = (fma.f32 %25 %349 (/.f32 %184 %352))
%384 = (*.f32 %25 %359)
%385 = (/.f32 %384 %350)
%389 = (*.f32 %27 %384)
%395 = (*.f32 xi %377)
%398 = (/.f32 %205 %352)
%399 = (fma.f32 xi %377 %398)
%402 = (*.f32 xi %384)
%403 = (/.f32 %402 %350)
%407 = (*.f32 %27 %402)
%408 = (/.f32 %407 %370)
%413 = (*.f32 %43 %349)
%417 = (fma.f32 %43 %349 (/.f32 %226 %352))
%420 = (*.f32 %43 %359)
%421 = (/.f32 %420 %350)
%425 = (*.f32 %27 %420)
%431 = (*.f32 yi %413)
%434 = (/.f32 %247 %352)
%435 = (fma.f32 yi %413 %434)
%438 = (*.f32 yi %420)
%439 = (/.f32 %438 %350)
%443 = (*.f32 %27 %438)
%444 = (/.f32 %443 %370)
%449 = (fma.f32 xi %377 %431)
%452 = (+.f32 %398 %434)
%454 = (fma.f32 xi %377 (fma.f32 yi %413 %452))
%471 = (/.f32 %291 ux)
%480 = (fma.f32 xi %377 (fma.f32 yi %413 (+.f32 %471 %452)))
%505 = (*.f32 #s(literal 2 binary32) %27)
%527 = (/.f32 %27 %349)
%537 = (*.f32 ux %369)
%549 = (/.f32 %184 %349)
%568 = (/.f32 %205 %349)
%576 = (/.f32 %402 %349)
%587 = (/.f32 %226 %349)
%606 = (/.f32 %247 %349)
%614 = (/.f32 %438 %349)
%626 = (fma.f32 #s(literal -1 binary32) %568 (*.f32 #s(literal -1 binary32) %606))
%632 = (fma.f32 #s(literal -1/2 binary32) %576 (*.f32 #s(literal -1/2 binary32) %614))
%636 = (fma.f32 #s(literal -1 binary32) %568 (fma.f32 #s(literal -1 binary32) %606 (*.f32 #s(literal -1 binary32) (/.f32 %632 ux))))
%650 = (fma.f32 #s(literal -1 binary32) %568 (fma.f32 #s(literal -1 binary32) %606 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %407 %369) (*.f32 #s(literal -1/2 binary32) (/.f32 %443 %369))) ux) %632) ux))))
%677 = (pow.f32 uy #s(literal 2 binary32))
%678 = (pow.f32 %22 #s(literal 2 binary32))
%684 = (pow.f32 %22 #s(literal 4 binary32))
%693 = (pow.f32 %22 #s(literal 6 binary32))
%703 = (*.f32 %678 %34)
%708 = (*.f32 %684 %34)
%715 = (*.f32 %693 %34)
%724 = (*.f32 xi %34)
%726 = (*.f32 xi %703)
%730 = (*.f32 xi %708)
%747 = (pow.f32 %22 #s(literal 3 binary32))
%755 = (pow.f32 %22 #s(literal 5 binary32))
%765 = (pow.f32 %22 #s(literal 7 binary32))
%775 = (*.f32 %22 %34)
%779 = (*.f32 %747 %34)
%785 = (*.f32 %755 %34)
%793 = (*.f32 %765 %34)
%803 = (*.f32 yi %775)
%804 = (*.f32 uy %803)
%807 = (*.f32 yi %779)
%809 = (*.f32 #s(literal 2 binary32) %803)
%813 = (*.f32 yi %785)
%835 = (fma.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy %726) %809) %724)
%842 = (fma.f32 uy (fma.f32 #s(literal 2 binary32) %803 (*.f32 uy (fma.f32 #s(literal -2 binary32) %726 (*.f32 #s(literal -4/3 binary32) (*.f32 uy %807))))) %724)
%844 = (fma.f32 maxCos %53 %724)
%858 = (*.f32 #s(literal -1 binary32) %32)
%865 = (pow.f32 %29 #s(literal 4 binary32))
%866 = (*.f32 %322 %865)
%874 = (pow.f32 ux #s(literal 6 binary32))
%875 = (pow.f32 %29 #s(literal 6 binary32))
%885 = (*.f32 %25 %30)
%886 = (*.f32 %28 %885)
%891 = (*.f32 %25 %865)
%892 = (*.f32 %322 %891)
%899 = (*.f32 %25 %875)
%910 = (*.f32 %28 (*.f32 xi %885))
%915 = (*.f32 %322 (*.f32 xi %891))
%923 = (*.f32 %874 (*.f32 xi %899))
%932 = (*.f32 %43 %30)
%933 = (*.f32 %28 %932)
%938 = (*.f32 %43 %865)
%939 = (*.f32 %322 %938)
%946 = (*.f32 %43 %875)
%957 = (*.f32 %28 (*.f32 yi %932))
%962 = (*.f32 %322 (*.f32 yi %938))
%970 = (*.f32 %874 (*.f32 yi %946))
%980 = (fma.f32 #s(literal -1/2 binary32) %910 (*.f32 #s(literal -1/2 binary32) %957))
%989 = (fma.f32 #s(literal -1/2 binary32) %910 (fma.f32 #s(literal -1/2 binary32) %957 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %915 (*.f32 #s(literal -1/8 binary32) %962)))))
%1020 = (sqrt.f32 (neg.f32 %31))
%1021 = (*.f32 maxCos %1020)
%1023 = (*.f32 %27 %1020)
%1027 = (*.f32 maxCos (+.f32 %1020 (*.f32 #s(literal 1/2 binary32) (/.f32 #s(literal 1 binary32) %1023))))
%1029 = (/.f32 #s(literal 1/2 binary32) %1023)
%1033 = (*.f32 %169 (pow.f32 %1020 #s(literal 3 binary32)))
%1036 = (*.f32 maxCos (-.f32 (+.f32 %1020 %1029) (/.f32 #s(literal 1/8 binary32) %1033)))
%1041 = (*.f32 (pow.f32 maxCos #s(literal 6 binary32)) (pow.f32 %1020 #s(literal 5 binary32)))
%1049 = (*.f32 maxCos (-.f32 (+.f32 %1020 (+.f32 %1029 (*.f32 #s(literal 1/16 binary32) (/.f32 #s(literal 1 binary32) %1041)))) (*.f32 #s(literal 1/8 binary32) (/.f32 #s(literal 1 binary32) %1033))))
%1051 = (*.f32 %25 %1020)
%1052 = (*.f32 maxCos %1051)
%1055 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %25 %1023) %1051)
%1056 = (*.f32 maxCos %1055)
%1058 = (/.f32 %25 %1033)
%1060 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %1058 %1055))
%1065 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %1058 (fma.f32 #s(literal 1/16 binary32) (/.f32 %25 %1041) %1055)))
%1067 = (*.f32 xi %1051)
%1068 = (*.f32 maxCos %1067)
%1070 = (/.f32 %199 %1023)
%1071 = (fma.f32 #s(literal 1/2 binary32) %1070 %1067)
%1072 = (*.f32 maxCos %1071)
%1074 = (/.f32 %199 %1033)
%1076 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %1074 %1071))
%1078 = (/.f32 %199 %1041)
%1081 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %1074 (fma.f32 #s(literal 1/16 binary32) %1078 %1071)))
%1083 = (*.f32 %43 %1020)
%1084 = (*.f32 maxCos %1083)
%1087 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %43 %1023) %1083)
%1088 = (*.f32 maxCos %1087)
%1090 = (/.f32 %43 %1033)
%1092 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %1090 %1087))
%1097 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %1090 (fma.f32 #s(literal 1/16 binary32) (/.f32 %43 %1041) %1087)))
%1099 = (*.f32 yi %1083)
%1100 = (*.f32 maxCos %1099)
%1102 = (/.f32 %241 %1023)
%1103 = (fma.f32 #s(literal 1/2 binary32) %1102 %1099)
%1104 = (*.f32 maxCos %1103)
%1106 = (/.f32 %241 %1033)
%1108 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %1106 %1103))
%1110 = (/.f32 %241 %1041)
%1113 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %1106 (fma.f32 #s(literal 1/16 binary32) %1110 %1103)))
%1115 = (fma.f32 xi %1051 %1099)
%1116 = (*.f32 maxCos %1115)
%1119 = (fma.f32 #s(literal 1/2 binary32) %1070 (fma.f32 #s(literal 1/2 binary32) %1102 %1115))
%1120 = (*.f32 maxCos %1119)
%1123 = (fma.f32 #s(literal -1/8 binary32) %1074 (fma.f32 #s(literal -1/8 binary32) %1106 %1119))
%1124 = (*.f32 maxCos %1123)
%1129 = (fma.f32 #s(literal -1/8 binary32) %1074 (fma.f32 #s(literal -1/8 binary32) %1106 (fma.f32 #s(literal 1/16 binary32) %1078 (fma.f32 #s(literal 1/16 binary32) %1110 %1119))))
%1130 = (*.f32 maxCos %1129)
%1132 = (fma.f32 ux %52 %1115)
%1136 = (fma.f32 #s(literal 1/2 binary32) %1070 (fma.f32 #s(literal 1/2 binary32) %1102 %1132))
(approx uy #s(literal 0 binary32))
(approx xi xi)
(approx %20 %36)
(approx %42 %45)
(approx %42 %47)
(approx %51 %54)
(approx %51 (fma.f32 maxCos %53 %47))
(approx %42 (*.f32 xi (fma.f32 %25 %34 %58)))
(approx %51 (*.f32 xi (fma.f32 %25 %34 (+.f32 (/.f32 %62 xi) %58))))
(approx %42 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %35 (*.f32 #s(literal -1 binary32) %58)))))
(approx %51 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %35 (*.f32 #s(literal -1 binary32) (/.f32 %54 xi))))))
(approx yi yi)
(approx %51 %81)
(approx %42 (*.f32 yi (fma.f32 %43 %34 %83)))
(approx %51 (*.f32 yi (fma.f32 %43 %34 (+.f32 (/.f32 %62 yi) %83))))
(approx %42 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %44 (*.f32 #s(literal -1 binary32) %83)))))
(approx %51 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %44 (*.f32 #s(literal -1 binary32) (/.f32 %81 yi))))))
(approx zi zi)
(approx %50 %62)
(approx %51 (*.f32 zi (fma.f32 maxCos %105 (+.f32 (/.f32 %36 zi) (/.f32 %45 zi)))))
(approx %51 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %112 (*.f32 #s(literal -1 binary32) (/.f32 %47 zi))))))
(approx ux ux)
(approx %12 #s(literal 1 binary32))
(approx %12 (+.f32 #s(literal 1 binary32) %121))
(approx %14 maxCos)
(approx %14 %127)
(approx %15 %125)
(approx %15 (*.f32 ux %127))
(approx %16 %132)
(approx %16 (*.f32 %28 (fma.f32 #s(literal -2 binary32) %135 %27)))
(approx %16 (*.f32 %28 (fma.f32 ux (fma.f32 #s(literal -2 binary32) %27 %135) %27)))
(approx %17 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) %132)))
(approx %17 (+.f32 #s(literal 1 binary32) (*.f32 %28 (-.f32 (*.f32 #s(literal 2 binary32) %135) %27))))
(approx %17 (+.f32 #s(literal 1 binary32) (*.f32 %28 (-.f32 (*.f32 ux (-.f32 (*.f32 #s(literal -1 binary32) %135) (*.f32 #s(literal -2 binary32) %27))) %27))))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1/2 binary32) %132)))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %27 %135))))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %27 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %170) %27))))))
(approx %19 %25)
(approx %19 (+.f32 %25 (*.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %25)))))
(approx %19 (+.f32 %25 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %184 (*.f32 %27 (*.f32 ux %25))))))
(approx %19 (+.f32 %25 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %184 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %191) %184))))))
(approx %20 %199)
(approx %20 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %199)) %199))
(approx %20 (fma.f32 xi %25 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %205 (*.f32 %27 (*.f32 ux %199))))))
(approx %20 (fma.f32 xi %25 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %205 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %212) %205))))))
(approx %39 %43)
(approx %39 (+.f32 %43 (*.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %43)))))
(approx %39 (+.f32 %43 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %226 (*.f32 %27 (*.f32 ux %43))))))
(approx %39 (+.f32 %43 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %226 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %233) %226))))))
(approx %41 %241)
(approx %41 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %241)) %241))
(approx %41 (fma.f32 yi %43 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %247 (*.f32 %27 (*.f32 ux %241))))))
(approx %41 (fma.f32 yi %43 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %247 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %254) %247))))))
(approx %42 %262)
(approx %42 (fma.f32 xi %25 (fma.f32 yi %43 (*.f32 %28 %265))))
(approx %42 (fma.f32 xi %25 (fma.f32 yi %43 (*.f32 %28 %273))))
(approx %42 (fma.f32 xi %25 (fma.f32 yi %43 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %205 (fma.f32 #s(literal -1/2 binary32) %247 (*.f32 ux (fma.f32 ux (fma.f32 #s(literal -1/2 binary32) %212 (*.f32 #s(literal -1/2 binary32) %254)) %270))))))))
(approx %50 %289)
(approx %50 (*.f32 ux (fma.f32 #s(literal -1 binary32) %289 %291)))
(approx %51 (fma.f32 maxCos %288 %262))
(approx %51 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %291 %265))) %262))
(approx %51 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %291 %273))) %262))
(approx %12 %121)
(approx %12 (*.f32 ux (-.f32 %308 #s(literal 1 binary32))))
(approx %14 %126)
(approx %14 (*.f32 ux %314))
(approx %15 (*.f32 #s(literal -1 binary32) (*.f32 maxCos %28)))
(approx %15 (*.f32 %28 %314))
(approx %16 %323)
(approx %16 (*.f32 %322 %326))
(approx %16 (*.f32 %322 %331))
(approx %17 (*.f32 #s(literal -1 binary32) %323))
(approx %17 (*.f32 %322 (-.f32 (*.f32 #s(literal 2 binary32) %325) %27)))
(approx %17 (*.f32 %322 (-.f32 (*.f32 #s(literal -1 binary32) %329) %326)))
(approx %17 (*.f32 %322 (-.f32 (/.f32 #s(literal 1 binary32) %322) %331)))
(approx %18 %350)
(approx %18 (*.f32 %28 (+.f32 %349 %353)))
(approx %18 (*.f32 %28 (+.f32 %349 (fma.f32 #s(literal -1/2 binary32) %360 %353))))
(approx %18 (*.f32 %28 (+.f32 %349 (fma.f32 #s(literal -1/2 binary32) %360 (fma.f32 #s(literal 1/2 binary32) (/.f32 %366 %370) %353)))))
(approx %19 (*.f32 %28 %377))
(approx %19 (*.f32 %28 %381))
(approx %19 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %385 %381)))
(approx %19 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %385 (fma.f32 #s(literal 1/2 binary32) (/.f32 %389 %370) %381))))
(approx %20 (*.f32 %28 %395))
(approx %20 (*.f32 %28 %399))
(approx %20 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %403 %399)))
(approx %20 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %403 (fma.f32 #s(literal 1/2 binary32) %408 %399))))
(approx %39 (*.f32 %28 %413))
(approx %39 (*.f32 %28 %417))
(approx %39 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %421 %417)))
(approx %39 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %421 (fma.f32 #s(literal 1/2 binary32) (/.f32 %425 %370) %417))))
(approx %41 (*.f32 %28 %431))
(approx %41 (*.f32 %28 %435))
(approx %41 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %439 %435)))
(approx %41 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %439 (fma.f32 #s(literal 1/2 binary32) %444 %435))))
(approx %42 (*.f32 %28 %449))
(approx %42 (*.f32 %28 %454))
(approx %42 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %403 (fma.f32 #s(literal -1/2 binary32) %439 %454))))
(approx %42 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %403 (fma.f32 #s(literal -1/2 binary32) %439 (fma.f32 #s(literal 1/2 binary32) %408 (fma.f32 #s(literal 1/2 binary32) %444 %454))))))
(approx %50 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (*.f32 %28 zi))))
(approx %50 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %291 %471)))
(approx %51 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %291 %449)))
(approx %51 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %291 %480)))
(approx %51 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %291 (fma.f32 #s(literal -1/2 binary32) %403 (fma.f32 #s(literal -1/2 binary32) %439 %480)))))
(approx %51 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %291 (fma.f32 #s(literal -1/2 binary32) %403 (fma.f32 #s(literal -1/2 binary32) %439 (fma.f32 #s(literal 1/2 binary32) %408 (fma.f32 #s(literal 1/2 binary32) %444 %480)))))))
(approx %12 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 #s(literal 1 binary32) %308))))
(approx %14 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 maxCos (*.f32 #s(literal -1 binary32) %313)))))
(approx %16 (*.f32 %322 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %325 %505) ux) %27)))
(approx %17 (*.f32 %322 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 %325 %505) ux)) %27)))
(approx %17 (*.f32 %322 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (/.f32 #s(literal 1 binary32) %28) %27) ux)) %505) ux)) %27)))
(approx %18 (*.f32 %28 (+.f32 %349 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %527 (*.f32 #s(literal 1/2 binary32) (/.f32 %359 %352))) ux)))))
(approx %18 (*.f32 %28 (+.f32 %349 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %359 %349) (*.f32 #s(literal 1/2 binary32) (/.f32 %366 %537))) ux) (*.f32 #s(literal -1 binary32) %527)) ux)))))
(approx %19 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %549 (*.f32 #s(literal 1/2 binary32) (/.f32 %384 %352))) ux) %377)))
(approx %19 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %549 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %384 %349) (*.f32 #s(literal 1/2 binary32) (/.f32 %389 %537))) ux))) ux) %377)))
(approx %20 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %568 (*.f32 #s(literal 1/2 binary32) (/.f32 %402 %352))) ux) %395)))
(approx %20 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %568 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %576 (*.f32 #s(literal 1/2 binary32) (/.f32 %407 %537))) ux))) ux) %395)))
(approx %39 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %587 (*.f32 #s(literal 1/2 binary32) (/.f32 %420 %352))) ux) %413)))
(approx %39 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %587 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %420 %349) (*.f32 #s(literal 1/2 binary32) (/.f32 %425 %537))) ux))) ux) %413)))
(approx %41 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %606 (*.f32 #s(literal 1/2 binary32) (/.f32 %438 %352))) ux) %431)))
(approx %41 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %606 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %614 (*.f32 #s(literal 1/2 binary32) (/.f32 %443 %537))) ux))) ux) %431)))
(approx %42 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %626 ux) %449)))
(approx %42 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %636 ux) %449)))
(approx %42 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %650 ux) %449)))
(approx %51 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %291 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %291 %626) ux) %449))))
(approx %51 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %291 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %291 %636) ux) %449))))
(approx %51 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %291 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %291 %650) ux) %449))))
(approx uy uy)
(approx %6 (*.f32 #s(literal 2 binary32) uy))
(approx %8 %24)
(approx %9 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -2 binary32) (*.f32 %677 %678))))
(approx %9 (+.f32 #s(literal 1 binary32) (*.f32 %677 (fma.f32 #s(literal -2 binary32) %678 (*.f32 #s(literal 2/3 binary32) (*.f32 %677 %684))))))
(approx %9 (+.f32 #s(literal 1 binary32) (*.f32 %677 (fma.f32 #s(literal -2 binary32) %678 (*.f32 %677 (fma.f32 #s(literal -4/45 binary32) (*.f32 %677 %693) (*.f32 #s(literal 2/3 binary32) %684)))))))
(approx %19 %34)
(approx %19 (+.f32 %34 (*.f32 #s(literal -2 binary32) (*.f32 %677 %703))))
(approx %19 (+.f32 %34 (*.f32 %677 (fma.f32 #s(literal -2 binary32) %703 (*.f32 #s(literal 2/3 binary32) (*.f32 %677 %708))))))
(approx %19 (+.f32 %34 (*.f32 %677 (fma.f32 #s(literal -2 binary32) %703 (*.f32 %677 (fma.f32 #s(literal -4/45 binary32) (*.f32 %677 %715) (*.f32 #s(literal 2/3 binary32) %708)))))))
(approx %20 %724)
(approx %20 (fma.f32 #s(literal -2 binary32) (*.f32 %677 %726) %724))
(approx %20 (fma.f32 xi %34 (*.f32 %677 (fma.f32 #s(literal -2 binary32) %726 (*.f32 #s(literal 2/3 binary32) (*.f32 %677 %730))))))
(approx %20 (fma.f32 xi %34 (*.f32 %677 (fma.f32 #s(literal -2 binary32) %726 (*.f32 %677 (fma.f32 #s(literal -4/45 binary32) (*.f32 %677 (*.f32 xi %715)) (*.f32 #s(literal 2/3 binary32) %730)))))))
(approx %38 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %677 %747) (*.f32 #s(literal 2 binary32) %22))))
(approx %38 (*.f32 uy (fma.f32 #s(literal 2 binary32) %22 (*.f32 %677 (fma.f32 #s(literal -4/3 binary32) %747 (*.f32 #s(literal 4/15 binary32) (*.f32 %677 %755)))))))
(approx %38 (*.f32 uy (fma.f32 #s(literal 2 binary32) %22 (*.f32 %677 (fma.f32 #s(literal -4/3 binary32) %747 (*.f32 %677 (fma.f32 #s(literal -8/315 binary32) (*.f32 %677 %765) (*.f32 #s(literal 4/15 binary32) %755))))))))
(approx %39 (*.f32 #s(literal 2 binary32) (*.f32 uy %775)))
(approx %39 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %677 %779) (*.f32 #s(literal 2 binary32) %775))))
(approx %39 (*.f32 uy (fma.f32 #s(literal 2 binary32) %775 (*.f32 %677 (fma.f32 #s(literal -4/3 binary32) %779 (*.f32 #s(literal 4/15 binary32) (*.f32 %677 %785)))))))
(approx %39 (*.f32 uy (fma.f32 #s(literal 2 binary32) %775 (*.f32 %677 (fma.f32 #s(literal -4/3 binary32) %779 (*.f32 %677 (fma.f32 #s(literal -8/315 binary32) (*.f32 %677 %793) (*.f32 #s(literal 4/15 binary32) %785))))))))
(approx %41 (*.f32 #s(literal 2 binary32) %804))
(approx %41 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %677 %807) %809)))
(approx %41 (*.f32 uy (fma.f32 #s(literal 2 binary32) %803 (*.f32 %677 (fma.f32 #s(literal -4/3 binary32) %807 (*.f32 #s(literal 4/15 binary32) (*.f32 %677 %813)))))))
(approx %41 (*.f32 uy (fma.f32 #s(literal 2 binary32) %803 (*.f32 %677 (fma.f32 #s(literal -4/3 binary32) %807 (*.f32 %677 (fma.f32 #s(literal -8/315 binary32) (*.f32 %677 (*.f32 yi %793)) (*.f32 #s(literal 4/15 binary32) %813))))))))
(approx %42 (fma.f32 #s(literal 2 binary32) %804 %724))
(approx %42 %835)
(approx %42 %842)
(approx %51 %844)
(approx %51 (fma.f32 #s(literal 2 binary32) %804 %844))
(approx %51 (fma.f32 maxCos %53 %835))
(approx %51 (fma.f32 maxCos %53 %842))
(approx %19 %35)
(approx %39 %44)
(approx %14 (*.f32 maxCos %29))
(approx %15 %112)
(approx %16 %32)
(approx %17 (+.f32 #s(literal 1 binary32) %858))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1/2 binary32) %32)))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %31 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %866))))))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %31 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %866 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 (*.f32 %874 %875)))))))))
(approx %19 (+.f32 %25 (*.f32 #s(literal -1/2 binary32) (*.f32 %27 %886))))
(approx %19 (+.f32 %25 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %886 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %892))))))
(approx %19 (+.f32 %25 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %886 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %892 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 (*.f32 %874 %899)))))))))
(approx %20 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 %910) %199))
(approx %20 (fma.f32 xi %25 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %910 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %915))))))
(approx %20 (fma.f32 xi %25 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %910 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %915 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 %923))))))))
(approx %39 (+.f32 %43 (*.f32 #s(literal -1/2 binary32) (*.f32 %27 %933))))
(approx %39 (+.f32 %43 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %933 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %939))))))
(approx %39 (+.f32 %43 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %933 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %939 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 (*.f32 %874 %946)))))))))
(approx %41 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 %957) %241))
(approx %41 (fma.f32 yi %43 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %957 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %962))))))
(approx %41 (fma.f32 yi %43 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %957 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %962 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 %970))))))))
(approx %42 (fma.f32 xi %25 (fma.f32 yi %43 (*.f32 %27 %980))))
(approx %42 (fma.f32 xi %25 (fma.f32 yi %43 (*.f32 %27 %989))))
(approx %42 (fma.f32 xi %25 (fma.f32 yi %43 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %910 (fma.f32 #s(literal -1/2 binary32) %957 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %915 (fma.f32 #s(literal -1/8 binary32) %962 (*.f32 %27 (fma.f32 #s(literal -1/16 binary32) %923 (*.f32 #s(literal -1/16 binary32) %970))))))))))))
(approx %51 (fma.f32 maxCos %53 %262))
(approx %51 (fma.f32 maxCos (fma.f32 maxCos %980 %53) %262))
(approx %51 (fma.f32 maxCos (fma.f32 maxCos %989 %53) %262))
(approx %17 %858)
(approx %17 (*.f32 %27 (-.f32 (/.f32 #s(literal 1 binary32) %27) %31)))
(approx %18 %1021)
(approx %18 %1027)
(approx %18 %1036)
(approx %18 %1049)
(approx %19 %1052)
(approx %19 %1056)
(approx %19 %1060)
(approx %19 %1065)
(approx %20 %1068)
(approx %20 %1072)
(approx %20 %1076)
(approx %20 %1081)
(approx %39 %1084)
(approx %39 %1088)
(approx %39 %1092)
(approx %39 %1097)
(approx %41 %1100)
(approx %41 %1104)
(approx %41 %1108)
(approx %41 %1113)
(approx %42 %1116)
(approx %42 %1120)
(approx %42 %1124)
(approx %42 %1130)
(approx %51 (*.f32 maxCos %1132))
(approx %51 (*.f32 maxCos %1136))
(approx %51 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %1074 (fma.f32 #s(literal -1/8 binary32) %1106 %1136))))
(approx %51 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %1074 (fma.f32 #s(literal -1/8 binary32) %1106 (fma.f32 #s(literal 1/16 binary32) %1078 (fma.f32 #s(literal 1/16 binary32) %1110 %1136))))))
(approx %18 (*.f32 #s(literal -1 binary32) %1021))
(approx %18 (*.f32 #s(literal -1 binary32) %1027))
(approx %18 (*.f32 #s(literal -1 binary32) %1036))
(approx %18 (*.f32 #s(literal -1 binary32) %1049))
(approx %19 (*.f32 #s(literal -1 binary32) %1052))
(approx %19 (*.f32 #s(literal -1 binary32) %1056))
(approx %19 (*.f32 #s(literal -1 binary32) %1060))
(approx %19 (*.f32 #s(literal -1 binary32) %1065))
(approx %20 (*.f32 #s(literal -1 binary32) %1068))
(approx %20 (*.f32 #s(literal -1 binary32) %1072))
(approx %20 (*.f32 #s(literal -1 binary32) %1076))
(approx %20 (*.f32 #s(literal -1 binary32) %1081))
(approx %39 (*.f32 #s(literal -1 binary32) %1084))
(approx %39 (*.f32 #s(literal -1 binary32) %1088))
(approx %39 (*.f32 #s(literal -1 binary32) %1092))
(approx %39 (*.f32 #s(literal -1 binary32) %1097))
(approx %41 (*.f32 #s(literal -1 binary32) %1100))
(approx %41 (*.f32 #s(literal -1 binary32) %1104))
(approx %41 (*.f32 #s(literal -1 binary32) %1108))
(approx %41 (*.f32 #s(literal -1 binary32) %1113))
(approx %42 (*.f32 #s(literal -1 binary32) %1116))
(approx %42 (*.f32 #s(literal -1 binary32) %1120))
(approx %42 (*.f32 #s(literal -1 binary32) %1124))
(approx %42 (*.f32 #s(literal -1 binary32) %1130))
(approx %51 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %53 %1115))))
(approx %51 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %53 %1119))))
(approx %51 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %53 %1123))))
(approx %51 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %53 %1129))))
Calls

18 calls:

TimeVariablePoint
13.0ms
uy
0
3.0ms
ux
inf
3.0ms
maxCos
0
3.0ms
maxCos
inf
3.0ms
ux
0

rewrite120.0ms (1.4%)

Memory
-6.1MiB live, 58.4MiB allocated; 6ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
026327
044234
1143234
2609214
04324214
04361211
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
26 → 775
Calls
Call 1
Inputs
%2 = (*.f32 uy #s(literal 2 binary32))
%3 = (PI.f32 )
%4 = (*.f32 %2 %3)
%5 = (cos.f32 %4)
%8 = (-.f32 #s(literal 1 binary32) ux)
%10 = (*.f32 %8 maxCos)
%11 = (*.f32 %10 ux)
%12 = (*.f32 %11 %11)
%13 = (-.f32 #s(literal 1 binary32) %12)
%14 = (sqrt.f32 %13)
%15 = (*.f32 %5 %14)
%17 = (*.f32 %15 xi)
%18 = (sin.f32 %4)
%19 = (*.f32 %18 %14)
%21 = (*.f32 %19 yi)
%22 = (+.f32 %17 %21)
%24 = (*.f32 %11 zi)
uy
#s(literal 2 binary32)
%2
%3
%4
%5
#s(literal 1 binary32)
ux
%8
maxCos
%10
%11
%12
%13
%14
%15
xi
%17
%18
%19
yi
%21
%22
zi
%24
(+.f32 %22 %24)
Outputs
%7 = (+.f32 uy uy)
%11 = (neg.f32 uy)
%19 = (PI.f32 )
%21 = (+.f32 %19 %19)
%24 = (*.f32 #s(literal -2 binary32) uy)
%25 = (neg.f32 %24)
%27 = (neg.f32 %19)
%28 = (neg.f32 %27)
%30 = (*.f32 %19 uy)
%32 = (*.f32 #s(literal -2 binary32) %19)
%37 = (*.f32 uy %19)
%41 = (*.f32 %19 %7)
%51 = (*.f32 %30 #s(literal 1 binary32))
%53 = (*.f32 #s(literal 1 binary32) %30)
%62 = (*.f32 %30 #s(literal -2 binary32))
%64 = (cos.f32 %37)
%66 = (sin.f32 %37)
%69 = (sin.f32 %41)
%71 = (*.f32 %69 #s(literal 0 binary32))
%72 = (cos.f32 %41)
%73 = (neg.f32 %72)
%76 = (*.f32 %72 #s(literal 1 binary32))
%80 = (*.f32 %19 #s(literal -1/2 binary32))
%84 = (fabs.f32 %41)
%85 = (sin.f32 %84)
%87 = (sin.f32 %62)
%90 = (*.f32 #s(literal 0 binary32) %69)
%100 = (neg.f32 %84)
%101 = (*.f32 %19 #s(literal 1/2 binary32))
%104 = (fma.f32 #s(literal -2 binary32) uy #s(literal 1/2 binary32))
%105 = (*.f32 %19 %104)
%107 = (fabs.f32 %30)
%108 = (fma.f32 %107 #s(literal 2 binary32) %101)
%110 = (fma.f32 #s(literal 2 binary32) uy #s(literal 1/2 binary32))
%111 = (*.f32 %19 %110)
%119 = (neg.f32 ux)
%123 = (-.f32 #s(literal 1 binary32) ux)
%127 = (-.f32 ux #s(literal 1 binary32))
%130 = (neg.f32 maxCos)
%133 = (*.f32 maxCos %123)
%137 = (*.f32 %119 maxCos)
%138 = (neg.f32 %137)
%140 = (*.f32 maxCos ux)
%149 = (*.f32 %127 maxCos)
%151 = (*.f32 ux %123)
%157 = (*.f32 %133 ux)
%159 = (*.f32 %123 ux)
%164 = (*.f32 %140 #s(literal 1 binary32))
%166 = (*.f32 %140 %119)
%168 = (*.f32 #s(literal 1 binary32) %140)
%170 = (*.f32 ux %137)
%172 = (*.f32 %137 ux)
%176 = (*.f32 %119 %140)
%185 = (*.f32 %149 ux)
%188 = (*.f32 maxCos maxCos)
%190 = (fabs.f32 ux)
%191 = (*.f32 %190 %149)
%193 = (*.f32 %190 %133)
%195 = (fabs.f32 %149)
%196 = (*.f32 %119 %195)
%198 = (*.f32 ux %195)
%200 = (*.f32 %149 %190)
%202 = (*.f32 %195 %119)
%204 = (*.f32 %195 ux)
%206 = (*.f32 %133 %190)
%208 = (fabs.f32 %157)
%209 = (neg.f32 %208)
%210 = (neg.f32 %209)
%213 = (*.f32 %151 %133)
%215 = (fabs.f32 %140)
%217 = (*.f32 %127 %127)
%219 = (*.f32 ux ux)
%220 = (*.f32 %188 %219)
%223 = (*.f32 %157 ux)
%224 = (fabs.f32 %223)
%227 = (*.f32 %123 %223)
%230 = (*.f32 %157 maxCos)
%231 = (*.f32 %230 %123)
%232 = (fabs.f32 %231)
%234 = (*.f32 %230 %159)
%236 = (*.f32 %133 maxCos)
%239 = (*.f32 %133 %123)
%243 = (*.f32 %149 %151)
%245 = (*.f32 %149 %219)
%247 = (*.f32 %230 %127)
%249 = (*.f32 %236 %127)
%250 = (*.f32 %119 ux)
%260 = (fabs.f32 %127)
%263 = (*.f32 maxCos %223)
%271 = (*.f32 %236 %123)
%281 = (*.f32 %140 %185)
%307 = (*.f32 %223 %137)
%309 = (*.f32 %137 %223)
%321 = (*.f32 %149 %223)
%325 = (-.f32 %208 #s(literal -1 binary32))
%327 = (-.f32 %208 #s(literal 1 binary32))
%329 = (fma.f32 %149 ux #s(literal 1 binary32))
%331 = (fma.f32 %149 ux #s(literal -1 binary32))
%333 = (fma.f32 %140 %123 #s(literal 1 binary32))
%335 = (fma.f32 %140 %123 #s(literal -1 binary32))
%355 = (fma.f32 %149 %223 #s(literal 1 binary32))
%356 = (sqrt.f32 %355)
%357 = (neg.f32 %356)
%362 = (asin.f32 %157)
%363 = (fabs.f32 %362)
%370 = (asin.f32 %208)
%377 = (asin.f32 %185)
%462 = (-.f32 %362 %80)
%469 = (acos.f32 %208)
%476 = (acos.f32 %185)
%483 = (acos.f32 %157)
%658 = (*.f32 %355 %355)
%677 = (sin.f32 %363)
%680 = (sin.f32 %370)
%683 = (sin.f32 %377)
%686 = (sin.f32 %362)
%787 = (sqrt.f32 %356)
%789 = (*.f32 #s(literal 1 binary32) %356)
%792 = (*.f32 %356 #s(literal 1 binary32))
%794 = (cos.f32 %483)
%814 = (neg.f32 %357)
%832 = (fma.f32 %21 uy %377)
%833 = (cos.f32 %832)
%835 = (cos.f32 (fma.f32 %30 #s(literal -2 binary32) %377))
%836 = (+.f32 %833 %835)
%839 = (cos.f32 (+.f32 %362 %84))
%841 = (cos.f32 (fma.f32 %107 #s(literal 2 binary32) %377))
%842 = (+.f32 %839 %841)
%844 = (+.f32 %835 %833)
%847 = (cos.f32 (fma.f32 %30 #s(literal -2 binary32) %362))
%848 = (+.f32 %847 %835)
%851 = (cos.f32 (fma.f32 %107 #s(literal 2 binary32) %362))
%852 = (+.f32 %851 %841)
%854 = (fma.f32 %21 uy %362)
%855 = (cos.f32 %854)
%856 = (+.f32 %855 %833)
%859 = (cos.f32 (-.f32 %483 %111))
%861 = (cos.f32 (+.f32 %483 %111))
%862 = (-.f32 %859 %861)
%865 = (cos.f32 (fma.f32 %19 %110 %483))
%866 = (-.f32 %859 %865)
%868 = (+.f32 %483 %41)
%869 = (sin.f32 %868)
%871 = (sin.f32 (-.f32 %483 %41))
%872 = (+.f32 %869 %871)
%875 = (sin.f32 (-.f32 %483 %84))
%877 = (sin.f32 (+.f32 %483 %84))
%878 = (+.f32 %875 %877)
%880 = (+.f32 %871 %869)
%882 = (*.f32 %356 %72)
%1056 = (fma.f32 %21 uy %363)
%1058 = (-.f32 %41 %363)
%1062 = (fma.f32 %21 uy %370)
%1064 = (-.f32 %41 %370)
%1218 = (-.f32 %462 %41)
%1220 = (+.f32 %462 %41)
%1242 = (-.f32 %469 %41)
%1244 = (+.f32 %469 %41)
%1266 = (-.f32 %476 %41)
%1268 = (+.f32 %476 %41)
%1368 = (/.f32 %859 #s(literal 2 binary32))
%1373 = (*.f32 %76 %356)
%1375 = (*.f32 %356 %76)
%1383 = (/.f32 %841 #s(literal 2 binary32))
%1385 = (/.f32 %835 #s(literal 2 binary32))
%1386 = (/.f32 %833 #s(literal 2 binary32))
%1398 = (/.f32 %869 #s(literal 2 binary32))
%1399 = (/.f32 %871 #s(literal 2 binary32))
%1403 = (*.f32 xi %72)
%1405 = (*.f32 xi %356)
%1406 = (*.f32 %1405 %72)
%1410 = (*.f32 %72 xi)
%1457 = (*.f32 %76 %1405)
%1459 = (*.f32 %1405 %76)
%1469 = (neg.f32 %87)
%1475 = (cos.f32 (-.f32 %41 %483))
%1477 = (cos.f32 (fma.f32 %21 uy %483))
%1478 = (-.f32 %1475 %1477)
%1480 = (cos.f32 %868)
%1481 = (-.f32 %1475 %1480)
%1483 = (sin.f32 %832)
%1484 = (sin.f32 %854)
%1485 = (+.f32 %1483 %1484)
%1488 = (*.f32 %69 %356)
%1553 = (/.f32 %1475 #s(literal 2 binary32))
%1562 = (*.f32 %87 %356)
%1565 = (neg.f32 yi)
%1566 = (neg.f32 %1565)
%1568 = (*.f32 yi %356)
%1570 = (*.f32 yi %69)
%1573 = (*.f32 %1565 %356)
%1575 = (*.f32 %1568 %69)
%1580 = (neg.f32 %1573)
%1584 = (*.f32 %69 yi)
%1599 = (*.f32 %87 %1568)
%1601 = (fma.f32 %69 yi %1410)
%1602 = (*.f32 %356 %1601)
%1603 = (fma.f32 %72 xi %1584)
%1605 = (fma.f32 yi %69 %1403)
%1607 = (fma.f32 xi %72 %1570)
%1609 = (neg.f32 xi)
%1610 = (*.f32 %1609 %882)
%1614 = (*.f32 (neg.f32 %1609) %882)
%1618 = (*.f32 (neg.f32 (*.f32 %73 %356)) xi)
%1621 = (*.f32 (neg.f32 %73) %1405)
%1623 = (neg.f32 %1610)
%1705 = (neg.f32 %1602)
%1708 = (neg.f32 zi)
%1709 = (neg.f32 %1708)
%1711 = (*.f32 zi %133)
%1713 = (*.f32 zi %123)
%1715 = (*.f32 maxCos zi)
%1718 = (*.f32 %1708 ux)
%1720 = (*.f32 zi ux)
%1722 = (*.f32 %123 zi)
%1725 = (*.f32 zi %157)
%1728 = (neg.f32 %1718)
%1731 = (*.f32 %159 zi)
%1733 = (*.f32 %123 %1720)
%1735 = (*.f32 %140 zi)
%1738 = (*.f32 %133 zi)
%1740 = (*.f32 %1720 %137)
%1742 = (*.f32 %137 %1720)
%1750 = (*.f32 %149 %1720)
%1752 = (fma.f32 %1711 ux %1406)
%1754 = (fma.f32 %1568 %69 %1725)
%1758 = (fma.f32 %1405 %72 %1725)
%1761 = (fma.f32 %87 %1568 %1750)
%1767 = (fma.f32 %1711 ux %1602)
uy
#s(literal 2 binary32)
(*.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 4 binary32) uy))
(*.f32 #s(literal 1 binary32) %7)
(*.f32 #s(literal 2 binary32) uy)
(*.f32 uy #s(literal 2 binary32))
(-.f32 uy (*.f32 %11 #s(literal 1 binary32)))
(-.f32 uy (*.f32 #s(literal -1 binary32) uy))
(-.f32 uy %11)
(pow.f32 %7 #s(literal 1 binary32))
%7
%19
(*.f32 (neg.f32 %11) %21)
(*.f32 %25 %19)
(*.f32 %28 %7)
(*.f32 %30 #s(literal 2 binary32))
(*.f32 %11 %32)
(*.f32 %24 %27)
(*.f32 %27 %24)
(*.f32 %21 uy)
(*.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 4 binary32) %37))
(*.f32 %19 %25)
%41
(*.f32 %7 %28)
(*.f32 %7 %19)
(*.f32 #s(literal 2 binary32) (*.f32 #s(literal 1 binary32) %37))
(*.f32 #s(literal 2 binary32) %30)
(*.f32 #s(literal 2 binary32) %37)
(*.f32 uy (neg.f32 %32))
(*.f32 uy %21)
(fma.f32 %30 #s(literal 1 binary32) %51)
(fma.f32 #s(literal 1 binary32) %30 %53)
(fma.f32 %19 uy %30)
(fma.f32 uy %19 %37)
(pow.f32 %41 #s(literal 1 binary32))
(+.f32 %51 %51)
(+.f32 %53 %53)
(+.f32 %30 %30)
(+.f32 %37 %37)
(neg.f32 %62)
(-.f32 (*.f32 %64 %64) (*.f32 %66 %66))
(-.f32 %71 (*.f32 %73 #s(literal 1 binary32)))
(-.f32 %71 (neg.f32 %76))
(-.f32 %71 (*.f32 %72 (sin.f32 %80)))
(fma.f32 %85 #s(literal 0 binary32) %76)
(fma.f32 %87 #s(literal 0 binary32) %76)
(fma.f32 %69 #s(literal 0 binary32) %76)
(fma.f32 #s(literal 1 binary32) %72 %90)
(pow.f32 %72 #s(literal 1 binary32))
(+.f32 (*.f32 %87 #s(literal 0 binary32)) %76)
(+.f32 (*.f32 %85 #s(literal 0 binary32)) %76)
(+.f32 (*.f32 #s(literal 1 binary32) %72) %90)
(+.f32 %71 %76)
(sin.f32 (+.f32 %100 %101))
(sin.f32 %105)
(sin.f32 %108)
(sin.f32 %111)
(cos.f32 (neg.f32 %100))
(cos.f32 %100)
(cos.f32 %62)
(cos.f32 %84)
%72
#s(literal 1 binary32)
ux
(/.f32 (fma.f32 %119 #s(literal 2 binary32) #s(literal 2 binary32)) #s(literal 2 binary32))
(-.f32 %119 #s(literal -1 binary32))
%123
(pow.f32 %123 #s(literal 1 binary32))
(+.f32 %119 #s(literal 1 binary32))
(+.f32 #s(literal 1 binary32) %119)
(neg.f32 %127)
maxCos
(*.f32 %130 %127)
(*.f32 %127 %130)
%133
(*.f32 %123 maxCos)
(-.f32 maxCos (*.f32 %130 %119))
(-.f32 maxCos %138)
(-.f32 maxCos %140)
(fma.f32 %130 ux maxCos)
(fma.f32 %119 maxCos maxCos)
(fma.f32 maxCos %119 maxCos)
(fma.f32 ux %130 maxCos)
(pow.f32 %133 #s(literal 1 binary32))
(+.f32 %137 maxCos)
(+.f32 maxCos %137)
(neg.f32 %149)
(*.f32 %151 maxCos)
(*.f32 %149 %119)
(*.f32 %140 %123)
(*.f32 %119 %149)
(*.f32 %127 %137)
%157
(*.f32 maxCos %151)
(*.f32 maxCos %159)
(*.f32 %123 %138)
(*.f32 %123 %140)
(*.f32 ux %133)
(fma.f32 %140 %119 %164)
(fma.f32 %140 #s(literal 1 binary32) %166)
(fma.f32 %119 %140 %168)
(fma.f32 maxCos ux %170)
(fma.f32 maxCos ux %172)
(fma.f32 ux maxCos %170)
(fma.f32 ux maxCos %172)
(fma.f32 #s(literal 1 binary32) %140 %176)
(pow.f32 %157 #s(literal 1 binary32))
(+.f32 %166 %164)
(+.f32 %164 %166)
(+.f32 %176 %168)
(+.f32 %168 %176)
(+.f32 %140 %170)
(+.f32 %140 %172)
(neg.f32 %185)
(*.f32 (*.f32 %151 %151) %188)
(*.f32 %191 %191)
(*.f32 %193 %193)
(*.f32 %196 %196)
(*.f32 %198 %198)
(*.f32 %200 %200)
(*.f32 %202 %202)
(*.f32 %204 %204)
(*.f32 %206 %206)
(*.f32 %210 %210)
(*.f32 %210 %208)
(*.f32 (fabs.f32 %213) %215)
(*.f32 (fabs.f32 %217) (fabs.f32 %220))
(*.f32 %224 %195)
(*.f32 (fabs.f32 maxCos) (fabs.f32 %227))
(*.f32 %232 %190)
%234
(*.f32 %213 %140)
(*.f32 %236 (*.f32 %123 %219))
(*.f32 %239 (*.f32 maxCos %219))
(*.f32 %151 %230)
(*.f32 %243 %137)
(*.f32 %245 %149)
(*.f32 %247 %119)
(*.f32 %249 %250)
(*.f32 %220 %217)
(*.f32 %188 (*.f32 %217 %219))
(*.f32 %188 (*.f32 %159 %159))
(*.f32 %217 %220)
(*.f32 %209 %209)
(*.f32 %149 %245)
(*.f32 %260 (*.f32 %215 %208))
(*.f32 %260 (fabs.f32 %263))
(*.f32 %195 (*.f32 %195 %219))
(*.f32 %195 (*.f32 %190 %208))
(*.f32 %195 %224)
(*.f32 %190 (*.f32 %190 %271))
(*.f32 %190 (*.f32 %195 %208))
(*.f32 %190 %232)
(*.f32 %231 ux)
(*.f32 %223 %133)
(*.f32 %140 %213)
(*.f32 %119 %247)
(*.f32 %127 %281)
(*.f32 %219 %271)
(*.f32 %271 %219)
(*.f32 %208 %210)
(*.f32 %208 %208)
(*.f32 %185 %185)
(*.f32 %157 %157)
(*.f32 %133 %223)
(*.f32 maxCos (*.f32 %239 %219))
(*.f32 maxCos (*.f32 %159 %157))
(*.f32 maxCos %227)
(*.f32 %123 (*.f32 %123 %220))
(*.f32 %123 (*.f32 %230 ux))
(*.f32 %123 (*.f32 %236 %219))
(*.f32 %123 (*.f32 %137 %185))
(*.f32 %123 %263)
(*.f32 ux %231)
(sqrt.f32 (*.f32 %234 %234))
(fma.f32 %223 maxCos %307)
(fma.f32 %140 %157 %309)
(fma.f32 maxCos %223 %309)
(fma.f32 ux %230 %309)
(pow.f32 %209 #s(literal 2 binary32))
(pow.f32 %208 #s(literal 2 binary32))
(pow.f32 %185 #s(literal 2 binary32))
(pow.f32 %234 #s(literal 1 binary32))
(pow.f32 %157 #s(literal 2 binary32))
(+.f32 (*.f32 %223 maxCos) %307)
(+.f32 %263 %309)
(fabs.f32 %321)
(fabs.f32 %234)
(neg.f32 %321)
(*.f32 (neg.f32 %325) %327)
(*.f32 (neg.f32 %329) %331)
(*.f32 (neg.f32 %333) %335)
(*.f32 (+.f32 #s(literal 1 binary32) %209) (-.f32 #s(literal 1 binary32) %209))
(*.f32 (+.f32 #s(literal 1 binary32) %208) (-.f32 #s(literal 1 binary32) %208))
(*.f32 (+.f32 #s(literal 1 binary32) %185) (-.f32 #s(literal 1 binary32) %185))
(*.f32 (+.f32 #s(literal 1 binary32) %157) (-.f32 #s(literal 1 binary32) %157))
(*.f32 %325 (neg.f32 %327))
(*.f32 %329 (neg.f32 %331))
(*.f32 %333 (neg.f32 %335))
(*.f32 %357 %357)
(*.f32 %356 %356)
(/.f32 (fma.f32 %321 #s(literal 2 binary32) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %363 %363)) (cos.f32 (-.f32 %363 %363))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %363 %370)) (cos.f32 (-.f32 %363 %370))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %363 %377)) (cos.f32 (-.f32 %363 %377))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %363 %362)) (cos.f32 (-.f32 %363 %362))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %370 %363)) (cos.f32 (-.f32 %370 %363))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %370 %370)) (cos.f32 (-.f32 %370 %370))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %370 %377)) (cos.f32 (-.f32 %370 %377))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %370 %362)) (cos.f32 (-.f32 %370 %362))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %377 %363)) (cos.f32 (-.f32 %377 %363))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %377 %370)) (cos.f32 (-.f32 %377 %370))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %377 %377)) (cos.f32 (-.f32 %377 %377))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %377 %362)) (cos.f32 (-.f32 %377 %362))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %362 %363)) (cos.f32 (-.f32 %362 %363))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %362 %370)) (cos.f32 (-.f32 %362 %370))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %362 %377)) (cos.f32 (-.f32 %362 %377))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %362 %362)) (cos.f32 (-.f32 %362 %362))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %462 %462)) (cos.f32 (+.f32 %462 %462))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %462 %469)) (cos.f32 (+.f32 %462 %469))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %462 %476)) (cos.f32 (+.f32 %462 %476))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %462 %483)) (cos.f32 (+.f32 %462 %483))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %469 %462)) (cos.f32 (+.f32 %469 %462))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %469 %469)) (cos.f32 (+.f32 %469 %469))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %469 %476)) (cos.f32 (+.f32 %469 %476))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %469 %483)) (cos.f32 (+.f32 %469 %483))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %476 %462)) (cos.f32 (+.f32 %476 %462))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %476 %469)) (cos.f32 (+.f32 %476 %469))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %476 %476)) (cos.f32 (+.f32 %476 %476))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %476 %483)) (cos.f32 (+.f32 %476 %483))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %483 %462)) (cos.f32 (+.f32 %483 %462))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %483 %469)) (cos.f32 (+.f32 %483 %469))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %483 %476)) (cos.f32 (+.f32 %483 %476))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %483 %483)) (cos.f32 (+.f32 %483 %483))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %462 %363)) (sin.f32 (+.f32 %462 %363))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %462 %370)) (sin.f32 (+.f32 %462 %370))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %462 %377)) (sin.f32 (+.f32 %462 %377))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %462 %362)) (sin.f32 (+.f32 %462 %362))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %469 %363)) (sin.f32 (+.f32 %469 %363))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %469 %370)) (sin.f32 (+.f32 %469 %370))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %469 %377)) (sin.f32 (+.f32 %469 %377))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %469 %362)) (sin.f32 (+.f32 %469 %362))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %476 %363)) (sin.f32 (+.f32 %476 %363))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %476 %370)) (sin.f32 (+.f32 %476 %370))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %476 %377)) (sin.f32 (+.f32 %476 %377))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %476 %362)) (sin.f32 (+.f32 %476 %362))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %483 %363)) (sin.f32 (+.f32 %483 %363))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %483 %370)) (sin.f32 (+.f32 %483 %370))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %483 %377)) (sin.f32 (+.f32 %483 %377))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %483 %362)) (sin.f32 (+.f32 %483 %362))) #s(literal 2 binary32))
(sqrt.f32 %658)
(-.f32 %321 #s(literal -1 binary32))
(-.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %462))))
(-.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %469))))
(-.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %476))))
(-.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %483))))
(-.f32 #s(literal 1 binary32) (*.f32 %677 %677))
(-.f32 #s(literal 1 binary32) (*.f32 %680 %680))
(-.f32 #s(literal 1 binary32) (*.f32 %683 %683))
(-.f32 #s(literal 1 binary32) (*.f32 %686 %686))
(-.f32 #s(literal 1 binary32) %234)
(fma.f32 (neg.f32 %217) %220 #s(literal 1 binary32))
(fma.f32 %210 %209 #s(literal 1 binary32))
(fma.f32 %130 %227 #s(literal 1 binary32))
(fma.f32 %230 (*.f32 %123 %119) #s(literal 1 binary32))
(fma.f32 %213 %137 #s(literal 1 binary32))
(fma.f32 %236 (*.f32 %123 %250) #s(literal 1 binary32))
(fma.f32 %239 (*.f32 maxCos %250) #s(literal 1 binary32))
(fma.f32 %151 (*.f32 maxCos %185) #s(literal 1 binary32))
(fma.f32 %243 %140 #s(literal 1 binary32))
(fma.f32 %250 %271 #s(literal 1 binary32))
(fma.f32 %245 %133 #s(literal 1 binary32))
(fma.f32 %247 ux #s(literal 1 binary32))
(fma.f32 %249 %219 #s(literal 1 binary32))
(fma.f32 %188 (*.f32 %217 %250) #s(literal 1 binary32))
(fma.f32 %217 (*.f32 %188 %250) #s(literal 1 binary32))
(fma.f32 %217 (neg.f32 %220) #s(literal 1 binary32))
(fma.f32 %209 %210 #s(literal 1 binary32))
(fma.f32 %209 %208 #s(literal 1 binary32))
(fma.f32 %149 (*.f32 %149 %250) #s(literal 1 binary32))
%355
(fma.f32 %260 (*.f32 %215 %209) #s(literal 1 binary32))
(fma.f32 %195 (*.f32 %195 %250) #s(literal 1 binary32))
(fma.f32 %195 (*.f32 %190 %209) #s(literal 1 binary32))
(fma.f32 %190 (*.f32 %195 %209) #s(literal 1 binary32))
(fma.f32 %231 %119 #s(literal 1 binary32))
(fma.f32 %223 %149 #s(literal 1 binary32))
(fma.f32 %140 %243 #s(literal 1 binary32))
(fma.f32 %119 %231 #s(literal 1 binary32))
(fma.f32 %127 %263 #s(literal 1 binary32))
(fma.f32 %219 %249 #s(literal 1 binary32))
(fma.f32 %271 %250 #s(literal 1 binary32))
(fma.f32 %208 %209 #s(literal 1 binary32))
(fma.f32 %185 %157 #s(literal 1 binary32))
(fma.f32 %157 %185 #s(literal 1 binary32))
(fma.f32 %133 %245 #s(literal 1 binary32))
(fma.f32 maxCos (*.f32 %239 %250) #s(literal 1 binary32))
(fma.f32 maxCos (*.f32 %159 %185) #s(literal 1 binary32))
(fma.f32 maxCos (*.f32 %123 %245) #s(literal 1 binary32))
(fma.f32 maxCos (neg.f32 %227) #s(literal 1 binary32))
(fma.f32 %123 (*.f32 %236 %250) #s(literal 1 binary32))
(fma.f32 %123 (*.f32 maxCos %245) #s(literal 1 binary32))
(fma.f32 %123 (*.f32 %230 %119) #s(literal 1 binary32))
(fma.f32 %123 (*.f32 %137 %157) #s(literal 1 binary32))
(fma.f32 %123 (neg.f32 %263) #s(literal 1 binary32))
(fma.f32 %123 %281 #s(literal 1 binary32))
(fma.f32 ux (*.f32 %271 %119) #s(literal 1 binary32))
(fma.f32 ux %247 #s(literal 1 binary32))
(pow.f32 %658 #s(literal 1/2 binary32))
(pow.f32 %356 #s(literal 2 binary32))
(pow.f32 %355 #s(literal 1 binary32))
(+.f32 %321 #s(literal 1 binary32))
(+.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %363))))
(+.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %370))))
(+.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %377))))
(+.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %362))))
(+.f32 #s(literal 1 binary32) %321)
(fabs.f32 (*.f32 %357 %356))
(fabs.f32 (*.f32 %356 %357))
(fabs.f32 %355)
(neg.f32 (fma.f32 %157 %157 #s(literal -1 binary32)))
(*.f32 %787 %787)
%356
(-.f32 %789 (*.f32 #s(literal 0 binary32) %686))
(fma.f32 %686 #s(literal 0 binary32) %792)
(fma.f32 #s(literal 0 binary32) %794 %789)
(pow.f32 %356 #s(literal 1 binary32))
(pow.f32 %355 #s(literal 1/2 binary32))
(+.f32 (*.f32 %686 #s(literal 0 binary32)) %792)
(+.f32 (*.f32 #s(literal 0 binary32) %794) %789)
(sin.f32 (+.f32 %363 %101))
(sin.f32 (+.f32 %370 %101))
(sin.f32 (+.f32 %377 %101))
(sin.f32 (acos.f32 %209))
(sin.f32 %462)
(sin.f32 %469)
(sin.f32 %476)
(sin.f32 %483)
(fabs.f32 %814)
(fabs.f32 %357)
(fabs.f32 %356)
(cos.f32 (neg.f32 %363))
(cos.f32 (neg.f32 %370))
(cos.f32 (fabs.f32 %363))
(cos.f32 (fabs.f32 %370))
(cos.f32 (asin.f32 %209))
(cos.f32 %377)
(cos.f32 %363)
(cos.f32 %370)
(cos.f32 %362)
(*.f32 %836 #s(literal 1/2 binary32))
(*.f32 %842 #s(literal 1/2 binary32))
(*.f32 %844 #s(literal 1/2 binary32))
(*.f32 %848 #s(literal 1/2 binary32))
(*.f32 %852 #s(literal 1/2 binary32))
(*.f32 %856 #s(literal 1/2 binary32))
(*.f32 %862 #s(literal 1/2 binary32))
(*.f32 %866 #s(literal 1/2 binary32))
(*.f32 %872 #s(literal 1/2 binary32))
(*.f32 %878 #s(literal 1/2 binary32))
(*.f32 %880 #s(literal 1/2 binary32))
%882
(*.f32 %72 %356)
(/.f32 (/.f32 %836 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (/.f32 %842 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (/.f32 %844 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (/.f32 %848 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (/.f32 %852 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (/.f32 %856 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (/.f32 %862 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (/.f32 %866 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (/.f32 %872 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (/.f32 %878 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (/.f32 %880 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (neg.f32 %836) #s(literal -2 binary32))
(/.f32 (neg.f32 %842) #s(literal -2 binary32))
(/.f32 (neg.f32 %844) #s(literal -2 binary32))
(/.f32 (neg.f32 %848) #s(literal -2 binary32))
(/.f32 (neg.f32 %852) #s(literal -2 binary32))
(/.f32 (neg.f32 %856) #s(literal -2 binary32))
(/.f32 (neg.f32 %862) #s(literal -2 binary32))
(/.f32 (neg.f32 %866) #s(literal -2 binary32))
(/.f32 (neg.f32 %872) #s(literal -2 binary32))
(/.f32 (neg.f32 %878) #s(literal -2 binary32))
(/.f32 (neg.f32 %880) #s(literal -2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %363 %100)) (cos.f32 (-.f32 %363 %100))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %363 %62)) (cos.f32 (-.f32 %363 %62))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %363 %84)) (cos.f32 (-.f32 %363 %84))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %363 %41)) (cos.f32 (-.f32 %363 %41))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %370 %100)) (cos.f32 (-.f32 %370 %100))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %370 %62)) (cos.f32 (-.f32 %370 %62))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %370 %84)) (cos.f32 (-.f32 %370 %84))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %370 %41)) (cos.f32 (-.f32 %370 %41))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %377 %100)) (cos.f32 (-.f32 %377 %100))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %377 %62)) (cos.f32 (-.f32 %377 %62))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %377 %84)) (cos.f32 (-.f32 %377 %84))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %377 %41)) (cos.f32 (-.f32 %377 %41))) #s(literal 2 binary32))
(/.f32 (+.f32 %841 %839) #s(literal 2 binary32))
(/.f32 (+.f32 %833 %855) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %100 %363)) (cos.f32 (-.f32 %100 %363))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %100 %370)) (cos.f32 (-.f32 %100 %370))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %100 %377)) (cos.f32 (-.f32 %100 %377))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %100 %362)) (cos.f32 (-.f32 %100 %362))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (fma.f32 %30 #s(literal -2 binary32) %363)) (cos.f32 (-.f32 %62 %363))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (fma.f32 %30 #s(literal -2 binary32) %370)) (cos.f32 (-.f32 %62 %370))) #s(literal 2 binary32))
(/.f32 (+.f32 %835 %847) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (fma.f32 %107 #s(literal 2 binary32) %363)) (cos.f32 (-.f32 %84 %363))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (fma.f32 %107 #s(literal 2 binary32) %370)) (cos.f32 (-.f32 %84 %370))) #s(literal 2 binary32))
(/.f32 (+.f32 %841 %851) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 %1056) (cos.f32 %1058)) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 %1062) (cos.f32 %1064)) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %462 %105)) (cos.f32 (+.f32 %462 %105))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %462 %108)) (cos.f32 (+.f32 %462 %108))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %462 %111)) (cos.f32 (+.f32 %462 %111))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %469 %105)) (cos.f32 (+.f32 %469 %105))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %469 %108)) (cos.f32 (+.f32 %469 %108))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %469 %111)) (cos.f32 (+.f32 %469 %111))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %476 %105)) (cos.f32 (+.f32 %476 %105))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %476 %108)) (cos.f32 (+.f32 %476 %108))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %476 %111)) (cos.f32 (+.f32 %476 %111))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %483 %105)) (cos.f32 (+.f32 %483 %105))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %483 %108)) (cos.f32 (+.f32 %483 %108))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %105 %462)) (cos.f32 (fma.f32 %19 %104 %462))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %105 %469)) (cos.f32 (fma.f32 %19 %104 %469))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %105 %476)) (cos.f32 (fma.f32 %19 %104 %476))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %105 %483)) (cos.f32 (fma.f32 %19 %104 %483))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %108 %462)) (cos.f32 (+.f32 %108 %462))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %108 %469)) (cos.f32 (+.f32 %108 %469))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %108 %476)) (cos.f32 (+.f32 %108 %476))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %108 %483)) (cos.f32 (+.f32 %108 %483))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %111 %462)) (cos.f32 (fma.f32 %19 %110 %462))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %111 %469)) (cos.f32 (fma.f32 %19 %110 %469))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %111 %476)) (cos.f32 (fma.f32 %19 %110 %476))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %462 %100)) (sin.f32 (+.f32 %462 %100))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %462 %62)) (sin.f32 (+.f32 %462 %62))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %462 %84)) (sin.f32 (+.f32 %462 %84))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 %1218) (sin.f32 %1220)) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %469 %100)) (sin.f32 (+.f32 %469 %100))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %469 %62)) (sin.f32 (+.f32 %469 %62))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %469 %84)) (sin.f32 (+.f32 %469 %84))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 %1242) (sin.f32 %1244)) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %476 %100)) (sin.f32 (+.f32 %476 %100))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %476 %62)) (sin.f32 (+.f32 %476 %62))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %476 %84)) (sin.f32 (+.f32 %476 %84))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 %1266) (sin.f32 %1268)) #s(literal 2 binary32))
(/.f32 (+.f32 %877 %875) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %105 %363)) (sin.f32 (fma.f32 %19 %104 %363))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %105 %370)) (sin.f32 (fma.f32 %19 %104 %370))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %105 %377)) (sin.f32 (fma.f32 %19 %104 %377))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %105 %362)) (sin.f32 (fma.f32 %19 %104 %362))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %108 %363)) (sin.f32 (+.f32 %108 %363))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %108 %370)) (sin.f32 (+.f32 %108 %370))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %108 %377)) (sin.f32 (+.f32 %108 %377))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %108 %362)) (sin.f32 (+.f32 %108 %362))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %111 %363)) (sin.f32 (fma.f32 %19 %110 %363))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %111 %370)) (sin.f32 (fma.f32 %19 %110 %370))) #s(literal 2 binary32))
(/.f32 %836 #s(literal 2 binary32))
(/.f32 %842 #s(literal 2 binary32))
(/.f32 %844 #s(literal 2 binary32))
(/.f32 %848 #s(literal 2 binary32))
(/.f32 %852 #s(literal 2 binary32))
(/.f32 %856 #s(literal 2 binary32))
(/.f32 %862 #s(literal 2 binary32))
(/.f32 %866 #s(literal 2 binary32))
(/.f32 %872 #s(literal 2 binary32))
(/.f32 %878 #s(literal 2 binary32))
(/.f32 %880 #s(literal 2 binary32))
(/.f32 %882 #s(literal 1 binary32))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %836))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %842))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %844))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %848))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %852))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %856))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %862))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %866))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %872))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %878))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %880))
(-.f32 %1368 (/.f32 %861 #s(literal 2 binary32)))
(-.f32 %1368 (/.f32 %865 #s(literal 2 binary32)))
(fma.f32 %71 %356 %1373)
(fma.f32 %356 %71 %1375)
(pow.f32 %882 #s(literal 1 binary32))
(+.f32 (*.f32 %356 %71) %1375)
(+.f32 (*.f32 %71 %356) %1373)
(+.f32 (/.f32 %839 #s(literal 2 binary32)) %1383)
(+.f32 %1385 %1386)
(+.f32 (/.f32 %847 #s(literal 2 binary32)) %1385)
(+.f32 (/.f32 %851 #s(literal 2 binary32)) %1383)
(+.f32 %1386 %1385)
(+.f32 (/.f32 %855 #s(literal 2 binary32)) %1386)
(+.f32 (/.f32 %875 #s(literal 2 binary32)) (/.f32 %877 #s(literal 2 binary32)))
(+.f32 %1398 %1399)
(+.f32 %1399 %1398)
xi
(*.f32 %1403 %356)
%1406
(*.f32 xi %882)
(*.f32 %882 xi)
(*.f32 %356 %1403)
(*.f32 %356 %1410)
(*.f32 %72 %1405)
(/.f32 (*.f32 xi %836) #s(literal 2 binary32))
(/.f32 (*.f32 xi %842) #s(literal 2 binary32))
(/.f32 (*.f32 xi %844) #s(literal 2 binary32))
(/.f32 (*.f32 xi %848) #s(literal 2 binary32))
(/.f32 (*.f32 xi %852) #s(literal 2 binary32))
(/.f32 (*.f32 xi %856) #s(literal 2 binary32))
(/.f32 (*.f32 xi %862) #s(literal 2 binary32))
(/.f32 (*.f32 xi %866) #s(literal 2 binary32))
(/.f32 (*.f32 xi %872) #s(literal 2 binary32))
(/.f32 (*.f32 xi %878) #s(literal 2 binary32))
(/.f32 (*.f32 xi %880) #s(literal 2 binary32))
(/.f32 (*.f32 %836 xi) #s(literal 2 binary32))
(/.f32 (*.f32 %842 xi) #s(literal 2 binary32))
(/.f32 (*.f32 %844 xi) #s(literal 2 binary32))
(/.f32 (*.f32 %848 xi) #s(literal 2 binary32))
(/.f32 (*.f32 %852 xi) #s(literal 2 binary32))
(/.f32 (*.f32 %856 xi) #s(literal 2 binary32))
(/.f32 (*.f32 %862 xi) #s(literal 2 binary32))
(/.f32 (*.f32 %866 xi) #s(literal 2 binary32))
(/.f32 (*.f32 %872 xi) #s(literal 2 binary32))
(/.f32 (*.f32 %878 xi) #s(literal 2 binary32))
(/.f32 (*.f32 %880 xi) #s(literal 2 binary32))
(fma.f32 %71 %1405 %1457)
(fma.f32 %1405 %71 %1459)
(pow.f32 %1406 #s(literal 1 binary32))
(+.f32 (*.f32 %1405 %71) %1459)
(+.f32 (*.f32 %71 %1405) %1457)
(*.f32 #s(literal 2 binary32) (*.f32 %66 %64))
(pow.f32 %69 #s(literal 1 binary32))
%69
(*.f32 %1469 %356)
(*.f32 %814 %69)
(*.f32 %87 %357)
(*.f32 %357 %87)
(*.f32 %1478 #s(literal 1/2 binary32))
(*.f32 %1481 #s(literal 1/2 binary32))
(*.f32 %1485 #s(literal 1/2 binary32))
(*.f32 %69 %814)
%1488
(*.f32 %356 %1469)
(*.f32 %356 %69)
(/.f32 (/.f32 %1478 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (/.f32 %1481 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (/.f32 %1485 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (neg.f32 %1478) #s(literal -2 binary32))
(/.f32 (neg.f32 %1481) #s(literal -2 binary32))
(/.f32 (neg.f32 %1485) #s(literal -2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %41 %462)) (cos.f32 (fma.f32 %21 uy %462))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %41 %469)) (cos.f32 (fma.f32 %21 uy %469))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %41 %476)) (cos.f32 (fma.f32 %21 uy %476))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 %1218) (cos.f32 %1220)) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 %1242) (cos.f32 %1244)) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 %1266) (cos.f32 %1268)) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 %1058) (sin.f32 %1056)) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 %1064) (sin.f32 %1062)) #s(literal 2 binary32))
(/.f32 (+.f32 %1484 %1483) #s(literal 2 binary32))
(/.f32 %1478 #s(literal 2 binary32))
(/.f32 %1481 #s(literal 2 binary32))
(/.f32 %1485 #s(literal 2 binary32))
(/.f32 %1488 #s(literal 1 binary32))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %1478))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %1481))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %1485))
(-.f32 %1553 (/.f32 %1477 #s(literal 2 binary32)))
(-.f32 %1553 (/.f32 %1480 #s(literal 2 binary32)))
(pow.f32 %1488 #s(literal 1 binary32))
(+.f32 (/.f32 %1483 #s(literal 2 binary32)) (/.f32 %1484 #s(literal 2 binary32)))
(neg.f32 %1562)
yi
(*.f32 %1566 %1488)
(*.f32 %1469 %1568)
(*.f32 %1570 %356)
(*.f32 %1565 %1562)
(*.f32 %87 %1573)
%1575
(*.f32 %1562 %1565)
(*.f32 yi %1488)
(*.f32 %1488 %1566)
(*.f32 %1488 yi)
(*.f32 %69 %1580)
(*.f32 %69 %1568)
(*.f32 %356 %1570)
(*.f32 %356 %1584)
(/.f32 (*.f32 yi %1478) #s(literal 2 binary32))
(/.f32 (*.f32 yi %1481) #s(literal 2 binary32))
(/.f32 (*.f32 yi %1485) #s(literal 2 binary32))
(/.f32 (*.f32 %1478 yi) #s(literal 2 binary32))
(/.f32 (*.f32 %1481 yi) #s(literal 2 binary32))
(/.f32 (*.f32 %1485 yi) #s(literal 2 binary32))
(pow.f32 %1575 #s(literal 1 binary32))
(neg.f32 %1599)
%1602
(*.f32 %356 %1603)
(*.f32 %356 %1605)
(*.f32 %356 %1607)
(-.f32 %1575 %1610)
(-.f32 %1406 %1599)
(fma.f32 %1566 %1488 %1614)
(fma.f32 %1566 %1488 %1618)
(fma.f32 %1566 %1488 %1621)
(fma.f32 %1566 %1488 %1623)
(fma.f32 %1566 %1488 %1406)
(fma.f32 %1469 %1568 %1614)
(fma.f32 %1469 %1568 %1618)
(fma.f32 %1469 %1568 %1621)
(fma.f32 %1469 %1568 %1623)
(fma.f32 %1469 %1568 %1406)
(fma.f32 %1570 %356 %1614)
(fma.f32 %1570 %356 %1618)
(fma.f32 %1570 %356 %1621)
(fma.f32 %1570 %356 %1623)
(fma.f32 %1570 %356 %1406)
(fma.f32 %1403 %356 %1575)
(fma.f32 %1565 %1562 %1614)
(fma.f32 %1565 %1562 %1618)
(fma.f32 %1565 %1562 %1621)
(fma.f32 %1565 %1562 %1623)
(fma.f32 %1565 %1562 %1406)
(fma.f32 %87 %1573 %1614)
(fma.f32 %87 %1573 %1618)
(fma.f32 %87 %1573 %1621)
(fma.f32 %87 %1573 %1623)
(fma.f32 %87 %1573 %1406)
(fma.f32 %1568 %69 %1614)
(fma.f32 %1568 %69 %1618)
(fma.f32 %1568 %69 %1621)
(fma.f32 %1568 %69 %1623)
(fma.f32 %1568 %69 %1406)
(fma.f32 %1405 %72 %1575)
(fma.f32 %1562 %1565 %1614)
(fma.f32 %1562 %1565 %1618)
(fma.f32 %1562 %1565 %1621)
(fma.f32 %1562 %1565 %1623)
(fma.f32 %1562 %1565 %1406)
(fma.f32 yi %1488 %1614)
(fma.f32 yi %1488 %1618)
(fma.f32 yi %1488 %1621)
(fma.f32 yi %1488 %1623)
(fma.f32 yi %1488 %1406)
(fma.f32 %1488 %1566 %1614)
(fma.f32 %1488 %1566 %1618)
(fma.f32 %1488 %1566 %1621)
(fma.f32 %1488 %1566 %1623)
(fma.f32 %1488 %1566 %1406)
(fma.f32 %1488 yi %1614)
(fma.f32 %1488 yi %1618)
(fma.f32 %1488 yi %1621)
(fma.f32 %1488 yi %1623)
(fma.f32 %1488 yi %1406)
(fma.f32 %69 %1580 %1614)
(fma.f32 %69 %1580 %1618)
(fma.f32 %69 %1580 %1621)
(fma.f32 %69 %1580 %1623)
(fma.f32 %69 %1580 %1406)
(fma.f32 %69 %1568 %1614)
(fma.f32 %69 %1568 %1618)
(fma.f32 %69 %1568 %1621)
(fma.f32 %69 %1568 %1623)
(fma.f32 %69 %1568 %1406)
(fma.f32 xi %882 %1575)
(fma.f32 %882 xi %1575)
(fma.f32 %356 %1570 %1614)
(fma.f32 %356 %1570 %1618)
(fma.f32 %356 %1570 %1621)
(fma.f32 %356 %1570 %1623)
(fma.f32 %356 %1570 %1406)
(fma.f32 %356 %1403 %1575)
(fma.f32 %356 %1584 %1614)
(fma.f32 %356 %1584 %1618)
(fma.f32 %356 %1584 %1621)
(fma.f32 %356 %1584 %1623)
(fma.f32 %356 %1584 %1406)
(fma.f32 %356 %1410 %1575)
(fma.f32 %72 %1405 %1575)
(pow.f32 %1602 #s(literal 1 binary32))
(+.f32 %1575 %1614)
(+.f32 %1575 %1618)
(+.f32 %1575 %1621)
(+.f32 %1575 %1623)
(+.f32 %1575 %1406)
(+.f32 %1406 %1575)
(neg.f32 %1705)
zi
(*.f32 %1709 %157)
(*.f32 %1711 ux)
(*.f32 %1713 %140)
(*.f32 %151 %1715)
(*.f32 %1708 %185)
(*.f32 %149 %1718)
(*.f32 %1720 %133)
(*.f32 %140 %1722)
(*.f32 %185 %1708)
%1725
(*.f32 %157 %1709)
(*.f32 %157 zi)
(*.f32 %133 %1728)
(*.f32 %133 %1720)
(*.f32 maxCos %1731)
(*.f32 maxCos %1733)
(*.f32 %123 %1735)
(*.f32 ux %1711)
(*.f32 ux %1738)
(fma.f32 %1720 maxCos %1740)
(fma.f32 %140 zi %1742)
(fma.f32 maxCos %1720 %1742)
(fma.f32 ux %1715 %1742)
(pow.f32 %1725 #s(literal 1 binary32))
(+.f32 (*.f32 %1720 maxCos) %1740)
(+.f32 %1735 %1742)
(neg.f32 %1750)
(-.f32 %1752 %1599)
(-.f32 %1754 %1610)
(-.f32 %1725 %1705)
(-.f32 %1602 %1750)
(-.f32 %1575 (neg.f32 %1758))
(-.f32 %1406 %1761)
(fma.f32 %1566 %1488 %1758)
(fma.f32 %1469 %1568 %1758)
(fma.f32 %1709 %157 %1602)
(fma.f32 %1570 %356 %1758)
%1767
(fma.f32 %1713 %140 %1602)
(fma.f32 %151 %1715 %1602)
(fma.f32 %1403 %356 %1754)
(fma.f32 %1565 %1562 %1758)
(fma.f32 %87 %1573 %1758)
(fma.f32 %1708 %185 %1602)
(fma.f32 %149 %1718 %1602)
(fma.f32 %1568 %69 %1758)
(fma.f32 %1720 %133 %1602)
(fma.f32 %140 %1722 %1602)
(fma.f32 %1405 %72 %1754)
(fma.f32 %1562 %1565 %1758)
(fma.f32 %185 %1708 %1602)
(fma.f32 zi %157 %1602)
(fma.f32 yi %1488 %1758)
(fma.f32 %1488 %1566 %1758)
(fma.f32 %1488 yi %1758)
(fma.f32 %69 %1580 %1758)
(fma.f32 %69 %1568 %1758)
(fma.f32 xi %882 %1754)
(fma.f32 %882 xi %1754)
(fma.f32 %356 %1601 %1725)
(fma.f32 %356 %1603 %1725)
(fma.f32 %356 %1605 %1725)
(fma.f32 %356 %1607 %1725)
(fma.f32 %356 %1570 %1758)
(fma.f32 %356 %1403 %1754)
(fma.f32 %356 %1584 %1758)
(fma.f32 %356 %1410 %1754)
(fma.f32 %157 %1709 %1602)
(fma.f32 %157 zi %1602)
(fma.f32 %133 %1728 %1602)
(fma.f32 %133 %1720 %1602)
(fma.f32 maxCos %1731 %1602)
(fma.f32 maxCos %1733 %1602)
(fma.f32 %123 %1735 %1602)
(fma.f32 ux %1711 %1602)
(fma.f32 ux %1738 %1602)
(fma.f32 %72 %1405 %1754)
(pow.f32 %1767 #s(literal 1 binary32))
(+.f32 %1752 %1575)
(+.f32 %1754 %1406)
(+.f32 %1725 %1602)
(+.f32 %1602 %1725)
(+.f32 %1575 %1758)
(+.f32 %1406 %1754)
(neg.f32 (+.f32 %1705 %1750))
(neg.f32 (-.f32 %1599 %1752))
(neg.f32 (-.f32 %1705 %1725))
(neg.f32 (-.f32 %1761 %1406))
(neg.f32 (-.f32 %1750 %1602))

reconstruct6.0ms (0.1%)

Memory
7.0MiB live, 7.0MiB allocated; 0ms collecting garbage

eval105.0ms (1.2%)

Memory
3.3MiB live, 189.0MiB allocated; 16ms collecting garbage
Compiler

Compiled 76 541 to 6 821 computations (91.1% saved)

prune32.0ms (0.4%)

Memory
2.8MiB live, 64.6MiB allocated; 8ms collecting garbage
Pruning

24 alts after pruning (24 fresh and 0 done)

PrunedKeptTotal
New978241 002
Fresh000
Picked101
Done000
Total979241 003
Accuracy
99.7%
Counts
1 003 → 24
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.1%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (*.f32 (PI.f32 ) (+.f32 uy uy))
(fma.f32 %2 (*.f32 (*.f32 maxCos ux) zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (fma.f32 (sin.f32 %17) yi (*.f32 (cos.f32 %17) xi))))
99.2%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (*.f32 (PI.f32 ) (+.f32 uy uy))
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (fma.f32 (sin.f32 %17) yi (*.f32 (cos.f32 %17) xi))))
98.9%
%2 = (PI.f32 )
%3 = (+.f32 %2 %2)
%7 = (-.f32 #s(literal 1 binary32) ux)
%28 = (*.f32 (*.f32 %7 maxCos) ux)
(+.f32 (+.f32 (*.f32 (/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) (+.f32 (cos.f32 (fma.f32 %3 uy (asin.f32 (*.f32 (*.f32 maxCos %7) ux)))) (cos.f32 (fma.f32 %3 uy (asin.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux))))))) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %2)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %28 %28)))) yi)) (*.f32 %28 zi))
99.1%
%0 = (PI.f32 )
%12 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%15 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %12 %12)))
(+.f32 (+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 %0 (fma.f32 #s(literal -2 binary32) uy #s(literal 1/2 binary32)))) %15) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %0)) %15) yi)) (*.f32 %12 zi))
99.1%
%3 = (PI.f32 )
%8 = (-.f32 #s(literal 1 binary32) ux)
%11 = (*.f32 (*.f32 %8 maxCos) ux)
%18 = (+.f32 %3 %3)
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))) xi) (*.f32 (/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) (+.f32 (sin.f32 (fma.f32 %18 uy (asin.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux)))) (sin.f32 (fma.f32 %18 uy (asin.f32 (*.f32 (*.f32 maxCos %8) ux))))))) yi)) (*.f32 %11 zi))
83.9%
%3 = (PI.f32 )
%8 = (-.f32 #s(literal 1 binary32) ux)
%11 = (*.f32 (*.f32 %8 maxCos) ux)
%22 = (acos.f32 (*.f32 (*.f32 maxCos %8) ux))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))) xi) (*.f32 (*.f32 (-.f32 (cos.f32 (-.f32 (*.f32 %3 (+.f32 uy uy)) %22)) (cos.f32 (fma.f32 (+.f32 %3 %3) uy %22))) #s(literal 1/2 binary32)) yi)) (*.f32 %11 zi))
99.1%
%3 = (PI.f32 )
%8 = (-.f32 #s(literal 1 binary32) ux)
%11 = (*.f32 (*.f32 %8 maxCos) ux)
%18 = (+.f32 %3 %3)
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))) xi) (*.f32 (*.f32 (+.f32 (sin.f32 (fma.f32 %18 uy (asin.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux)))) (sin.f32 (fma.f32 %18 uy (asin.f32 (*.f32 (*.f32 maxCos %8) ux))))) #s(literal 1/2 binary32)) yi)) (*.f32 %11 zi))
99.0%
%3 = (PI.f32 )
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
%18 = (*.f32 uy %3)
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) %14) xi) (*.f32 (*.f32 (*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 %18) (cos.f32 %18))) %14) yi)) (*.f32 %11 zi))
96.0%
%3 = (PI.f32 )
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
%23 = (pow.f32 uy #s(literal 2 binary32))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) %14) xi) (*.f32 (*.f32 (approx (sin (* (* uy 2) (PI ))) (*.f32 uy (fma.f32 #s(literal 2 binary32) %3 (*.f32 %23 (fma.f32 #s(literal -4/3 binary32) (pow.f32 %3 #s(literal 3 binary32)) (*.f32 #s(literal 4/15 binary32) (*.f32 %23 (pow.f32 %3 #s(literal 5 binary32))))))))) %14) yi)) (*.f32 %11 zi))
94.2%
%3 = (PI.f32 )
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) %14) xi) (*.f32 (*.f32 (approx (sin (* (* uy 2) (PI ))) (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (pow.f32 %3 #s(literal 3 binary32))) (*.f32 #s(literal 2 binary32) %3)))) %14) yi)) (*.f32 %11 zi))
97.3%
%3 = (PI.f32 )
%8 = (-.f32 #s(literal 1 binary32) ux)
%11 = (*.f32 (*.f32 %8 maxCos) ux)
%26 = (* (* (- 1 ux) maxCos) ux)
%39 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %8 #s(literal 2 binary32))))))
%42 = (pow.f32 uy #s(literal 2 binary32))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))) xi) (approx (* (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %26 %26)))) yi) (*.f32 uy (fma.f32 #s(literal 2 binary32) (*.f32 yi (*.f32 %3 %39)) (*.f32 %42 (fma.f32 #s(literal -4/3 binary32) (*.f32 yi (*.f32 (pow.f32 %3 #s(literal 3 binary32)) %39)) (*.f32 %42 (fma.f32 #s(literal -8/315 binary32) (*.f32 %42 (*.f32 yi (*.f32 (pow.f32 %3 #s(literal 7 binary32)) %39))) (*.f32 #s(literal 4/15 binary32) (*.f32 yi (*.f32 (pow.f32 %3 #s(literal 5 binary32)) %39))))))))))) (*.f32 %11 zi))
96.1%
%3 = (PI.f32 )
%8 = (-.f32 #s(literal 1 binary32) ux)
%11 = (*.f32 (*.f32 %8 maxCos) ux)
%26 = (* (* (- 1 ux) maxCos) ux)
%39 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %8 #s(literal 2 binary32))))))
%42 = (pow.f32 uy #s(literal 2 binary32))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))) xi) (approx (* (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %26 %26)))) yi) (*.f32 uy (fma.f32 #s(literal 2 binary32) (*.f32 yi (*.f32 %3 %39)) (*.f32 %42 (fma.f32 #s(literal -4/3 binary32) (*.f32 yi (*.f32 (pow.f32 %3 #s(literal 3 binary32)) %39)) (*.f32 #s(literal 4/15 binary32) (*.f32 %42 (*.f32 yi (*.f32 (pow.f32 %3 #s(literal 5 binary32)) %39)))))))))) (*.f32 %11 zi))
94.2%
%3 = (PI.f32 )
%8 = (-.f32 #s(literal 1 binary32) ux)
%11 = (*.f32 (*.f32 %8 maxCos) ux)
%26 = (* (* (- 1 ux) maxCos) ux)
%43 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %8 #s(literal 2 binary32))))))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))) xi) (approx (* (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %26 %26)))) yi) (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (*.f32 yi (*.f32 (pow.f32 %3 #s(literal 3 binary32)) %43))) (*.f32 #s(literal 2 binary32) (*.f32 yi (*.f32 %3 %43))))))) (*.f32 %11 zi))
95.5%
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%13 = (*.f32 (approx (* (- 1 ux) maxCos) maxCos) ux)
%16 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %13 %13)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %16) xi) (*.f32 (*.f32 (sin.f32 %4) %16) yi)) (*.f32 %13 zi))
98.5%
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (* (* (- 1 ux) maxCos) ux)
%20 = (pow.f32 maxCos #s(literal 2 binary32))
%31 = (sqrt.f32 (approx (- 1 (* %11 %11)) (*.f32 (pow.f32 ux #s(literal 4 binary32)) (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (/.f32 #s(literal 1 binary32) (pow.f32 ux #s(literal 2 binary32))) %20) ux)) (*.f32 #s(literal 2 binary32) %20)) ux)) %20))))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %31) xi) (*.f32 (*.f32 (sin.f32 %4) %31) yi)) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) zi))
93.8%
%10 = (PI.f32 )
%20 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%23 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %20 %20)))
(+.f32 (+.f32 (*.f32 (*.f32 (approx (cos (* (* uy 2) (PI ))) (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -2 binary32) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (pow.f32 %10 #s(literal 2 binary32)))))) %23) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %10)) %23) yi)) (*.f32 %20 zi))
98.6%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%26 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(+.f32 (approx (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (fma.f32 xi (cos.f32 %26) (*.f32 yi (sin.f32 %26)))) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) zi))
98.9%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%26 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
%31 = (-.f32 #s(literal 1 binary32) ux)
%36 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %31 #s(literal 2 binary32))))))
(+.f32 (approx (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (*.f32 xi (fma.f32 (cos.f32 %26) %36 (/.f32 (*.f32 yi (*.f32 (sin.f32 %26) %36)) xi)))) (*.f32 (*.f32 (*.f32 %31 maxCos) ux) zi))
98.6%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%33 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux))) (fma.f32 xi (cos.f32 %33) (*.f32 yi (sin.f32 %33)))))
86.9%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%27 = (-.f32 #s(literal 1 binary32) ux)
%31 = (PI.f32 )
%40 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %27 #s(literal 2 binary32))))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 maxCos (*.f32 ux (*.f32 zi %27)) (fma.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (*.f32 (pow.f32 %31 #s(literal 2 binary32)) %40))) (*.f32 #s(literal 2 binary32) (*.f32 yi (*.f32 %31 %40)))) (*.f32 xi %40))))
45.7%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%27 = (-.f32 #s(literal 1 binary32) ux)
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 maxCos (*.f32 ux (*.f32 zi %27)) (*.f32 yi (*.f32 (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %27 #s(literal 2 binary32))))))))))
52.4%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%27 = (-.f32 #s(literal 1 binary32) ux)
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 maxCos (*.f32 ux (*.f32 zi %27)) (*.f32 xi (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %27 #s(literal 2 binary32)))))))))
95.5%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 maxCos (*.f32 ux zi) (fma.f32 xi (cos.f32 %30) (*.f32 yi (sin.f32 %30)))))
82.4%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%31 = (-.f32 #s(literal 1 binary32) ux)
%36 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %31 #s(literal 2 binary32))))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 (PI.f32 ) %36))) (fma.f32 maxCos (*.f32 ux (*.f32 zi %31)) (*.f32 xi %36))))
Compiler

Compiled 3 102 to 460 computations (85.2% saved)

sample1.0ms (0.0%)

Memory
2.2MiB live, 2.2MiB allocated; 0ms collecting garbage
Calls
Call 1
Inputs
%1 = (PI )
2
%1
1
-2
1/2
(pow %1 2)
(+ %1 %1)
Outputs
#s(literal 2 binary32)
#s(literal 13176795/4194304 binary32)
#s(literal 1 binary32)
#s(literal -2 binary32)
#s(literal 1/2 binary32)
#s(literal 5174515/524288 binary32)
#s(literal 13176795/2097152 binary32)
Samples
0.0ms0valid
Compiler

Compiled 13 to 8 computations (38.5% saved)

series280.0ms (3.3%)

Memory
51.2MiB live, 374.2MiB allocated; 92ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0394971316
Stop Event
iter-limit
Counts
89 → 761
Calls
Call 1
Inputs
%2 = (*.f32 uy #s(literal 2 binary32))
%3 = (PI.f32 )
%4 = (*.f32 %2 %3)
%5 = (cos.f32 %4)
%8 = (-.f32 #s(literal 1 binary32) ux)
%10 = (*.f32 %8 maxCos)
%11 = (*.f32 %10 ux)
%12 = (*.f32 %11 %11)
%13 = (-.f32 #s(literal 1 binary32) %12)
%14 = (sqrt.f32 %13)
%15 = (*.f32 %5 %14)
%17 = (*.f32 %15 xi)
%18 = (sin.f32 %4)
%21 = (*.f32 %11 zi)
%22 = (pow.f32 maxCos #s(literal 2 binary32))
%23 = (pow.f32 ux #s(literal 2 binary32))
%24 = (pow.f32 %8 #s(literal 2 binary32))
%25 = (*.f32 %23 %24)
%26 = (*.f32 %22 %25)
%27 = (-.f32 #s(literal 1 binary32) %26)
%28 = (sqrt.f32 %27)
%29 = (*.f32 zi %8)
%30 = (*.f32 ux %29)
%31 = (*.f32 ux %8)
%34 = (* (- 1 ux) maxCos)
%35 = (approx %34 maxCos)
%37 = (*.f32 maxCos zi)
%39 = (pow.f32 %3 #s(literal 2 binary32))
%40 = (*.f32 %39 %28)
%41 = (*.f32 xi %28)
%42 = (*.f32 xi %40)
%43 = (*.f32 %3 %28)
%44 = (*.f32 yi %43)
%45 = (*.f32 #s(literal 2 binary32) %44)
%46 = (*.f32 uy %42)
%47 = (fma.f32 #s(literal -2 binary32) %46 %45)
%48 = (fma.f32 uy %47 %41)
%49 = (fma.f32 maxCos %30 %41)
%53 = (* (* uy 2) (PI ))
%55 = (* %34 ux)
%58 = (sqrt (- 1 (* %55 %55)))
%66 = (+ (+ (* (* (cos %53) %58) xi) (* (* (sin %53) %58) yi)) (* %55 zi))
%68 = (fma.f32 maxCos %30 %48)
%70 = (*.f32 maxCos %8)
%71 = (+.f32 uy uy)
%72 = (+.f32 %3 %3)
%73 = (*.f32 %3 %71)
%74 = (sin.f32 %73)
%75 = (cos.f32 %73)
%76 = (-.f32 ux #s(literal 1 binary32))
%77 = (*.f32 %76 maxCos)
%78 = (*.f32 %70 ux)
%79 = (*.f32 %77 ux)
%80 = (*.f32 %78 ux)
%81 = (fma.f32 %77 %80 #s(literal 1 binary32))
%82 = (sqrt.f32 %81)
%83 = (asin.f32 %78)
%84 = (asin.f32 %79)
%85 = (fma.f32 %72 uy %84)
%86 = (fma.f32 %72 uy %83)
%87 = (*.f32 %75 xi)
%88 = (sin.f32 %85)
%89 = (sin.f32 %86)
%90 = (+.f32 %88 %89)
%91 = (*.f32 %90 #s(literal 1/2 binary32))
%92 = (fma.f32 %74 yi %87)
%93 = (*.f32 %82 %92)
%95 = (*.f32 %91 yi)
%96 = (+.f32 %17 %95)
%98 = (*.f32 %35 ux)
%99 = (*.f32 %98 %98)
%100 = (-.f32 #s(literal 1 binary32) %99)
%101 = (sqrt.f32 %100)
%102 = (*.f32 %5 %101)
%103 = (*.f32 %102 xi)
%104 = (*.f32 %18 %101)
%105 = (*.f32 %104 yi)
%106 = (+.f32 %103 %105)
%107 = (*.f32 %98 zi)
uy
#s(literal 2 binary32)
%2
%3
%4
%5
#s(literal 1 binary32)
ux
%8
maxCos
%10
%11
%12
%13
%14
%15
xi
%17
%18
yi
zi
%21
%22
%23
%24
%25
%26
%27
%28
%29
%30
%31
%35
#s(literal -2 binary32)
%37
#s(literal 1/2 binary32)
%39
%40
%41
%42
%43
%44
%45
%46
%47
%48
%49
(approx %66 %49)
%68
(approx %66 %68)
%70
%71
%72
%73
%74
%75
%76
%77
%78
%79
%80
%81
%82
%83
%84
%85
%86
%87
%88
%89
%90
%91
%92
%93
(fma.f32 %31 %37 %93)
%95
%96
(+.f32 %96 %21)
%98
%99
%100
%101
%102
%103
%104
%105
%106
%107
(+.f32 %106 %107)
Outputs
%6 = (* uy 2)
%7 = (PI )
%8 = (* %6 %7)
%9 = (cos %8)
%12 = (- 1 ux)
%14 = (* %12 maxCos)
%15 = (* %14 ux)
%16 = (* %15 %15)
%17 = (- 1 %16)
%18 = (sqrt %17)
%19 = (* %9 %18)
%20 = (* %19 xi)
%22 = (PI.f32 )
%24 = (*.f32 #s(literal 2 binary32) (*.f32 uy %22))
%25 = (cos.f32 %24)
%27 = (pow.f32 maxCos #s(literal 2 binary32))
%28 = (pow.f32 ux #s(literal 2 binary32))
%29 = (-.f32 #s(literal 1 binary32) ux)
%30 = (pow.f32 %29 #s(literal 2 binary32))
%31 = (*.f32 %28 %30)
%32 = (*.f32 %27 %31)
%34 = (sqrt.f32 (-.f32 #s(literal 1 binary32) %32))
%35 = (*.f32 %25 %34)
%36 = (*.f32 xi %35)
%38 = (pow maxCos 2)
%39 = (pow ux 2)
%40 = (pow %12 2)
%41 = (* %39 %40)
%44 = (sqrt (- 1 (* %38 %41)))
%45 = (* xi %44)
%46 = (*.f32 xi %34)
%49 = (* (pow %7 2) %44)
%50 = (* xi %49)
%51 = (pow.f32 %22 #s(literal 2 binary32))
%52 = (*.f32 %51 %34)
%53 = (*.f32 xi %52)
%55 = (* uy %50)
%56 = (*.f32 uy %53)
%61 = (* %7 %44)
%62 = (* yi %61)
%63 = (* 2 %62)
%64 = (+ (* -2 %55) %63)
%65 = (*.f32 %22 %34)
%66 = (*.f32 yi %65)
%67 = (*.f32 #s(literal 2 binary32) %66)
%70 = (fma.f32 #s(literal -2 binary32) %56 %67)
%73 = (+ (* uy %64) %45)
%74 = (*.f32 uy %66)
%77 = (pow.f32 uy #s(literal 2 binary32))
%78 = (*.f32 %77 %52)
%80 = (+.f32 %34 (*.f32 #s(literal -2 binary32) %78))
%81 = (*.f32 xi %80)
%85 = (* zi %12)
%86 = (* ux %85)
%87 = (* maxCos %86)
%88 = (+ %87 %45)
%89 = (*.f32 zi %29)
%90 = (*.f32 ux %89)
%91 = (*.f32 maxCos %90)
%93 = (fma.f32 maxCos %90 %46)
%95 = (sin %8)
%96 = (* %95 %18)
%97 = (* %96 yi)
%98 = (+ %20 %97)
%99 = (* %15 zi)
%100 = (+ %98 %99)
%101 = (sin.f32 %24)
%102 = (*.f32 %101 %34)
%103 = (*.f32 yi %102)
%104 = (fma.f32 maxCos %90 %103)
%106 = (fma.f32 xi %35 %103)
%109 = (+ %87 %73)
%110 = (fma.f32 #s(literal 2 binary32) %74 %91)
%116 = (* %7 (+ uy uy))
%118 = (* (cos %116) xi)
%119 = (*.f32 xi %25)
%123 = (+ (* (sin %116) yi) %118)
%124 = (*.f32 yi %101)
%126 = (fma.f32 xi %25 %124)
%128 = (- ux 1)
%129 = (* %128 maxCos)
%131 = (* (* maxCos %12) ux)
%132 = (* %131 ux)
%134 = (+ (* %129 %132) 1)
%135 = (sqrt %134)
%136 = (* %135 %123)
%137 = (-.f32 ux #s(literal 1 binary32))
%138 = (*.f32 %29 %137)
%139 = (*.f32 %28 %138)
%140 = (*.f32 %27 %139)
%141 = (+.f32 #s(literal 1 binary32) %140)
%142 = (sqrt.f32 %141)
%143 = (*.f32 %101 %142)
%144 = (*.f32 yi %143)
%146 = (*.f32 %25 %142)
%147 = (fma.f32 xi %146 %144)
%149 = (* ux %12)
%150 = (* maxCos zi)
%152 = (+ (* %149 %150) %136)
%153 = (fma.f32 maxCos %90 %144)
%158 = (* (+ %7 %7) uy)
%159 = (* %129 ux)
%160 = (asin %159)
%161 = (+ %158 %160)
%162 = (sin %161)
%163 = (asin %131)
%164 = (+ %158 %163)
%165 = (sin %164)
%166 = (+ %162 %165)
%168 = (* %166 1/2)
%169 = (* %168 yi)
%170 = (+ %20 %169)
%172 = (*.f32 ux %29)
%173 = (*.f32 maxCos %172)
%174 = (asin.f32 %173)
%175 = (+.f32 %174 %24)
%176 = (sin.f32 %175)
%177 = (*.f32 ux %137)
%178 = (*.f32 maxCos %177)
%179 = (asin.f32 %178)
%180 = (+.f32 %179 %24)
%181 = (sin.f32 %180)
%182 = (+.f32 %176 %181)
%183 = (*.f32 yi %182)
%184 = (*.f32 #s(literal 1/2 binary32) %183)
%186 = (fma.f32 #s(literal 1/2 binary32) %183 %36)
%188 = (+ %170 %99)
%189 = (fma.f32 #s(literal 1/2 binary32) %183 %91)
%191 = (fma.f32 maxCos %90 %36)
%198 = (*.f32 uy %52)
%199 = (/.f32 %66 xi)
%205 = (/.f32 %74 xi)
%211 = (/.f32 %91 xi)
%215 = (/.f32 %103 xi)
%225 = (/.f32 %124 xi)
%229 = (*.f32 xi %146)
%231 = (/.f32 %144 xi)
%239 = (/.f32 %183 xi)
%256 = (*.f32 #s(literal 2 binary32) %78)
%257 = (fma.f32 #s(literal -1 binary32) %34 %256)
%317 = (*.f32 %77 %53)
%318 = (fma.f32 #s(literal -2 binary32) %317 %46)
%320 = (fma.f32 #s(literal 2 binary32) %74 %46)
%324 = (fma.f32 #s(literal -2 binary32) %317 %93)
%326 = (fma.f32 #s(literal 2 binary32) %74 %93)
%329 = (fma.f32 maxCos %90 %229)
%331 = (/.f32 %56 yi)
%332 = (*.f32 #s(literal 2 binary32) %65)
%336 = (/.f32 %317 yi)
%337 = (*.f32 uy %65)
%338 = (/.f32 %46 yi)
%343 = (/.f32 %91 yi)
%344 = (/.f32 %36 yi)
%345 = (+.f32 %343 %344)
%354 = (/.f32 %119 yi)
%358 = (/.f32 %229 yi)
%386 = (/.f32 %191 yi)
%414 = (*.f32 #s(literal -1/2 binary32) %182)
%431 = (*.f32 maxCos zi)
%433 = (fma.f32 uy %70 %46)
%437 = (*.f32 %142 %126)
%441 = (/.f32 %46 zi)
%445 = (/.f32 %36 zi)
%457 = (/.f32 %437 zi)
%496 = (*.f32 #s(literal -1 binary32) ux)
%497 = (+.f32 #s(literal 1 binary32) %496)
%500 = (*.f32 maxCos ux)
%501 = (*.f32 #s(literal -1 binary32) %500)
%502 = (+.f32 maxCos %501)
%507 = (*.f32 %27 %28)
%509 = (*.f32 %27 ux)
%520 = (*.f32 #s(literal 2 binary32) %509)
%542 = (pow.f32 maxCos #s(literal 4 binary32))
%543 = (fma.f32 #s(literal 1/4 binary32) %542 %27)
%557 = (*.f32 %27 %25)
%564 = (*.f32 %25 %543)
%573 = (*.f32 %27 (*.f32 %28 %119))
%576 = (*.f32 %27 %119)
%579 = (fma.f32 #s(literal -1/2 binary32) %576 (*.f32 %27 (*.f32 ux %119)))
%581 = (fma.f32 xi %25 (*.f32 %28 %579))
%583 = (*.f32 xi %564)
%589 = (fma.f32 xi %25 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %576 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %583) %576)))))
%591 = (*.f32 ux zi)
%592 = (*.f32 maxCos %591)
%599 = (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -2 binary32) ux))
%603 = (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 ux #s(literal 2 binary32))))
%609 = (*.f32 #s(literal -1 binary32) %591)
%610 = (+.f32 zi %609)
%615 = (*.f32 ux %497)
%622 = (*.f32 %27 %51)
%628 = (*.f32 %51 %543)
%640 = (*.f32 %27 xi)
%643 = (fma.f32 #s(literal -1/2 binary32) %640 (*.f32 %27 (*.f32 ux xi)))
%647 = (*.f32 xi %543)
%655 = (*.f32 xi %51)
%661 = (*.f32 %27 %655)
%668 = (*.f32 xi %628)
%682 = (*.f32 %27 %22)
%689 = (*.f32 %22 %543)
%697 = (*.f32 yi %22)
%700 = (*.f32 %27 (*.f32 %28 %697))
%703 = (*.f32 %27 %697)
%705 = (*.f32 %27 (*.f32 ux %697))
%710 = (*.f32 yi %689)
%711 = (*.f32 ux %710)
%718 = (*.f32 #s(literal 2 binary32) %697)
%727 = (*.f32 #s(literal 2 binary32) %703)
%734 = (*.f32 uy %655)
%740 = (*.f32 %27 %734)
%747 = (*.f32 uy %668)
%755 = (fma.f32 #s(literal -2 binary32) %734 %718)
%757 = (fma.f32 #s(literal -1 binary32) %703 %740)
%762 = (fma.f32 #s(literal -2 binary32) %740 %727)
%769 = (fma.f32 #s(literal -1 binary32) %710 %747)
%779 = (*.f32 uy %755)
%782 = (*.f32 uy %757)
%783 = (fma.f32 #s(literal -1/2 binary32) %640 %782)
%788 = (fma.f32 uy %762 %640)
%790 = (fma.f32 #s(literal -1/2 binary32) %640 (fma.f32 ux %788 %782))
%821 = (*.f32 %27 %124)
%823 = (fma.f32 #s(literal -1/2 binary32) %576 (*.f32 #s(literal -1/2 binary32) %821))
%829 = (fma.f32 %27 %119 %821)
%832 = (fma.f32 #s(literal -1/2 binary32) %576 (fma.f32 #s(literal -1/2 binary32) %821 (*.f32 ux %829)))
%857 = (fma.f32 #s(literal -1 binary32) maxCos %500)
%862 = (*.f32 maxCos %28)
%870 = (*.f32 #s(literal 2 binary32) %27)
%877 = (*.f32 #s(literal -1 binary32) %27)
%879 = (-.f32 %877 (*.f32 #s(literal 1/4 binary32) %542))
%900 = (*.f32 %27 %126)
%903 = (fma.f32 #s(literal -1/2 binary32) %900 (*.f32 %27 (*.f32 ux %126)))
%928 = (fma.f32 #s(literal 1/2 binary32) %183 %119)
%958 = (*.f32 %27 %101)
%965 = (*.f32 %101 %543)
%983 = (*.f32 yi %965)
%1010 = (/.f32 #s(literal 1 binary32) ux)
%1011 = (-.f32 %1010 #s(literal 1 binary32))
%1012 = (*.f32 ux %1011)
%1014 = (/.f32 maxCos ux)
%1015 = (fma.f32 #s(literal -1 binary32) maxCos %1014)
%1016 = (*.f32 ux %1015)
%1022 = (pow.f32 ux #s(literal 4 binary32))
%1023 = (*.f32 %27 %1022)
%1025 = (/.f32 %27 ux)
%1026 = (fma.f32 #s(literal -2 binary32) %1025 %27)
%1029 = (/.f32 %27 %28)
%1031 = (fma.f32 #s(literal -2 binary32) %1025 (+.f32 %1029 %27))
%1036 = (*.f32 #s(literal 2 binary32) %1025)
%1044 = (/.f32 #s(literal 1 binary32) %1022)
%1049 = (sqrt.f32 (neg.f32 %27))
%1050 = (*.f32 %28 %1049)
%1052 = (*.f32 ux %1049)
%1053 = (/.f32 %27 %1052)
%1059 = (+.f32 (/.f32 %542 (pow.f32 %1049 #s(literal 2 binary32))) %27)
%1060 = (/.f32 %1059 %1050)
%1065 = (*.f32 %27 %1059)
%1067 = (pow.f32 ux #s(literal 3 binary32))
%1068 = (pow.f32 %1049 #s(literal 3 binary32))
%1069 = (*.f32 %1067 %1068)
%1076 = (*.f32 %25 %1049)
%1080 = (fma.f32 %25 %1049 (/.f32 %557 %1052))
%1083 = (*.f32 %25 %1059)
%1084 = (/.f32 %1083 %1050)
%1088 = (*.f32 %27 %1083)
%1094 = (*.f32 xi %1076)
%1097 = (/.f32 %576 %1052)
%1098 = (fma.f32 xi %1076 %1097)
%1101 = (*.f32 xi %1083)
%1102 = (/.f32 %1101 %1050)
%1106 = (*.f32 %27 %1101)
%1107 = (/.f32 %1106 %1069)
%1108 = (fma.f32 #s(literal 1/2 binary32) %1107 %1098)
%1112 = (*.f32 %28 zi)
%1116 = (/.f32 %431 ux)
%1120 = (*.f32 #s(literal 2 binary32) %1010)
%1121 = (-.f32 #s(literal 1 binary32) %1120)
%1124 = (/.f32 #s(literal 1 binary32) %28)
%1126 = (-.f32 (+.f32 #s(literal 1 binary32) %1124) %1120)
%1135 = (/.f32 zi ux)
%1136 = (fma.f32 #s(literal -1 binary32) zi %1135)
%1147 = (*.f32 %51 %1049)
%1151 = (fma.f32 %51 %1049 (/.f32 %622 %1052))
%1154 = (*.f32 %51 %1059)
%1155 = (/.f32 %1154 %1050)
%1159 = (*.f32 %27 %1154)
%1165 = (*.f32 xi %1049)
%1168 = (/.f32 %640 %1052)
%1169 = (fma.f32 xi %1049 %1168)
%1172 = (*.f32 xi %1059)
%1173 = (/.f32 %1172 %1050)
%1177 = (*.f32 %27 %1172)
%1178 = (/.f32 %1177 %1069)
%1183 = (*.f32 xi %1147)
%1187 = (fma.f32 xi %1147 (/.f32 %661 %1052))
%1190 = (*.f32 xi %1154)
%1191 = (/.f32 %1190 %1050)
%1195 = (*.f32 %27 %1190)
%1201 = (*.f32 %22 %1049)
%1205 = (fma.f32 %22 %1049 (/.f32 %682 %1052))
%1208 = (*.f32 %22 %1059)
%1209 = (/.f32 %1208 %1050)
%1213 = (*.f32 %27 %1208)
%1219 = (*.f32 yi %1201)
%1220 = (*.f32 %28 %1219)
%1222 = (/.f32 %703 %1052)
%1223 = (fma.f32 yi %1201 %1222)
%1226 = (*.f32 yi %1208)
%1227 = (/.f32 %1226 %1050)
%1231 = (*.f32 %27 %1226)
%1232 = (/.f32 %1231 %1069)
%1240 = (fma.f32 #s(literal 2 binary32) %1219 (*.f32 #s(literal 2 binary32) %1222))
%1251 = (*.f32 uy %1183)
%1254 = (/.f32 %740 %1052)
%1255 = (fma.f32 uy %1183 %1254)
%1258 = (*.f32 uy %1190)
%1259 = (/.f32 %1258 %1050)
%1263 = (*.f32 %27 %1258)
%1264 = (/.f32 %1263 %1069)
%1269 = (*.f32 #s(literal 2 binary32) %1219)
%1270 = (fma.f32 #s(literal -2 binary32) %1251 %1269)
%1293 = (fma.f32 uy %1270 %1165)
%1296 = (/.f32 %740 %1049)
%1297 = (/.f32 %703 %1049)
%1301 = (/.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) %1296 (*.f32 #s(literal 2 binary32) %1297))) ux)
%1302 = (+.f32 %1301 %1168)
%1307 = (/.f32 %1226 %1049)
%1308 = (/.f32 %1258 %1049)
%1309 = (fma.f32 #s(literal -1 binary32) %1307 %1308)
%1310 = (*.f32 uy %1309)
%1311 = (/.f32 %1310 %28)
%1313 = (+.f32 %1301 (+.f32 %1311 %1168))
%1319 = (/.f32 %1263 %1068)
%1320 = (/.f32 %1231 %1068)
%1326 = (+.f32 %1301 (+.f32 %1311 (+.f32 (/.f32 (*.f32 uy (fma.f32 #s(literal -1 binary32) %1319 %1320)) %1067) %1168)))
%1337 = (fma.f32 xi %1049 (+.f32 %1116 %1168))
%1350 = (*.f32 %101 %1049)
%1351 = (*.f32 yi %1350)
%1352 = (fma.f32 xi %1076 %1351)
%1356 = (/.f32 %821 %1052)
%1357 = (+.f32 %1097 %1356)
%1360 = (fma.f32 xi %1076 (fma.f32 yi %1350 (+.f32 %1116 %1357)))
%1364 = (*.f32 %101 %1059)
%1365 = (*.f32 yi %1364)
%1366 = (/.f32 %1365 %1050)
%1372 = (*.f32 %27 %1365)
%1373 = (/.f32 %1372 %1069)
%1406 = (*.f32 ux (-.f32 #s(literal 1 binary32) %1010))
%1409 = (+.f32 maxCos (*.f32 #s(literal -1 binary32) %1014))
%1410 = (*.f32 ux %1409)
%1419 = (fma.f32 #s(literal -1 binary32) %27 %1036)
%1430 = (sqrt.f32 %877)
%1431 = (*.f32 %28 %1430)
%1433 = (*.f32 ux %1430)
%1434 = (/.f32 %27 %1433)
%1440 = (-.f32 %877 (/.f32 %542 (pow.f32 %1430 #s(literal 2 binary32))))
%1442 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1440 %1431) %1434)
%1446 = (*.f32 %27 %1440)
%1447 = (pow.f32 %1430 #s(literal 3 binary32))
%1448 = (*.f32 %1067 %1447)
%1454 = (*.f32 %1430 %126)
%1457 = (/.f32 %900 %1433)
%1458 = (fma.f32 %1430 %126 %1457)
%1461 = (*.f32 %126 %1440)
%1462 = (/.f32 %1461 %1431)
%1463 = (fma.f32 #s(literal 1/2 binary32) %1462 %1458)
%1466 = (*.f32 %27 %1461)
%1467 = (/.f32 %1466 %1448)
%1475 = (fma.f32 %1430 %126 (+.f32 %1116 %1457))
%1479 = (fma.f32 #s(literal 1/2 binary32) %1462 %1475)
%1487 = (/.f32 %183 %28)
%1500 = (fma.f32 xi %1076 (+.f32 %1116 %1097))
%1518 = (fma.f32 %101 %1049 (/.f32 %958 %1052))
%1521 = (/.f32 %1364 %1050)
%1525 = (*.f32 %27 %1364)
%1533 = (fma.f32 yi %1350 %1356)
%1546 = (fma.f32 xi %1076 (fma.f32 yi %1350 %1357))
%1583 = (/.f32 %27 %1049)
%1593 = (*.f32 ux %1068)
%1605 = (/.f32 %557 %1049)
%1624 = (/.f32 %576 %1049)
%1632 = (/.f32 %1101 %1049)
%1634 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1106 %1593))
%1646 = (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 #s(literal 2 binary32) %1010) ux)))
%1656 = (/.f32 %622 %1049)
%1675 = (/.f32 %640 %1049)
%1678 = (fma.f32 #s(literal -1 binary32) %1675 (*.f32 #s(literal 1/2 binary32) (/.f32 %1172 %1052)))
%1683 = (/.f32 %1172 %1049)
%1689 = (fma.f32 #s(literal -1 binary32) %1675 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1683 (*.f32 #s(literal 1/2 binary32) (/.f32 %1177 %1593))) ux)))
%1694 = (/.f32 %661 %1049)
%1713 = (/.f32 %682 %1049)
%1732 = (/.f32 %1226 %1052)
%1739 = (/.f32 %1231 %1593)
%1779 = (*.f32 #s(literal 2 binary32) %1296)
%1780 = (fma.f32 #s(literal -2 binary32) %1297 %1779)
%1794 = (fma.f32 #s(literal -1 binary32) %1320 %1319)
%1806 = (*.f32 uy %1780)
%1807 = (fma.f32 #s(literal -1 binary32) %1675 %1806)
%1812 = (fma.f32 #s(literal -1/2 binary32) %1683 %1310)
%1815 = (fma.f32 #s(literal -1 binary32) %1675 (fma.f32 #s(literal -1 binary32) (/.f32 %1812 ux) %1806))
%1827 = (fma.f32 #s(literal -1 binary32) %1675 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1177 %1068) (*.f32 uy %1794)) ux) %1812) ux) %1806))
%1851 = (/.f32 %821 %1049)
%1853 = (fma.f32 #s(literal -1 binary32) %1624 (*.f32 #s(literal -1 binary32) %1851))
%1860 = (/.f32 %1365 %1049)
%1862 = (fma.f32 #s(literal -1/2 binary32) %1632 (*.f32 #s(literal -1/2 binary32) %1860))
%1866 = (fma.f32 #s(literal -1 binary32) %1624 (fma.f32 #s(literal -1 binary32) %1851 (*.f32 #s(literal -1 binary32) (/.f32 %1862 ux))))
%1882 = (fma.f32 #s(literal -1 binary32) %1624 (fma.f32 #s(literal -1 binary32) %1851 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1106 %1068) (*.f32 #s(literal -1/2 binary32) (/.f32 %1372 %1068))) ux) %1862) ux))))
%1927 = (/.f32 %27 %1430)
%1936 = (*.f32 ux %1447)
%1949 = (*.f32 maxCos %615)
%1950 = (asin.f32 %1949)
%1953 = (asin.f32 (*.f32 #s(literal -1 binary32) %1949))
%1955 = (+.f32 %1953 %24)
%1957 = (+.f32 %1950 %24)
%1959 = (sin.f32 %1955)
%1961 = (sin.f32 %1957)
%1963 = (+.f32 %1959 %1961)
%1967 = (/.f32 %900 %1430)
%1970 = (fma.f32 #s(literal -1 binary32) %1967 (*.f32 #s(literal -1/2 binary32) (/.f32 %1461 %1433)))
%1981 = (fma.f32 #s(literal -1 binary32) %1967 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1466 %1936) (*.f32 #s(literal 1/2 binary32) (/.f32 %1461 %1430))) ux)))
%2005 = (*.f32 yi %1963)
%2006 = (*.f32 #s(literal 1/2 binary32) %2005)
%2011 = (fma.f32 #s(literal -1 binary32) %1624 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1632 %2006) ux)))
%2020 = (fma.f32 #s(literal -1 binary32) %1624 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1632 (fma.f32 #s(literal 1/2 binary32) %2005 %1634)) ux)))
%2044 = (/.f32 %958 %1049)
%2101 = (pow.f32 %22 #s(literal 4 binary32))
%2110 = (pow.f32 %22 #s(literal 6 binary32))
%2121 = (*.f32 %2101 %34)
%2128 = (*.f32 %2110 %34)
%2137 = (*.f32 xi %2121)
%2154 = (pow.f32 %22 #s(literal 3 binary32))
%2162 = (pow.f32 %22 #s(literal 5 binary32))
%2172 = (pow.f32 %22 #s(literal 7 binary32))
%2184 = (*.f32 %2154 %34)
%2185 = (*.f32 yi %2184)
%2191 = (fma.f32 uy (fma.f32 #s(literal 2 binary32) %66 (*.f32 uy (fma.f32 #s(literal -2 binary32) %53 (*.f32 #s(literal -4/3 binary32) (*.f32 uy %2185))))) %46)
%2198 = (*.f32 xi %2101)
%2215 = (cos.f32 %179)
%2216 = (*.f32 %22 %2215)
%2220 = (*.f32 %51 %137)
%2224 = (*.f32 #s(literal 2 binary32) %2216)
%2230 = (*.f32 maxCos (*.f32 ux %2220))
%2231 = (*.f32 %2154 %2215)
%2241 = (cos.f32 %174)
%2242 = (*.f32 %22 %2241)
%2246 = (*.f32 %51 %29)
%2256 = (*.f32 maxCos (*.f32 ux %2246))
%2257 = (*.f32 %2154 %2241)
%2266 = (fma.f32 maxCos %172 %178)
%2268 = (fma.f32 #s(literal 2 binary32) %2242 %2224)
%2269 = (*.f32 uy %2268)
%2274 = (fma.f32 #s(literal -2 binary32) %2256 (*.f32 #s(literal -2 binary32) %2230))
%2275 = (*.f32 uy %2274)
%2283 = (fma.f32 #s(literal -4/3 binary32) %2257 (*.f32 #s(literal -4/3 binary32) %2231))
%2284 = (*.f32 uy %2283)
%2294 = (*.f32 #s(literal 1/2 binary32) %2266)
%2323 = (*.f32 xi %142)
%2326 = (*.f32 yi (*.f32 %22 %142))
%2327 = (*.f32 uy %2326)
%2331 = (*.f32 xi (*.f32 %51 %142))
%2335 = (fma.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy %2331) (*.f32 #s(literal 2 binary32) %2326)) %2323)
%2344 = (fma.f32 uy (fma.f32 #s(literal 2 binary32) %2326 (*.f32 uy (fma.f32 #s(literal -2 binary32) %2331 (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi (*.f32 %2154 %142))))))) %2323)
%2346 = (fma.f32 maxCos %90 %2323)
%2354 = (*.f32 yi %2266)
%2355 = (*.f32 #s(literal 1/2 binary32) %2354)
%2357 = (*.f32 yi %2268)
%2358 = (*.f32 uy %2357)
%2361 = (*.f32 yi %2274)
%2370 = (*.f32 #s(literal 1/2 binary32) %2361)
%2371 = (fma.f32 #s(literal 1/2 binary32) (*.f32 uy (*.f32 yi %2283)) %2370)
%2377 = (fma.f32 #s(literal 1/2 binary32) %2354 %46)
%2384 = (fma.f32 uy (fma.f32 #s(literal 1/2 binary32) %2357 (*.f32 uy (fma.f32 #s(literal -2 binary32) %53 %2370))) %46)
%2390 = (fma.f32 uy (fma.f32 #s(literal 1/2 binary32) %2357 (*.f32 uy (fma.f32 #s(literal -2 binary32) %53 %2371))) %46)
%2393 = (fma.f32 #s(literal 1/2 binary32) %2354 %93)
%2409 = (*.f32 %2162 %34)
%2417 = (*.f32 %2172 %34)
%2431 = (*.f32 yi %2409)
%2451 = (/.f32 %66 uy)
%2453 = (fma.f32 #s(literal -2 binary32) %53 (*.f32 #s(literal 2 binary32) %2451))
%2460 = (/.f32 %46 %77)
%2471 = (/.f32 %179 uy)
%2475 = (/.f32 %174 uy)
%2514 = (*.f32 #s(literal -1 binary32) %32)
%2521 = (pow.f32 %29 #s(literal 4 binary32))
%2522 = (*.f32 %1022 %2521)
%2530 = (pow.f32 ux #s(literal 6 binary32))
%2531 = (pow.f32 %29 #s(literal 6 binary32))
%2541 = (*.f32 %25 %30)
%2542 = (*.f32 %28 %2541)
%2547 = (*.f32 %25 %2521)
%2548 = (*.f32 %1022 %2547)
%2555 = (*.f32 %25 %2531)
%2566 = (*.f32 %28 (*.f32 xi %2541))
%2567 = (*.f32 %27 %2566)
%2571 = (*.f32 %1022 (*.f32 xi %2547))
%2574 = (fma.f32 #s(literal -1/2 binary32) %2566 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2571)))
%2576 = (fma.f32 xi %25 (*.f32 %27 %2574))
%2579 = (*.f32 %2530 (*.f32 xi %2555))
%2586 = (fma.f32 xi %25 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2566 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2571 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 %2579)))))))
%2589 = (*.f32 %51 %30)
%2590 = (*.f32 %28 %2589)
%2594 = (*.f32 %51 %2521)
%2595 = (*.f32 %1022 %2594)
%2601 = (*.f32 %51 %2531)
%2611 = (*.f32 %28 (*.f32 xi %30))
%2617 = (*.f32 %1022 (*.f32 xi %2521))
%2620 = (fma.f32 #s(literal -1/2 binary32) %2611 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2617)))
%2625 = (*.f32 %2530 (*.f32 xi %2531))
%2634 = (*.f32 xi %2589)
%2635 = (*.f32 %28 %2634)
%2639 = (*.f32 xi %2594)
%2640 = (*.f32 %1022 %2639)
%2647 = (*.f32 xi %2601)
%2657 = (*.f32 %22 %30)
%2658 = (*.f32 %28 %2657)
%2663 = (*.f32 %22 %2521)
%2664 = (*.f32 %1022 %2663)
%2671 = (*.f32 %22 %2531)
%2682 = (*.f32 %28 (*.f32 yi %2657))
%2683 = (*.f32 %27 %2682)
%2687 = (*.f32 %1022 (*.f32 yi %2663))
%2688 = (*.f32 %27 %2687)
%2695 = (*.f32 %2530 (*.f32 yi %2671))
%2696 = (*.f32 %27 %2695)
%2720 = (*.f32 %28 (*.f32 uy %2634))
%2725 = (*.f32 %1022 (*.f32 uy %2639))
%2733 = (*.f32 %2530 (*.f32 uy %2647))
%2742 = (fma.f32 #s(literal -1 binary32) %2682 %2720)
%2748 = (fma.f32 #s(literal -1/4 binary32) %2687 (*.f32 #s(literal 1/4 binary32) %2725))
%2757 = (fma.f32 #s(literal -1/8 binary32) %2695 (*.f32 #s(literal 1/8 binary32) %2733))
%2768 = (fma.f32 #s(literal -1/2 binary32) %2611 (*.f32 uy %2742))
%2777 = (fma.f32 #s(literal -1/2 binary32) %2611 (fma.f32 uy %2742 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2617 (*.f32 uy %2748)))))
%2807 = (*.f32 %101 %30)
%2809 = (*.f32 %28 (*.f32 yi %2807))
%2811 = (fma.f32 #s(literal -1/2 binary32) %2566 (*.f32 #s(literal -1/2 binary32) %2809))
%2815 = (*.f32 %101 %2521)
%2817 = (*.f32 %1022 (*.f32 yi %2815))
%2822 = (fma.f32 #s(literal -1/2 binary32) %2566 (fma.f32 #s(literal -1/2 binary32) %2809 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2571 (*.f32 #s(literal -1/8 binary32) %2817)))))
%2847 = (*.f32 %30 (pow.f32 %137 #s(literal 2 binary32)))
%2848 = (*.f32 %1022 %2847)
%2858 = (*.f32 (pow.f32 %29 #s(literal 3 binary32)) (pow.f32 %137 #s(literal 3 binary32)))
%2869 = (*.f32 %28 (*.f32 %126 %138))
%2874 = (*.f32 %1022 (*.f32 %126 %2847))
%2877 = (fma.f32 #s(literal -1/8 binary32) (*.f32 %27 %2874) (*.f32 #s(literal 1/2 binary32) %2869))
%2918 = (*.f32 %28 %2807)
%2923 = (*.f32 %1022 %2815)
%2930 = (*.f32 %101 %2531)
%2950 = (*.f32 %2530 (*.f32 yi %2930))
%2980 = (/.f32 #s(literal 1 binary32) %27)
%2985 = (sqrt.f32 (neg.f32 %31))
%2986 = (*.f32 maxCos %2985)
%2988 = (*.f32 %27 %2985)
%2992 = (*.f32 maxCos (+.f32 %2985 (*.f32 #s(literal 1/2 binary32) (/.f32 #s(literal 1 binary32) %2988))))
%2994 = (/.f32 #s(literal 1/2 binary32) %2988)
%2996 = (pow.f32 %2985 #s(literal 3 binary32))
%2997 = (*.f32 %542 %2996)
%3000 = (*.f32 maxCos (-.f32 (+.f32 %2985 %2994) (/.f32 #s(literal 1/8 binary32) %2997)))
%3002 = (pow.f32 maxCos #s(literal 6 binary32))
%3003 = (pow.f32 %2985 #s(literal 5 binary32))
%3004 = (*.f32 %3002 %3003)
%3012 = (*.f32 maxCos (-.f32 (+.f32 %2985 (+.f32 %2994 (*.f32 #s(literal 1/16 binary32) (/.f32 #s(literal 1 binary32) %3004)))) (*.f32 #s(literal 1/8 binary32) (/.f32 #s(literal 1 binary32) %2997))))
%3014 = (*.f32 %25 %2985)
%3015 = (*.f32 maxCos %3014)
%3018 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %25 %2988) %3014)
%3019 = (*.f32 maxCos %3018)
%3021 = (/.f32 %25 %2997)
%3023 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3021 %3018))
%3028 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3021 (fma.f32 #s(literal 1/16 binary32) (/.f32 %25 %3004) %3018)))
%3030 = (*.f32 xi %3014)
%3031 = (*.f32 maxCos %3030)
%3033 = (/.f32 %119 %2988)
%3034 = (fma.f32 #s(literal 1/2 binary32) %3033 %3030)
%3035 = (*.f32 maxCos %3034)
%3037 = (/.f32 %119 %2997)
%3039 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3037 %3034))
%3041 = (/.f32 %119 %3004)
%3044 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3037 (fma.f32 #s(literal 1/16 binary32) %3041 %3034)))
%3046 = (*.f32 %51 %2985)
%3047 = (*.f32 maxCos %3046)
%3050 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %51 %2988) %3046)
%3051 = (*.f32 maxCos %3050)
%3053 = (/.f32 %51 %2997)
%3055 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3053 %3050))
%3060 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3053 (fma.f32 #s(literal 1/16 binary32) (/.f32 %51 %3004) %3050)))
%3062 = (*.f32 xi %2985)
%3063 = (*.f32 maxCos %3062)
%3065 = (/.f32 xi %2988)
%3066 = (fma.f32 #s(literal 1/2 binary32) %3065 %3062)
%3067 = (*.f32 maxCos %3066)
%3069 = (/.f32 xi %2997)
%3070 = (fma.f32 #s(literal -1/8 binary32) %3069 %3066)
%3071 = (*.f32 maxCos %3070)
%3073 = (/.f32 xi %3004)
%3075 = (fma.f32 #s(literal -1/8 binary32) %3069 (fma.f32 #s(literal 1/16 binary32) %3073 %3066))
%3076 = (*.f32 maxCos %3075)
%3078 = (*.f32 xi %3046)
%3079 = (*.f32 maxCos %3078)
%3082 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %655 %2988) %3078)
%3083 = (*.f32 maxCos %3082)
%3085 = (/.f32 %655 %2997)
%3087 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3085 %3082))
%3092 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3085 (fma.f32 #s(literal 1/16 binary32) (/.f32 %655 %3004) %3082)))
%3094 = (*.f32 %22 %2985)
%3095 = (*.f32 maxCos %3094)
%3098 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %22 %2988) %3094)
%3099 = (*.f32 maxCos %3098)
%3101 = (/.f32 %22 %2997)
%3103 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3101 %3098))
%3108 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3101 (fma.f32 #s(literal 1/16 binary32) (/.f32 %22 %3004) %3098)))
%3110 = (*.f32 yi %3094)
%3111 = (*.f32 maxCos %3110)
%3113 = (/.f32 %697 %2988)
%3114 = (fma.f32 #s(literal 1/2 binary32) %3113 %3110)
%3115 = (*.f32 maxCos %3114)
%3117 = (/.f32 %697 %2997)
%3119 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3117 %3114))
%3121 = (/.f32 %697 %3004)
%3124 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3117 (fma.f32 #s(literal 1/16 binary32) %3121 %3114)))
%3128 = (fma.f32 #s(literal 2 binary32) %3110 %3113)
%3129 = (*.f32 maxCos %3128)
%3132 = (*.f32 maxCos (fma.f32 #s(literal -1/4 binary32) %3117 %3128))
%3136 = (*.f32 maxCos (fma.f32 #s(literal -1/4 binary32) %3117 (fma.f32 #s(literal 1/8 binary32) %3121 %3128)))
%3138 = (*.f32 uy %3078)
%3139 = (*.f32 maxCos %3138)
%3141 = (/.f32 %734 %2988)
%3142 = (fma.f32 #s(literal 1/2 binary32) %3141 %3138)
%3143 = (*.f32 maxCos %3142)
%3145 = (/.f32 %734 %2997)
%3147 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3145 %3142))
%3149 = (/.f32 %734 %3004)
%3152 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3145 (fma.f32 #s(literal 1/16 binary32) %3149 %3142)))
%3155 = (fma.f32 #s(literal -2 binary32) %3138 (*.f32 #s(literal 2 binary32) %3110))
%3156 = (*.f32 maxCos %3155)
%3160 = (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %3138 (fma.f32 #s(literal -1 binary32) %3141 %3128)))
%3162 = (fma.f32 #s(literal 1/4 binary32) %3145 %3128)
%3166 = (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %3138 (fma.f32 #s(literal -1 binary32) %3141 (fma.f32 #s(literal -1/4 binary32) %3117 %3162))))
%3173 = (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %3138 (fma.f32 #s(literal -1 binary32) %3141 (fma.f32 #s(literal -1/4 binary32) %3117 (fma.f32 #s(literal -1/8 binary32) %3149 (fma.f32 #s(literal 1/8 binary32) %3121 %3162))))))
%3175 = (fma.f32 uy %3155 %3062)
%3176 = (*.f32 maxCos %3175)
%3182 = (/.f32 (*.f32 uy (fma.f32 #s(literal -1 binary32) (/.f32 %734 %2985) (/.f32 %697 %2985))) %27)
%3184 = (fma.f32 uy %3155 (fma.f32 xi %2985 %3182))
%3185 = (fma.f32 #s(literal 1/2 binary32) %3065 %3184)
%3186 = (*.f32 maxCos %3185)
%3193 = (/.f32 (*.f32 uy (fma.f32 #s(literal -1/4 binary32) (/.f32 %697 %2996) (*.f32 #s(literal 1/4 binary32) (/.f32 %734 %2996)))) %542)
%3196 = (fma.f32 uy %3155 (fma.f32 xi %2985 (+.f32 %3182 %3193)))
%3198 = (fma.f32 #s(literal -1/8 binary32) %3069 (fma.f32 #s(literal 1/2 binary32) %3065 %3196))
%3199 = (*.f32 maxCos %3198)
%3210 = (fma.f32 uy %3155 (fma.f32 xi %2985 (+.f32 %3182 (+.f32 %3193 (/.f32 (*.f32 uy (fma.f32 #s(literal -1/8 binary32) (/.f32 %734 %3003) (*.f32 #s(literal 1/8 binary32) (/.f32 %697 %3003)))) %3002)))))
%3213 = (fma.f32 #s(literal -1/8 binary32) %3069 (fma.f32 #s(literal 1/16 binary32) %3073 (fma.f32 #s(literal 1/2 binary32) %3065 %3210)))
%3214 = (*.f32 maxCos %3213)
%3216 = (fma.f32 ux %89 %3062)
%3219 = (fma.f32 #s(literal 1/2 binary32) %3065 %3216)
%3229 = (*.f32 %101 %2985)
%3230 = (*.f32 yi %3229)
%3231 = (fma.f32 xi %3014 %3230)
%3232 = (fma.f32 ux %89 %3231)
%3235 = (/.f32 %124 %2988)
%3237 = (fma.f32 #s(literal 1/2 binary32) %3033 (fma.f32 #s(literal 1/2 binary32) %3235 %3232))
%3240 = (/.f32 %124 %2997)
%3245 = (/.f32 %124 %3004)
%3274 = (sqrt.f32 %139)
%3275 = (*.f32 maxCos %3274)
%3277 = (*.f32 %27 %3274)
%3281 = (*.f32 maxCos (+.f32 %3274 (*.f32 #s(literal 1/2 binary32) (/.f32 #s(literal 1 binary32) %3277))))
%3283 = (/.f32 #s(literal 1/2 binary32) %3277)
%3286 = (*.f32 %542 (pow.f32 %3274 #s(literal 3 binary32)))
%3289 = (*.f32 maxCos (-.f32 (+.f32 %3274 %3283) (/.f32 #s(literal 1/8 binary32) %3286)))
%3292 = (*.f32 %3002 (pow.f32 %3274 #s(literal 5 binary32)))
%3300 = (*.f32 maxCos (-.f32 (+.f32 %3274 (+.f32 %3283 (*.f32 #s(literal 1/16 binary32) (/.f32 #s(literal 1 binary32) %3292)))) (*.f32 #s(literal 1/8 binary32) (/.f32 #s(literal 1 binary32) %3286))))
%3302 = (*.f32 %3274 %126)
%3303 = (*.f32 maxCos %3302)
%3305 = (/.f32 %126 %3277)
%3306 = (fma.f32 #s(literal 1/2 binary32) %3305 %3302)
%3307 = (*.f32 maxCos %3306)
%3309 = (/.f32 %126 %3286)
%3310 = (fma.f32 #s(literal -1/8 binary32) %3309 %3306)
%3311 = (*.f32 maxCos %3310)
%3313 = (/.f32 %126 %3292)
%3315 = (fma.f32 #s(literal -1/8 binary32) %3309 (fma.f32 #s(literal 1/16 binary32) %3313 %3306))
%3316 = (*.f32 maxCos %3315)
%3318 = (fma.f32 ux %89 %3302)
%3321 = (fma.f32 #s(literal 1/2 binary32) %3305 %3318)
%3331 = (/.f32 %183 maxCos)
%3332 = (fma.f32 #s(literal 1/2 binary32) %3331 %3030)
%3335 = (fma.f32 #s(literal 1/2 binary32) %3033 %3332)
%3341 = (fma.f32 ux %89 %3030)
%3344 = (fma.f32 #s(literal 1/2 binary32) %3331 %3341)
%3347 = (fma.f32 #s(literal 1/2 binary32) %3033 %3344)
%3353 = (*.f32 maxCos %3229)
%3356 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %101 %2988) %3229)
%3357 = (*.f32 maxCos %3356)
%3359 = (/.f32 %101 %2997)
%3361 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3359 %3356))
%3366 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3359 (fma.f32 #s(literal 1/16 binary32) (/.f32 %101 %3004) %3356)))
%3368 = (*.f32 maxCos %3230)
%3370 = (fma.f32 #s(literal 1/2 binary32) %3235 %3230)
%3371 = (*.f32 maxCos %3370)
%3374 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3240 %3370))
%3378 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3240 (fma.f32 #s(literal 1/16 binary32) %3245 %3370)))
%3380 = (*.f32 maxCos %3231)
%3383 = (fma.f32 #s(literal 1/2 binary32) %3033 (fma.f32 #s(literal 1/2 binary32) %3235 %3231))
%3384 = (*.f32 maxCos %3383)
%3387 = (fma.f32 #s(literal -1/8 binary32) %3037 (fma.f32 #s(literal -1/8 binary32) %3240 %3383))
%3388 = (*.f32 maxCos %3387)
%3393 = (fma.f32 #s(literal -1/8 binary32) %3037 (fma.f32 #s(literal -1/8 binary32) %3240 (fma.f32 #s(literal 1/16 binary32) %3041 (fma.f32 #s(literal 1/16 binary32) %3245 %3383))))
%3394 = (*.f32 maxCos %3393)
%3572 = (fma.f32 #s(literal -1/2 binary32) %3331 %3030)
%3579 = (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %119 %2986) %184) maxCos) %3030)
%3591 = (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/8 binary32) (/.f32 %119 (*.f32 %27 %2996)) (*.f32 #s(literal 1/2 binary32) (/.f32 %119 %2985))) maxCos) %184) maxCos) %3030)
(approx uy #s(literal 0 binary32))
(approx xi xi)
(approx %20 %36)
(approx %45 %46)
(approx %50 %53)
(approx %55 %56)
(approx %64 %67)
(approx %64 %70)
(approx %73 (*.f32 #s(literal 2 binary32) %74))
(approx %73 (fma.f32 #s(literal 2 binary32) %74 %81))
(approx %88 %91)
(approx %88 %93)
(approx %100 %104)
(approx %100 (fma.f32 maxCos %90 %106))
(approx %109 %110)
(approx %109 (fma.f32 #s(literal 2 binary32) %74 (fma.f32 maxCos %90 %81)))
(approx %118 %119)
(approx %123 %124)
(approx %123 %126)
(approx %136 %144)
(approx %136 %147)
(approx %152 %153)
(approx %152 (fma.f32 maxCos %90 %147))
(approx %170 %184)
(approx %170 %186)
(approx %188 %189)
(approx %188 (fma.f32 #s(literal 1/2 binary32) %183 %191))
(approx %98 %103)
(approx %98 %106)
(approx %64 (*.f32 #s(literal -2 binary32) %56))
(approx %64 (*.f32 xi (fma.f32 #s(literal -2 binary32) %198 (*.f32 #s(literal 2 binary32) %199))))
(approx %73 %81)
(approx %73 (*.f32 xi (+.f32 %34 (fma.f32 #s(literal -2 binary32) %78 (*.f32 #s(literal 2 binary32) %205)))))
(approx %88 (*.f32 xi (+.f32 %34 %211)))
(approx %100 (*.f32 xi (fma.f32 %25 %34 (+.f32 %211 %215))))
(approx %109 (*.f32 xi (+.f32 %34 (fma.f32 #s(literal -2 binary32) %78 (fma.f32 #s(literal 2 binary32) %205 %211)))))
(approx %123 (*.f32 xi (+.f32 %25 %225)))
(approx %136 %229)
(approx %136 (*.f32 xi (fma.f32 %25 %142 %231)))
(approx %152 (*.f32 xi (fma.f32 %25 %142 (+.f32 %211 %231))))
(approx %170 (*.f32 xi (fma.f32 #s(literal 1/2 binary32) %239 %35)))
(approx %188 (*.f32 xi (fma.f32 #s(literal 1/2 binary32) %239 (fma.f32 %25 %34 %211))))
(approx %98 (*.f32 xi (fma.f32 %25 %34 %215)))
(approx %64 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -2 binary32) %199 (*.f32 #s(literal 2 binary32) %198)))))
(approx %73 (*.f32 #s(literal -1 binary32) (*.f32 xi %257)))
(approx %73 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -2 binary32) %205 %257))))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %34 (*.f32 #s(literal -1 binary32) %211)))))
(approx %100 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %35 (*.f32 #s(literal -1 binary32) (/.f32 %104 xi))))))
(approx %109 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %34 (fma.f32 #s(literal -1 binary32) (/.f32 %110 xi) %256)))))
(approx %123 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %25 (*.f32 #s(literal -1 binary32) %225)))))
(approx %136 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %146 (*.f32 #s(literal -1 binary32) %231)))))
(approx %152 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %146 (*.f32 #s(literal -1 binary32) (/.f32 %153 xi))))))
(approx %170 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %35 (*.f32 #s(literal -1/2 binary32) %239)))))
(approx %188 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %35 (*.f32 #s(literal -1 binary32) (/.f32 %189 xi))))))
(approx %98 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %35 (*.f32 #s(literal -1 binary32) %215)))))
(approx yi yi)
(approx %62 %66)
(approx %73 %318)
(approx %73 (fma.f32 #s(literal -2 binary32) %317 %320))
(approx %100 %191)
(approx %109 %324)
(approx %109 (fma.f32 #s(literal -2 binary32) %317 %326))
(approx %152 %329)
(approx %64 (*.f32 yi (fma.f32 #s(literal -2 binary32) %331 %332)))
(approx %73 (*.f32 yi (fma.f32 #s(literal -2 binary32) %336 (fma.f32 #s(literal 2 binary32) %337 %338))))
(approx %100 (*.f32 yi (fma.f32 %101 %34 %345)))
(approx %109 (*.f32 yi (fma.f32 #s(literal -2 binary32) %336 (fma.f32 #s(literal 2 binary32) %337 (+.f32 %343 %338)))))
(approx %123 (*.f32 yi (+.f32 %101 %354)))
(approx %136 (*.f32 yi (fma.f32 %101 %142 %358)))
(approx %152 (*.f32 yi (fma.f32 %101 %142 (+.f32 %343 %358))))
(approx %170 (*.f32 yi (fma.f32 #s(literal 1/2 binary32) %182 %344)))
(approx %188 (*.f32 yi (fma.f32 #s(literal 1/2 binary32) %182 %345)))
(approx %98 (*.f32 yi (fma.f32 %101 %34 %344)))
(approx %64 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %65 (*.f32 #s(literal 2 binary32) %331)))))
(approx %73 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %337 (*.f32 #s(literal -1 binary32) (/.f32 %318 yi))))))
(approx %100 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %102 (*.f32 #s(literal -1 binary32) %386)))))
(approx %109 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %337 (*.f32 #s(literal -1 binary32) (/.f32 %324 yi))))))
(approx %123 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %101 (*.f32 #s(literal -1 binary32) %354)))))
(approx %136 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %143 (*.f32 #s(literal -1 binary32) %358)))))
(approx %152 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %143 (*.f32 #s(literal -1 binary32) (/.f32 %329 yi))))))
(approx %170 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %344 %414))))
(approx %188 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %386 %414))))
(approx %98 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %102 (*.f32 #s(literal -1 binary32) %344)))))
(approx zi zi)
(approx %85 %89)
(approx %86 %90)
(approx %150 %431)
(approx %109 %433)
(approx %109 (fma.f32 maxCos %90 %433))
(approx %152 %437)
(approx %152 (fma.f32 maxCos %90 %437))
(approx %88 (*.f32 zi (fma.f32 maxCos %172 %441)))
(approx %100 (*.f32 zi (fma.f32 maxCos %172 (+.f32 %445 (/.f32 %103 zi)))))
(approx %109 (*.f32 zi (fma.f32 maxCos %172 (+.f32 (/.f32 (*.f32 uy %70) zi) %441))))
(approx %152 (*.f32 zi (fma.f32 maxCos %172 %457)))
(approx %188 (*.f32 zi (fma.f32 #s(literal 1/2 binary32) (/.f32 %183 zi) (fma.f32 maxCos %172 %445))))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %173 (*.f32 #s(literal -1 binary32) %441)))))
(approx %100 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %173 (*.f32 #s(literal -1 binary32) (/.f32 %106 zi))))))
(approx %109 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %173 (*.f32 #s(literal -1 binary32) (/.f32 %433 zi))))))
(approx %152 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %173 (*.f32 #s(literal -1 binary32) %457)))))
(approx %188 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %173 (*.f32 #s(literal -1 binary32) (/.f32 %186 zi))))))
(approx ux ux)
(approx %12 #s(literal 1 binary32))
(approx %12 %497)
(approx %14 maxCos)
(approx %14 %502)
(approx %15 %500)
(approx %15 (*.f32 ux %502))
(approx %16 %507)
(approx %16 (*.f32 %28 (fma.f32 #s(literal -2 binary32) %509 %27)))
(approx %16 (*.f32 %28 (fma.f32 ux (fma.f32 #s(literal -2 binary32) %27 %509) %27)))
(approx %17 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) %507)))
(approx %17 (+.f32 #s(literal 1 binary32) (*.f32 %28 (-.f32 %520 %27))))
(approx %17 (+.f32 #s(literal 1 binary32) (*.f32 %28 (-.f32 (*.f32 ux (-.f32 (*.f32 #s(literal -1 binary32) %509) (*.f32 #s(literal -2 binary32) %27))) %27))))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1/2 binary32) %507)))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %27 %509))))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %27 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %543) %27))))))
(approx %19 %25)
(approx %19 (+.f32 %25 (*.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %25)))))
(approx %19 (+.f32 %25 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %557 (*.f32 %27 (*.f32 ux %25))))))
(approx %19 (+.f32 %25 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %557 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %564) %557))))))
(approx %20 (fma.f32 #s(literal -1/2 binary32) %573 %119))
(approx %20 %581)
(approx %20 %589)
(approx %99 %592)
(approx %99 (*.f32 ux (fma.f32 #s(literal -1 binary32) %592 %431)))
(approx %39 %28)
(approx %40 %599)
(approx %40 %603)
(approx %41 (*.f32 %28 %599))
(approx %41 (*.f32 %28 %603))
(approx %85 %610)
(approx %86 %591)
(approx %86 (*.f32 ux %610))
(approx %149 %615)
(approx %49 %51)
(approx %49 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %51)) %51))
(approx %49 (fma.f32 %28 (fma.f32 #s(literal -1/2 binary32) %622 (*.f32 %27 (*.f32 ux %51))) %51))
(approx %49 (fma.f32 %28 (fma.f32 #s(literal -1/2 binary32) %622 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %628) %622))) %51))
(approx %45 (+.f32 xi (*.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 xi)))))
(approx %45 (+.f32 xi (*.f32 %28 %643)))
(approx %45 (+.f32 xi (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %640 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %647) %640))))))
(approx %50 %655)
(approx %50 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %655)) %655))
(approx %50 (fma.f32 xi %51 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %661 (*.f32 %27 (*.f32 ux %655))))))
(approx %50 (fma.f32 xi %51 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %661 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %668) %661))))))
(approx %61 %22)
(approx %61 (+.f32 %22 (*.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %22)))))
(approx %61 (+.f32 %22 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %682 (*.f32 %27 (*.f32 ux %22))))))
(approx %61 (+.f32 %22 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %682 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %689) %682))))))
(approx %62 %697)
(approx %62 (fma.f32 #s(literal -1/2 binary32) %700 %697))
(approx %62 (fma.f32 yi %22 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %703 %705))))
(approx %62 (fma.f32 yi %22 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %703 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) %711 %703))))))
(approx %63 %718)
(approx %63 (fma.f32 #s(literal -1 binary32) %700 %718))
(approx %63 (fma.f32 #s(literal 2 binary32) %697 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %703 (*.f32 #s(literal 2 binary32) %705)))))
(approx %63 (fma.f32 #s(literal 2 binary32) %697 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %703 (*.f32 ux (fma.f32 #s(literal -1 binary32) %711 %727))))))
(approx %55 %734)
(approx %55 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %734)) %734))
(approx %55 (fma.f32 uy %655 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %740 (*.f32 %27 (*.f32 ux %734))))))
(approx %55 (fma.f32 uy %655 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %740 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %747) %740))))))
(approx %64 %755)
(approx %64 (fma.f32 #s(literal -2 binary32) %734 (fma.f32 #s(literal 2 binary32) %697 (*.f32 %28 %757))))
(approx %64 (fma.f32 #s(literal -2 binary32) %734 (fma.f32 #s(literal 2 binary32) %697 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %703 (fma.f32 ux %762 %740))))))
(approx %64 (fma.f32 #s(literal -2 binary32) %734 (fma.f32 #s(literal 2 binary32) %697 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %703 (fma.f32 ux (fma.f32 #s(literal -2 binary32) %740 (fma.f32 #s(literal 2 binary32) %703 (*.f32 ux %769))) %740))))))
(approx %73 (+.f32 xi %779))
(approx %73 (+.f32 xi (fma.f32 uy %755 (*.f32 %28 %783))))
(approx %73 (+.f32 xi (fma.f32 uy %755 (*.f32 %28 %790))))
(approx %73 (+.f32 xi (fma.f32 uy %755 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %640 (fma.f32 ux (fma.f32 ux (fma.f32 #s(literal -1/2 binary32) %647 (*.f32 uy %769)) %788) %782))))))
(approx %88 (+.f32 xi %592))
(approx %88 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %431 (*.f32 #s(literal -1/2 binary32) %640)))))))
(approx %88 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %431 %643))))))
(approx %100 (fma.f32 maxCos %591 %126))
(approx %100 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %431 %823))) %126))
(approx %100 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %431 %832))) %126))
(approx %109 (+.f32 xi (fma.f32 maxCos %591 %779)))
(approx %109 (+.f32 xi (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %431 %783))) %779)))
(approx %109 (+.f32 xi (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %431 %790))) %779)))
(approx %128 #s(literal -1 binary32))
(approx %128 %137)
(approx %129 (*.f32 #s(literal -1 binary32) maxCos))
(approx %129 %857)
(approx %159 %501)
(approx %159 (*.f32 ux %857))
(approx %132 %862)
(approx %132 (*.f32 %28 %502))
(approx %134 (+.f32 #s(literal 1 binary32) (*.f32 %28 (fma.f32 #s(literal -1 binary32) %27 %520))))
(approx %134 (+.f32 #s(literal 1 binary32) (*.f32 %28 (fma.f32 #s(literal -1 binary32) %27 (*.f32 ux (fma.f32 #s(literal -1 binary32) %509 %870))))))
(approx %135 (+.f32 #s(literal 1 binary32) (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %27 (*.f32 ux (fma.f32 #s(literal 1/2 binary32) (*.f32 ux %879) %27))))))
(approx %163 %174)
(approx %160 %179)
(approx %161 %180)
(approx %164 %175)
(approx %162 %181)
(approx %165 %176)
(approx %166 %182)
(approx %168 (*.f32 #s(literal 1/2 binary32) %182))
(approx %136 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %126)) %126))
(approx %136 (fma.f32 xi %25 (fma.f32 yi %101 (*.f32 %28 %903))))
(approx %136 (fma.f32 xi %25 (fma.f32 yi %101 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %900 (*.f32 ux (fma.f32 #s(literal 1/2 binary32) (*.f32 ux (*.f32 %126 %879)) %900)))))))
(approx %152 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %431 (*.f32 #s(literal -1/2 binary32) %900)))) %126))
(approx %152 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %431 %903))) %126))
(approx %170 %928)
(approx %170 (fma.f32 #s(literal -1/2 binary32) %573 %928))
(approx %170 (fma.f32 #s(literal 1/2 binary32) %183 %581))
(approx %170 (fma.f32 #s(literal 1/2 binary32) %183 %589))
(approx %188 (fma.f32 #s(literal 1/2 binary32) %183 (fma.f32 maxCos %591 %119)))
(approx %188 (fma.f32 #s(literal 1/2 binary32) %183 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %431 (*.f32 #s(literal -1/2 binary32) %576)))) %119)))
(approx %188 (fma.f32 #s(literal 1/2 binary32) %183 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %431 %579))) %119)))
(approx %96 %101)
(approx %96 (+.f32 %101 (*.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %101)))))
(approx %96 (+.f32 %101 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %958 (*.f32 %27 (*.f32 ux %101))))))
(approx %96 (+.f32 %101 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %958 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %965) %958))))))
(approx %97 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %124)) %124))
(approx %97 (fma.f32 yi %101 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %821 (*.f32 %27 (*.f32 ux %124))))))
(approx %97 (fma.f32 yi %101 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %821 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %983) %821))))))
(approx %98 (fma.f32 xi %25 (fma.f32 yi %101 (*.f32 %28 %823))))
(approx %98 (fma.f32 xi %25 (fma.f32 yi %101 (*.f32 %28 %832))))
(approx %98 (fma.f32 xi %25 (fma.f32 yi %101 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %576 (fma.f32 #s(literal -1/2 binary32) %821 (*.f32 ux (fma.f32 ux (fma.f32 #s(literal -1/2 binary32) %583 (*.f32 #s(literal -1/2 binary32) %983)) %829))))))))
(approx %12 %496)
(approx %12 %1012)
(approx %14 %1016)
(approx %15 (*.f32 #s(literal -1 binary32) %862))
(approx %15 (*.f32 %28 %1015))
(approx %16 %1023)
(approx %16 (*.f32 %1022 %1026))
(approx %16 (*.f32 %1022 %1031))
(approx %17 (*.f32 #s(literal -1 binary32) %1023))
(approx %17 (*.f32 %1022 (-.f32 %1036 %27)))
(approx %17 (*.f32 %1022 (-.f32 (*.f32 #s(literal -1 binary32) %1029) %1026)))
(approx %17 (*.f32 %1022 (-.f32 %1044 %1031)))
(approx %18 %1050)
(approx %18 (*.f32 %28 (+.f32 %1049 %1053)))
(approx %18 (*.f32 %28 (+.f32 %1049 (fma.f32 #s(literal -1/2 binary32) %1060 %1053))))
(approx %18 (*.f32 %28 (+.f32 %1049 (fma.f32 #s(literal -1/2 binary32) %1060 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1065 %1069) %1053)))))
(approx %19 (*.f32 %28 %1076))
(approx %19 (*.f32 %28 %1080))
(approx %19 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1084 %1080)))
(approx %19 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1084 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1088 %1069) %1080))))
(approx %20 (*.f32 %28 %1094))
(approx %20 (*.f32 %28 %1098))
(approx %20 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1102 %1098)))
(approx %20 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1102 %1108)))
(approx %99 (*.f32 #s(literal -1 binary32) (*.f32 maxCos %1112)))
(approx %99 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 %1116)))
(approx %40 (*.f32 %28 %1121))
(approx %40 (*.f32 %28 %1126))
(approx %41 %1022)
(approx %41 (*.f32 %1022 %1121))
(approx %41 (*.f32 %1022 %1126))
(approx %85 %609)
(approx %85 (*.f32 ux %1136))
(approx %86 (*.f32 #s(literal -1 binary32) %1112))
(approx %86 (*.f32 %28 %1136))
(approx %149 (*.f32 #s(literal -1 binary32) %28))
(approx %149 (*.f32 %28 %1011))
(approx %49 (*.f32 %28 %1147))
(approx %49 (*.f32 %28 %1151))
(approx %49 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1155 %1151)))
(approx %49 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1155 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1159 %1069) %1151))))
(approx %45 (*.f32 %28 %1165))
(approx %45 (*.f32 %28 %1169))
(approx %45 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1173 %1169)))
(approx %45 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1173 (fma.f32 #s(literal 1/2 binary32) %1178 %1169))))
(approx %50 (*.f32 %28 %1183))
(approx %50 (*.f32 %28 %1187))
(approx %50 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1191 %1187)))
(approx %50 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1191 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1195 %1069) %1187))))
(approx %61 (*.f32 %28 %1201))
(approx %61 (*.f32 %28 %1205))
(approx %61 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1209 %1205)))
(approx %61 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1209 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1213 %1069) %1205))))
(approx %62 %1220)
(approx %62 (*.f32 %28 %1223))
(approx %62 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1227 %1223)))
(approx %62 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1227 (fma.f32 #s(literal 1/2 binary32) %1232 %1223))))
(approx %63 (*.f32 #s(literal 2 binary32) %1220))
(approx %63 (*.f32 %28 %1240))
(approx %63 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %1227 %1240)))
(approx %63 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %1227 (fma.f32 #s(literal 2 binary32) %1219 (fma.f32 #s(literal 2 binary32) %1222 %1232)))))
(approx %55 (*.f32 %28 %1251))
(approx %55 (*.f32 %28 %1255))
(approx %55 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1259 %1255)))
(approx %55 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1259 (fma.f32 #s(literal 1/2 binary32) %1264 %1255))))
(approx %64 (*.f32 %28 %1270))
(approx %64 (*.f32 %28 (fma.f32 #s(literal -2 binary32) %1251 (fma.f32 #s(literal -2 binary32) %1254 %1240))))
(approx %64 (*.f32 %28 (fma.f32 #s(literal -2 binary32) %1251 (fma.f32 #s(literal -2 binary32) %1254 (fma.f32 #s(literal -1 binary32) %1227 (fma.f32 #s(literal 2 binary32) %1219 (fma.f32 #s(literal 2 binary32) %1222 %1259)))))))
(approx %64 (*.f32 %28 (fma.f32 #s(literal -2 binary32) %1251 (fma.f32 #s(literal -2 binary32) %1254 (fma.f32 #s(literal -1 binary32) %1227 (fma.f32 #s(literal -1 binary32) %1264 (fma.f32 #s(literal 2 binary32) %1219 (fma.f32 #s(literal 2 binary32) %1222 (+.f32 %1259 %1232)))))))))
(approx %73 (*.f32 %28 %1293))
(approx %73 (*.f32 %28 (fma.f32 uy %1270 (fma.f32 xi %1049 %1302))))
(approx %73 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1173 (fma.f32 uy %1270 (fma.f32 xi %1049 %1313)))))
(approx %73 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1173 (fma.f32 #s(literal 1/2 binary32) %1178 (fma.f32 uy %1270 (fma.f32 xi %1049 %1326))))))
(approx %88 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 %1165)))
(approx %88 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 %1337)))
(approx %88 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1/2 binary32) %1173 %1337))))
(approx %88 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1/2 binary32) %1173 (fma.f32 #s(literal 1/2 binary32) %1178 %1337)))))
(approx %100 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 %1352)))
(approx %100 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 %1360)))
(approx %100 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1/2 binary32) %1102 (fma.f32 #s(literal -1/2 binary32) %1366 %1360)))))
(approx %100 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1/2 binary32) %1102 (fma.f32 #s(literal -1/2 binary32) %1366 (fma.f32 #s(literal 1/2 binary32) %1107 (fma.f32 #s(literal 1/2 binary32) %1373 %1360)))))))
(approx %109 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 %1293)))
(approx %109 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 uy %1270 (fma.f32 xi %1049 (+.f32 %1116 %1302))))))
(approx %109 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1/2 binary32) %1173 (fma.f32 uy %1270 (fma.f32 xi %1049 (+.f32 %1116 %1313)))))))
(approx %109 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1/2 binary32) %1173 (fma.f32 #s(literal 1/2 binary32) %1178 (fma.f32 uy %1270 (fma.f32 xi %1049 (+.f32 %1116 %1326))))))))
(approx %128 %1406)
(approx %129 %1410)
(approx %159 (*.f32 %28 %1409))
(approx %132 (*.f32 #s(literal -1 binary32) (*.f32 maxCos %1067)))
(approx %132 (*.f32 %1067 %1015))
(approx %134 (*.f32 %1022 %1419))
(approx %134 (*.f32 %1022 (fma.f32 #s(literal -1 binary32) %1029 %1419)))
(approx %134 (*.f32 %1022 (fma.f32 #s(literal -1 binary32) %1029 (fma.f32 #s(literal -1 binary32) %27 (fma.f32 #s(literal 2 binary32) %1025 %1044)))))
(approx %135 %1431)
(approx %135 (*.f32 %28 (+.f32 %1430 %1434)))
(approx %135 (*.f32 %28 (+.f32 %1430 %1442)))
(approx %135 (*.f32 %28 (+.f32 %1430 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1446 %1448) %1442))))
(approx %136 (*.f32 %28 %1454))
(approx %136 (*.f32 %28 %1458))
(approx %136 (*.f32 %28 %1463))
(approx %136 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1467 %1463)))
(approx %152 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 %1454)))
(approx %152 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 %1475)))
(approx %152 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 %1479)))
(approx %152 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1/2 binary32) %1467 %1479))))
(approx %170 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1102 (fma.f32 #s(literal 1/2 binary32) %1487 %1098))))
(approx %170 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1102 (fma.f32 #s(literal 1/2 binary32) %1487 %1108))))
(approx %188 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 %1094)))
(approx %188 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 %1500)))
(approx %188 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1/2 binary32) %1102 (fma.f32 #s(literal 1/2 binary32) %1487 %1500)))))
(approx %188 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1/2 binary32) %1102 (fma.f32 #s(literal 1/2 binary32) %1487 (fma.f32 #s(literal 1/2 binary32) %1107 %1500))))))
(approx %96 (*.f32 %28 %1350))
(approx %96 (*.f32 %28 %1518))
(approx %96 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1521 %1518)))
(approx %96 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1521 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1525 %1069) %1518))))
(approx %97 (*.f32 %28 %1351))
(approx %97 (*.f32 %28 %1533))
(approx %97 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1366 %1533)))
(approx %97 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1366 (fma.f32 #s(literal 1/2 binary32) %1373 %1533))))
(approx %98 (*.f32 %28 %1352))
(approx %98 (*.f32 %28 %1546))
(approx %98 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1102 (fma.f32 #s(literal -1/2 binary32) %1366 %1546))))
(approx %98 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1102 (fma.f32 #s(literal -1/2 binary32) %1366 (fma.f32 #s(literal 1/2 binary32) %1107 (fma.f32 #s(literal 1/2 binary32) %1373 %1546))))))
(approx %12 (*.f32 #s(literal -1 binary32) %1406))
(approx %14 (*.f32 #s(literal -1 binary32) %1410))
(approx %16 (*.f32 %1022 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1025 %870) ux) %27)))
(approx %17 (*.f32 %1022 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 %1025 %870) ux)) %27)))
(approx %17 (*.f32 %1022 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 %1124 %27) ux)) %870) ux)) %27)))
(approx %18 (*.f32 %28 (+.f32 %1049 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1583 (*.f32 #s(literal 1/2 binary32) (/.f32 %1059 %1052))) ux)))))
(approx %18 (*.f32 %28 (+.f32 %1049 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1059 %1049) (*.f32 #s(literal 1/2 binary32) (/.f32 %1065 %1593))) ux) (*.f32 #s(literal -1 binary32) %1583)) ux)))))
(approx %19 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1605 (*.f32 #s(literal 1/2 binary32) (/.f32 %1083 %1052))) ux) %1076)))
(approx %19 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1605 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1083 %1049) (*.f32 #s(literal 1/2 binary32) (/.f32 %1088 %1593))) ux))) ux) %1076)))
(approx %20 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1624 (*.f32 #s(literal 1/2 binary32) (/.f32 %1101 %1052))) ux) %1094)))
(approx %20 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1624 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1632 %1634) ux))) ux) %1094)))
(approx %40 (*.f32 %28 %1646))
(approx %41 (*.f32 %1022 %1646))
(approx %85 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 zi (*.f32 #s(literal -1 binary32) %1135)))))
(approx %49 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1656 (*.f32 #s(literal 1/2 binary32) (/.f32 %1154 %1052))) ux) %1147)))
(approx %49 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1656 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1154 %1049) (*.f32 #s(literal 1/2 binary32) (/.f32 %1159 %1593))) ux))) ux) %1147)))
(approx %45 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1678 ux) %1165)))
(approx %45 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1689 ux) %1165)))
(approx %50 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1694 (*.f32 #s(literal 1/2 binary32) (/.f32 %1190 %1052))) ux) %1183)))
(approx %50 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1694 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1190 %1049) (*.f32 #s(literal 1/2 binary32) (/.f32 %1195 %1593))) ux))) ux) %1183)))
(approx %61 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1713 (*.f32 #s(literal 1/2 binary32) (/.f32 %1208 %1052))) ux) %1201)))
(approx %61 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1713 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1208 %1049) (*.f32 #s(literal 1/2 binary32) (/.f32 %1213 %1593))) ux))) ux) %1201)))
(approx %62 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1297 (*.f32 #s(literal 1/2 binary32) %1732)) ux) %1219)))
(approx %62 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1297 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1307 (*.f32 #s(literal 1/2 binary32) %1739)) ux))) ux) %1219)))
(approx %63 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %1297 %1732) ux) %1269)))
(approx %63 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %1297 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1307 %1739) ux))) ux) %1269)))
(approx %55 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1296 (*.f32 #s(literal 1/2 binary32) (/.f32 %1258 %1052))) ux) %1251)))
(approx %55 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1296 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1308 (*.f32 #s(literal 1/2 binary32) (/.f32 %1263 %1593))) ux))) ux) %1251)))
(approx %64 (*.f32 %28 (fma.f32 #s(literal -2 binary32) %1251 (fma.f32 #s(literal -1 binary32) (/.f32 %1780 ux) %1269))))
(approx %64 (*.f32 %28 (fma.f32 #s(literal -2 binary32) %1251 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %1297 (fma.f32 #s(literal -1 binary32) (/.f32 %1309 ux) %1779)) ux) %1269))))
(approx %64 (*.f32 %28 (fma.f32 #s(literal -2 binary32) %1251 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %1297 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1307 (fma.f32 #s(literal -1 binary32) (/.f32 %1794 ux) %1308)) ux) %1779)) ux) %1269))))
(approx %73 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1807 ux) %1293)))
(approx %73 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1815 ux) %1293)))
(approx %73 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1827 ux) %1293)))
(approx %88 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %431 (*.f32 #s(literal -1 binary32) %1675)) ux) %1165))))
(approx %88 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %431 %1678) ux) %1165))))
(approx %88 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %431 %1689) ux) %1165))))
(approx %100 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %431 %1853) ux) %1352))))
(approx %100 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %431 %1866) ux) %1352))))
(approx %100 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %431 %1882) ux) %1352))))
(approx %109 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %431 %1807) ux) %1293))))
(approx %109 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %431 %1815) ux) %1293))))
(approx %109 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %431 %1827) ux) %1293))))
(approx %128 (*.f32 #s(literal -1 binary32) %1012))
(approx %129 (*.f32 #s(literal -1 binary32) %1016))
(approx %132 (*.f32 #s(literal -1 binary32) (*.f32 %1067 %1409)))
(approx %134 (*.f32 %1022 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %27 %1025) ux) %877)))
(approx %134 (*.f32 %1022 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %27 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %27 %1124) ux))) ux) %877)))
(approx %135 (*.f32 %28 (+.f32 %1430 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1927 (*.f32 #s(literal -1/2 binary32) (/.f32 %1440 %1433))) ux)))))
(approx %135 (*.f32 %28 (+.f32 %1430 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1446 %1936) (*.f32 #s(literal 1/2 binary32) (/.f32 %1440 %1430))) ux) (*.f32 #s(literal -1 binary32) %1927)) ux)))))
(approx %163 %1950)
(approx %160 %1953)
(approx %161 %1955)
(approx %164 %1957)
(approx %162 %1959)
(approx %165 %1961)
(approx %166 %1963)
(approx %168 (*.f32 #s(literal 1/2 binary32) %1963))
(approx %136 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1970 ux) %1454)))
(approx %136 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1981 ux) %1454)))
(approx %152 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %431 (*.f32 #s(literal -1 binary32) %1967)) ux) %1454))))
(approx %152 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %431 %1970) ux) %1454))))
(approx %152 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %431 %1981) ux) %1454))))
(approx %169 %2006)
(approx %170 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %2011 ux) %1094)))
(approx %170 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %2020 ux) %1094)))
(approx %188 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %431 (*.f32 #s(literal -1 binary32) %1624)) ux) %1094))))
(approx %188 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %431 %2011) ux) %1094))))
(approx %188 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %431 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %431 %2020) ux) %1094))))
(approx %96 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %2044 (*.f32 #s(literal 1/2 binary32) (/.f32 %1364 %1052))) ux) %1350)))
(approx %96 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %2044 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1364 %1049) (*.f32 #s(literal 1/2 binary32) (/.f32 %1525 %1593))) ux))) ux) %1350)))
(approx %97 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1851 (*.f32 #s(literal 1/2 binary32) (/.f32 %1365 %1052))) ux) %1351)))
(approx %97 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1851 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1860 (*.f32 #s(literal 1/2 binary32) (/.f32 %1372 %1593))) ux))) ux) %1351)))
(approx %98 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1853 ux) %1352)))
(approx %98 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1866 ux) %1352)))
(approx %98 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1882 ux) %1352)))
(approx uy uy)
(approx %6 (*.f32 #s(literal 2 binary32) uy))
(approx %8 %24)
(approx %9 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -2 binary32) (*.f32 %77 %51))))
(approx %9 (+.f32 #s(literal 1 binary32) (*.f32 %77 (fma.f32 #s(literal -2 binary32) %51 (*.f32 #s(literal 2/3 binary32) (*.f32 %77 %2101))))))
(approx %9 (+.f32 #s(literal 1 binary32) (*.f32 %77 (fma.f32 #s(literal -2 binary32) %51 (*.f32 %77 (fma.f32 #s(literal -4/45 binary32) (*.f32 %77 %2110) (*.f32 #s(literal 2/3 binary32) %2101)))))))
(approx %19 %34)
(approx %19 %80)
(approx %19 (+.f32 %34 (*.f32 %77 (fma.f32 #s(literal -2 binary32) %52 (*.f32 #s(literal 2/3 binary32) (*.f32 %77 %2121))))))
(approx %19 (+.f32 %34 (*.f32 %77 (fma.f32 #s(literal -2 binary32) %52 (*.f32 %77 (fma.f32 #s(literal -4/45 binary32) (*.f32 %77 %2128) (*.f32 #s(literal 2/3 binary32) %2121)))))))
(approx %20 (fma.f32 xi %34 (*.f32 %77 (fma.f32 #s(literal -2 binary32) %53 (*.f32 #s(literal 2/3 binary32) (*.f32 %77 %2137))))))
(approx %20 (fma.f32 xi %34 (*.f32 %77 (fma.f32 #s(literal -2 binary32) %53 (*.f32 %77 (fma.f32 #s(literal -4/45 binary32) (*.f32 %77 (*.f32 xi %2128)) (*.f32 #s(literal 2/3 binary32) %2137)))))))
(approx %95 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %77 %2154) (*.f32 #s(literal 2 binary32) %22))))
(approx %95 (*.f32 uy (fma.f32 #s(literal 2 binary32) %22 (*.f32 %77 (fma.f32 #s(literal -4/3 binary32) %2154 (*.f32 #s(literal 4/15 binary32) (*.f32 %77 %2162)))))))
(approx %95 (*.f32 uy (fma.f32 #s(literal 2 binary32) %22 (*.f32 %77 (fma.f32 #s(literal -4/3 binary32) %2154 (*.f32 %77 (fma.f32 #s(literal -8/315 binary32) (*.f32 %77 %2172) (*.f32 #s(literal 4/15 binary32) %2162))))))))
(approx %73 %320)
(approx %100 %326)
(approx %100 (fma.f32 maxCos %90 %2191))
(approx %118 (+.f32 xi (*.f32 #s(literal -2 binary32) (*.f32 %77 %655))))
(approx %118 (+.f32 xi (*.f32 %77 (fma.f32 #s(literal -2 binary32) %655 (*.f32 #s(literal 2/3 binary32) (*.f32 %77 %2198))))))
(approx %118 (+.f32 xi (*.f32 %77 (fma.f32 #s(literal -2 binary32) %655 (*.f32 %77 (fma.f32 #s(literal -4/45 binary32) (*.f32 %77 (*.f32 xi %2110)) (*.f32 #s(literal 2/3 binary32) %2198)))))))
(approx %162 %178)
(approx %162 (fma.f32 #s(literal 2 binary32) (*.f32 uy %2216) %178))
(approx %162 (fma.f32 maxCos %177 (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 maxCos (*.f32 ux (*.f32 uy %2220))) %2224))))
(approx %162 (fma.f32 maxCos %177 (*.f32 uy (fma.f32 #s(literal 2 binary32) %2216 (*.f32 uy (fma.f32 #s(literal -2 binary32) %2230 (*.f32 #s(literal -4/3 binary32) (*.f32 uy %2231))))))))
(approx %165 %173)
(approx %165 (fma.f32 #s(literal 2 binary32) (*.f32 uy %2242) %173))
(approx %165 (fma.f32 maxCos %172 (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 maxCos (*.f32 ux (*.f32 uy %2246))) (*.f32 #s(literal 2 binary32) %2242)))))
(approx %165 (fma.f32 maxCos %172 (*.f32 uy (fma.f32 #s(literal 2 binary32) %2242 (*.f32 uy (fma.f32 #s(literal -2 binary32) %2256 (*.f32 #s(literal -4/3 binary32) (*.f32 uy %2257))))))))
(approx %166 %2266)
(approx %166 (fma.f32 maxCos %172 (fma.f32 maxCos %177 %2269)))
(approx %166 (fma.f32 maxCos %172 (fma.f32 maxCos %177 (*.f32 uy (fma.f32 #s(literal 2 binary32) %2242 (fma.f32 #s(literal 2 binary32) %2216 %2275))))))
(approx %166 (fma.f32 maxCos %172 (fma.f32 maxCos %177 (*.f32 uy (fma.f32 #s(literal 2 binary32) %2242 (fma.f32 #s(literal 2 binary32) %2216 (*.f32 uy (fma.f32 #s(literal -2 binary32) %2256 (fma.f32 #s(literal -2 binary32) %2230 %2284)))))))))
(approx %168 %2294)
(approx %168 (fma.f32 #s(literal 1/2 binary32) %2269 %2294))
(approx %168 (fma.f32 #s(literal 1/2 binary32) %2266 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %2275 (*.f32 #s(literal 1/2 binary32) %2268)))))
(approx %168 (fma.f32 #s(literal 1/2 binary32) %2266 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %2268 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %2284 (*.f32 #s(literal 1/2 binary32) %2274)))))))
(approx %123 (+.f32 xi (*.f32 #s(literal 2 binary32) (*.f32 uy %697))))
(approx %123 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %697 (*.f32 uy (fma.f32 #s(literal -2 binary32) %655 (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi %2154)))))))))
(approx %136 %2323)
(approx %136 (fma.f32 #s(literal 2 binary32) %2327 %2323))
(approx %136 %2335)
(approx %136 %2344)
(approx %152 %2346)
(approx %152 (fma.f32 #s(literal 2 binary32) %2327 %2346))
(approx %152 (fma.f32 maxCos %90 %2335))
(approx %152 (fma.f32 maxCos %90 %2344))
(approx %169 %2355)
(approx %169 (fma.f32 #s(literal 1/2 binary32) %2358 %2355))
(approx %169 (fma.f32 #s(literal 1/2 binary32) %2354 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) (*.f32 uy %2361) (*.f32 #s(literal 1/2 binary32) %2357)))))
(approx %169 (fma.f32 #s(literal 1/2 binary32) %2354 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %2357 (*.f32 uy %2371)))))
(approx %170 %2377)
(approx %170 (fma.f32 #s(literal 1/2 binary32) %2358 %2377))
(approx %170 (fma.f32 #s(literal 1/2 binary32) %2354 %2384))
(approx %170 (fma.f32 #s(literal 1/2 binary32) %2354 %2390))
(approx %188 %2393)
(approx %188 (fma.f32 #s(literal 1/2 binary32) %2358 %2393))
(approx %188 (fma.f32 #s(literal 1/2 binary32) %2354 (fma.f32 maxCos %90 %2384)))
(approx %188 (fma.f32 #s(literal 1/2 binary32) %2354 (fma.f32 maxCos %90 %2390)))
(approx %96 (*.f32 #s(literal 2 binary32) %337))
(approx %96 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %77 %2184) %332)))
(approx %96 (*.f32 uy (fma.f32 #s(literal 2 binary32) %65 (*.f32 %77 (fma.f32 #s(literal -4/3 binary32) %2184 (*.f32 #s(literal 4/15 binary32) (*.f32 %77 %2409)))))))
(approx %96 (*.f32 uy (fma.f32 #s(literal 2 binary32) %65 (*.f32 %77 (fma.f32 #s(literal -4/3 binary32) %2184 (*.f32 %77 (fma.f32 #s(literal -8/315 binary32) (*.f32 %77 %2417) (*.f32 #s(literal 4/15 binary32) %2409))))))))
(approx %97 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %77 %2185) %67)))
(approx %97 (*.f32 uy (fma.f32 #s(literal 2 binary32) %66 (*.f32 %77 (fma.f32 #s(literal -4/3 binary32) %2185 (*.f32 #s(literal 4/15 binary32) (*.f32 %77 %2431)))))))
(approx %97 (*.f32 uy (fma.f32 #s(literal 2 binary32) %66 (*.f32 %77 (fma.f32 #s(literal -4/3 binary32) %2185 (*.f32 %77 (fma.f32 #s(literal -8/315 binary32) (*.f32 %77 (*.f32 yi %2417)) (*.f32 #s(literal 4/15 binary32) %2431))))))))
(approx %98 %2191)
(approx %19 %35)
(approx %64 (*.f32 uy %2453))
(approx %73 (*.f32 #s(literal -2 binary32) %317))
(approx %73 (*.f32 %77 %2453))
(approx %73 (*.f32 %77 (fma.f32 #s(literal -2 binary32) %53 (fma.f32 #s(literal 2 binary32) %2451 %2460))))
(approx %109 (*.f32 %77 (fma.f32 #s(literal -2 binary32) %53 (fma.f32 #s(literal 2 binary32) %2451 (+.f32 (/.f32 %91 %77) %2460)))))
(approx %161 (*.f32 uy (fma.f32 #s(literal 2 binary32) %22 %2471)))
(approx %164 (*.f32 uy (fma.f32 #s(literal 2 binary32) %22 %2475)))
(approx %96 %102)
(approx %64 (*.f32 #s(literal -1 binary32) (*.f32 uy (fma.f32 #s(literal -2 binary32) %2451 (*.f32 #s(literal 2 binary32) %53)))))
(approx %73 (*.f32 %77 (fma.f32 #s(literal -2 binary32) %53 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %66 (*.f32 #s(literal -1 binary32) (/.f32 %46 uy))) uy)))))
(approx %109 (*.f32 %77 (fma.f32 #s(literal -2 binary32) %53 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %66 (*.f32 #s(literal -1 binary32) (/.f32 %93 uy))) uy)))))
(approx %161 (*.f32 #s(literal -1 binary32) (*.f32 uy (fma.f32 #s(literal -2 binary32) %22 (*.f32 #s(literal -1 binary32) %2471)))))
(approx %164 (*.f32 #s(literal -1 binary32) (*.f32 uy (fma.f32 #s(literal -2 binary32) %22 (*.f32 #s(literal -1 binary32) %2475)))))
(approx %14 (*.f32 maxCos %29))
(approx %16 %32)
(approx %17 (+.f32 #s(literal 1 binary32) %2514))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1/2 binary32) %32)))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %31 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2522))))))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %31 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2522 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 (*.f32 %2530 %2531)))))))))
(approx %19 (+.f32 %25 (*.f32 #s(literal -1/2 binary32) (*.f32 %27 %2542))))
(approx %19 (+.f32 %25 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2542 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2548))))))
(approx %19 (+.f32 %25 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2542 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2548 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 (*.f32 %2530 %2555)))))))))
(approx %20 (fma.f32 #s(literal -1/2 binary32) %2567 %119))
(approx %20 %2576)
(approx %20 %2586)
(approx %38 %27)
(approx %49 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 %2590) %51))
(approx %49 (fma.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2590 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2595))) %51))
(approx %49 (fma.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2590 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2595 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 (*.f32 %2530 %2601)))))) %51))
(approx %45 (+.f32 xi (*.f32 #s(literal -1/2 binary32) (*.f32 %27 %2611))))
(approx %45 (+.f32 xi (*.f32 %27 %2620)))
(approx %45 (+.f32 xi (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2611 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2617 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 %2625))))))))
(approx %50 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 %2635) %655))
(approx %50 (fma.f32 xi %51 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2635 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2640))))))
(approx %50 (fma.f32 xi %51 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2635 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2640 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 (*.f32 %2530 %2647)))))))))
(approx %61 (+.f32 %22 (*.f32 #s(literal -1/2 binary32) (*.f32 %27 %2658))))
(approx %61 (+.f32 %22 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2658 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2664))))))
(approx %61 (+.f32 %22 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2658 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2664 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 (*.f32 %2530 %2671)))))))))
(approx %62 (fma.f32 #s(literal -1/2 binary32) %2683 %697))
(approx %62 (fma.f32 yi %22 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2682 (*.f32 #s(literal -1/8 binary32) %2688)))))
(approx %62 (fma.f32 yi %22 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2682 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2687 (*.f32 #s(literal -1/16 binary32) %2696)))))))
(approx %63 (fma.f32 #s(literal -1 binary32) %2683 %718))
(approx %63 (fma.f32 #s(literal 2 binary32) %697 (*.f32 %27 (fma.f32 #s(literal -1 binary32) %2682 (*.f32 #s(literal -1/4 binary32) %2688)))))
(approx %63 (fma.f32 #s(literal 2 binary32) %697 (*.f32 %27 (fma.f32 #s(literal -1 binary32) %2682 (*.f32 %27 (fma.f32 #s(literal -1/4 binary32) %2687 (*.f32 #s(literal -1/8 binary32) %2696)))))))
(approx %55 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 %2720) %734))
(approx %55 (fma.f32 uy %655 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2720 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2725))))))
(approx %55 (fma.f32 uy %655 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2720 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2725 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 %2733))))))))
(approx %64 (fma.f32 #s(literal -2 binary32) %734 (fma.f32 #s(literal 2 binary32) %697 (*.f32 %27 %2742))))
(approx %64 (fma.f32 #s(literal -2 binary32) %734 (fma.f32 #s(literal 2 binary32) %697 (*.f32 %27 (fma.f32 #s(literal -1 binary32) %2682 (fma.f32 %27 %2748 %2720))))))
(approx %64 (fma.f32 #s(literal -2 binary32) %734 (fma.f32 #s(literal 2 binary32) %697 (*.f32 %27 (fma.f32 #s(literal -1 binary32) %2682 (fma.f32 %27 (fma.f32 #s(literal -1/4 binary32) %2687 (fma.f32 #s(literal 1/4 binary32) %2725 (*.f32 %27 %2757))) %2720))))))
(approx %73 (+.f32 xi (fma.f32 uy %755 (*.f32 %27 %2768))))
(approx %73 (+.f32 xi (fma.f32 uy %755 (*.f32 %27 %2777))))
(approx %73 (+.f32 xi (fma.f32 uy %755 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2611 (fma.f32 uy %2742 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2617 (fma.f32 uy %2748 (*.f32 %27 (fma.f32 #s(literal -1/16 binary32) %2625 (*.f32 uy %2757))))))))))))
(approx %88 (+.f32 xi %91))
(approx %88 (+.f32 xi (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (*.f32 maxCos %2611) %90))))
(approx %88 (+.f32 xi (*.f32 maxCos (fma.f32 maxCos %2620 %90))))
(approx %100 (fma.f32 maxCos %90 %126))
(approx %100 (fma.f32 maxCos (fma.f32 maxCos %2811 %90) %126))
(approx %100 (fma.f32 maxCos (fma.f32 maxCos %2822 %90) %126))
(approx %109 (+.f32 xi (fma.f32 maxCos %90 %779)))
(approx %109 (+.f32 xi (fma.f32 maxCos (fma.f32 maxCos %2768 %90) %779)))
(approx %109 (+.f32 xi (fma.f32 maxCos (fma.f32 maxCos %2777 %90) %779)))
(approx %129 (*.f32 maxCos %137))
(approx %132 (*.f32 maxCos (*.f32 %28 %29)))
(approx %134 %141)
(approx %135 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 1/2 binary32) %140)))
(approx %135 (+.f32 #s(literal 1 binary32) (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) (*.f32 %27 %2848) (*.f32 #s(literal 1/2 binary32) %139)))))
(approx %135 (+.f32 #s(literal 1 binary32) (*.f32 %27 (fma.f32 #s(literal 1/2 binary32) %139 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2848 (*.f32 #s(literal 1/16 binary32) (*.f32 %27 (*.f32 %2530 %2858)))))))))
(approx %136 (fma.f32 #s(literal 1/2 binary32) (*.f32 %27 %2869) %126))
(approx %136 (fma.f32 xi %25 (fma.f32 yi %101 (*.f32 %27 %2877))))
(approx %136 (fma.f32 xi %25 (fma.f32 yi %101 (*.f32 %27 (fma.f32 #s(literal 1/2 binary32) %2869 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2874 (*.f32 #s(literal 1/16 binary32) (*.f32 %27 (*.f32 %2530 (*.f32 %126 %2858)))))))))))
(approx %152 (fma.f32 maxCos (fma.f32 #s(literal 1/2 binary32) (*.f32 maxCos %2869) %90) %126))
(approx %152 (fma.f32 maxCos (fma.f32 maxCos %2877 %90) %126))
(approx %170 (fma.f32 #s(literal -1/2 binary32) %2567 %928))
(approx %170 (fma.f32 #s(literal 1/2 binary32) %183 %2576))
(approx %170 (fma.f32 #s(literal 1/2 binary32) %183 %2586))
(approx %188 (fma.f32 #s(literal 1/2 binary32) %183 (fma.f32 maxCos %90 %119)))
(approx %188 (fma.f32 #s(literal 1/2 binary32) %183 (fma.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (*.f32 maxCos %2566) %90) %119)))
(approx %188 (fma.f32 #s(literal 1/2 binary32) %183 (fma.f32 maxCos (fma.f32 maxCos %2574 %90) %119)))
(approx %96 (+.f32 %101 (*.f32 #s(literal -1/2 binary32) (*.f32 %27 %2918))))
(approx %96 (+.f32 %101 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2918 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2923))))))
(approx %96 (+.f32 %101 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2918 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2923 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 (*.f32 %2530 %2930)))))))))
(approx %97 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 %2809) %124))
(approx %97 (fma.f32 yi %101 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2809 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2817))))))
(approx %97 (fma.f32 yi %101 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2809 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2817 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 %2950))))))))
(approx %98 (fma.f32 xi %25 (fma.f32 yi %101 (*.f32 %27 %2811))))
(approx %98 (fma.f32 xi %25 (fma.f32 yi %101 (*.f32 %27 %2822))))
(approx %98 (fma.f32 xi %25 (fma.f32 yi %101 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2566 (fma.f32 #s(literal -1/2 binary32) %2809 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2571 (fma.f32 #s(literal -1/8 binary32) %2817 (*.f32 %27 (fma.f32 #s(literal -1/16 binary32) %2579 (*.f32 #s(literal -1/16 binary32) %2950))))))))))))
(approx %17 %2514)
(approx %17 (*.f32 %27 (-.f32 %2980 %31)))
(approx %18 %2986)
(approx %18 %2992)
(approx %18 %3000)
(approx %18 %3012)
(approx %19 %3015)
(approx %19 %3019)
(approx %19 %3023)
(approx %19 %3028)
(approx %20 %3031)
(approx %20 %3035)
(approx %20 %3039)
(approx %20 %3044)
(approx %49 %3047)
(approx %49 %3051)
(approx %49 %3055)
(approx %49 %3060)
(approx %45 %3063)
(approx %45 %3067)
(approx %45 %3071)
(approx %45 %3076)
(approx %50 %3079)
(approx %50 %3083)
(approx %50 %3087)
(approx %50 %3092)
(approx %61 %3095)
(approx %61 %3099)
(approx %61 %3103)
(approx %61 %3108)
(approx %62 %3111)
(approx %62 %3115)
(approx %62 %3119)
(approx %62 %3124)
(approx %63 (*.f32 #s(literal 2 binary32) %3111))
(approx %63 %3129)
(approx %63 %3132)
(approx %63 %3136)
(approx %55 %3139)
(approx %55 %3143)
(approx %55 %3147)
(approx %55 %3152)
(approx %64 %3156)
(approx %64 %3160)
(approx %64 %3166)
(approx %64 %3173)
(approx %73 %3176)
(approx %73 %3186)
(approx %73 %3199)
(approx %73 %3214)
(approx %88 (*.f32 maxCos %3216))
(approx %88 (*.f32 maxCos %3219))
(approx %88 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3069 %3219)))
(approx %88 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3069 (fma.f32 #s(literal 1/16 binary32) %3073 %3219))))
(approx %100 (*.f32 maxCos %3232))
(approx %100 (*.f32 maxCos %3237))
(approx %100 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3037 (fma.f32 #s(literal -1/8 binary32) %3240 %3237))))
(approx %100 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3037 (fma.f32 #s(literal -1/8 binary32) %3240 (fma.f32 #s(literal 1/16 binary32) %3041 (fma.f32 #s(literal 1/16 binary32) %3245 %3237))))))
(approx %109 (*.f32 maxCos (fma.f32 ux %89 %3175)))
(approx %109 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) %3065 (fma.f32 ux %89 %3184))))
(approx %109 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3069 (fma.f32 #s(literal 1/2 binary32) %3065 (fma.f32 ux %89 %3196)))))
(approx %109 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3069 (fma.f32 #s(literal 1/16 binary32) %3073 (fma.f32 #s(literal 1/2 binary32) %3065 (fma.f32 ux %89 %3210))))))
(approx %134 %140)
(approx %134 (*.f32 %27 (fma.f32 %28 %138 %2980)))
(approx %135 %3275)
(approx %135 %3281)
(approx %135 %3289)
(approx %135 %3300)
(approx %136 %3303)
(approx %136 %3307)
(approx %136 %3311)
(approx %136 %3316)
(approx %152 (*.f32 maxCos %3318))
(approx %152 (*.f32 maxCos %3321))
(approx %152 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3309 %3321)))
(approx %152 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3309 (fma.f32 #s(literal 1/16 binary32) %3313 %3321))))
(approx %170 (*.f32 maxCos %3332))
(approx %170 (*.f32 maxCos %3335))
(approx %170 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3037 %3335)))
(approx %188 (*.f32 maxCos %3341))
(approx %188 (*.f32 maxCos %3344))
(approx %188 (*.f32 maxCos %3347))
(approx %188 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %3037 %3347)))
(approx %96 %3353)
(approx %96 %3357)
(approx %96 %3361)
(approx %96 %3366)
(approx %97 %3368)
(approx %97 %3371)
(approx %97 %3374)
(approx %97 %3378)
(approx %98 %3380)
(approx %98 %3384)
(approx %98 %3388)
(approx %98 %3394)
(approx %18 (*.f32 #s(literal -1 binary32) %2986))
(approx %18 (*.f32 #s(literal -1 binary32) %2992))
(approx %18 (*.f32 #s(literal -1 binary32) %3000))
(approx %18 (*.f32 #s(literal -1 binary32) %3012))
(approx %19 (*.f32 #s(literal -1 binary32) %3015))
(approx %19 (*.f32 #s(literal -1 binary32) %3019))
(approx %19 (*.f32 #s(literal -1 binary32) %3023))
(approx %19 (*.f32 #s(literal -1 binary32) %3028))
(approx %20 (*.f32 #s(literal -1 binary32) %3031))
(approx %20 (*.f32 #s(literal -1 binary32) %3035))
(approx %20 (*.f32 #s(literal -1 binary32) %3039))
(approx %20 (*.f32 #s(literal -1 binary32) %3044))
(approx %49 (*.f32 #s(literal -1 binary32) %3047))
(approx %49 (*.f32 #s(literal -1 binary32) %3051))
(approx %49 (*.f32 #s(literal -1 binary32) %3055))
(approx %49 (*.f32 #s(literal -1 binary32) %3060))
(approx %45 (*.f32 #s(literal -1 binary32) %3063))
(approx %45 (*.f32 #s(literal -1 binary32) %3067))
(approx %45 (*.f32 #s(literal -1 binary32) %3071))
(approx %45 (*.f32 #s(literal -1 binary32) %3076))
(approx %50 (*.f32 #s(literal -1 binary32) %3079))
(approx %50 (*.f32 #s(literal -1 binary32) %3083))
(approx %50 (*.f32 #s(literal -1 binary32) %3087))
(approx %50 (*.f32 #s(literal -1 binary32) %3092))
(approx %61 (*.f32 #s(literal -1 binary32) %3095))
(approx %61 (*.f32 #s(literal -1 binary32) %3099))
(approx %61 (*.f32 #s(literal -1 binary32) %3103))
(approx %61 (*.f32 #s(literal -1 binary32) %3108))
(approx %62 (*.f32 #s(literal -1 binary32) %3111))
(approx %62 (*.f32 #s(literal -1 binary32) %3115))
(approx %62 (*.f32 #s(literal -1 binary32) %3119))
(approx %62 (*.f32 #s(literal -1 binary32) %3124))
(approx %63 (*.f32 #s(literal -2 binary32) %3111))
(approx %63 (*.f32 #s(literal -1 binary32) %3129))
(approx %63 (*.f32 #s(literal -1 binary32) %3132))
(approx %63 (*.f32 #s(literal -1 binary32) %3136))
(approx %55 (*.f32 #s(literal -1 binary32) %3139))
(approx %55 (*.f32 #s(literal -1 binary32) %3143))
(approx %55 (*.f32 #s(literal -1 binary32) %3147))
(approx %55 (*.f32 #s(literal -1 binary32) %3152))
(approx %64 (*.f32 #s(literal -1 binary32) %3156))
(approx %64 (*.f32 #s(literal -1 binary32) %3160))
(approx %64 (*.f32 #s(literal -1 binary32) %3166))
(approx %64 (*.f32 #s(literal -1 binary32) %3173))
(approx %73 (*.f32 #s(literal -1 binary32) %3176))
(approx %73 (*.f32 #s(literal -1 binary32) %3186))
(approx %73 (*.f32 #s(literal -1 binary32) %3199))
(approx %73 (*.f32 #s(literal -1 binary32) %3214))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3062))))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3066))))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3070))))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3075))))
(approx %100 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3231))))
(approx %100 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3383))))
(approx %100 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3387))))
(approx %100 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3393))))
(approx %109 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3175))))
(approx %109 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3185))))
(approx %109 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3198))))
(approx %109 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3213))))
(approx %135 (*.f32 #s(literal -1 binary32) %3275))
(approx %135 (*.f32 #s(literal -1 binary32) %3281))
(approx %135 (*.f32 #s(literal -1 binary32) %3289))
(approx %135 (*.f32 #s(literal -1 binary32) %3300))
(approx %136 (*.f32 #s(literal -1 binary32) %3303))
(approx %136 (*.f32 #s(literal -1 binary32) %3307))
(approx %136 (*.f32 #s(literal -1 binary32) %3311))
(approx %136 (*.f32 #s(literal -1 binary32) %3316))
(approx %152 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3302))))
(approx %152 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3306))))
(approx %152 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3310))))
(approx %152 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3315))))
(approx %170 (*.f32 #s(literal -1 binary32) (*.f32 maxCos %3572)))
(approx %170 (*.f32 #s(literal -1 binary32) (*.f32 maxCos %3579)))
(approx %170 (*.f32 #s(literal -1 binary32) (*.f32 maxCos %3591)))
(approx %188 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3030))))
(approx %188 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3572))))
(approx %188 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3579))))
(approx %188 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %90 %3591))))
(approx %96 (*.f32 #s(literal -1 binary32) %3353))
(approx %96 (*.f32 #s(literal -1 binary32) %3357))
(approx %96 (*.f32 #s(literal -1 binary32) %3361))
(approx %96 (*.f32 #s(literal -1 binary32) %3366))
(approx %97 (*.f32 #s(literal -1 binary32) %3368))
(approx %97 (*.f32 #s(literal -1 binary32) %3371))
(approx %97 (*.f32 #s(literal -1 binary32) %3374))
(approx %97 (*.f32 #s(literal -1 binary32) %3378))
(approx %98 (*.f32 #s(literal -1 binary32) %3380))
(approx %98 (*.f32 #s(literal -1 binary32) %3384))
(approx %98 (*.f32 #s(literal -1 binary32) %3388))
(approx %98 (*.f32 #s(literal -1 binary32) %3394))
Calls

18 calls:

TimeVariablePoint
19.0ms
ux
-inf
11.0ms
maxCos
0
11.0ms
maxCos
inf
7.0ms
ux
inf
7.0ms
maxCos
-inf

rewrite166.0ms (1.9%)

Memory
19.7MiB live, 191.3MiB allocated; 42ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01071679
01931401
16181257
224521257
040911257
040971251
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
89 → 1 536
Calls
Call 1
Inputs
%2 = (*.f32 uy #s(literal 2 binary32))
%3 = (PI.f32 )
%4 = (*.f32 %2 %3)
%5 = (cos.f32 %4)
%8 = (-.f32 #s(literal 1 binary32) ux)
%10 = (*.f32 %8 maxCos)
%11 = (*.f32 %10 ux)
%12 = (*.f32 %11 %11)
%13 = (-.f32 #s(literal 1 binary32) %12)
%14 = (sqrt.f32 %13)
%15 = (*.f32 %5 %14)
%17 = (*.f32 %15 xi)
%18 = (sin.f32 %4)
%21 = (*.f32 %11 zi)
%22 = (pow.f32 maxCos #s(literal 2 binary32))
%23 = (pow.f32 ux #s(literal 2 binary32))
%24 = (pow.f32 %8 #s(literal 2 binary32))
%25 = (*.f32 %23 %24)
%26 = (*.f32 %22 %25)
%27 = (-.f32 #s(literal 1 binary32) %26)
%28 = (sqrt.f32 %27)
%29 = (*.f32 zi %8)
%30 = (*.f32 ux %29)
%31 = (*.f32 ux %8)
%34 = (* (- 1 ux) maxCos)
%35 = (approx %34 maxCos)
%37 = (*.f32 maxCos zi)
%39 = (pow.f32 %3 #s(literal 2 binary32))
%40 = (*.f32 %39 %28)
%41 = (*.f32 xi %28)
%42 = (*.f32 xi %40)
%43 = (*.f32 %3 %28)
%44 = (*.f32 yi %43)
%45 = (*.f32 #s(literal 2 binary32) %44)
%46 = (*.f32 uy %42)
%47 = (fma.f32 #s(literal -2 binary32) %46 %45)
%48 = (fma.f32 uy %47 %41)
%49 = (fma.f32 maxCos %30 %41)
%53 = (* (* uy 2) (PI ))
%55 = (* %34 ux)
%58 = (sqrt (- 1 (* %55 %55)))
%66 = (+ (+ (* (* (cos %53) %58) xi) (* (* (sin %53) %58) yi)) (* %55 zi))
%68 = (fma.f32 maxCos %30 %48)
%70 = (*.f32 maxCos %8)
%71 = (+.f32 uy uy)
%72 = (+.f32 %3 %3)
%73 = (*.f32 %3 %71)
%74 = (sin.f32 %73)
%75 = (cos.f32 %73)
%76 = (-.f32 ux #s(literal 1 binary32))
%77 = (*.f32 %76 maxCos)
%78 = (*.f32 %70 ux)
%79 = (*.f32 %77 ux)
%80 = (*.f32 %78 ux)
%81 = (fma.f32 %77 %80 #s(literal 1 binary32))
%82 = (sqrt.f32 %81)
%83 = (asin.f32 %78)
%84 = (asin.f32 %79)
%85 = (fma.f32 %72 uy %84)
%86 = (fma.f32 %72 uy %83)
%87 = (*.f32 %75 xi)
%88 = (sin.f32 %85)
%89 = (sin.f32 %86)
%90 = (+.f32 %88 %89)
%91 = (*.f32 %90 #s(literal 1/2 binary32))
%92 = (fma.f32 %74 yi %87)
%93 = (*.f32 %82 %92)
%95 = (*.f32 %91 yi)
%96 = (+.f32 %17 %95)
%98 = (*.f32 %35 ux)
%99 = (*.f32 %98 %98)
%100 = (-.f32 #s(literal 1 binary32) %99)
%101 = (sqrt.f32 %100)
%102 = (*.f32 %5 %101)
%103 = (*.f32 %102 xi)
%104 = (*.f32 %18 %101)
%105 = (*.f32 %104 yi)
%106 = (+.f32 %103 %105)
%107 = (*.f32 %98 zi)
uy
#s(literal 2 binary32)
%2
%3
%4
%5
#s(literal 1 binary32)
ux
%8
maxCos
%10
%11
%12
%13
%14
%15
xi
%17
%18
yi
zi
%21
%22
%23
%24
%25
%26
%27
%28
%29
%30
%31
%35
#s(literal -2 binary32)
%37
#s(literal 1/2 binary32)
%39
%40
%41
%42
%43
%44
%45
%46
%47
%48
%49
(approx %66 %49)
%68
(approx %66 %68)
%70
%71
%72
%73
%74
%75
%76
%77
%78
%79
%80
%81
%82
%83
%84
%85
%86
%87
%88
%89
%90
%91
%92
%93
(fma.f32 %31 %37 %93)
%95
%96
(+.f32 %96 %21)
%98
%99
%100
%101
%102
%103
%104
%105
%106
%107
(+.f32 %106 %107)
Outputs
%2 = (*.f32 #s(literal 2 binary32) uy)
%3 = (*.f32 uy #s(literal 2 binary32))
%4 = (neg.f32 uy)
%5 = (-.f32 uy %4)
%7 = (*.f32 #s(literal 1 binary32) uy)
%8 = (fma.f32 #s(literal 1 binary32) uy %7)
%9 = (*.f32 uy #s(literal 1 binary32))
%10 = (fma.f32 uy #s(literal 1 binary32) %9)
%11 = (+.f32 uy uy)
%12 = (pow.f32 %11 #s(literal 1 binary32))
%13 = (+.f32 %9 %9)
%14 = (+.f32 %7 %7)
%16 = (+.f32 uy (neg.f32 %4))
%18 = (neg.f32 (-.f32 %4 uy))
%19 = (PI.f32 )
%20 = (*.f32 %19 uy)
%21 = (*.f32 %20 #s(literal 2 binary32))
%22 = (+.f32 %19 %19)
%23 = (*.f32 %22 uy)
%24 = (*.f32 %19 %11)
%25 = (*.f32 %11 %19)
%26 = (*.f32 #s(literal 2 binary32) %20)
%27 = (*.f32 uy %22)
%28 = (neg.f32 %19)
%30 = (-.f32 %20 (*.f32 %28 uy))
%32 = (-.f32 %20 (*.f32 %4 %19))
%34 = (-.f32 %20 (neg.f32 %20))
%35 = (fma.f32 %19 uy %20)
%36 = (fma.f32 uy %19 %20)
%37 = (pow.f32 %24 #s(literal 1 binary32))
%38 = (+.f32 %20 %20)
%39 = (cos.f32 %20)
%41 = (sin.f32 %20)
%43 = (-.f32 (*.f32 %39 %39) (*.f32 %41 %41))
%44 = (sin.f32 %24)
%46 = (*.f32 %19 #s(literal 1/2 binary32))
%47 = (cos.f32 %46)
%48 = (cos.f32 %24)
%49 = (sin.f32 %46)
%50 = (*.f32 %48 %49)
%51 = (fma.f32 %44 %47 %50)
%52 = (pow.f32 %48 #s(literal 1 binary32))
%54 = (+.f32 (*.f32 %44 %47) %50)
%56 = (*.f32 #s(literal -2 binary32) uy)
%57 = (fma.f32 %56 %19 %46)
%58 = (sin.f32 %57)
%59 = (fabs.f32 %24)
%60 = (+.f32 %59 %46)
%61 = (sin.f32 %60)
%62 = (fma.f32 %22 uy %46)
%63 = (sin.f32 %62)
%64 = (*.f32 %56 %19)
%65 = (neg.f32 %64)
%66 = (cos.f32 %65)
%67 = (neg.f32 %59)
%68 = (cos.f32 %67)
%69 = (fabs.f32 %59)
%70 = (cos.f32 %69)
%71 = (cos.f32 %64)
%72 = (cos.f32 %59)
%74 = (neg.f32 ux)
%75 = (neg.f32 %74)
%77 = (-.f32 #s(literal 1 binary32) ux)
%81 = (-.f32 ux #s(literal 1 binary32))
%84 = (*.f32 maxCos %77)
%85 = (*.f32 %77 maxCos)
%86 = (*.f32 maxCos %74)
%87 = (fma.f32 maxCos #s(literal 1 binary32) %86)
%88 = (*.f32 %74 maxCos)
%89 = (fma.f32 #s(literal 1 binary32) maxCos %88)
%90 = (pow.f32 %84 #s(literal 1 binary32))
%92 = (+.f32 (*.f32 maxCos #s(literal 1 binary32)) %86)
%94 = (+.f32 (*.f32 #s(literal 1 binary32) maxCos) %88)
%95 = (*.f32 %81 maxCos)
%96 = (neg.f32 %95)
%97 = (*.f32 maxCos ux)
%98 = (*.f32 %97 %77)
%99 = (*.f32 %77 ux)
%100 = (*.f32 %99 maxCos)
%101 = (*.f32 %84 ux)
%102 = (*.f32 maxCos %99)
%103 = (*.f32 %77 %97)
%104 = (*.f32 ux %84)
%105 = (acos.f32 %101)
%110 = (*.f32 %95 ux)
%111 = (*.f32 %110 maxCos)
%112 = (fma.f32 %111 %99 #s(literal 1 binary32))
%113 = (sqrt.f32 %112)
%114 = (*.f32 %47 %113)
%115 = (-.f32 (/.f32 (fma.f32 %97 %77 (sin.f32 (fma.f32 %19 #s(literal 1/2 binary32) %105))) #s(literal 2 binary32)) %114)
%116 = (pow.f32 %101 #s(literal 1 binary32))
%117 = (asin.f32 %101)
%118 = (sin.f32 %117)
%119 = (neg.f32 %110)
%121 = (*.f32 (*.f32 %84 maxCos) %77)
%123 = (*.f32 (*.f32 %121 ux) ux)
%124 = (*.f32 %101 maxCos)
%125 = (*.f32 %124 %99)
%127 = (*.f32 (*.f32 %101 %77) %97)
%128 = (*.f32 maxCos maxCos)
%130 = (*.f32 (*.f32 %128 ux) ux)
%132 = (*.f32 (*.f32 %130 %77) %77)
%133 = (*.f32 %99 %99)
%135 = (*.f32 (*.f32 %133 maxCos) maxCos)
%136 = (fabs.f32 %110)
%137 = (fabs.f32 %136)
%138 = (*.f32 %137 %137)
%139 = (neg.f32 %136)
%140 = (*.f32 %139 %139)
%141 = (*.f32 %81 %81)
%142 = (*.f32 %130 %141)
%143 = (*.f32 %124 %77)
%144 = (*.f32 %143 ux)
%145 = (*.f32 ux ux)
%146 = (*.f32 %121 %145)
%147 = (*.f32 %136 %136)
%148 = (*.f32 %110 %110)
%149 = (*.f32 %101 ux)
%150 = (*.f32 %149 %84)
%151 = (*.f32 %133 %128)
%152 = (*.f32 %141 %130)
%153 = (*.f32 %145 %121)
%154 = (*.f32 %128 %133)
%155 = (*.f32 %101 %101)
%156 = (*.f32 %84 %149)
%158 = (*.f32 maxCos (*.f32 %99 %101))
%160 = (*.f32 maxCos (*.f32 %77 %149))
%162 = (*.f32 maxCos (*.f32 maxCos %133))
%163 = (*.f32 %149 maxCos)
%164 = (*.f32 %77 %163)
%165 = (*.f32 ux %143)
%166 = (asin.f32 %110)
%172 = (/.f32 (-.f32 (cos.f32 (-.f32 %166 %166)) (cos.f32 (+.f32 %166 %166))) #s(literal 2 binary32))
%178 = (/.f32 (-.f32 (cos.f32 (-.f32 %117 %117)) (cos.f32 (+.f32 %117 %117))) #s(literal 2 binary32))
%179 = (+.f32 ux ux)
%180 = (-.f32 #s(literal 1 binary32) %179)
%181 = (*.f32 %130 %145)
%182 = (fma.f32 %130 %180 %181)
%183 = (*.f32 %145 %130)
%184 = (fma.f32 %180 %130 %183)
%185 = (pow.f32 %136 #s(literal 2 binary32))
%186 = (pow.f32 %110 #s(literal 2 binary32))
%187 = (pow.f32 %125 #s(literal 1 binary32))
%188 = (pow.f32 %101 #s(literal 2 binary32))
%190 = (+.f32 (*.f32 %130 %180) %181)
%192 = (+.f32 (*.f32 %180 %130) %183)
%193 = (fabs.f32 %125)
%194 = (*.f32 %111 %99)
%195 = (neg.f32 %194)
%197 = (-.f32 %194 #s(literal -1 binary32))
%199 = (*.f32 (*.f32 %95 maxCos) %99)
%202 = (-.f32 #s(literal 1 binary32) (*.f32 (neg.f32 %199) ux))
%203 = (neg.f32 %149)
%205 = (-.f32 #s(literal 1 binary32) (*.f32 %203 %95))
%206 = (neg.f32 maxCos)
%207 = (*.f32 %206 maxCos)
%210 = (-.f32 #s(literal 1 binary32) (*.f32 (neg.f32 %207) %133))
%211 = (-.f32 #s(literal 1 binary32) %125)
%213 = (fma.f32 (*.f32 %149 %81) maxCos #s(literal 1 binary32))
%215 = (fma.f32 (*.f32 %110 %77) %97 #s(literal 1 binary32))
%217 = (fma.f32 (*.f32 %110 ux) %84 #s(literal 1 binary32))
%219 = (fma.f32 (*.f32 %207 %141) %145 #s(literal 1 binary32))
%221 = (fma.f32 (*.f32 %207 %145) %141 #s(literal 1 binary32))
%223 = (fma.f32 (*.f32 %95 %84) %145 #s(literal 1 binary32))
%225 = (fma.f32 (neg.f32 %130) %141 #s(literal 1 binary32))
%226 = (neg.f32 %133)
%227 = (fma.f32 %226 %128 #s(literal 1 binary32))
%229 = (fma.f32 (neg.f32 %143) ux #s(literal 1 binary32))
%231 = (fma.f32 (neg.f32 %121) %145 #s(literal 1 binary32))
%232 = (fma.f32 %139 %136 #s(literal 1 binary32))
%233 = (fma.f32 %199 ux #s(literal 1 binary32))
%235 = (fma.f32 %130 (neg.f32 %141) #s(literal 1 binary32))
%236 = (fma.f32 %143 %74 #s(literal 1 binary32))
%237 = (fma.f32 %163 %81 #s(literal 1 binary32))
%238 = (fma.f32 %207 %133 #s(literal 1 binary32))
%239 = (neg.f32 %145)
%240 = (fma.f32 %121 %239 #s(literal 1 binary32))
%241 = (fma.f32 %136 %139 #s(literal 1 binary32))
%242 = (fma.f32 %110 %101 #s(literal 1 binary32))
%243 = (fma.f32 %149 %95 #s(literal 1 binary32))
%244 = (fma.f32 %95 %149 #s(literal 1 binary32))
%245 = (fma.f32 %81 %163 #s(literal 1 binary32))
%246 = (fma.f32 %133 %207 #s(literal 1 binary32))
%247 = (fma.f32 %128 %226 #s(literal 1 binary32))
%248 = (fma.f32 %101 %110 #s(literal 1 binary32))
%250 = (fma.f32 %84 (*.f32 %145 %95) #s(literal 1 binary32))
%251 = (fma.f32 %84 %203 #s(literal 1 binary32))
%253 = (fma.f32 maxCos (*.f32 %81 %149) #s(literal 1 binary32))
%254 = (fma.f32 ux %199 #s(literal 1 binary32))
%255 = (pow.f32 %112 #s(literal 1 binary32))
%256 = (+.f32 %194 #s(literal 1 binary32))
%257 = (+.f32 #s(literal 1 binary32) %194)
%259 = (neg.f32 (-.f32 #s(literal -1 binary32) %194))
%261 = (neg.f32 (fma.f32 %110 %110 #s(literal -1 binary32)))
%263 = (sqrt.f32 (*.f32 %113 %113))
%264 = (acos.f32 %110)
%265 = (cos.f32 %264)
%266 = (*.f32 %49 %113)
%267 = (fma.f32 %47 %265 %266)
%268 = (cos.f32 %105)
%269 = (fma.f32 %47 %268 %266)
%270 = (pow.f32 %113 #s(literal 1 binary32))
%271 = (pow.f32 %112 #s(literal 1/2 binary32))
%273 = (+.f32 (*.f32 %47 %265) %266)
%275 = (+.f32 (*.f32 %47 %268) %266)
%277 = (sin.f32 (acos.f32 %137))
%279 = (sin.f32 (acos.f32 %139))
%280 = (+.f32 %166 %46)
%281 = (sin.f32 %280)
%282 = (+.f32 %117 %46)
%283 = (sin.f32 %282)
%284 = (acos.f32 %136)
%285 = (sin.f32 %284)
%286 = (sin.f32 %264)
%287 = (sin.f32 %105)
%288 = (neg.f32 %113)
%289 = (fabs.f32 %288)
%290 = (fabs.f32 %113)
%292 = (cos.f32 (asin.f32 %137))
%294 = (cos.f32 (asin.f32 %139))
%295 = (fabs.f32 %166)
%296 = (cos.f32 %295)
%297 = (fabs.f32 %117)
%298 = (cos.f32 %297)
%299 = (asin.f32 %136)
%300 = (cos.f32 %299)
%301 = (cos.f32 %166)
%302 = (cos.f32 %117)
%303 = (*.f32 %113 %48)
%467 = (fma.f32 %22 uy %166)
%468 = (cos.f32 %467)
%611 = (-.f32 %264 %24)
%721 = (fma.f32 %22 uy %117)
%722 = (cos.f32 %721)
%731 = (-.f32 %117 %24)
%771 = (-.f32 %105 %24)
%785 = (*.f32 xi %48)
%787 = (*.f32 xi %113)
%788 = (*.f32 %787 %48)
%794 = (*.f32 %39 %41)
%795 = (fma.f32 %41 %39 %794)
%796 = (pow.f32 %44 #s(literal 1 binary32))
%798 = (+.f32 (*.f32 %41 %39) %794)
%801 = (*.f32 zi maxCos)
%802 = (*.f32 %801 ux)
%804 = (*.f32 zi %84)
%806 = (*.f32 zi %77)
%807 = (*.f32 maxCos %806)
%809 = (*.f32 %97 zi)
%811 = (*.f32 zi ux)
%812 = (*.f32 maxCos %811)
%816 = (*.f32 %806 maxCos)
%820 = (*.f32 %806 ux)
%821 = (*.f32 %820 maxCos)
%827 = (*.f32 ux %801)
%834 = (fabs.f32 maxCos)
%838 = (fabs.f32 ux)
%843 = (fabs.f32 %77)
%846 = (*.f32 %74 ux)
%853 = (*.f32 %77 %74)
%856 = (*.f32 %74 %77)
%883 = (*.f32 %77 %145)
%887 = (*.f32 %145 %145)
%897 = (*.f32 zi %74)
%899 = (*.f32 %74 zi)
%915 = (*.f32 %811 %74)
%917 = (*.f32 %74 %811)
%931 = (*.f32 %81 ux)
%933 = (*.f32 ux %81)
%938 = (approx (* maxCos (- 1 ux)) maxCos)
%942 = (fabs.f32 %19)
%945 = (*.f32 %19 %19)
%948 = (*.f32 %113 %19)
%950 = (*.f32 %945 %113)
%956 = (*.f32 %945 xi)
%957 = (*.f32 %956 %113)
%966 = (*.f32 yi %19)
%967 = (*.f32 %966 %113)
%968 = (*.f32 yi %113)
%975 = (+.f32 yi yi)
%976 = (*.f32 %975 %113)
%978 = (*.f32 %975 %19)
%979 = (*.f32 %978 %113)
%980 = (*.f32 #s(literal 2 binary32) %966)
%982 = (*.f32 #s(literal 2 binary32) %948)
%985 = (*.f32 %113 #s(literal 2 binary32))
%987 = (+.f32 %113 %113)
%991 = (*.f32 %948 #s(literal 2 binary32))
%993 = (fma.f32 %113 %19 %948)
%995 = (fma.f32 yi %19 %966)
%1004 = (neg.f32 yi)
%1011 = (*.f32 %967 #s(literal 1 binary32))
%1016 = (*.f32 #s(literal 1 binary32) %967)
%1023 = (*.f32 xi uy)
%1029 = (*.f32 (*.f32 uy %956) %113)
%1042 = (*.f32 #s(literal -2 binary32) (-.f32 %1029 %967))
%1043 = (*.f32 %56 xi)
%1044 = (*.f32 %1043 %950)
%1046 = (*.f32 (*.f32 #s(literal -2 binary32) %966) %113)
%1058 = (*.f32 %56 %956)
%1059 = (neg.f32 %1046)
%1062 = (*.f32 %56 %950)
%1067 = (*.f32 #s(literal -2 binary32) %1023)
%1070 = (*.f32 #s(literal -2 binary32) %957)
%1079 = (*.f32 %950 #s(literal -2 binary32))
%1085 = (fma.f32 %966 %113 %1044)
%1104 = (*.f32 %957 #s(literal -2 binary32))
%1116 = (*.f32 %1042 uy)
%1117 = (neg.f32 xi)
%1118 = (*.f32 %1117 %113)
%1127 = (*.f32 uy %56)
%1128 = (*.f32 uy %975)
%1129 = (fma.f32 %1128 %948 %787)
%1131 = (*.f32 %1128 %948)
%1132 = (-.f32 %1131 %1118)
%1134 = (*.f32 uy %1029)
%1142 = (*.f32 (neg.f32 %1117) %113)
%1144 = (neg.f32 %1118)
%1146 = (fma.f32 %1042 uy %787)
%1149 = (*.f32 %1029 uy)
%1160 = (*.f32 %1127 %957)
%1169 = (neg.f32 %1146)
%1172 = (neg.f32 %97)
%1173 = (*.f32 %1172 %806)
%1176 = (*.f32 (neg.f32 %820) maxCos)
%1178 = (*.f32 %206 %820)
%1180 = (*.f32 %110 zi)
%1184 = (fma.f32 %802 %77 %787)
%1249 = (-.f32 %1118 %821)
%1254 = (* (PI ) (* 2 uy))
%1262 = (* (* (- ux 1) maxCos) ux)
%1267 = (- (* (+ (* yi (sin %1254)) (* xi (cos %1254))) (sin (acos %1262))) (* %1262 zi))
%1268 = (approx %1267 %1184)
%1270 = (fma.f32 %802 %77 %1116)
%1278 = (fma.f32 %802 %77 %1146)
%1311 = (approx %1267 %1278)
%1327 = (*.f32 maxCos #s(literal -1 binary32))
%1329 = (*.f32 #s(literal -1 binary32) maxCos)
%1344 = (neg.f32 %99)
%1371 = (neg.f32 %105)
%1378 = (neg.f32 %264)
%1389 = (fma.f32 %19 uy %166)
%1391 = (-.f32 %20 %117)
%1412 = (fma.f32 %19 uy %117)
%1414 = (-.f32 %20 %166)
%1432 = (*.f32 %44 %113)
%1433 = (neg.f32 %48)
%1436 = (*.f32 %110 %48)
%1439 = (*.f32 %101 %48)
%1445 = (sin.f32 %467)
%1458 = (sin.f32 %721)
%1464 = (sin.f32 (*.f32 (+.f32 %721 %467) #s(literal 1/2 binary32)))
%1468 = (cos.f32 (*.f32 (-.f32 %467 %721) #s(literal 1/2 binary32)))
%1470 = (*.f32 %1468 %1464)
%1480 = (neg.f32 %1458)
%1484 = (fma.f32 %101 %48 %1445)
%1486 = (fma.f32 %110 %48 %1458)
%1488 = (-.f32 %1436 %1480)
%1493 = (+.f32 %1458 %1445)
%1508 = (*.f32 %1493 #s(literal 1/2 binary32))
%1513 = (*.f32 %1445 #s(literal 1/2 binary32))
%1515 = (*.f32 %1458 #s(literal 1/2 binary32))
%1517 = (*.f32 #s(literal 1/2 binary32) %1445)
%1519 = (*.f32 #s(literal 1/2 binary32) %1458)
%1526 = (*.f32 yi %44)
%1527 = (*.f32 %1117 %48)
%1537 = (*.f32 (neg.f32 %1433) xi)
%1539 = (neg.f32 %1527)
%1541 = (fma.f32 yi %44 %785)
%1554 = (*.f32 %1541 %113)
%1556 = (*.f32 %968 %44)
%1561 = (*.f32 %1117 %303)
%1564 = (*.f32 (neg.f32 %303) xi)
%1566 = (*.f32 %1433 %787)
%1568 = (neg.f32 %788)
%1570 = (*.f32 %1004 %1432)
%1576 = (*.f32 (neg.f32 (*.f32 %288 %44)) yi)
%1578 = (neg.f32 %1570)
%1607 = (fma.f32 %802 %77 %788)
%1609 = (*.f32 %288 %1541)
%1623 = (fma.f32 %968 %44 %821)
%1627 = (*.f32 (neg.f32 %288) %1541)
%1629 = (neg.f32 %1609)
%1631 = (fma.f32 %802 %77 %1554)
%1653 = (fma.f32 %787 %48 %821)
%1655 = (-.f32 %788 %1180)
%1659 = (neg.f32 %1180)
%1729 = (*.f32 yi %1493)
%1731 = (*.f32 #s(literal 1/2 binary32) yi)
%1732 = (*.f32 %1731 %1493)
%1735 = (*.f32 %1493 yi)
%1738 = (*.f32 %1470 %1731)
%1746 = (*.f32 #s(literal -1/2 binary32) %1493)
%1747 = (*.f32 %1746 yi)
%1750 = (fma.f32 %1731 %1493 %788)
%1754 = (*.f32 (neg.f32 %1746) yi)
%1756 = (neg.f32 %1747)
%1792 = (fma.f32 %1731 %1493 %821)
%1802 = (fma.f32 %1731 %1493 %1653)
%1846 = (*.f32 %938 ux)
%1849 = (*.f32 %938 %938)
%1852 = (fabs.f32 %1846)
%1853 = (fabs.f32 %1852)
%1855 = (neg.f32 %1852)
%1857 = (*.f32 %74 %938)
%1858 = (neg.f32 %1857)
%1860 = (*.f32 %1846 %938)
%1862 = (*.f32 %1846 ux)
%1863 = (*.f32 %1862 %938)
%1878 = (*.f32 %1857 %1846)
%1882 = (-.f32 #s(literal 1 binary32) %1863)
%1908 = (sqrt.f32 %1882)
%1919 = (asin.f32 %1846)
%1920 = (+.f32 %1919 %46)
%1922 = (acos.f32 %1852)
%1924 = (acos.f32 %1857)
%1926 = (acos.f32 %1846)
%1928 = (neg.f32 %1908)
%1937 = (asin.f32 %1857)
%1939 = (fabs.f32 %1919)
%1941 = (asin.f32 %1852)
%1944 = (*.f32 %1908 %48)
%2108 = (-.f32 %1920 %24)
%2110 = (+.f32 %1920 %24)
%2144 = (-.f32 %1922 %24)
%2146 = (+.f32 %1922 %24)
%2180 = (-.f32 %1924 %24)
%2182 = (+.f32 %1924 %24)
%2300 = (fma.f32 %22 uy %1919)
%2302 = (-.f32 %24 %1919)
%2330 = (-.f32 %1926 %24)
%2332 = (+.f32 %1926 %24)
%2343 = (*.f32 %1908 xi)
%2344 = (*.f32 %2343 %48)
%2351 = (*.f32 %1908 %44)
%2416 = (*.f32 %1908 yi)
%2417 = (*.f32 %2416 %44)
%2433 = (*.f32 %1004 %2351)
%2435 = (fma.f32 %2416 %44 %2344)
%2438 = (*.f32 (neg.f32 (*.f32 %1928 %44)) yi)
%2440 = (neg.f32 %2433)
%2470 = (*.f32 zi %938)
%2473 = (*.f32 %1846 zi)
%2476 = (*.f32 %938 zi)
%2479 = (fma.f32 %2470 ux %2344)
%2484 = (*.f32 (neg.f32 zi) %1846)
%2490 = (fma.f32 %2416 %44 %2473)
%2493 = (fma.f32 %2470 ux %2435)
%2494 = (fma.f32 %2343 %48 %2473)
%2496 = (-.f32 %2344 %2484)
uy
#s(literal 2 binary32)
%2
%3
%5
%8
%10
%12
%13
%14
%16
%11
%18
%19
%21
%23
%24
%25
%26
%27
%30
%32
%34
%35
%36
%37
%38
%43
%51
%52
%54
%58
%61
%63
%66
%68
%70
%71
%72
%48
#s(literal 1 binary32)
ux
(-.f32 #s(literal 1 binary32) %75)
%77
(pow.f32 %77 #s(literal 1 binary32))
(+.f32 %74 #s(literal 1 binary32))
(+.f32 #s(literal 1 binary32) %74)
(neg.f32 %81)
maxCos
%84
%85
%87
%89
%90
%92
%94
%96
%98
%100
%101
%102
%103
%104
%115
%116
%118
%119
%123
%125
%127
%132
%135
%138
%140
%142
%144
%146
%147
%148
%150
%151
%152
%153
%154
%155
%156
%158
%160
%162
%164
%165
%172
%178
%182
%184
%185
%186
%187
%188
%190
%192
%193
%195
%197
%202
%205
%210
%211
%213
%112
%215
%217
%219
%221
%223
%225
%227
%229
%231
%232
%233
%235
%236
%237
%238
%240
%241
%242
%243
%244
%245
%246
%247
%248
%250
%251
%253
%254
%255
%256
%257
%259
%261
%263
%113
%267
%269
%270
%271
%273
%275
%277
%279
%281
%283
%285
%286
%287
%289
%290
%292
%294
%296
%298
%300
%301
%302
%303
(*.f32 %48 %113)
(/.f32 (-.f32 (cos.f32 (-.f32 %280 %57)) (cos.f32 (+.f32 %280 %57))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %280 %60)) (cos.f32 (+.f32 %280 %60))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %280 %62)) (cos.f32 (+.f32 %280 %62))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %282 %57)) (cos.f32 (+.f32 %282 %57))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %282 %60)) (cos.f32 (+.f32 %282 %60))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %282 %62)) (cos.f32 (+.f32 %282 %62))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %284 %57)) (cos.f32 (+.f32 %284 %57))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %284 %60)) (cos.f32 (+.f32 %284 %60))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %284 %62)) (cos.f32 (+.f32 %284 %62))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %264 %57)) (cos.f32 (+.f32 %264 %57))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %264 %60)) (cos.f32 (+.f32 %264 %60))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %264 %62)) (cos.f32 (+.f32 %264 %62))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %105 %57)) (cos.f32 (+.f32 %105 %57))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %105 %60)) (cos.f32 (+.f32 %105 %60))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %57 %280)) (cos.f32 (+.f32 %57 %280))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %57 %282)) (cos.f32 (+.f32 %57 %282))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %57 %284)) (cos.f32 (+.f32 %57 %284))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %57 %264)) (cos.f32 (+.f32 %57 %264))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %57 %105)) (cos.f32 (+.f32 %57 %105))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %60 %280)) (cos.f32 (+.f32 %60 %280))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %60 %282)) (cos.f32 (+.f32 %60 %282))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %60 %284)) (cos.f32 (+.f32 %60 %284))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %60 %264)) (cos.f32 (+.f32 %60 %264))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %60 %105)) (cos.f32 (+.f32 %60 %105))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %62 %280)) (cos.f32 (+.f32 %62 %280))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %62 %282)) (cos.f32 (+.f32 %62 %282))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %62 %284)) (cos.f32 (+.f32 %62 %284))) #s(literal 2 binary32))
(/.f32 (-.f32 %468 (cos.f32 (+.f32 %62 %264))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %280 %65)) (sin.f32 (+.f32 %280 %65))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %280 %67)) (sin.f32 (+.f32 %280 %67))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %280 %69)) (sin.f32 (+.f32 %280 %69))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %280 %64)) (sin.f32 (+.f32 %280 %64))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %280 %59)) (sin.f32 (+.f32 %280 %59))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %280 %24)) (sin.f32 (+.f32 %280 %24))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %282 %65)) (sin.f32 (+.f32 %282 %65))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %282 %67)) (sin.f32 (+.f32 %282 %67))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %282 %69)) (sin.f32 (+.f32 %282 %69))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %282 %64)) (sin.f32 (+.f32 %282 %64))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %282 %59)) (sin.f32 (+.f32 %282 %59))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %282 %24)) (sin.f32 (+.f32 %282 %24))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %284 %65)) (sin.f32 (+.f32 %284 %65))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %284 %67)) (sin.f32 (+.f32 %284 %67))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %284 %69)) (sin.f32 (+.f32 %284 %69))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %284 %64)) (sin.f32 (+.f32 %284 %64))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %284 %59)) (sin.f32 (+.f32 %284 %59))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %284 %24)) (sin.f32 (+.f32 %284 %24))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %264 %65)) (sin.f32 (+.f32 %264 %65))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %264 %67)) (sin.f32 (+.f32 %264 %67))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %264 %69)) (sin.f32 (+.f32 %264 %69))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %264 %64)) (sin.f32 (+.f32 %264 %64))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %264 %59)) (sin.f32 (+.f32 %264 %59))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 %611) (sin.f32 (+.f32 %264 %24))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %105 %65)) (sin.f32 (+.f32 %105 %65))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %105 %67)) (sin.f32 (+.f32 %105 %67))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %105 %69)) (sin.f32 (+.f32 %105 %69))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %57 %295)) (sin.f32 (+.f32 %57 %295))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %57 %297)) (sin.f32 (+.f32 %57 %297))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %57 %299)) (sin.f32 (+.f32 %57 %299))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %57 %166)) (sin.f32 (+.f32 %57 %166))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %57 %117)) (sin.f32 (+.f32 %57 %117))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %60 %295)) (sin.f32 (+.f32 %60 %295))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %60 %297)) (sin.f32 (+.f32 %60 %297))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %60 %299)) (sin.f32 (+.f32 %60 %299))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %60 %166)) (sin.f32 (+.f32 %60 %166))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %60 %117)) (sin.f32 (+.f32 %60 %117))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %62 %295)) (sin.f32 (+.f32 %62 %295))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %62 %297)) (sin.f32 (+.f32 %62 %297))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %62 %299)) (sin.f32 (+.f32 %62 %299))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %62 %166)) (sin.f32 (+.f32 %62 %166))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %117 %64)) %722) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %117 %59)) (cos.f32 (-.f32 %117 %59))) #s(literal 2 binary32))
(/.f32 (+.f32 %722 (cos.f32 %731)) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (fma.f32 %56 %19 %117)) (cos.f32 (-.f32 %64 %117))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %59 %117)) (cos.f32 (-.f32 %59 %117))) #s(literal 2 binary32))
(/.f32 (+.f32 %722 %468) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %105 %62)) (cos.f32 (+.f32 %105 %62))) #s(literal 2 binary32))
(/.f32 (-.f32 %722 (cos.f32 (+.f32 %62 %105))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %105 %64)) (sin.f32 (+.f32 %105 %64))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %105 %59)) (sin.f32 (+.f32 %105 %59))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 %771) (sin.f32 (+.f32 %105 %24))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %62 %117)) (sin.f32 (+.f32 %62 %117))) #s(literal 2 binary32))
(pow.f32 %303 #s(literal 1 binary32))
xi
(*.f32 %785 %113)
%788
(*.f32 xi %303)
(*.f32 %303 xi)
(*.f32 %113 %785)
(*.f32 %48 %787)
(pow.f32 %788 #s(literal 1 binary32))
%795
%796
%798
%44
yi
zi
(*.f32 %802 %77)
(*.f32 %804 ux)
(*.f32 %807 ux)
(*.f32 %809 %77)
(*.f32 %812 %77)
(*.f32 %811 %84)
(*.f32 %97 %806)
(*.f32 %816 ux)
(*.f32 %801 %99)
(*.f32 %99 %801)
%821
(*.f32 %806 %97)
(*.f32 zi %101)
(*.f32 %101 zi)
(*.f32 %84 %811)
(*.f32 maxCos %820)
(*.f32 %77 %827)
(*.f32 %77 %809)
(*.f32 %77 %812)
(*.f32 ux %816)
(pow.f32 %821 #s(literal 1 binary32))
(*.f32 %206 %206)
(*.f32 %834 %834)
%128
(pow.f32 %128 #s(literal 1 binary32))
(pow.f32 maxCos #s(literal 2 binary32))
(*.f32 %838 %838)
(*.f32 %74 %74)
%145
(pow.f32 %145 #s(literal 1 binary32))
(pow.f32 ux #s(literal 2 binary32))
(*.f32 %843 %843)
%141
(*.f32 %77 %77)
(-.f32 %180 %846)
(-.f32 %180 %239)
(-.f32 #s(literal 1 binary32) (-.f32 %179 %145))
(fma.f32 %838 %838 %180)
(fma.f32 %74 %74 %180)
(fma.f32 %77 #s(literal 1 binary32) %853)
(fma.f32 ux ux %180)
(fma.f32 #s(literal 1 binary32) %77 %856)
(fma.f32 #s(literal 2 binary32) (-.f32 #s(literal 1/2 binary32) ux) %145)
(pow.f32 %141 #s(literal 1 binary32))
(pow.f32 %77 #s(literal 2 binary32))
(+.f32 (*.f32 %77 #s(literal 1 binary32)) %853)
(+.f32 (*.f32 #s(literal 1 binary32) %77) %856)
(+.f32 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) (*.f32 #s(literal 1 binary32) %74))) (pow.f32 %74 #s(literal 2 binary32)))
(+.f32 %180 %145)
(+.f32 %145 %180)
(neg.f32 (*.f32 %81 %77))
(neg.f32 (*.f32 %77 %81))
(*.f32 (*.f32 %141 ux) ux)
(*.f32 (*.f32 %145 %77) %77)
%133
(*.f32 %141 %145)
(*.f32 %145 %141)
(*.f32 %77 %883)
(*.f32 ux (*.f32 ux %141))
(fma.f32 %180 %145 %887)
(fma.f32 %145 %180 %887)
(pow.f32 %99 #s(literal 2 binary32))
(pow.f32 %133 #s(literal 1 binary32))
(+.f32 (*.f32 %145 %180) %887)
(+.f32 (*.f32 %180 %145) %887)
%123
%125
%127
%132
%135
%138
%140
%142
%144
%146
%147
%148
%150
%151
%152
%153
%154
%155
%156
%158
%160
%162
%164
%165
%172
%178
%182
%184
%185
%186
%187
%188
%190
%192
%193
%195
%197
%202
%205
%210
%211
%213
%112
%215
%217
%219
%221
%223
%225
%227
%229
%231
%232
%233
%235
%236
%237
%238
%240
%241
%242
%243
%244
%245
%246
%247
%248
%250
%251
%253
%254
%255
%256
%257
%259
%261
%263
%113
%267
%269
%270
%271
%273
%275
%277
%279
%281
%283
%285
%286
%287
%289
%290
%292
%294
%296
%298
%300
%301
%302
%806
(*.f32 %77 zi)
(fma.f32 zi #s(literal 1 binary32) %897)
(fma.f32 #s(literal 1 binary32) zi %899)
(pow.f32 %806 #s(literal 1 binary32))
(+.f32 (*.f32 zi #s(literal 1 binary32)) %897)
(+.f32 (*.f32 #s(literal 1 binary32) zi) %899)
(neg.f32 (*.f32 %81 zi))
(neg.f32 (*.f32 zi %81))
(*.f32 %811 %77)
(*.f32 %99 zi)
%820
(*.f32 zi %99)
(*.f32 %77 %811)
(*.f32 ux %806)
(fma.f32 %811 #s(literal 1 binary32) %915)
(fma.f32 #s(literal 1 binary32) %811 %917)
(pow.f32 %820 #s(literal 1 binary32))
(+.f32 (*.f32 %811 #s(literal 1 binary32)) %915)
(+.f32 (*.f32 #s(literal 1 binary32) %811) %917)
(neg.f32 (*.f32 %811 %81))
%99
(*.f32 ux %77)
(pow.f32 %99 #s(literal 1 binary32))
(+.f32 ux (*.f32 ux %74))
(+.f32 ux %846)
(neg.f32 %931)
(neg.f32 %933)
%938
(pow.f32 %938 #s(literal 1 binary32))
#s(literal -2 binary32)
%801
(*.f32 maxCos zi)
(pow.f32 %801 #s(literal 1 binary32))
#s(literal 1/2 binary32)
(*.f32 %942 %942)
(*.f32 %28 %28)
%945
(pow.f32 %945 #s(literal 1 binary32))
(pow.f32 %19 #s(literal 2 binary32))
(*.f32 %948 %19)
%950
(*.f32 %113 %945)
(*.f32 %19 %948)
(pow.f32 %950 #s(literal 1 binary32))
%787
(*.f32 %113 xi)
(pow.f32 %787 #s(literal 1 binary32))
%957
(*.f32 %787 %945)
(*.f32 %950 xi)
(*.f32 %945 %787)
(*.f32 xi %950)
(*.f32 %113 %956)
(pow.f32 %957 #s(literal 1 binary32))
%948
(*.f32 %19 %113)
(pow.f32 %948 #s(literal 1 binary32))
%967
(*.f32 %968 %19)
(*.f32 %948 yi)
(*.f32 yi %948)
(*.f32 %113 %966)
(*.f32 %19 %968)
(pow.f32 %967 #s(literal 1 binary32))
(*.f32 %976 %19)
%979
(*.f32 %980 %113)
(*.f32 %982 yi)
(*.f32 %975 %948)
(*.f32 %966 %985)
(*.f32 %966 %987)
(*.f32 %967 #s(literal 2 binary32))
(*.f32 %948 %975)
(*.f32 yi %991)
(*.f32 yi %993)
(*.f32 %113 %995)
(*.f32 #s(literal 2 binary32) %967)
(-.f32 %967 (*.f32 (neg.f32 %966) %113))
(-.f32 %967 (*.f32 (neg.f32 %948) yi))
(-.f32 %967 (*.f32 %1004 %948))
(-.f32 %967 (neg.f32 %967))
(fma.f32 %966 %113 %967)
(fma.f32 %968 %19 %967)
(fma.f32 %967 #s(literal 1 binary32) %1011)
(fma.f32 %948 yi %967)
(fma.f32 yi %948 %967)
(fma.f32 %113 %966 %967)
(fma.f32 #s(literal 1 binary32) %967 %1016)
(fma.f32 %19 %968 %967)
(pow.f32 %979 #s(literal 1 binary32))
(+.f32 %1011 %1011)
(+.f32 %1016 %1016)
(+.f32 %967 %967)
(*.f32 (*.f32 %1023 %945) %113)
(*.f32 (*.f32 %1023 %113) %945)
%1029
(*.f32 (*.f32 uy %950) xi)
(*.f32 %1023 %950)
(*.f32 %956 (*.f32 %113 uy))
(*.f32 %957 uy)
(*.f32 %950 %1023)
(*.f32 xi (*.f32 %950 uy))
(*.f32 uy %957)
(pow.f32 %1029 #s(literal 1 binary32))
%1042
(-.f32 %1044 %1046)
(-.f32 %979 (*.f32 (neg.f32 %56) %957))
(-.f32 %979 (*.f32 (neg.f32 %1029) #s(literal -2 binary32)))
(-.f32 %979 (*.f32 #s(literal 2 binary32) %1029))
(-.f32 %979 (neg.f32 %1044))
(fma.f32 %1058 %113 %1059)
(fma.f32 %1058 %113 %979)
(fma.f32 %1062 xi %1059)
(fma.f32 %1062 xi %979)
(fma.f32 %1043 %950 %1059)
(fma.f32 %1043 %950 %979)
(fma.f32 %1067 %950 %1059)
(fma.f32 %1067 %950 %979)
(fma.f32 %1070 uy %1059)
(fma.f32 %1070 uy %979)
(fma.f32 %976 %19 %1044)
(fma.f32 %978 %113 %1044)
(fma.f32 %980 %113 %1044)
(fma.f32 %982 yi %1044)
(fma.f32 %56 %957 %1059)
(fma.f32 %56 %957 %979)
(fma.f32 %1023 %1079 %1059)
(fma.f32 %1023 %1079 %979)
(fma.f32 %975 %948 %1044)
(fma.f32 %966 %985 %1044)
(fma.f32 %966 %987 %1044)
(fma.f32 %966 %113 %1085)
(fma.f32 %968 %19 %1085)
(fma.f32 %1029 #s(literal -2 binary32) %1059)
(fma.f32 %1029 #s(literal -2 binary32) %979)
(fma.f32 %967 #s(literal 2 binary32) %1044)
(fma.f32 %948 %975 %1044)
(fma.f32 %948 yi %1085)
(fma.f32 %957 %56 %1059)
(fma.f32 %957 %56 %979)
(fma.f32 #s(literal -2 binary32) %1029 %1059)
(fma.f32 #s(literal -2 binary32) %1029 %979)
(fma.f32 yi %991 %1044)
(fma.f32 yi %993 %1044)
(fma.f32 yi %948 %1085)
(fma.f32 %113 %995 %1044)
(fma.f32 %113 %966 %1085)
(fma.f32 %19 %968 %1085)
(fma.f32 #s(literal 2 binary32) %967 %1044)
(fma.f32 uy %1104 %1059)
(fma.f32 uy %1104 %979)
(pow.f32 %1042 #s(literal 1 binary32))
(+.f32 (fma.f32 %1058 %113 %967) %967)
(+.f32 %1044 %1059)
(+.f32 %1044 %979)
(+.f32 %979 %1044)
(+.f32 %967 %1085)
(neg.f32 (-.f32 %1046 %1044))
(-.f32 %1116 %1118)
(-.f32 %787 (*.f32 (neg.f32 %1042) uy))
(-.f32 %787 (*.f32 %4 %1042))
(-.f32 %787 (neg.f32 %1116))
(fma.f32 %1127 %957 %1129)
(fma.f32 %1127 %957 %1132)
(fma.f32 %1134 #s(literal -2 binary32) %1129)
(fma.f32 %1134 #s(literal -2 binary32) %1132)
(fma.f32 %56 %1029 %1129)
(fma.f32 %56 %1029 %1132)
(fma.f32 %1044 uy %1129)
(fma.f32 %1044 uy %1132)
(fma.f32 %1042 uy %1142)
(fma.f32 %1042 uy %1144)
%1146
(fma.f32 %1029 %56 %1129)
(fma.f32 %1029 %56 %1132)
(fma.f32 #s(literal -2 binary32) %1149 %1129)
(fma.f32 #s(literal -2 binary32) %1149 %1132)
(fma.f32 xi %113 %1116)
(fma.f32 %113 xi %1116)
(fma.f32 uy %1044 %1129)
(fma.f32 uy %1044 %1132)
(fma.f32 uy %1042 %1142)
(fma.f32 uy %1042 %1144)
(fma.f32 uy %1042 %787)
(pow.f32 %1146 #s(literal 1 binary32))
(+.f32 (fma.f32 xi %113 %1160) %1131)
(+.f32 %1160 %1129)
(+.f32 %1160 %1132)
(+.f32 %1116 %1142)
(+.f32 %1116 %1144)
(+.f32 %1116 %787)
(+.f32 %787 %1116)
(neg.f32 %1169)
(-.f32 %821 %1118)
(-.f32 %787 %1173)
(-.f32 %787 %1176)
(-.f32 %787 %1178)
(-.f32 %787 %1180)
(fma.f32 %802 %77 %1142)
(fma.f32 %802 %77 %1144)
%1184
(fma.f32 %804 ux %1142)
(fma.f32 %804 ux %1144)
(fma.f32 %804 ux %787)
(fma.f32 %807 ux %1142)
(fma.f32 %807 ux %1144)
(fma.f32 %807 ux %787)
(fma.f32 %809 %77 %1142)
(fma.f32 %809 %77 %1144)
(fma.f32 %809 %77 %787)
(fma.f32 %812 %77 %1142)
(fma.f32 %812 %77 %1144)
(fma.f32 %812 %77 %787)
(fma.f32 %811 %84 %1142)
(fma.f32 %811 %84 %1144)
(fma.f32 %811 %84 %787)
(fma.f32 %97 %806 %1142)
(fma.f32 %97 %806 %1144)
(fma.f32 %97 %806 %787)
(fma.f32 %816 ux %1142)
(fma.f32 %816 ux %1144)
(fma.f32 %816 ux %787)
(fma.f32 %801 %99 %1142)
(fma.f32 %801 %99 %1144)
(fma.f32 %801 %99 %787)
(fma.f32 %99 %801 %1142)
(fma.f32 %99 %801 %1144)
(fma.f32 %99 %801 %787)
(fma.f32 %820 maxCos %1142)
(fma.f32 %820 maxCos %1144)
(fma.f32 %820 maxCos %787)
(fma.f32 %806 %97 %1142)
(fma.f32 %806 %97 %1144)
(fma.f32 %806 %97 %787)
(fma.f32 zi %101 %1142)
(fma.f32 zi %101 %1144)
(fma.f32 zi %101 %787)
(fma.f32 xi %113 %821)
(fma.f32 %113 xi %821)
(fma.f32 %101 zi %1142)
(fma.f32 %101 zi %1144)
(fma.f32 %101 zi %787)
(fma.f32 %84 %811 %1142)
(fma.f32 %84 %811 %1144)
(fma.f32 %84 %811 %787)
(fma.f32 maxCos %820 %1142)
(fma.f32 maxCos %820 %1144)
(fma.f32 maxCos %820 %787)
(fma.f32 %77 %827 %1142)
(fma.f32 %77 %827 %1144)
(fma.f32 %77 %827 %787)
(fma.f32 %77 %809 %1142)
(fma.f32 %77 %809 %1144)
(fma.f32 %77 %809 %787)
(fma.f32 %77 %812 %1142)
(fma.f32 %77 %812 %1144)
(fma.f32 %77 %812 %787)
(fma.f32 ux %816 %1142)
(fma.f32 ux %816 %1144)
(fma.f32 ux %816 %787)
(pow.f32 %1184 #s(literal 1 binary32))
(+.f32 %821 %1142)
(+.f32 %821 %1144)
(+.f32 %821 %787)
(+.f32 %787 %821)
(neg.f32 %1249)
%1268
(pow.f32 %1268 #s(literal 1 binary32))
(-.f32 %1270 %1118)
(-.f32 %1116 %1249)
(-.f32 %821 %1169)
(-.f32 %1146 %1173)
(-.f32 %1146 %1176)
(-.f32 %1146 %1178)
(-.f32 %1146 %1180)
%1278
(fma.f32 %804 ux %1146)
(fma.f32 %807 ux %1146)
(fma.f32 %809 %77 %1146)
(fma.f32 %812 %77 %1146)
(fma.f32 %811 %84 %1146)
(fma.f32 %97 %806 %1146)
(fma.f32 %816 ux %1146)
(fma.f32 %1042 uy %1184)
(fma.f32 %801 %99 %1146)
(fma.f32 %99 %801 %1146)
(fma.f32 %820 maxCos %1146)
(fma.f32 %806 %97 %1146)
(fma.f32 zi %101 %1146)
(fma.f32 xi %113 %1270)
(fma.f32 %113 xi %1270)
(fma.f32 %101 zi %1146)
(fma.f32 %84 %811 %1146)
(fma.f32 maxCos %820 %1146)
(fma.f32 %77 %827 %1146)
(fma.f32 %77 %809 %1146)
(fma.f32 %77 %812 %1146)
(fma.f32 ux %816 %1146)
(fma.f32 uy %1042 %1184)
(pow.f32 %1278 #s(literal 1 binary32))
(+.f32 %1270 %787)
(+.f32 %1116 %1184)
(+.f32 %821 %1146)
(+.f32 %1184 %1116)
(+.f32 %1146 %821)
(+.f32 %787 %1270)
(neg.f32 (-.f32 %1169 %821))
%1311
(pow.f32 %1311 #s(literal 1 binary32))
%84
%85
%87
%89
%90
%92
%94
%96
%2
%3
%5
%8
%10
%12
%13
%14
%16
%11
%18
(*.f32 %19 #s(literal 2 binary32))
(*.f32 #s(literal 2 binary32) %19)
(-.f32 %19 %28)
(pow.f32 %22 #s(literal 1 binary32))
(+.f32 %19 (neg.f32 %28))
%22
(neg.f32 (-.f32 %28 %19))
%21
%23
%24
%25
%26
%27
%30
%32
%34
%35
%36
%37
%38
%795
%796
%798
%44
%43
%51
%52
%54
%58
%61
%63
%66
%68
%70
%71
%72
%48
%81
(pow.f32 %81 #s(literal 1 binary32))
(+.f32 #s(literal -1 binary32) %75)
(+.f32 #s(literal -1 binary32) ux)
(+.f32 ux #s(literal -1 binary32))
(neg.f32 %77)
%95
(*.f32 maxCos %81)
(fma.f32 maxCos ux %1327)
(fma.f32 maxCos ux %1329)
(fma.f32 ux maxCos %1327)
(fma.f32 ux maxCos %1329)
(pow.f32 %95 #s(literal 1 binary32))
(+.f32 %97 %1327)
(+.f32 %97 %1329)
(neg.f32 %84)
%98
%100
%101
%102
%103
%104
%115
%116
%118
%119
(*.f32 %933 maxCos)
(*.f32 %206 %99)
(*.f32 %97 %81)
(*.f32 %74 %84)
%110
(*.f32 %81 %97)
(*.f32 %84 %74)
(*.f32 maxCos %931)
(*.f32 maxCos %1344)
(*.f32 %77 %1172)
(*.f32 ux %95)
(-.f32 (/.f32 (fma.f32 %933 maxCos (sin.f32 (fma.f32 %19 #s(literal 1/2 binary32) %264))) #s(literal 2 binary32)) %114)
(pow.f32 %110 #s(literal 1 binary32))
(sin.f32 %166)
(neg.f32 %101)
(*.f32 %97 %99)
(*.f32 %99 %97)
(*.f32 %145 %84)
%149
(*.f32 %84 %145)
(*.f32 maxCos (*.f32 %99 ux))
(*.f32 maxCos %883)
(*.f32 %77 (*.f32 %97 ux))
(*.f32 %77 (*.f32 maxCos %145))
(*.f32 ux %101)
(pow.f32 %149 #s(literal 1 binary32))
%197
%202
%205
%210
%211
%213
%112
%215
%217
%219
%221
%223
%225
%227
%229
%231
%232
%233
%235
%236
%237
%238
%240
%241
%242
%243
%244
%245
%246
%247
%248
%250
%251
%253
%254
%255
%256
%257
%259
%261
%263
%113
%267
%269
%270
%271
%273
%275
%277
%279
%281
%283
%285
%286
%287
%289
%290
%292
%294
%296
%298
%300
%301
%302
(-.f32 %264 %46)
(-.f32 %46 %105)
(fma.f32 %19 #s(literal 1/2 binary32) %1371)
(pow.f32 %117 #s(literal 1 binary32))
%117
(+.f32 %46 %1371)
(neg.f32 %166)
(-.f32 %46 %264)
(-.f32 %105 %46)
(fma.f32 %19 #s(literal 1/2 binary32) %1378)
(pow.f32 %166 #s(literal 1 binary32))
%166
(+.f32 %46 %1378)
(neg.f32 %117)
(-.f32 %62 %264)
(-.f32 %46 %611)
(-.f32 %166 %64)
(-.f32 %24 %117)
(fma.f32 %20 #s(literal 2 binary32) %166)
%467
(fma.f32 %19 %11 %166)
(fma.f32 %19 uy %1389)
(fma.f32 %19 uy %1391)
(fma.f32 %11 %19 %166)
(fma.f32 #s(literal 2 binary32) %20 %166)
(fma.f32 uy %22 %166)
(fma.f32 uy %19 %1389)
(fma.f32 uy %19 %1391)
(pow.f32 %467 #s(literal 1 binary32))
(+.f32 (+.f32 %166 %20) %20)
(+.f32 %20 %1389)
(+.f32 %20 %1391)
(+.f32 %166 %24)
(+.f32 %24 %166)
(neg.f32 %731)
(-.f32 %62 %105)
(-.f32 %46 %771)
(-.f32 %117 %64)
(-.f32 %24 %166)
(fma.f32 %20 #s(literal 2 binary32) %117)
%721
(fma.f32 %19 %11 %117)
(fma.f32 %19 uy %1412)
(fma.f32 %19 uy %1414)
(fma.f32 %11 %19 %117)
(fma.f32 #s(literal 2 binary32) %20 %117)
(fma.f32 uy %22 %117)
(fma.f32 uy %19 %1412)
(fma.f32 uy %19 %1414)
(pow.f32 %721 #s(literal 1 binary32))
(+.f32 (+.f32 %117 %20) %20)
(+.f32 %20 %1412)
(+.f32 %20 %1414)
(+.f32 %117 %24)
(+.f32 %24 %117)
(neg.f32 (-.f32 %166 %24))
%785
(*.f32 %48 xi)
(pow.f32 %785 #s(literal 1 binary32))
(-.f32 %1432 (*.f32 %1433 %110))
(-.f32 %1432 (neg.f32 %1436))
(-.f32 %1432 %1439)
(fma.f32 %110 %48 %1432)
(fma.f32 %44 %113 %1436)
(fma.f32 %113 %44 %1436)
(fma.f32 %48 %110 %1432)
(pow.f32 %1445 #s(literal 1 binary32))
(+.f32 %1436 %1432)
(+.f32 %1432 %1436)
%1445
(-.f32 %1432 (*.f32 %1433 %101))
(-.f32 %1432 (neg.f32 %1439))
(-.f32 %1432 %1436)
(fma.f32 %44 %113 %1439)
(fma.f32 %113 %44 %1439)
(fma.f32 %101 %48 %1432)
(fma.f32 %48 %101 %1432)
(pow.f32 %1458 #s(literal 1 binary32))
(+.f32 %1439 %1432)
(+.f32 %1432 %1439)
%1458
(*.f32 (*.f32 #s(literal 2 binary32) %1464) %1468)
(*.f32 %1470 #s(literal 2 binary32))
(*.f32 #s(literal 2 binary32) (*.f32 %1464 (cos.f32 (/.f32 (-.f32 %721 %467) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) %1470)
(-.f32 %1458 (neg.f32 %1445))
(-.f32 %1445 %1480)
(fma.f32 %1468 %1464 %1470)
(fma.f32 %1464 %1468 %1470)
(fma.f32 %44 %113 %1484)
(fma.f32 %44 %113 %1486)
(fma.f32 %44 %113 %1488)
(fma.f32 %113 %44 %1484)
(fma.f32 %113 %44 %1486)
(fma.f32 %113 %44 %1488)
(pow.f32 %1493 #s(literal 1 binary32))
(+.f32 (+.f32 %1458 %1432) %1436)
(+.f32 (+.f32 %1445 %1432) %1439)
(+.f32 %1470 %1470)
%1493
(+.f32 %1445 (neg.f32 %1480))
(+.f32 %1445 %1458)
(+.f32 %1432 %1484)
(+.f32 %1432 %1486)
(+.f32 %1432 %1488)
(neg.f32 (-.f32 %1480 %1445))
%1508
(*.f32 #s(literal 1/2 binary32) %1493)
(*.f32 #s(literal 1 binary32) %1470)
(*.f32 #s(literal 2 binary32) (*.f32 %1470 #s(literal 1/2 binary32)))
(fma.f32 %1458 #s(literal 1/2 binary32) %1513)
(fma.f32 %1445 #s(literal 1/2 binary32) %1515)
(fma.f32 #s(literal 1/2 binary32) %1458 %1517)
(fma.f32 #s(literal 1/2 binary32) %1445 %1519)
(pow.f32 %1508 #s(literal 1 binary32))
(+.f32 %1519 %1517)
(+.f32 %1517 %1519)
(+.f32 %1515 %1513)
(+.f32 %1513 %1515)
(-.f32 %1526 %1527)
(-.f32 %785 (*.f32 %1004 %44))
(-.f32 %785 (*.f32 (neg.f32 %44) yi))
(-.f32 %785 (neg.f32 %1526))
(fma.f32 yi %44 %1537)
(fma.f32 yi %44 %1539)
%1541
(fma.f32 %44 yi %1537)
(fma.f32 %44 yi %1539)
(fma.f32 %44 yi %785)
(fma.f32 xi %48 %1526)
(fma.f32 %48 xi %1526)
(pow.f32 %1541 #s(literal 1 binary32))
(+.f32 %1526 %1537)
(+.f32 %1526 %1539)
(+.f32 %1526 %785)
(+.f32 %785 %1526)
(neg.f32 (-.f32 %1527 %1526))
%1554
(*.f32 %113 %1541)
(-.f32 %1556 (*.f32 %288 %785))
(-.f32 %1556 (*.f32 %1527 %113))
(-.f32 %1556 %1561)
(-.f32 %1556 %1564)
(-.f32 %1556 %1566)
(-.f32 %1556 %1568)
(-.f32 %788 %1570)
(fma.f32 %968 %44 %788)
(fma.f32 %1526 %113 %788)
(fma.f32 %785 %113 %1576)
(fma.f32 %785 %113 %1578)
(fma.f32 %785 %113 %1556)
(fma.f32 %1432 yi %788)
(fma.f32 %787 %48 %1576)
(fma.f32 %787 %48 %1578)
(fma.f32 %787 %48 %1556)
(fma.f32 yi %1432 %788)
(fma.f32 %44 %968 %788)
(fma.f32 xi %303 %1576)
(fma.f32 xi %303 %1578)
(fma.f32 xi %303 %1556)
(fma.f32 %303 xi %1576)
(fma.f32 %303 xi %1578)
(fma.f32 %303 xi %1556)
(fma.f32 %113 %1526 %788)
(fma.f32 %113 %785 %1576)
(fma.f32 %113 %785 %1578)
(fma.f32 %113 %785 %1556)
(fma.f32 %48 %787 %1576)
(fma.f32 %48 %787 %1578)
(fma.f32 %48 %787 %1556)
(pow.f32 %1554 #s(literal 1 binary32))
(+.f32 %1556 %788)
(+.f32 %788 %1576)
(+.f32 %788 %1578)
(+.f32 %788 %1556)
(neg.f32 (-.f32 %1570 %788))
(-.f32 %1607 %1570)
(-.f32 %821 %1609)
(-.f32 %1554 (*.f32 (neg.f32 %801) %99))
(-.f32 %1554 (*.f32 %1344 %801))
(-.f32 %1554 (*.f32 %74 %816))
(-.f32 %1554 %1180)
(-.f32 %788 (-.f32 %1570 %821))
(-.f32 %788 (fma.f32 %1004 %1432 %1180))
(-.f32 %788 (neg.f32 %1623))
(fma.f32 %802 %77 %1627)
(fma.f32 %802 %77 %1629)
%1631
(fma.f32 %804 ux %1627)
(fma.f32 %804 ux %1629)
(fma.f32 %804 ux %1554)
(fma.f32 %807 ux %1627)
(fma.f32 %807 ux %1629)
(fma.f32 %807 ux %1554)
(fma.f32 %809 %77 %1627)
(fma.f32 %809 %77 %1629)
(fma.f32 %809 %77 %1554)
(fma.f32 %812 %77 %1627)
(fma.f32 %812 %77 %1629)
(fma.f32 %812 %77 %1554)
(fma.f32 %811 %84 %1627)
(fma.f32 %811 %84 %1629)
(fma.f32 %811 %84 %1554)
(fma.f32 %97 %806 %1627)
(fma.f32 %97 %806 %1629)
(fma.f32 %97 %806 %1554)
(fma.f32 %816 ux %1627)
(fma.f32 %816 ux %1629)
(fma.f32 %816 ux %1554)
(fma.f32 %968 %44 %1653)
(fma.f32 %968 %44 %1655)
(fma.f32 %1526 %113 %1653)
(fma.f32 %1526 %113 %1655)
(fma.f32 %1541 %113 %1659)
(fma.f32 %1541 %113 %821)
(fma.f32 %785 %113 %1623)
(fma.f32 %1432 yi %1653)
(fma.f32 %1432 yi %1655)
(fma.f32 %787 %48 %1623)
(fma.f32 %801 %99 %1627)
(fma.f32 %801 %99 %1629)
(fma.f32 %801 %99 %1554)
(fma.f32 %99 %801 %1627)
(fma.f32 %99 %801 %1629)
(fma.f32 %99 %801 %1554)
(fma.f32 %820 maxCos %1627)
(fma.f32 %820 maxCos %1629)
(fma.f32 %820 maxCos %1554)
(fma.f32 %806 %97 %1627)
(fma.f32 %806 %97 %1629)
(fma.f32 %806 %97 %1554)
(fma.f32 zi %101 %1627)
(fma.f32 zi %101 %1629)
(fma.f32 zi %101 %1554)
(fma.f32 yi %1432 %1653)
(fma.f32 yi %1432 %1655)
(fma.f32 %44 %968 %1653)
(fma.f32 %44 %968 %1655)
(fma.f32 xi %303 %1623)
(fma.f32 %303 xi %1623)
(fma.f32 %113 %1526 %1653)
(fma.f32 %113 %1526 %1655)
(fma.f32 %113 %1541 %1659)
(fma.f32 %113 %1541 %821)
(fma.f32 %113 %785 %1623)
(fma.f32 %101 zi %1627)
(fma.f32 %101 zi %1629)
(fma.f32 %101 zi %1554)
(fma.f32 %84 %811 %1627)
(fma.f32 %84 %811 %1629)
(fma.f32 %84 %811 %1554)
(fma.f32 maxCos %820 %1627)
(fma.f32 maxCos %820 %1629)
(fma.f32 maxCos %820 %1554)
(fma.f32 %77 %827 %1627)
(fma.f32 %77 %827 %1629)
(fma.f32 %77 %827 %1554)
(fma.f32 %77 %809 %1627)
(fma.f32 %77 %809 %1629)
(fma.f32 %77 %809 %1554)
(fma.f32 %77 %812 %1627)
(fma.f32 %77 %812 %1629)
(fma.f32 %77 %812 %1554)
(fma.f32 ux %816 %1627)
(fma.f32 ux %816 %1629)
(fma.f32 ux %816 %1554)
(fma.f32 %48 %787 %1623)
(pow.f32 %1631 #s(literal 1 binary32))
(+.f32 %1623 %788)
(+.f32 %1607 %1556)
(+.f32 %821 %1627)
(+.f32 %821 %1629)
(+.f32 %821 %1554)
(+.f32 %1554 %1659)
(+.f32 %1554 %821)
(+.f32 %1556 %1653)
(+.f32 %1556 %1655)
(+.f32 %788 %1623)
(neg.f32 (-.f32 %1609 %821))
(neg.f32 (-.f32 %1180 %1554))
(*.f32 %1729 #s(literal 1/2 binary32))
%1732
(*.f32 %1508 yi)
(*.f32 %1493 %1731)
(*.f32 #s(literal 1/2 binary32) %1735)
(*.f32 yi %1508)
(*.f32 #s(literal 2 binary32) %1738)
(pow.f32 %1732 #s(literal 1 binary32))
(-.f32 %1732 %1561)
(-.f32 %1732 %1564)
(-.f32 %1732 %1566)
(-.f32 %1732 %1568)
(-.f32 %788 %1747)
(fma.f32 %1729 #s(literal 1/2 binary32) %788)
%1750
(fma.f32 %1508 yi %788)
(fma.f32 %1493 %1731 %788)
(fma.f32 %785 %113 %1754)
(fma.f32 %785 %113 %1756)
(fma.f32 %785 %113 %1732)
(fma.f32 %787 %48 %1754)
(fma.f32 %787 %48 %1756)
(fma.f32 %787 %48 %1732)
(fma.f32 #s(literal 1/2 binary32) %1735 %788)
(fma.f32 yi %1508 %788)
(fma.f32 xi %303 %1754)
(fma.f32 xi %303 %1756)
(fma.f32 xi %303 %1732)
(fma.f32 %303 xi %1754)
(fma.f32 %303 xi %1756)
(fma.f32 %303 xi %1732)
(fma.f32 %113 %785 %1754)
(fma.f32 %113 %785 %1756)
(fma.f32 %113 %785 %1732)
(fma.f32 %48 %787 %1754)
(fma.f32 %48 %787 %1756)
(fma.f32 %48 %787 %1732)
(fma.f32 #s(literal 2 binary32) %1738 %788)
(pow.f32 %1750 #s(literal 1 binary32))
(+.f32 %1732 %788)
(+.f32 %788 %1754)
(+.f32 %788 %1756)
(+.f32 %788 %1732)
(neg.f32 (-.f32 %1747 %788))
(-.f32 %1607 %1747)
(-.f32 %821 (neg.f32 %1750))
(-.f32 %1750 %1180)
(-.f32 %788 (-.f32 %1747 %821))
(-.f32 %788 (fma.f32 %1746 yi %1180))
(-.f32 %788 (neg.f32 %1792))
(fma.f32 %802 %77 %1750)
(fma.f32 %804 ux %1750)
(fma.f32 %807 ux %1750)
(fma.f32 %1729 #s(literal 1/2 binary32) %1653)
(fma.f32 %1729 #s(literal 1/2 binary32) %1655)
(fma.f32 %809 %77 %1750)
(fma.f32 %812 %77 %1750)
%1802
(fma.f32 %1731 %1493 %1655)
(fma.f32 %811 %84 %1750)
(fma.f32 %97 %806 %1750)
(fma.f32 %816 ux %1750)
(fma.f32 %1508 yi %1653)
(fma.f32 %1508 yi %1655)
(fma.f32 %1493 %1731 %1653)
(fma.f32 %1493 %1731 %1655)
(fma.f32 %785 %113 %1792)
(fma.f32 %787 %48 %1792)
(fma.f32 #s(literal 1/2 binary32) %1735 %1653)
(fma.f32 #s(literal 1/2 binary32) %1735 %1655)
(fma.f32 %801 %99 %1750)
(fma.f32 %99 %801 %1750)
(fma.f32 %820 maxCos %1750)
(fma.f32 %806 %97 %1750)
(fma.f32 zi %101 %1750)
(fma.f32 yi %1508 %1653)
(fma.f32 yi %1508 %1655)
(fma.f32 xi %303 %1792)
(fma.f32 %303 xi %1792)
(fma.f32 %113 %785 %1792)
(fma.f32 %101 zi %1750)
(fma.f32 %84 %811 %1750)
(fma.f32 maxCos %820 %1750)
(fma.f32 %77 %827 %1750)
(fma.f32 %77 %809 %1750)
(fma.f32 %77 %812 %1750)
(fma.f32 ux %816 %1750)
(fma.f32 %48 %787 %1792)
(fma.f32 #s(literal 2 binary32) %1738 %1653)
(fma.f32 #s(literal 2 binary32) %1738 %1655)
(pow.f32 %1802 #s(literal 1 binary32))
(+.f32 %1607 %1732)
(+.f32 %1792 %788)
(+.f32 %821 %1750)
(+.f32 %1750 %1659)
(+.f32 %1750 %821)
(+.f32 %1732 %1653)
(+.f32 %1732 %1655)
(+.f32 %788 %1792)
(neg.f32 (-.f32 %1180 %1750))
%1846
(*.f32 ux %938)
(pow.f32 %1846 #s(literal 1 binary32))
(*.f32 (*.f32 %1849 ux) ux)
(*.f32 %1853 %1853)
(*.f32 %1855 %1855)
(*.f32 %1858 %1858)
(*.f32 %1860 ux)
%1863
(*.f32 %1849 %145)
(*.f32 %1852 %1852)
(*.f32 %1857 %1857)
(*.f32 %1846 %1846)
(*.f32 %938 (*.f32 %938 %145))
(*.f32 %938 %1862)
(*.f32 %145 %1849)
(*.f32 ux %1860)
(pow.f32 %1852 #s(literal 2 binary32))
(pow.f32 %1857 #s(literal 2 binary32))
(pow.f32 %1863 #s(literal 1 binary32))
(pow.f32 %1846 #s(literal 2 binary32))
(fabs.f32 %1863)
(neg.f32 %1878)
(-.f32 #s(literal 1 binary32) (*.f32 %1858 %1846))
%1882
(fma.f32 (*.f32 %1857 %938) ux #s(literal 1 binary32))
(fma.f32 (*.f32 %1857 ux) %938 #s(literal 1 binary32))
(fma.f32 (neg.f32 %1860) ux #s(literal 1 binary32))
(fma.f32 (neg.f32 %1849) %145 #s(literal 1 binary32))
(fma.f32 %1855 %1852 #s(literal 1 binary32))
(fma.f32 %1858 %1857 #s(literal 1 binary32))
(fma.f32 (neg.f32 %938) %1862 #s(literal 1 binary32))
(fma.f32 %1860 %74 #s(literal 1 binary32))
(fma.f32 %1849 %239 #s(literal 1 binary32))
(fma.f32 %1852 %1855 #s(literal 1 binary32))
(fma.f32 %1857 %1858 #s(literal 1 binary32))
(fma.f32 %1857 %1846 #s(literal 1 binary32))
(fma.f32 %1846 %1857 #s(literal 1 binary32))
(fma.f32 %938 (neg.f32 %1862) #s(literal 1 binary32))
(pow.f32 %1882 #s(literal 1 binary32))
(+.f32 %1878 #s(literal 1 binary32))
(+.f32 #s(literal 1 binary32) %1878)
(neg.f32 (fma.f32 %1846 %1846 #s(literal -1 binary32)))
(sqrt.f32 (*.f32 %1908 %1908))
%1908
(pow.f32 %1908 #s(literal 1 binary32))
(pow.f32 %1882 #s(literal 1/2 binary32))
(sin.f32 (acos.f32 %1853))
(sin.f32 (acos.f32 %1855))
(sin.f32 (acos.f32 %1858))
(sin.f32 %1920)
(sin.f32 %1922)
(sin.f32 %1924)
(sin.f32 %1926)
(fabs.f32 %1928)
(fabs.f32 %1908)
(cos.f32 (asin.f32 %1853))
(cos.f32 (asin.f32 %1855))
(cos.f32 (asin.f32 %1858))
(cos.f32 %1937)
(cos.f32 %1939)
(cos.f32 %1941)
(cos.f32 %1919)
%1944
(*.f32 %48 %1908)
(/.f32 (-.f32 (cos.f32 (-.f32 %1920 %57)) (cos.f32 (+.f32 %1920 %57))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %1920 %60)) (cos.f32 (+.f32 %1920 %60))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %1920 %62)) (cos.f32 (+.f32 %1920 %62))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %1922 %57)) (cos.f32 (+.f32 %1922 %57))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %1922 %60)) (cos.f32 (+.f32 %1922 %60))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %1922 %62)) (cos.f32 (+.f32 %1922 %62))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %1924 %57)) (cos.f32 (+.f32 %1924 %57))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %1924 %60)) (cos.f32 (+.f32 %1924 %60))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %1924 %62)) (cos.f32 (+.f32 %1924 %62))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %1926 %57)) (cos.f32 (+.f32 %1926 %57))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %1926 %60)) (cos.f32 (+.f32 %1926 %60))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %57 %1920)) (cos.f32 (+.f32 %57 %1920))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %57 %1922)) (cos.f32 (+.f32 %57 %1922))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %57 %1924)) (cos.f32 (+.f32 %57 %1924))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %57 %1926)) (cos.f32 (+.f32 %57 %1926))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %60 %1920)) (cos.f32 (+.f32 %60 %1920))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %60 %1922)) (cos.f32 (+.f32 %60 %1922))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %60 %1924)) (cos.f32 (+.f32 %60 %1924))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %60 %1926)) (cos.f32 (+.f32 %60 %1926))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %62 %1920)) (cos.f32 (+.f32 %62 %1920))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %62 %1922)) (cos.f32 (+.f32 %62 %1922))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %62 %1924)) (cos.f32 (+.f32 %62 %1924))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1920 %65)) (sin.f32 (+.f32 %1920 %65))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1920 %67)) (sin.f32 (+.f32 %1920 %67))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1920 %69)) (sin.f32 (+.f32 %1920 %69))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1920 %64)) (sin.f32 (+.f32 %1920 %64))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1920 %59)) (sin.f32 (+.f32 %1920 %59))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 %2108) (sin.f32 %2110)) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1922 %65)) (sin.f32 (+.f32 %1922 %65))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1922 %67)) (sin.f32 (+.f32 %1922 %67))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1922 %69)) (sin.f32 (+.f32 %1922 %69))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1922 %64)) (sin.f32 (+.f32 %1922 %64))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1922 %59)) (sin.f32 (+.f32 %1922 %59))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 %2144) (sin.f32 %2146)) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1924 %65)) (sin.f32 (+.f32 %1924 %65))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1924 %67)) (sin.f32 (+.f32 %1924 %67))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1924 %69)) (sin.f32 (+.f32 %1924 %69))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1924 %64)) (sin.f32 (+.f32 %1924 %64))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1924 %59)) (sin.f32 (+.f32 %1924 %59))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 %2180) (sin.f32 %2182)) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1926 %65)) (sin.f32 (+.f32 %1926 %65))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1926 %67)) (sin.f32 (+.f32 %1926 %67))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1926 %69)) (sin.f32 (+.f32 %1926 %69))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %57 %1939)) (sin.f32 (+.f32 %57 %1939))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %57 %1941)) (sin.f32 (+.f32 %57 %1941))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %57 %1937)) (sin.f32 (+.f32 %57 %1937))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %57 %1919)) (sin.f32 (+.f32 %57 %1919))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %60 %1939)) (sin.f32 (+.f32 %60 %1939))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %60 %1941)) (sin.f32 (+.f32 %60 %1941))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %60 %1937)) (sin.f32 (+.f32 %60 %1937))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %60 %1919)) (sin.f32 (+.f32 %60 %1919))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %62 %1939)) (sin.f32 (+.f32 %62 %1939))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %62 %1941)) (sin.f32 (+.f32 %62 %1941))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %62 %1937)) (sin.f32 (+.f32 %62 %1937))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %1919 %64)) (cos.f32 (-.f32 %1919 %64))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %1919 %59)) (cos.f32 (-.f32 %1919 %59))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %1919 %24)) (cos.f32 (-.f32 %1919 %24))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (fma.f32 %56 %19 %1919)) (cos.f32 (-.f32 %64 %1919))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %59 %1919)) (cos.f32 (-.f32 %59 %1919))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 %2300) (cos.f32 %2302)) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %1926 %62)) (cos.f32 (+.f32 %1926 %62))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %62 %1926)) (cos.f32 (+.f32 %62 %1926))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1926 %64)) (sin.f32 (+.f32 %1926 %64))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1926 %59)) (sin.f32 (+.f32 %1926 %59))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 %2330) (sin.f32 %2332)) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %62 %1919)) (sin.f32 (+.f32 %62 %1919))) #s(literal 2 binary32))
(pow.f32 %1944 #s(literal 1 binary32))
%2344
(*.f32 %1944 xi)
(*.f32 %1908 %785)
(*.f32 %785 %1908)
(*.f32 xi %1944)
(*.f32 %48 %2343)
(pow.f32 %2344 #s(literal 1 binary32))
%2351
(*.f32 %44 %1908)
(/.f32 (-.f32 (cos.f32 %2108) (cos.f32 %2110)) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 %2144) (cos.f32 %2146)) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 %2180) (cos.f32 %2182)) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %24 %1920)) (cos.f32 (fma.f32 %22 uy %1920))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %24 %1922)) (cos.f32 (fma.f32 %22 uy %1922))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %24 %1924)) (cos.f32 (fma.f32 %22 uy %1924))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %24 %1939)) (sin.f32 (fma.f32 %22 uy %1939))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %24 %1941)) (sin.f32 (fma.f32 %22 uy %1941))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %24 %1937)) (sin.f32 (fma.f32 %22 uy %1937))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 %2330) (cos.f32 %2332)) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %24 %1926)) (cos.f32 (fma.f32 %22 uy %1926))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 %2302) (sin.f32 %2300)) #s(literal 2 binary32))
(pow.f32 %2351 #s(literal 1 binary32))
%2417
(*.f32 %1526 %1908)
(*.f32 %2351 yi)
(*.f32 %1908 %1526)
(*.f32 yi %2351)
(*.f32 %44 %2416)
(pow.f32 %2417 #s(literal 1 binary32))
(-.f32 %2417 (*.f32 (neg.f32 %1944) xi))
(-.f32 %2417 (*.f32 %1117 %1944))
(-.f32 %2417 (*.f32 %1433 %2343))
(-.f32 %2417 (neg.f32 %2344))
(-.f32 %2344 %2433)
%2435
(fma.f32 %2343 %48 %2438)
(fma.f32 %2343 %48 %2440)
(fma.f32 %2343 %48 %2417)
(fma.f32 %1526 %1908 %2344)
(fma.f32 %2351 yi %2344)
(fma.f32 %1944 xi %2438)
(fma.f32 %1944 xi %2440)
(fma.f32 %1944 xi %2417)
(fma.f32 %1908 %1526 %2344)
(fma.f32 %1908 %785 %2438)
(fma.f32 %1908 %785 %2440)
(fma.f32 %1908 %785 %2417)
(fma.f32 %785 %1908 %2438)
(fma.f32 %785 %1908 %2440)
(fma.f32 %785 %1908 %2417)
(fma.f32 yi %2351 %2344)
(fma.f32 %44 %2416 %2344)
(fma.f32 xi %1944 %2438)
(fma.f32 xi %1944 %2440)
(fma.f32 xi %1944 %2417)
(fma.f32 %48 %2343 %2438)
(fma.f32 %48 %2343 %2440)
(fma.f32 %48 %2343 %2417)
(pow.f32 %2435 #s(literal 1 binary32))
(+.f32 %2417 %2344)
(+.f32 %2344 %2438)
(+.f32 %2344 %2440)
(+.f32 %2344 %2417)
(neg.f32 (-.f32 %2433 %2344))
(*.f32 %2470 ux)
(*.f32 %811 %938)
%2473
(*.f32 %938 %811)
(*.f32 zi %1846)
(*.f32 ux %2476)
(pow.f32 %2473 #s(literal 1 binary32))
(-.f32 %2479 %2433)
(-.f32 %2473 (neg.f32 %2435))
(-.f32 %2435 %2484)
(-.f32 %2344 (-.f32 %2433 %2473))
(-.f32 %2344 (fma.f32 %1004 %2351 %2484))
(-.f32 %2344 (neg.f32 %2490))
%2493
(fma.f32 %2416 %44 %2494)
(fma.f32 %2416 %44 %2496)
(fma.f32 %811 %938 %2435)
(fma.f32 %2343 %48 %2490)
(fma.f32 %1526 %1908 %2494)
(fma.f32 %1526 %1908 %2496)
(fma.f32 %2351 yi %2494)
(fma.f32 %2351 yi %2496)
(fma.f32 %1944 xi %2490)
(fma.f32 %1908 %1526 %2494)
(fma.f32 %1908 %1526 %2496)
(fma.f32 %1908 %785 %2490)
(fma.f32 %1846 zi %2435)
(fma.f32 %785 %1908 %2490)
(fma.f32 %938 %811 %2435)
(fma.f32 zi %1846 %2435)
(fma.f32 yi %2351 %2494)
(fma.f32 yi %2351 %2496)
(fma.f32 %44 %2416 %2494)
(fma.f32 %44 %2416 %2496)
(fma.f32 xi %1944 %2490)
(fma.f32 ux %2476 %2435)
(fma.f32 %48 %2343 %2490)
(pow.f32 %2493 #s(literal 1 binary32))
(+.f32 %2479 %2417)
(+.f32 %2490 %2344)
(+.f32 %2473 %2435)
(+.f32 %2435 (*.f32 %1858 zi))
(+.f32 %2435 (neg.f32 %2484))
(+.f32 %2435 %2473)
(+.f32 %2417 %2494)
(+.f32 %2417 %2496)
(+.f32 %2344 %2490)
(neg.f32 (-.f32 %2484 %2435))

reconstruct62.0ms (0.7%)

Memory
-69.3MiB live, 134.8MiB allocated; 22ms collecting garbage

eval292.0ms (3.4%)

Memory
16.9MiB live, 564.6MiB allocated; 61ms collecting garbage
Compiler

Compiled 180 161 to 13 292 computations (92.6% saved)

prune65.0ms (0.8%)

Memory
-1.1MiB live, 191.0MiB allocated; 6ms collecting garbage
Pruning

29 alts after pruning (29 fresh and 0 done)

PrunedKeptTotal
New2 552272 579
Fresh17219
Picked505
Done000
Total2 574292 603
Accuracy
99.8%
Counts
2 603 → 29
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.1%
%2 = (-.f32 #s(literal 1 binary32) ux)
%14 = (PI.f32 )
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (fma.f32 (sin.f32 (*.f32 %14 (+.f32 uy uy))) yi (*.f32 (sin.f32 (fma.f32 (+.f32 %14 %14) uy (*.f32 %14 #s(literal 1/2 binary32)))) xi))))
99.2%
%2 = (-.f32 #s(literal 1 binary32) ux)
%14 = (PI.f32 )
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (fma.f32 (sin.f32 (*.f32 %14 (+.f32 uy uy))) yi (*.f32 (sin.f32 (fma.f32 (*.f32 #s(literal -2 binary32) uy) %14 (*.f32 %14 #s(literal 1/2 binary32)))) xi))))
90.3%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%26 = (PI.f32 )
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) (*.f32 yi %26) (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 xi (pow.f32 %26 #s(literal 2 binary32))) (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi (pow.f32 %26 #s(literal 3 binary32)))))))))))))
82.5%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (+.f32 xi (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (PI.f32 ))))))))
45.8%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (*.f32 yi (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 ))))))))
99.0%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%28 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (*.f32 xi (+.f32 (cos.f32 %28) (/.f32 (*.f32 yi (sin.f32 %28)) xi))))))
98.5%
%21 = (pow.f32 maxCos #s(literal 2 binary32))
%37 = (*.f32 (PI.f32 ) (+.f32 uy uy))
(fma.f32 (*.f32 ux (-.f32 #s(literal 1 binary32) ux)) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (approx (+ (* (* (- ux 1) maxCos) (* (* (* maxCos (- 1 ux)) ux) ux)) 1) (*.f32 (pow.f32 ux #s(literal 4 binary32)) (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %21 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %21 (/.f32 #s(literal 1 binary32) (pow.f32 ux #s(literal 2 binary32)))) ux))) ux) (*.f32 #s(literal -1 binary32) %21))))) (fma.f32 (sin.f32 %37) yi (*.f32 (cos.f32 %37) xi))))
95.6%
%4 = (approx (- 1 ux) #s(literal 1 binary32))
%19 = (*.f32 (PI.f32 ) (+.f32 uy uy))
(fma.f32 (*.f32 ux %4) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %4) ux) ux) #s(literal 1 binary32))) (fma.f32 (sin.f32 %19) yi (*.f32 (cos.f32 %19) xi))))
99.1%
%3 = (PI.f32 )
%8 = (-.f32 #s(literal 1 binary32) ux)
%11 = (*.f32 (*.f32 %8 maxCos) ux)
%18 = (+.f32 %3 %3)
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))) xi) (*.f32 (/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) (+.f32 (sin.f32 (fma.f32 %18 uy (asin.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux)))) (sin.f32 (fma.f32 %18 uy (asin.f32 (*.f32 (*.f32 maxCos %8) ux))))))) yi)) (*.f32 %11 zi))
85.9%
%3 = (PI.f32 )
%8 = (-.f32 #s(literal 1 binary32) ux)
%11 = (*.f32 (*.f32 %8 maxCos) ux)
%18 = (+.f32 %3 %3)
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))) xi) (*.f32 (*.f32 (+.f32 (sin.f32 (fma.f32 %18 uy (asin.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux)))) (sin.f32 (-.f32 (fma.f32 %18 uy (*.f32 %3 #s(literal 1/2 binary32))) (acos.f32 (*.f32 (*.f32 maxCos %8) ux))))) #s(literal 1/2 binary32)) yi)) (*.f32 %11 zi))
99.0%
%3 = (PI.f32 )
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
%18 = (*.f32 uy %3)
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) %14) xi) (*.f32 (*.f32 (*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 %18) (cos.f32 %18))) %14) yi)) (*.f32 %11 zi))
80.7%
%3 = (PI.f32 )
%9 = (- 1 ux)
%13 = (*.f32 (approx (* %9 maxCos) maxCos) ux)
%25 = (acos.f32 (*.f32 (approx (* maxCos %9) maxCos) ux))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %13 %13)))) xi) (*.f32 (/.f32 (-.f32 (cos.f32 (-.f32 (*.f32 %3 (+.f32 uy uy)) %25)) (cos.f32 (fma.f32 (+.f32 %3 %3) uy %25))) #s(literal 2 binary32)) yi)) (*.f32 %13 zi))
95.6%
%3 = (PI.f32 )
%11 = (* (- 1 ux) maxCos)
%13 = (*.f32 (approx %11 maxCos) ux)
%25 = (* %11 ux)
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %13 %13)))) xi) (*.f32 (approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %25 %25)))) (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy %3)))) yi)) (*.f32 %13 zi))
94.0%
%3 = (PI.f32 )
%11 = (* (- 1 ux) maxCos)
%13 = (*.f32 (approx %11 maxCos) ux)
%25 = (* %11 ux)
%39 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 (-.f32 #s(literal 1 binary32) ux) #s(literal 2 binary32))))))
%42 = (pow.f32 uy #s(literal 2 binary32))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %13 %13)))) xi) (approx (* (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %25 %25)))) yi) (*.f32 uy (fma.f32 #s(literal 2 binary32) (*.f32 yi (*.f32 %3 %39)) (*.f32 %42 (fma.f32 #s(literal -4/3 binary32) (*.f32 yi (*.f32 (pow.f32 %3 #s(literal 3 binary32)) %39)) (*.f32 %42 (fma.f32 #s(literal -8/315 binary32) (*.f32 %42 (*.f32 yi (*.f32 (pow.f32 %3 #s(literal 7 binary32)) %39))) (*.f32 #s(literal 4/15 binary32) (*.f32 yi (*.f32 (pow.f32 %3 #s(literal 5 binary32)) %39))))))))))) (*.f32 %13 zi))
92.8%
%3 = (PI.f32 )
%11 = (* (- 1 ux) maxCos)
%13 = (*.f32 (approx %11 maxCos) ux)
%25 = (* %11 ux)
%39 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 (-.f32 #s(literal 1 binary32) ux) #s(literal 2 binary32))))))
%42 = (pow.f32 uy #s(literal 2 binary32))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %13 %13)))) xi) (approx (* (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %25 %25)))) yi) (*.f32 uy (fma.f32 #s(literal 2 binary32) (*.f32 yi (*.f32 %3 %39)) (*.f32 %42 (fma.f32 #s(literal -4/3 binary32) (*.f32 yi (*.f32 (pow.f32 %3 #s(literal 3 binary32)) %39)) (*.f32 #s(literal 4/15 binary32) (*.f32 %42 (*.f32 yi (*.f32 (pow.f32 %3 #s(literal 5 binary32)) %39)))))))))) (*.f32 %13 zi))
98.7%
%11 = (* (* (- 1 ux) maxCos) ux)
%17 = (PI.f32 )
%24 = (+.f32 %17 %17)
%32 = (-.f32 #s(literal 1 binary32) ux)
(+.f32 (+.f32 (*.f32 (approx (* (cos (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (cos.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy %17)))) xi) (*.f32 (*.f32 (+.f32 (sin.f32 (fma.f32 %24 uy (asin.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux)))) (sin.f32 (fma.f32 %24 uy (asin.f32 (*.f32 (*.f32 maxCos %32) ux))))) #s(literal 1/2 binary32)) yi)) (*.f32 (*.f32 (*.f32 %32 maxCos) ux) zi))
86.9%
%5 = (* (PI ) (* 2 uy))
%17 = (* (* (- ux 1) maxCos) ux)
%27 = (-.f32 #s(literal 1 binary32) ux)
%29 = (PI.f32 )
%39 = (sqrt.f32 (fma.f32 (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) maxCos) (*.f32 %27 ux) #s(literal 1 binary32)))
(approx (- (* (+ (* yi (sin %5)) (* xi (cos %5))) (sin (acos %17))) (* %17 zi)) (fma.f32 (*.f32 (*.f32 zi maxCos) ux) %27 (fma.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 uy (*.f32 (*.f32 %29 %29) xi)) %39) (*.f32 (*.f32 yi %29) %39))) uy (*.f32 xi %39))))
52.4%
%5 = (* (PI ) (* 2 uy))
%17 = (* (* (- ux 1) maxCos) ux)
%27 = (-.f32 #s(literal 1 binary32) ux)
(approx (- (* (+ (* yi (sin %5)) (* xi (cos %5))) (sin (acos %17))) (* %17 zi)) (fma.f32 (*.f32 (*.f32 zi maxCos) ux) %27 (*.f32 xi (sqrt.f32 (fma.f32 (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) maxCos) (*.f32 %27 ux) #s(literal 1 binary32))))))
52.4%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%28 = (*.f32 (-.f32 #s(literal 1 binary32) ux) ux)
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 %28 (*.f32 zi maxCos) (*.f32 xi (sqrt.f32 (fma.f32 (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) maxCos) %28 #s(literal 1 binary32))))))
52.4%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%27 = (-.f32 #s(literal 1 binary32) ux)
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 (*.f32 zi %27) (*.f32 maxCos ux) (*.f32 xi (sqrt.f32 (fma.f32 (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) maxCos) (*.f32 %27 ux) #s(literal 1 binary32))))))
86.9%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%27 = (-.f32 #s(literal 1 binary32) ux)
%33 = (PI.f32 )
%41 = (sqrt.f32 (fma.f32 (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) maxCos) (*.f32 %27 ux) #s(literal 1 binary32)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 maxCos (*.f32 ux (*.f32 zi %27)) (fma.f32 (*.f32 (*.f32 (*.f32 #s(literal -2 binary32) uy) xi) (*.f32 (*.f32 %33 %33) %41)) uy (fma.f32 (*.f32 uy (+.f32 yi yi)) (*.f32 %41 %33) (*.f32 xi %41)))))
98.6%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%33 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux))) (fma.f32 xi (cos.f32 %33) (*.f32 yi (sin.f32 %33)))))
39.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%27 = (-.f32 #s(literal 1 binary32) ux)
%38 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 maxCos (*.f32 ux (*.f32 zi %27)) (approx (+ (* uy (+ (* -2 (* uy (* xi (* (pow %3 2) %38)))) (* 2 (* yi (* %3 %38))))) (* xi %38)) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %27 #s(literal 2 binary32)))))))))))))
95.5%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 maxCos (*.f32 ux zi) (fma.f32 xi (cos.f32 %30) (*.f32 yi (sin.f32 %30)))))
83.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%52 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* (pow %3 2) %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (fma.f32 maxCos (*.f32 ux zi) (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %52 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %52))))))))
52.2%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) (*.f32 maxCos zi) (*.f32 #s(literal -1/2 binary32) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) xi)))))))))
52.1%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (+.f32 xi (*.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux)))))))
50.0%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (+.f32 xi (*.f32 maxCos (*.f32 ux zi)))))
13.8%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (*.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux))))))
Compiler

Compiled 2 704 to 516 computations (80.9% saved)

sample1.0ms (0.0%)

Memory
4.1MiB live, 4.1MiB allocated; 0ms collecting garbage
Calls
Call 1
Inputs
%1 = (PI )
2
%1
1
-2
1/2
(pow %1 2)
(+ %1 %1)
(* %1 1/2)
Outputs
#s(literal 2 binary32)
#s(literal 13176795/4194304 binary32)
#s(literal 1 binary32)
#s(literal -2 binary32)
#s(literal 1/2 binary32)
#s(literal 5174515/524288 binary32)
#s(literal 13176795/2097152 binary32)
#s(literal 13176795/8388608 binary32)
Samples
0.0ms0valid
Compiler

Compiled 16 to 9 computations (43.8% saved)

series411.0ms (4.8%)

Memory
47.1MiB live, 386.0MiB allocated; 171ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0319354912
Stop Event
iter-limit
Counts
79 → 608
Calls
Call 1
Inputs
%2 = (*.f32 uy #s(literal 2 binary32))
%3 = (PI.f32 )
%4 = (*.f32 %2 %3)
%5 = (cos.f32 %4)
%8 = (-.f32 #s(literal 1 binary32) ux)
%13 = (*.f32 uy %3)
%14 = (*.f32 #s(literal 2 binary32) %13)
%15 = (sin.f32 %14)
%16 = (*.f32 ux %8)
%18 = (- 1 ux)
%19 = (* %18 maxCos)
%20 = (approx %19 maxCos)
%24 = (PI )
%25 = (* (* uy 2) %24)
%27 = (* %19 ux)
%30 = (sqrt (- 1 (* %27 %27)))
%31 = (* (sin %25) %30)
%32 = (approx %31 %15)
%33 = (*.f32 ux zi)
%34 = (*.f32 maxCos %33)
%35 = (*.f32 maxCos zi)
%37 = (pow.f32 %3 #s(literal 2 binary32))
%38 = (*.f32 maxCos %8)
%39 = (+.f32 uy uy)
%40 = (+.f32 %3 %3)
%41 = (*.f32 #s(literal -2 binary32) uy)
%42 = (*.f32 %3 %39)
%43 = (sin.f32 %42)
%44 = (*.f32 %3 #s(literal 1/2 binary32))
%45 = (-.f32 ux #s(literal 1 binary32))
%46 = (*.f32 %45 maxCos)
%47 = (*.f32 %38 ux)
%48 = (*.f32 %47 ux)
%49 = (fma.f32 %46 %48 #s(literal 1 binary32))
%50 = (sqrt.f32 %49)
%51 = (*.f32 %20 ux)
%52 = (*.f32 %51 %51)
%53 = (-.f32 #s(literal 1 binary32) %52)
%54 = (sqrt.f32 %53)
%55 = (*.f32 %5 %54)
%56 = (*.f32 %55 xi)
%57 = (*.f32 %51 zi)
%58 = (*.f32 %32 yi)
%59 = (*.f32 xi %37)
%60 = (*.f32 yi %3)
%61 = (*.f32 #s(literal 2 binary32) %60)
%62 = (*.f32 uy %59)
%63 = (fma.f32 #s(literal -2 binary32) %62 %61)
%64 = (*.f32 uy %63)
%65 = (+.f32 xi %34)
%68 = (* maxCos (* ux (* zi %18)))
%75 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %18 2)))))
%76 = (* xi %75)
%78 = (approx (+ %68 %76) %65)
%79 = (fma.f32 maxCos %33 %64)
%80 = (+.f32 xi %79)
%94 = (approx (+ %68 (+ (* uy (+ (* -2 (* uy (* xi (* (pow %24 2) %75)))) (* 2 (* yi (* %24 %75))))) %76)) %80)
%95 = (fma.f32 %41 %3 %44)
%96 = (sin.f32 %95)
%98 = (approx (* maxCos %18) maxCos)
%99 = (*.f32 %98 ux)
%100 = (acos.f32 %99)
%101 = (-.f32 %42 %100)
%102 = (cos.f32 %101)
%103 = (fma.f32 %40 uy %100)
%104 = (cos.f32 %103)
%105 = (-.f32 %102 %104)
%106 = (/.f32 %105 #s(literal 2 binary32))
%107 = (*.f32 %96 xi)
%108 = (fma.f32 %43 yi %107)
%109 = (*.f32 %50 %108)
%111 = (*.f32 %106 yi)
%112 = (+.f32 %56 %111)
%120 = (+ (+ (* (* (cos %25) %30) xi) (* %31 yi)) (* %27 zi))
%123 = (+.f32 %56 %58)
uy
#s(literal 2 binary32)
%2
%3
%4
%5
#s(literal 1 binary32)
ux
%8
maxCos
xi
yi
zi
%13
%14
%15
%16
%20
#s(literal -2 binary32)
%32
%33
%34
%35
#s(literal 1/2 binary32)
%37
%38
%39
%40
%41
%42
%43
%44
%45
%46
%47
%48
%49
%50
%51
%52
%53
%54
%55
%56
%57
%58
%59
%60
%61
%62
%63
%64
%65
%78
%79
%80
%94
%95
%96
%98
%99
%100
%101
%102
%103
%104
%105
%106
%107
%108
%109
(fma.f32 %16 %35 %109)
%111
%112
(+.f32 %112 %57)
(approx %120 %78)
(approx %120 %94)
%123
(+.f32 %123 %57)
Outputs
%6 = (* uy 2)
%7 = (PI )
%8 = (* %6 %7)
%9 = (cos %8)
%12 = (- 1 ux)
%14 = (* %12 maxCos)
%15 = (* %14 ux)
%16 = (* %15 %15)
%17 = (- 1 %16)
%18 = (sqrt %17)
%19 = (* %9 %18)
%20 = (* %19 xi)
%22 = (PI.f32 )
%23 = (*.f32 uy %22)
%24 = (*.f32 #s(literal 2 binary32) %23)
%25 = (cos.f32 %24)
%27 = (pow.f32 maxCos #s(literal 2 binary32))
%28 = (pow.f32 ux #s(literal 2 binary32))
%29 = (-.f32 #s(literal 1 binary32) ux)
%30 = (pow.f32 %29 #s(literal 2 binary32))
%31 = (*.f32 %28 %30)
%32 = (*.f32 %27 %31)
%34 = (sqrt.f32 (-.f32 #s(literal 1 binary32) %32))
%35 = (*.f32 %25 %34)
%36 = (*.f32 xi %35)
%38 = (pow %7 2)
%39 = (* xi %38)
%40 = (pow.f32 %22 #s(literal 2 binary32))
%41 = (*.f32 xi %40)
%43 = (* uy %39)
%44 = (*.f32 uy %41)
%49 = (* yi %7)
%51 = (+ (* -2 %43) (* 2 %49))
%52 = (*.f32 yi %22)
%53 = (*.f32 #s(literal 2 binary32) %52)
%56 = (fma.f32 #s(literal -2 binary32) %44 %53)
%58 = (* uy %51)
%59 = (*.f32 uy %52)
%60 = (*.f32 #s(literal 2 binary32) %59)
%62 = (pow.f32 uy #s(literal 2 binary32))
%63 = (*.f32 %62 %41)
%67 = (* ux zi)
%68 = (* maxCos %67)
%69 = (+ xi %68)
%70 = (*.f32 ux zi)
%71 = (*.f32 maxCos %70)
%73 = (+.f32 xi %71)
%77 = (* maxCos (* ux (* zi %12)))
%84 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %12 2)))))
%85 = (* xi %84)
%86 = (+ %77 %85)
%87 = (*.f32 zi %29)
%88 = (*.f32 ux %87)
%89 = (*.f32 maxCos %88)
%91 = (*.f32 xi %34)
%92 = (fma.f32 maxCos %88 %91)
%94 = (+ %68 %58)
%95 = (fma.f32 #s(literal 2 binary32) %59 %71)
%97 = (fma.f32 #s(literal -2 binary32) %63 %95)
%99 = (+ xi %94)
%100 = (*.f32 %62 %40)
%102 = (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -2 binary32) %100))
%103 = (*.f32 xi %102)
%117 = (+ %77 (+ (* uy (+ (* -2 (* uy (* xi (* %38 %84)))) (* 2 (* yi (* %7 %84))))) %85))
%118 = (*.f32 %22 %34)
%119 = (*.f32 yi %118)
%120 = (*.f32 uy %119)
%121 = (fma.f32 #s(literal 2 binary32) %120 %89)
%123 = (*.f32 %40 %34)
%124 = (*.f32 %62 %123)
%126 = (+.f32 %34 (*.f32 #s(literal -2 binary32) %124))
%127 = (*.f32 xi %126)
%131 = (* -2 uy)
%135 = (+ (* %131 %7) (* %7 1/2))
%136 = (sin %135)
%137 = (* %136 xi)
%139 = (*.f32 #s(literal 1/2 binary32) %22)
%140 = (fma.f32 #s(literal -2 binary32) %23 %139)
%141 = (sin.f32 %140)
%142 = (*.f32 xi %141)
%145 = (* %7 (+ uy uy))
%148 = (+ (* (sin %145) yi) %137)
%149 = (sin.f32 %24)
%150 = (*.f32 yi %149)
%152 = (fma.f32 xi %141 %150)
%154 = (- ux 1)
%155 = (* %154 maxCos)
%157 = (* (* maxCos %12) ux)
%158 = (* %157 ux)
%160 = (+ (* %155 %158) 1)
%161 = (sqrt %160)
%162 = (* %161 %148)
%163 = (-.f32 ux #s(literal 1 binary32))
%164 = (*.f32 %29 %163)
%165 = (*.f32 %28 %164)
%166 = (*.f32 %27 %165)
%167 = (+.f32 #s(literal 1 binary32) %166)
%168 = (sqrt.f32 %167)
%169 = (*.f32 %149 %168)
%170 = (*.f32 yi %169)
%172 = (*.f32 %141 %168)
%173 = (fma.f32 xi %172 %170)
%175 = (* ux %12)
%176 = (* maxCos zi)
%178 = (+ (* %175 %176) %162)
%179 = (fma.f32 maxCos %88 %170)
%183 = (acos %157)
%184 = (- %145 %183)
%185 = (cos %184)
%188 = (+ (* (+ %7 %7) uy) %183)
%189 = (cos %188)
%190 = (- %185 %189)
%191 = (/ %190 2)
%192 = (* %191 yi)
%193 = (+ %20 %192)
%194 = (*.f32 ux %29)
%195 = (*.f32 maxCos %194)
%196 = (acos.f32 %195)
%197 = (-.f32 %24 %196)
%198 = (cos.f32 %197)
%199 = (+.f32 %196 %24)
%200 = (cos.f32 %199)
%201 = (-.f32 %198 %200)
%202 = (*.f32 yi %201)
%203 = (*.f32 #s(literal 1/2 binary32) %202)
%205 = (fma.f32 #s(literal 1/2 binary32) %202 %36)
%207 = (* %15 zi)
%208 = (+ %193 %207)
%209 = (fma.f32 #s(literal 1/2 binary32) %202 %89)
%211 = (fma.f32 maxCos %88 %36)
%215 = (* (sin %8) %18)
%216 = (* %215 yi)
%217 = (+ %20 %216)
%218 = (+ %217 %207)
%219 = (*.f32 %149 %34)
%220 = (*.f32 yi %219)
%221 = (fma.f32 maxCos %88 %220)
%223 = (fma.f32 xi %35 %220)
%230 = (*.f32 uy %40)
%231 = (/.f32 %52 xi)
%238 = (/.f32 %59 xi)
%243 = (/.f32 %71 xi)
%248 = (/.f32 %89 xi)
%253 = (fma.f32 #s(literal -2 binary32) %100 (fma.f32 #s(literal 2 binary32) %238 %243))
%267 = (/.f32 %150 xi)
%271 = (*.f32 xi %172)
%273 = (/.f32 %170 xi)
%281 = (/.f32 %202 xi)
%289 = (/.f32 %220 xi)
%303 = (*.f32 #s(literal 2 binary32) %100)
%319 = (fma.f32 #s(literal -1 binary32) (/.f32 %95 xi) %303)
%331 = (*.f32 #s(literal 2 binary32) %124)
%383 = (fma.f32 #s(literal -2 binary32) %63 %71)
%385 = (+.f32 xi %383)
%389 = (*.f32 xi %123)
%390 = (*.f32 %62 %389)
%391 = (fma.f32 #s(literal -2 binary32) %390 %92)
%393 = (fma.f32 #s(literal 2 binary32) %120 %92)
%396 = (fma.f32 maxCos %88 %271)
%399 = (/.f32 %44 yi)
%400 = (*.f32 #s(literal 2 binary32) %22)
%404 = (/.f32 %63 yi)
%408 = (/.f32 %71 yi)
%422 = (*.f32 uy %118)
%423 = (/.f32 %89 yi)
%430 = (/.f32 %142 yi)
%434 = (/.f32 %271 yi)
%442 = (/.f32 %36 yi)
%446 = (+.f32 %423 %442)
%500 = (*.f32 #s(literal -1/2 binary32) %201)
%505 = (/.f32 %211 yi)
%522 = (*.f32 maxCos zi)
%524 = (*.f32 uy %56)
%526 = (fma.f32 maxCos %70 %524)
%528 = (+.f32 xi %524)
%533 = (*.f32 #s(literal 2 binary32) %119)
%534 = (fma.f32 #s(literal -2 binary32) (*.f32 uy %389) %533)
%535 = (fma.f32 uy %534 %91)
%539 = (*.f32 %168 %152)
%543 = (/.f32 xi zi)
%547 = (/.f32 %91 zi)
%551 = (/.f32 %524 zi)
%565 = (/.f32 %539 zi)
%570 = (/.f32 %36 zi)
%580 = (*.f32 maxCos ux)
%627 = (*.f32 #s(literal -1 binary32) ux)
%628 = (+.f32 #s(literal 1 binary32) %627)
%630 = (*.f32 ux %628)
%633 = (*.f32 #s(literal -1 binary32) %580)
%634 = (+.f32 maxCos %633)
%642 = (*.f32 %27 %149)
%651 = (pow.f32 maxCos #s(literal 4 binary32))
%652 = (fma.f32 #s(literal 1/4 binary32) %651 %27)
%653 = (*.f32 %149 %652)
%670 = (*.f32 maxCos %28)
%674 = (*.f32 %27 %28)
%678 = (*.f32 %27 ux)
%679 = (*.f32 #s(literal 2 binary32) %678)
%684 = (*.f32 #s(literal 2 binary32) %27)
%698 = (*.f32 #s(literal -1 binary32) %27)
%700 = (-.f32 %698 (*.f32 #s(literal 1/4 binary32) %651))
%741 = (*.f32 %27 %25)
%748 = (*.f32 %25 %652)
%756 = (*.f32 xi %25)
%759 = (*.f32 %27 (*.f32 %28 %756))
%762 = (*.f32 %27 %756)
%765 = (fma.f32 #s(literal -1/2 binary32) %762 (*.f32 %27 (*.f32 ux %756)))
%767 = (fma.f32 xi %25 (*.f32 %28 %765))
%769 = (*.f32 xi %748)
%775 = (fma.f32 xi %25 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %762 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %769) %762)))))
%784 = (*.f32 %27 %150)
%791 = (*.f32 yi %653)
%799 = (*.f32 %27 xi)
%816 = (*.f32 %27 %52)
%817 = (*.f32 %27 %44)
%819 = (*.f32 uy (fma.f32 #s(literal -1 binary32) %816 %817))
%850 = (*.f32 %27 %152)
%853 = (fma.f32 #s(literal -1/2 binary32) %850 (*.f32 %27 (*.f32 ux %152)))
%880 = (fma.f32 #s(literal 1/2 binary32) %202 %756)
%904 = (fma.f32 xi %25 %150)
%909 = (fma.f32 #s(literal -1/2 binary32) %762 (*.f32 #s(literal -1/2 binary32) %784))
%915 = (fma.f32 %27 %756 %784)
%918 = (fma.f32 #s(literal -1/2 binary32) %762 (fma.f32 #s(literal -1/2 binary32) %784 (*.f32 ux %915)))
%943 = (/.f32 #s(literal 1 binary32) ux)
%944 = (-.f32 %943 #s(literal 1 binary32))
%945 = (*.f32 ux %944)
%952 = (/.f32 maxCos ux)
%953 = (fma.f32 #s(literal -1 binary32) maxCos %952)
%954 = (*.f32 ux %953)
%957 = (sqrt.f32 (neg.f32 %27))
%958 = (*.f32 %149 %957)
%961 = (*.f32 ux %957)
%963 = (fma.f32 %149 %957 (/.f32 %642 %961))
%968 = (+.f32 (/.f32 %651 (pow.f32 %957 #s(literal 2 binary32))) %27)
%969 = (*.f32 %149 %968)
%970 = (*.f32 %28 %957)
%971 = (/.f32 %969 %970)
%975 = (*.f32 %27 %969)
%977 = (pow.f32 ux #s(literal 3 binary32))
%978 = (pow.f32 %957 #s(literal 3 binary32))
%979 = (*.f32 %977 %978)
%986 = (*.f32 ux (-.f32 #s(literal 1 binary32) %943))
%989 = (+.f32 maxCos (*.f32 #s(literal -1 binary32) %952))
%990 = (*.f32 ux %989)
%1001 = (pow.f32 ux #s(literal 4 binary32))
%1002 = (*.f32 %27 %1001)
%1005 = (/.f32 %27 ux)
%1006 = (*.f32 #s(literal 2 binary32) %1005)
%1007 = (fma.f32 #s(literal -1 binary32) %27 %1006)
%1010 = (/.f32 %27 %28)
%1014 = (/.f32 #s(literal 1 binary32) %1001)
%1020 = (sqrt.f32 %698)
%1021 = (*.f32 %28 %1020)
%1023 = (*.f32 ux %1020)
%1024 = (/.f32 %27 %1023)
%1030 = (-.f32 %698 (/.f32 %651 (pow.f32 %1020 #s(literal 2 binary32))))
%1032 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1030 %1021) %1024)
%1036 = (*.f32 %27 %1030)
%1037 = (pow.f32 %1020 #s(literal 3 binary32))
%1038 = (*.f32 %977 %1037)
%1045 = (fma.f32 #s(literal -2 binary32) %1005 %27)
%1049 = (fma.f32 #s(literal -2 binary32) %1005 (+.f32 %1010 %27))
%1063 = (/.f32 %27 %961)
%1067 = (/.f32 %968 %970)
%1072 = (*.f32 %27 %968)
%1079 = (*.f32 %25 %957)
%1083 = (fma.f32 %25 %957 (/.f32 %741 %961))
%1086 = (*.f32 %25 %968)
%1087 = (/.f32 %1086 %970)
%1091 = (*.f32 %27 %1086)
%1097 = (*.f32 xi %1079)
%1100 = (/.f32 %762 %961)
%1101 = (fma.f32 xi %1079 %1100)
%1104 = (*.f32 xi %1086)
%1105 = (/.f32 %1104 %970)
%1109 = (*.f32 %27 %1104)
%1110 = (/.f32 %1109 %979)
%1111 = (fma.f32 #s(literal 1/2 binary32) %1110 %1101)
%1119 = (/.f32 %522 ux)
%1123 = (*.f32 yi %958)
%1126 = (/.f32 %784 %961)
%1127 = (fma.f32 yi %958 %1126)
%1130 = (*.f32 yi %969)
%1131 = (/.f32 %1130 %970)
%1135 = (*.f32 %27 %1130)
%1136 = (/.f32 %1135 %979)
%1141 = (/.f32 xi ux)
%1145 = (*.f32 xi %957)
%1149 = (/.f32 %799 %961)
%1151 = (fma.f32 xi %957 (+.f32 %1119 %1149))
%1155 = (*.f32 xi %968)
%1156 = (/.f32 %1155 %970)
%1161 = (*.f32 %27 %1155)
%1162 = (/.f32 %1161 %979)
%1168 = (/.f32 %524 ux)
%1182 = (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (*.f32 %40 %957))) (*.f32 #s(literal 2 binary32) (*.f32 yi (*.f32 %22 %957))))
%1183 = (fma.f32 uy %1182 %1145)
%1187 = (/.f32 %817 %957)
%1188 = (/.f32 %816 %957)
%1192 = (/.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) %1187 (*.f32 #s(literal 2 binary32) %1188))) ux)
%1201 = (*.f32 yi (*.f32 %22 %968))
%1205 = (*.f32 uy (*.f32 xi (*.f32 %40 %968)))
%1208 = (*.f32 uy (fma.f32 #s(literal -1 binary32) (/.f32 %1201 %957) (/.f32 %1205 %957)))
%1209 = (/.f32 %1208 %28)
%1220 = (/.f32 (*.f32 %27 %1205) %978)
%1222 = (/.f32 (*.f32 %27 %1201) %978)
%1237 = (*.f32 %1020 %152)
%1240 = (/.f32 %850 %1023)
%1241 = (fma.f32 %1020 %152 %1240)
%1244 = (*.f32 %152 %1030)
%1245 = (/.f32 %1244 %1021)
%1246 = (fma.f32 #s(literal 1/2 binary32) %1245 %1241)
%1249 = (*.f32 %27 %1244)
%1250 = (/.f32 %1249 %1038)
%1258 = (fma.f32 %1020 %152 (+.f32 %1119 %1240))
%1262 = (fma.f32 #s(literal 1/2 binary32) %1245 %1258)
%1270 = (/.f32 %202 %28)
%1283 = (fma.f32 xi %1079 (+.f32 %1119 %1100))
%1298 = (fma.f32 xi %1079 %1123)
%1302 = (+.f32 %1100 %1126)
%1305 = (fma.f32 xi %1079 (fma.f32 yi %958 (+.f32 %1119 %1302)))
%1324 = (fma.f32 xi %1079 (fma.f32 yi %958 %1302))
%1341 = (/.f32 %642 %957)
%1350 = (*.f32 ux %978)
%1373 = (/.f32 #s(literal 1 binary32) %28)
%1382 = (/.f32 %27 %1020)
%1391 = (*.f32 ux %1037)
%1424 = (/.f32 %27 %957)
%1445 = (/.f32 %741 %957)
%1464 = (/.f32 %762 %957)
%1472 = (/.f32 %1104 %957)
%1474 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1109 %1350))
%1483 = (/.f32 %784 %957)
%1491 = (/.f32 %1130 %957)
%1507 = (/.f32 %799 %957)
%1524 = (/.f32 %1155 %957)
%1550 = (*.f32 uy (fma.f32 #s(literal -2 binary32) %1188 (*.f32 #s(literal 2 binary32) %1187)))
%1558 = (fma.f32 #s(literal -1/2 binary32) %1524 %1208)
%1584 = (acos.f32 (*.f32 maxCos %630))
%1586 = (-.f32 %24 %1584)
%1588 = (cos.f32 %1586)
%1590 = (+.f32 %1584 %24)
%1592 = (cos.f32 %1590)
%1594 = (-.f32 %1588 %1592)
%1598 = (/.f32 %850 %1020)
%1601 = (fma.f32 #s(literal -1 binary32) %1598 (*.f32 #s(literal -1/2 binary32) (/.f32 %1244 %1023)))
%1612 = (fma.f32 #s(literal -1 binary32) %1598 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1249 %1391) (*.f32 #s(literal 1/2 binary32) (/.f32 %1244 %1020))) ux)))
%1636 = (*.f32 yi %1594)
%1637 = (*.f32 #s(literal 1/2 binary32) %1636)
%1642 = (fma.f32 #s(literal -1 binary32) %1464 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1472 %1637) ux)))
%1651 = (fma.f32 #s(literal -1 binary32) %1464 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1472 (fma.f32 #s(literal 1/2 binary32) %1636 %1474)) ux)))
%1676 = (fma.f32 #s(literal -1 binary32) %1464 (*.f32 #s(literal -1 binary32) %1483))
%1684 = (fma.f32 #s(literal -1/2 binary32) %1472 (*.f32 #s(literal -1/2 binary32) %1491))
%1688 = (fma.f32 #s(literal -1 binary32) %1464 (fma.f32 #s(literal -1 binary32) %1483 (*.f32 #s(literal -1 binary32) (/.f32 %1684 ux))))
%1704 = (fma.f32 #s(literal -1 binary32) %1464 (fma.f32 #s(literal -1 binary32) %1483 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1109 %978) (*.f32 #s(literal -1/2 binary32) (/.f32 %1135 %978))) ux) %1684) ux))))
%1729 = (pow.f32 %22 #s(literal 4 binary32))
%1738 = (pow.f32 %22 #s(literal 6 binary32))
%1747 = (* uy %7)
%1750 = (sin (* 2 %1747))
%1752 = (pow.f32 %22 #s(literal 3 binary32))
%1759 = (pow.f32 %22 #s(literal 5 binary32))
%1769 = (pow.f32 %22 #s(literal 7 binary32))
%1781 = (*.f32 %1752 %34)
%1787 = (*.f32 %1759 %34)
%1795 = (*.f32 %1769 %34)
%1809 = (*.f32 %1729 %34)
%1816 = (*.f32 %1738 %34)
%1827 = (*.f32 xi %1809)
%1843 = (*.f32 yi %1781)
%1848 = (*.f32 yi %1787)
%1871 = (sin.f32 %139)
%1873 = (cos.f32 %139)
%1874 = (*.f32 %22 %1873)
%1879 = (*.f32 %40 %1871)
%1887 = (*.f32 %1752 %1873)
%1898 = (neg.f32 %196)
%1899 = (cos.f32 %1898)
%1901 = (sin.f32 %1898)
%1902 = (*.f32 %22 %1901)
%1907 = (*.f32 %40 %1899)
%1910 = (*.f32 #s(literal 2 binary32) %1902)
%1915 = (*.f32 %1752 %1901)
%1925 = (sin.f32 %196)
%1926 = (*.f32 %22 %1925)
%1930 = (*.f32 %40 %29)
%1935 = (*.f32 #s(literal 2 binary32) %1926)
%1941 = (*.f32 maxCos (*.f32 ux %1930))
%1942 = (*.f32 %1752 %1925)
%1951 = (-.f32 %1899 %195)
%1953 = (-.f32 %1935 %1910)
%1954 = (*.f32 uy %1953)
%1959 = (*.f32 #s(literal -2 binary32) %1941)
%1960 = (-.f32 (*.f32 #s(literal -2 binary32) %1907) %1959)
%1961 = (*.f32 uy %1960)
%1970 = (-.f32 (*.f32 #s(literal -4/3 binary32) %1942) (*.f32 #s(literal -4/3 binary32) %1915))
%1971 = (*.f32 uy %1970)
%1981 = (*.f32 #s(literal 1/2 binary32) %1951)
%1997 = (*.f32 xi %1871)
%1999 = (*.f32 xi %1874)
%2003 = (*.f32 xi %1879)
%2004 = (*.f32 uy %2003)
%2009 = (*.f32 xi %1887)
%2017 = (fma.f32 #s(literal -2 binary32) %1999 %53)
%2025 = (fma.f32 #s(literal -4/3 binary32) (*.f32 yi %1752) (*.f32 #s(literal 4/3 binary32) %2009))
%2033 = (*.f32 %1871 %168)
%2034 = (*.f32 xi %2033)
%2036 = (*.f32 %168 %2017)
%2037 = (fma.f32 uy %2036 %2034)
%2040 = (*.f32 xi (*.f32 %40 %2033))
%2043 = (fma.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy %2040) %2036) %2034)
%2049 = (fma.f32 uy (fma.f32 uy (fma.f32 #s(literal -2 binary32) %2040 (*.f32 uy (*.f32 %168 %2025))) %2036) %2034)
%2059 = (*.f32 yi %1951)
%2060 = (*.f32 #s(literal 1/2 binary32) %2059)
%2062 = (*.f32 yi %1953)
%2063 = (*.f32 uy %2062)
%2066 = (*.f32 yi %1960)
%2075 = (*.f32 #s(literal 1/2 binary32) %2066)
%2076 = (fma.f32 #s(literal 1/2 binary32) (*.f32 uy (*.f32 yi %1970)) %2075)
%2082 = (fma.f32 #s(literal 1/2 binary32) %2059 %91)
%2089 = (fma.f32 uy (fma.f32 #s(literal 1/2 binary32) %2062 (*.f32 uy (fma.f32 #s(literal -2 binary32) %389 %2075))) %91)
%2095 = (fma.f32 uy (fma.f32 #s(literal 1/2 binary32) %2062 (*.f32 uy (fma.f32 #s(literal -2 binary32) %389 %2076))) %91)
%2098 = (fma.f32 #s(literal 1/2 binary32) %2059 %92)
%2113 = (fma.f32 uy (fma.f32 #s(literal 2 binary32) %119 (*.f32 uy (fma.f32 #s(literal -2 binary32) %389 (*.f32 #s(literal -4/3 binary32) (*.f32 uy %1843))))) %91)
%2121 = (/.f32 %52 uy)
%2123 = (fma.f32 #s(literal -2 binary32) %41 (*.f32 #s(literal 2 binary32) %2121))
%2128 = (/.f32 %71 %62)
%2141 = (/.f32 %119 uy)
%2155 = (/.f32 %22 uy)
%2161 = (/.f32 %196 uy)
%2212 = (*.f32 %149 %30)
%2213 = (*.f32 %28 %2212)
%2219 = (pow.f32 %29 #s(literal 4 binary32))
%2220 = (*.f32 %149 %2219)
%2221 = (*.f32 %1001 %2220)
%2229 = (pow.f32 ux #s(literal 6 binary32))
%2230 = (pow.f32 %29 #s(literal 6 binary32))
%2231 = (*.f32 %149 %2230)
%2251 = (*.f32 %30 (pow.f32 %163 #s(literal 2 binary32)))
%2252 = (*.f32 %1001 %2251)
%2262 = (*.f32 (pow.f32 %29 #s(literal 3 binary32)) (pow.f32 %163 #s(literal 3 binary32)))
%2273 = (*.f32 #s(literal -1 binary32) %32)
%2279 = (*.f32 %1001 %2219)
%2295 = (*.f32 %25 %30)
%2296 = (*.f32 %28 %2295)
%2301 = (*.f32 %25 %2219)
%2302 = (*.f32 %1001 %2301)
%2309 = (*.f32 %25 %2230)
%2320 = (*.f32 %28 (*.f32 xi %2295))
%2321 = (*.f32 %27 %2320)
%2325 = (*.f32 %1001 (*.f32 xi %2301))
%2328 = (fma.f32 #s(literal -1/2 binary32) %2320 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2325)))
%2330 = (fma.f32 xi %25 (*.f32 %27 %2328))
%2333 = (*.f32 %2229 (*.f32 xi %2309))
%2340 = (fma.f32 xi %25 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2320 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2325 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 %2333)))))))
%2343 = (*.f32 %28 (*.f32 yi %2212))
%2348 = (*.f32 %1001 (*.f32 yi %2220))
%2356 = (*.f32 %2229 (*.f32 yi %2231))
%2368 = (*.f32 %28 (*.f32 xi %30))
%2375 = (*.f32 %1001 (*.f32 xi %2219))
%2393 = (fma.f32 #s(literal -1 binary32) (*.f32 %28 (*.f32 yi (*.f32 %22 %30))) (*.f32 %28 (*.f32 uy (*.f32 xi (*.f32 %40 %30)))))
%2420 = (*.f32 %28 (*.f32 %152 %164))
%2425 = (*.f32 %1001 (*.f32 %152 %2251))
%2428 = (fma.f32 #s(literal -1/8 binary32) (*.f32 %27 %2425) (*.f32 #s(literal 1/2 binary32) %2420))
%2474 = (fma.f32 #s(literal -1/2 binary32) %2320 (*.f32 #s(literal -1/2 binary32) %2343))
%2482 = (fma.f32 #s(literal -1/2 binary32) %2320 (fma.f32 #s(literal -1/2 binary32) %2343 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2325 (*.f32 #s(literal -1/8 binary32) %2348)))))
%2507 = (sqrt.f32 (neg.f32 %31))
%2508 = (*.f32 %149 %2507)
%2509 = (*.f32 maxCos %2508)
%2511 = (*.f32 %27 %2507)
%2513 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %149 %2511) %2508)
%2514 = (*.f32 maxCos %2513)
%2516 = (pow.f32 %2507 #s(literal 3 binary32))
%2517 = (*.f32 %651 %2516)
%2518 = (/.f32 %149 %2517)
%2520 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2518 %2513))
%2522 = (pow.f32 maxCos #s(literal 6 binary32))
%2523 = (pow.f32 %2507 #s(literal 5 binary32))
%2524 = (*.f32 %2522 %2523)
%2528 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2518 (fma.f32 #s(literal 1/16 binary32) (/.f32 %149 %2524) %2513)))
%2531 = (/.f32 #s(literal 1 binary32) %27)
%2535 = (sqrt.f32 %165)
%2536 = (*.f32 maxCos %2535)
%2538 = (*.f32 %27 %2535)
%2542 = (*.f32 maxCos (+.f32 %2535 (*.f32 #s(literal 1/2 binary32) (/.f32 #s(literal 1 binary32) %2538))))
%2544 = (/.f32 #s(literal 1/2 binary32) %2538)
%2548 = (*.f32 %651 (pow.f32 %2535 #s(literal 3 binary32)))
%2551 = (*.f32 maxCos (-.f32 (+.f32 %2535 %2544) (/.f32 #s(literal 1/8 binary32) %2548)))
%2554 = (*.f32 %2522 (pow.f32 %2535 #s(literal 5 binary32)))
%2562 = (*.f32 maxCos (-.f32 (+.f32 %2535 (+.f32 %2544 (*.f32 #s(literal 1/16 binary32) (/.f32 #s(literal 1 binary32) %2554)))) (*.f32 #s(literal 1/8 binary32) (/.f32 #s(literal 1 binary32) %2548))))
%2568 = (*.f32 maxCos %2507)
%2573 = (*.f32 maxCos (+.f32 %2507 (*.f32 #s(literal 1/2 binary32) (/.f32 #s(literal 1 binary32) %2511))))
%2575 = (/.f32 #s(literal 1/2 binary32) %2511)
%2579 = (*.f32 maxCos (-.f32 (+.f32 %2507 %2575) (/.f32 #s(literal 1/8 binary32) %2517)))
%2588 = (*.f32 maxCos (-.f32 (+.f32 %2507 (+.f32 %2575 (*.f32 #s(literal 1/16 binary32) (/.f32 #s(literal 1 binary32) %2524)))) (*.f32 #s(literal 1/8 binary32) (/.f32 #s(literal 1 binary32) %2517))))
%2590 = (*.f32 %25 %2507)
%2591 = (*.f32 maxCos %2590)
%2594 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %25 %2511) %2590)
%2595 = (*.f32 maxCos %2594)
%2597 = (/.f32 %25 %2517)
%2599 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2597 %2594))
%2604 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2597 (fma.f32 #s(literal 1/16 binary32) (/.f32 %25 %2524) %2594)))
%2606 = (*.f32 xi %2590)
%2607 = (*.f32 maxCos %2606)
%2609 = (/.f32 %756 %2511)
%2610 = (fma.f32 #s(literal 1/2 binary32) %2609 %2606)
%2611 = (*.f32 maxCos %2610)
%2613 = (/.f32 %756 %2517)
%2615 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2613 %2610))
%2617 = (/.f32 %756 %2524)
%2620 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2613 (fma.f32 #s(literal 1/16 binary32) %2617 %2610)))
%2622 = (*.f32 yi %2508)
%2623 = (*.f32 maxCos %2622)
%2625 = (/.f32 %150 %2511)
%2626 = (fma.f32 #s(literal 1/2 binary32) %2625 %2622)
%2627 = (*.f32 maxCos %2626)
%2629 = (/.f32 %150 %2517)
%2631 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2629 %2626))
%2633 = (/.f32 %150 %2524)
%2636 = (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2629 (fma.f32 #s(literal 1/16 binary32) %2633 %2626)))
%2638 = (/.f32 xi maxCos)
%2642 = (*.f32 xi %2507)
%2643 = (fma.f32 ux %87 %2642)
%2646 = (/.f32 xi %2511)
%2647 = (fma.f32 #s(literal 1/2 binary32) %2646 %2643)
%2650 = (/.f32 xi %2517)
%2654 = (/.f32 xi %2524)
%2659 = (/.f32 %524 maxCos)
%2673 = (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (*.f32 %40 %2507))) (*.f32 #s(literal 2 binary32) (*.f32 yi (*.f32 %22 %2507))))
%2674 = (fma.f32 uy %2673 %2642)
%2682 = (/.f32 (*.f32 uy (fma.f32 #s(literal -1 binary32) (/.f32 %44 %2507) (/.f32 %52 %2507))) %27)
%2684 = (fma.f32 uy %2673 (fma.f32 xi %2507 %2682))
%2694 = (/.f32 (*.f32 uy (fma.f32 #s(literal -1/4 binary32) (/.f32 %52 %2516) (*.f32 #s(literal 1/4 binary32) (/.f32 %44 %2516)))) %651)
%2697 = (fma.f32 uy %2673 (fma.f32 xi %2507 (+.f32 %2682 %2694)))
%2712 = (fma.f32 uy %2673 (fma.f32 xi %2507 (+.f32 %2682 (+.f32 %2694 (/.f32 (*.f32 uy (fma.f32 #s(literal -1/8 binary32) (/.f32 %44 %2523) (*.f32 #s(literal 1/8 binary32) (/.f32 %52 %2523)))) %2522)))))
%2719 = (*.f32 %2535 %152)
%2720 = (*.f32 maxCos %2719)
%2722 = (/.f32 %152 %2538)
%2723 = (fma.f32 #s(literal 1/2 binary32) %2722 %2719)
%2724 = (*.f32 maxCos %2723)
%2726 = (/.f32 %152 %2548)
%2727 = (fma.f32 #s(literal -1/8 binary32) %2726 %2723)
%2728 = (*.f32 maxCos %2727)
%2730 = (/.f32 %152 %2554)
%2732 = (fma.f32 #s(literal -1/8 binary32) %2726 (fma.f32 #s(literal 1/16 binary32) %2730 %2723))
%2733 = (*.f32 maxCos %2732)
%2735 = (fma.f32 ux %87 %2719)
%2738 = (fma.f32 #s(literal 1/2 binary32) %2722 %2735)
%2748 = (/.f32 %202 maxCos)
%2749 = (fma.f32 #s(literal 1/2 binary32) %2748 %2606)
%2752 = (fma.f32 #s(literal 1/2 binary32) %2609 %2749)
%2758 = (fma.f32 ux %87 %2606)
%2761 = (fma.f32 #s(literal 1/2 binary32) %2748 %2758)
%2764 = (fma.f32 #s(literal 1/2 binary32) %2609 %2761)
%2770 = (fma.f32 xi %2590 %2622)
%2771 = (fma.f32 ux %87 %2770)
%2775 = (fma.f32 #s(literal 1/2 binary32) %2609 (fma.f32 #s(literal 1/2 binary32) %2625 %2771))
%2788 = (*.f32 maxCos %2770)
%2791 = (fma.f32 #s(literal 1/2 binary32) %2609 (fma.f32 #s(literal 1/2 binary32) %2625 %2770))
%2792 = (*.f32 maxCos %2791)
%2795 = (fma.f32 #s(literal -1/8 binary32) %2613 (fma.f32 #s(literal -1/8 binary32) %2629 %2791))
%2796 = (*.f32 maxCos %2795)
%2801 = (fma.f32 #s(literal -1/8 binary32) %2613 (fma.f32 #s(literal -1/8 binary32) %2629 (fma.f32 #s(literal 1/16 binary32) %2617 (fma.f32 #s(literal 1/16 binary32) %2633 %2791))))
%2802 = (*.f32 maxCos %2801)
%2861 = (fma.f32 #s(literal 1/2 binary32) %2646 %2642)
%2934 = (fma.f32 #s(literal -1/2 binary32) %2748 %2606)
%2941 = (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %756 %2568) %203) maxCos) %2606)
%2953 = (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/8 binary32) (/.f32 %756 (*.f32 %27 %2516)) (*.f32 #s(literal 1/2 binary32) (/.f32 %756 %2507))) maxCos) %203) maxCos) %2606)
(approx uy #s(literal 0 binary32))
(approx xi xi)
(approx %20 %36)
(approx %39 %41)
(approx %43 %44)
(approx %51 %53)
(approx %51 %56)
(approx %58 %60)
(approx %58 (fma.f32 #s(literal -2 binary32) %63 %60))
(approx %69 %71)
(approx %69 %73)
(approx %86 %89)
(approx %86 %92)
(approx %94 %95)
(approx %94 %97)
(approx %99 (fma.f32 #s(literal 2 binary32) %59 (fma.f32 maxCos %70 %103)))
(approx %117 %121)
(approx %117 (fma.f32 #s(literal 2 binary32) %120 (fma.f32 maxCos %88 %127)))
(approx %137 %142)
(approx %148 %150)
(approx %148 %152)
(approx %162 %170)
(approx %162 %173)
(approx %178 %179)
(approx %178 (fma.f32 maxCos %88 %173))
(approx %193 %203)
(approx %193 %205)
(approx %208 %209)
(approx %208 (fma.f32 #s(literal 1/2 binary32) %202 %211))
(approx %218 %221)
(approx %218 (fma.f32 maxCos %88 %223))
(approx %217 %220)
(approx %217 %223)
(approx %51 (*.f32 #s(literal -2 binary32) %44))
(approx %51 (*.f32 xi (fma.f32 #s(literal -2 binary32) %230 (*.f32 #s(literal 2 binary32) %231))))
(approx %58 (*.f32 #s(literal -2 binary32) %63))
(approx %58 (*.f32 xi (fma.f32 #s(literal -2 binary32) %100 (*.f32 #s(literal 2 binary32) %238))))
(approx %69 (*.f32 xi (+.f32 #s(literal 1 binary32) %243)))
(approx %86 %91)
(approx %86 (*.f32 xi (+.f32 %34 %248)))
(approx %94 (*.f32 xi %253))
(approx %99 %103)
(approx %99 (*.f32 xi (+.f32 #s(literal 1 binary32) %253)))
(approx %117 %127)
(approx %117 (*.f32 xi (+.f32 %34 (fma.f32 #s(literal -2 binary32) %124 (fma.f32 #s(literal 2 binary32) (/.f32 %120 xi) %248)))))
(approx %148 (*.f32 xi (+.f32 %141 %267)))
(approx %162 %271)
(approx %162 (*.f32 xi (fma.f32 %141 %168 %273)))
(approx %178 (*.f32 xi (fma.f32 %141 %168 (+.f32 %248 %273))))
(approx %193 (*.f32 xi (fma.f32 #s(literal 1/2 binary32) %281 %35)))
(approx %208 (*.f32 xi (fma.f32 #s(literal 1/2 binary32) %281 (fma.f32 %25 %34 %248))))
(approx %218 (*.f32 xi (fma.f32 %25 %34 (+.f32 %248 %289))))
(approx %217 (*.f32 xi (fma.f32 %25 %34 %289)))
(approx %51 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -2 binary32) %231 (*.f32 #s(literal 2 binary32) %230)))))
(approx %58 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -2 binary32) %238 %303))))
(approx %69 (*.f32 #s(literal -1 binary32) (*.f32 xi (-.f32 (*.f32 #s(literal -1 binary32) %243) #s(literal 1 binary32)))))
(approx %86 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %34 (*.f32 #s(literal -1 binary32) %248)))))
(approx %94 (*.f32 #s(literal -1 binary32) (*.f32 xi %319)))
(approx %99 (*.f32 #s(literal -1 binary32) (*.f32 xi (-.f32 %303 #s(literal 1 binary32)))))
(approx %99 (*.f32 #s(literal -1 binary32) (*.f32 xi (-.f32 %319 #s(literal 1 binary32)))))
(approx %117 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %34 %331))))
(approx %117 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %34 (fma.f32 #s(literal -1 binary32) (/.f32 %121 xi) %331)))))
(approx %148 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %141 (*.f32 #s(literal -1 binary32) %267)))))
(approx %162 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %172 (*.f32 #s(literal -1 binary32) %273)))))
(approx %178 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %172 (*.f32 #s(literal -1 binary32) (/.f32 %179 xi))))))
(approx %193 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %35 (*.f32 #s(literal -1/2 binary32) %281)))))
(approx %208 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %35 (*.f32 #s(literal -1 binary32) (/.f32 %209 xi))))))
(approx %218 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %35 (*.f32 #s(literal -1 binary32) (/.f32 %221 xi))))))
(approx %217 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %35 (*.f32 #s(literal -1 binary32) %289)))))
(approx yi yi)
(approx %49 %52)
(approx %94 %383)
(approx %99 %385)
(approx %99 (+.f32 xi %97))
(approx %117 %391)
(approx %117 (fma.f32 #s(literal -2 binary32) %390 %393))
(approx %178 %396)
(approx %208 %211)
(approx %51 (*.f32 yi (fma.f32 #s(literal -2 binary32) %399 %400)))
(approx %58 (*.f32 yi (fma.f32 #s(literal -2 binary32) %404 %24)))
(approx %94 (*.f32 yi (fma.f32 #s(literal -2 binary32) %404 (fma.f32 #s(literal 2 binary32) %23 %408))))
(approx %99 (*.f32 yi (fma.f32 #s(literal -2 binary32) %404 (fma.f32 #s(literal 2 binary32) %23 (+.f32 (/.f32 xi yi) %408)))))
(approx %117 (*.f32 #s(literal 2 binary32) %120))
(approx %117 (*.f32 yi (fma.f32 #s(literal -2 binary32) (/.f32 %390 yi) (fma.f32 #s(literal 2 binary32) %422 (+.f32 %423 (/.f32 %91 yi))))))
(approx %148 (*.f32 yi (+.f32 %149 %430)))
(approx %162 (*.f32 yi (fma.f32 %149 %168 %434)))
(approx %178 (*.f32 yi (fma.f32 %149 %168 (+.f32 %423 %434))))
(approx %193 (*.f32 yi (fma.f32 #s(literal 1/2 binary32) %201 %442)))
(approx %208 (*.f32 yi (fma.f32 #s(literal 1/2 binary32) %201 %446)))
(approx %218 (*.f32 yi (fma.f32 %149 %34 %446)))
(approx %217 (*.f32 yi (fma.f32 %149 %34 %442)))
(approx %51 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %22 (*.f32 #s(literal 2 binary32) %399)))))
(approx %58 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %23 (*.f32 #s(literal 2 binary32) %404)))))
(approx %94 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %23 (*.f32 #s(literal -1 binary32) (/.f32 %383 yi))))))
(approx %99 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %23 (*.f32 #s(literal -1 binary32) (/.f32 %385 yi))))))
(approx %117 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %422 (*.f32 #s(literal -1 binary32) (/.f32 %391 yi))))))
(approx %148 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %149 (*.f32 #s(literal -1 binary32) %430)))))
(approx %162 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %169 (*.f32 #s(literal -1 binary32) %434)))))
(approx %178 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %169 (*.f32 #s(literal -1 binary32) (/.f32 %396 yi))))))
(approx %193 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %442 %500))))
(approx %208 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %505 %500))))
(approx %218 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %219 (*.f32 #s(literal -1 binary32) %505)))))
(approx %217 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %219 (*.f32 #s(literal -1 binary32) %442)))))
(approx zi zi)
(approx %67 %70)
(approx %176 %522)
(approx %94 %524)
(approx %94 %526)
(approx %99 %528)
(approx %99 (+.f32 xi %526))
(approx %117 %535)
(approx %117 (fma.f32 maxCos %88 %535))
(approx %178 %539)
(approx %178 (fma.f32 maxCos %88 %539))
(approx %69 (*.f32 zi (fma.f32 maxCos ux %543)))
(approx %86 (*.f32 zi (fma.f32 maxCos %194 %547)))
(approx %94 (*.f32 zi (fma.f32 maxCos ux %551)))
(approx %99 (*.f32 zi (fma.f32 maxCos ux (+.f32 %543 %551))))
(approx %117 (*.f32 zi (fma.f32 maxCos %194 (+.f32 (/.f32 (*.f32 uy %534) zi) %547))))
(approx %178 (*.f32 zi (fma.f32 maxCos %194 %565)))
(approx %208 (*.f32 zi (fma.f32 #s(literal 1/2 binary32) (/.f32 %202 zi) (fma.f32 maxCos %194 %570))))
(approx %218 (*.f32 zi (fma.f32 maxCos %194 (+.f32 %570 (/.f32 %220 zi)))))
(approx %69 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %580 (*.f32 #s(literal -1 binary32) %543)))))
(approx %86 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %195 (*.f32 #s(literal -1 binary32) %547)))))
(approx %94 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %580 (*.f32 #s(literal -1 binary32) %551)))))
(approx %99 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %580 (*.f32 #s(literal -1 binary32) (/.f32 %528 zi))))))
(approx %117 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %195 (*.f32 #s(literal -1 binary32) (/.f32 %535 zi))))))
(approx %178 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %195 (*.f32 #s(literal -1 binary32) %565)))))
(approx %208 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %195 (*.f32 #s(literal -1 binary32) (/.f32 %205 zi))))))
(approx %218 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %195 (*.f32 #s(literal -1 binary32) (/.f32 %223 zi))))))
(approx ux ux)
(approx %12 #s(literal 1 binary32))
(approx %12 %628)
(approx %175 %630)
(approx %14 maxCos)
(approx %14 %634)
(approx %215 %149)
(approx %215 (+.f32 %149 (*.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %149)))))
(approx %215 (+.f32 %149 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %642 (*.f32 %27 (*.f32 ux %149))))))
(approx %215 (+.f32 %149 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %642 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %653) %642))))))
(approx %154 #s(literal -1 binary32))
(approx %154 %163)
(approx %155 (*.f32 #s(literal -1 binary32) maxCos))
(approx %155 (fma.f32 #s(literal -1 binary32) maxCos %580))
(approx %157 %580)
(approx %157 (*.f32 ux %634))
(approx %158 %670)
(approx %158 (*.f32 %28 %634))
(approx %160 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) %674)))
(approx %160 (+.f32 #s(literal 1 binary32) (*.f32 %28 (fma.f32 #s(literal -1 binary32) %27 %679))))
(approx %160 (+.f32 #s(literal 1 binary32) (*.f32 %28 (fma.f32 #s(literal -1 binary32) %27 (*.f32 ux (fma.f32 #s(literal -1 binary32) %678 %684))))))
(approx %161 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1/2 binary32) %674)))
(approx %161 (+.f32 #s(literal 1 binary32) (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %27 %678))))
(approx %161 (+.f32 #s(literal 1 binary32) (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %27 (*.f32 ux (fma.f32 #s(literal 1/2 binary32) (*.f32 ux %700) %27))))))
(approx %16 %674)
(approx %16 (*.f32 %28 (fma.f32 #s(literal -2 binary32) %678 %27)))
(approx %16 (*.f32 %28 (fma.f32 ux (fma.f32 #s(literal -2 binary32) %27 %678) %27)))
(approx %17 (+.f32 #s(literal 1 binary32) (*.f32 %28 (-.f32 %679 %27))))
(approx %17 (+.f32 #s(literal 1 binary32) (*.f32 %28 (-.f32 (*.f32 ux (-.f32 (*.f32 #s(literal -1 binary32) %678) (*.f32 #s(literal -2 binary32) %27))) %27))))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %27 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %652) %27))))))
(approx %19 %25)
(approx %19 (+.f32 %25 (*.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %25)))))
(approx %19 (+.f32 %25 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %741 (*.f32 %27 (*.f32 ux %25))))))
(approx %19 (+.f32 %25 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %741 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %748) %741))))))
(approx %20 %756)
(approx %20 (fma.f32 #s(literal -1/2 binary32) %759 %756))
(approx %20 %767)
(approx %20 %775)
(approx %207 (*.f32 ux (fma.f32 #s(literal -1 binary32) %71 %522)))
(approx %216 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %150)) %150))
(approx %216 (fma.f32 yi %149 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %784 (*.f32 %27 (*.f32 ux %150))))))
(approx %216 (fma.f32 yi %149 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %784 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) (*.f32 ux %791) %784))))))
(approx %86 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %522 (*.f32 #s(literal -1/2 binary32) %799)))))))
(approx %86 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1/2 binary32) %799 (*.f32 %27 (*.f32 ux xi)))))))))
(approx %117 (+.f32 xi (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1/2 binary32) %799 %819)))) %524)))
(approx %117 (+.f32 xi (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1/2 binary32) %799 (fma.f32 ux (fma.f32 uy (fma.f32 #s(literal -2 binary32) %817 (*.f32 #s(literal 2 binary32) %816)) %799) %819))))) %524)))
(approx %183 %196)
(approx %184 %197)
(approx %185 %198)
(approx %188 %199)
(approx %189 %200)
(approx %190 %201)
(approx %191 (*.f32 #s(literal 1/2 binary32) %201))
(approx %162 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 (*.f32 %28 %152)) %152))
(approx %162 (fma.f32 xi %141 (fma.f32 yi %149 (*.f32 %28 %853))))
(approx %162 (fma.f32 xi %141 (fma.f32 yi %149 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %850 (*.f32 ux (fma.f32 #s(literal 1/2 binary32) (*.f32 ux (*.f32 %152 %700)) %850)))))))
(approx %178 (fma.f32 maxCos %70 %152))
(approx %178 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %522 (*.f32 #s(literal -1/2 binary32) %850)))) %152))
(approx %178 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %522 %853))) %152))
(approx %193 %880)
(approx %193 (fma.f32 #s(literal -1/2 binary32) %759 %880))
(approx %193 (fma.f32 #s(literal 1/2 binary32) %202 %767))
(approx %193 (fma.f32 #s(literal 1/2 binary32) %202 %775))
(approx %208 (fma.f32 #s(literal 1/2 binary32) %202 (fma.f32 maxCos %70 %756)))
(approx %208 (fma.f32 #s(literal 1/2 binary32) %202 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %522 (*.f32 #s(literal -1/2 binary32) %762)))) %756)))
(approx %208 (fma.f32 #s(literal 1/2 binary32) %202 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %522 %765))) %756)))
(approx %218 %904)
(approx %218 (fma.f32 maxCos %70 %904))
(approx %218 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %522 %909))) %904))
(approx %218 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %522 %918))) %904))
(approx %217 (fma.f32 xi %25 (fma.f32 yi %149 (*.f32 %28 %909))))
(approx %217 (fma.f32 xi %25 (fma.f32 yi %149 (*.f32 %28 %918))))
(approx %217 (fma.f32 xi %25 (fma.f32 yi %149 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %762 (fma.f32 #s(literal -1/2 binary32) %784 (*.f32 ux (fma.f32 ux (fma.f32 #s(literal -1/2 binary32) %769 (*.f32 #s(literal -1/2 binary32) %791)) %915))))))))
(approx %12 %627)
(approx %12 %945)
(approx %175 (*.f32 #s(literal -1 binary32) %28))
(approx %175 (*.f32 %28 %944))
(approx %14 %633)
(approx %14 %954)
(approx %215 (*.f32 %28 %958))
(approx %215 (*.f32 %28 %963))
(approx %215 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %971 %963)))
(approx %215 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %971 (fma.f32 #s(literal 1/2 binary32) (/.f32 %975 %979) %963))))
(approx %154 %986)
(approx %155 %990)
(approx %157 (*.f32 #s(literal -1 binary32) %670))
(approx %157 (*.f32 %28 %953))
(approx %158 (*.f32 #s(literal -1 binary32) (*.f32 maxCos %977)))
(approx %158 (*.f32 %977 %953))
(approx %160 (*.f32 #s(literal -1 binary32) %1002))
(approx %160 (*.f32 %1001 %1007))
(approx %160 (*.f32 %1001 (fma.f32 #s(literal -1 binary32) %1010 %1007)))
(approx %160 (*.f32 %1001 (fma.f32 #s(literal -1 binary32) %1010 (fma.f32 #s(literal -1 binary32) %27 (fma.f32 #s(literal 2 binary32) %1005 %1014)))))
(approx %161 %1021)
(approx %161 (*.f32 %28 (+.f32 %1020 %1024)))
(approx %161 (*.f32 %28 (+.f32 %1020 %1032)))
(approx %161 (*.f32 %28 (+.f32 %1020 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1036 %1038) %1032))))
(approx %16 %1002)
(approx %16 (*.f32 %1001 %1045))
(approx %16 (*.f32 %1001 %1049))
(approx %17 (*.f32 %1001 (-.f32 %1006 %27)))
(approx %17 (*.f32 %1001 (-.f32 (*.f32 #s(literal -1 binary32) %1010) %1045)))
(approx %17 (*.f32 %1001 (-.f32 %1014 %1049)))
(approx %18 %970)
(approx %18 (*.f32 %28 (+.f32 %957 %1063)))
(approx %18 (*.f32 %28 (+.f32 %957 (fma.f32 #s(literal -1/2 binary32) %1067 %1063))))
(approx %18 (*.f32 %28 (+.f32 %957 (fma.f32 #s(literal -1/2 binary32) %1067 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1072 %979) %1063)))))
(approx %19 (*.f32 %28 %1079))
(approx %19 (*.f32 %28 %1083))
(approx %19 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1087 %1083)))
(approx %19 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1087 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1091 %979) %1083))))
(approx %20 (*.f32 %28 %1097))
(approx %20 (*.f32 %28 %1101))
(approx %20 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1105 %1101)))
(approx %20 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1105 %1111)))
(approx %207 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (*.f32 %28 zi))))
(approx %207 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 %1119)))
(approx %216 (*.f32 %28 %1123))
(approx %216 (*.f32 %28 %1127))
(approx %216 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1131 %1127)))
(approx %216 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1131 (fma.f32 #s(literal 1/2 binary32) %1136 %1127))))
(approx %69 (*.f32 ux (fma.f32 maxCos zi %1141)))
(approx %86 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 %1145)))
(approx %86 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 %1151)))
(approx %86 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1/2 binary32) %1156 %1151))))
(approx %86 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1/2 binary32) %1156 (fma.f32 #s(literal 1/2 binary32) %1162 %1151)))))
(approx %94 (*.f32 ux (fma.f32 maxCos zi %1168)))
(approx %99 (*.f32 ux (fma.f32 maxCos zi (+.f32 %1141 %1168))))
(approx %117 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 %1183)))
(approx %117 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 uy %1182 (fma.f32 xi %957 (+.f32 %1119 (+.f32 %1192 %1149)))))))
(approx %117 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1/2 binary32) %1156 (fma.f32 uy %1182 (fma.f32 xi %957 (+.f32 %1119 (+.f32 %1192 (+.f32 %1209 %1149)))))))))
(approx %117 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1/2 binary32) %1156 (fma.f32 #s(literal 1/2 binary32) %1162 (fma.f32 uy %1182 (fma.f32 xi %957 (+.f32 %1119 (+.f32 %1192 (+.f32 %1209 (+.f32 (/.f32 (*.f32 uy (fma.f32 #s(literal -1 binary32) %1220 %1222)) %977) %1149)))))))))))
(approx %162 (*.f32 %28 %1237))
(approx %162 (*.f32 %28 %1241))
(approx %162 (*.f32 %28 %1246))
(approx %162 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1250 %1246)))
(approx %178 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 %1237)))
(approx %178 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 %1258)))
(approx %178 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 %1262)))
(approx %178 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1/2 binary32) %1250 %1262))))
(approx %193 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1105 (fma.f32 #s(literal 1/2 binary32) %1270 %1101))))
(approx %193 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1105 (fma.f32 #s(literal 1/2 binary32) %1270 %1111))))
(approx %208 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 %1097)))
(approx %208 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 %1283)))
(approx %208 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1/2 binary32) %1105 (fma.f32 #s(literal 1/2 binary32) %1270 %1283)))))
(approx %208 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1/2 binary32) %1105 (fma.f32 #s(literal 1/2 binary32) %1270 (fma.f32 #s(literal 1/2 binary32) %1110 %1283))))))
(approx %218 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 %1298)))
(approx %218 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 %1305)))
(approx %218 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1/2 binary32) %1105 (fma.f32 #s(literal -1/2 binary32) %1131 %1305)))))
(approx %218 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1/2 binary32) %1105 (fma.f32 #s(literal -1/2 binary32) %1131 (fma.f32 #s(literal 1/2 binary32) %1110 (fma.f32 #s(literal 1/2 binary32) %1136 %1305)))))))
(approx %217 (*.f32 %28 %1298))
(approx %217 (*.f32 %28 %1324))
(approx %217 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1105 (fma.f32 #s(literal -1/2 binary32) %1131 %1324))))
(approx %217 (*.f32 %28 (fma.f32 #s(literal -1/2 binary32) %1105 (fma.f32 #s(literal -1/2 binary32) %1131 (fma.f32 #s(literal 1/2 binary32) %1110 (fma.f32 #s(literal 1/2 binary32) %1136 %1324))))))
(approx %12 (*.f32 #s(literal -1 binary32) %986))
(approx %14 (*.f32 #s(literal -1 binary32) %990))
(approx %215 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1341 (*.f32 #s(literal 1/2 binary32) (/.f32 %969 %961))) ux) %958)))
(approx %215 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1341 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %969 %957) (*.f32 #s(literal 1/2 binary32) (/.f32 %975 %1350))) ux))) ux) %958)))
(approx %154 (*.f32 #s(literal -1 binary32) %945))
(approx %155 (*.f32 #s(literal -1 binary32) %954))
(approx %158 (*.f32 #s(literal -1 binary32) (*.f32 %977 %989)))
(approx %160 (*.f32 %1001 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %27 %1005) ux) %698)))
(approx %160 (*.f32 %1001 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %27 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %27 %1373) ux))) ux) %698)))
(approx %161 (*.f32 %28 (+.f32 %1020 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1382 (*.f32 #s(literal -1/2 binary32) (/.f32 %1030 %1023))) ux)))))
(approx %161 (*.f32 %28 (+.f32 %1020 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1036 %1391) (*.f32 #s(literal 1/2 binary32) (/.f32 %1030 %1020))) ux) (*.f32 #s(literal -1 binary32) %1382)) ux)))))
(approx %16 (*.f32 %1001 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1005 %684) ux) %27)))
(approx %17 (*.f32 %1001 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 %1005 %684) ux)) %27)))
(approx %17 (*.f32 %1001 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 %1373 %27) ux)) %684) ux)) %27)))
(approx %18 (*.f32 %28 (+.f32 %957 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1424 (*.f32 #s(literal 1/2 binary32) (/.f32 %968 %961))) ux)))))
(approx %18 (*.f32 %28 (+.f32 %957 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %968 %957) (*.f32 #s(literal 1/2 binary32) (/.f32 %1072 %1350))) ux) (*.f32 #s(literal -1 binary32) %1424)) ux)))))
(approx %19 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1445 (*.f32 #s(literal 1/2 binary32) (/.f32 %1086 %961))) ux) %1079)))
(approx %19 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1445 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1086 %957) (*.f32 #s(literal 1/2 binary32) (/.f32 %1091 %1350))) ux))) ux) %1079)))
(approx %20 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1464 (*.f32 #s(literal 1/2 binary32) (/.f32 %1104 %961))) ux) %1097)))
(approx %20 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1464 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1472 %1474) ux))) ux) %1097)))
(approx %216 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1483 (*.f32 #s(literal 1/2 binary32) (/.f32 %1130 %961))) ux) %1123)))
(approx %216 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1483 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1491 (*.f32 #s(literal 1/2 binary32) (/.f32 %1135 %1350))) ux))) ux) %1123)))
(approx %69 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %522 (*.f32 #s(literal -1 binary32) %1141)))))
(approx %86 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %522 (*.f32 #s(literal -1 binary32) %1507)) ux) %1145))))
(approx %86 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) %1507 (*.f32 #s(literal 1/2 binary32) (/.f32 %1155 %961)))) ux) %1145))))
(approx %86 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) %1507 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1524 (*.f32 #s(literal 1/2 binary32) (/.f32 %1161 %1350))) ux)))) ux) %1145))))
(approx %94 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %522 (*.f32 #s(literal -1 binary32) %1168)))))
(approx %99 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %522 (*.f32 #s(literal -1 binary32) (/.f32 %528 ux))))))
(approx %117 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) %1507 %1550)) ux) %1183))))
(approx %117 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) %1507 (fma.f32 #s(literal -1 binary32) (/.f32 %1558 ux) %1550))) ux) %1183))))
(approx %117 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) %1507 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1161 %978) (*.f32 uy (fma.f32 #s(literal -1 binary32) %1222 %1220))) ux) %1558) ux) %1550))) ux) %1183))))
(approx %183 %1584)
(approx %184 %1586)
(approx %185 %1588)
(approx %188 %1590)
(approx %189 %1592)
(approx %190 %1594)
(approx %191 (*.f32 #s(literal 1/2 binary32) %1594))
(approx %162 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1601 ux) %1237)))
(approx %162 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1612 ux) %1237)))
(approx %178 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %522 (*.f32 #s(literal -1 binary32) %1598)) ux) %1237))))
(approx %178 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %522 %1601) ux) %1237))))
(approx %178 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %522 %1612) ux) %1237))))
(approx %192 %1637)
(approx %193 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1642 ux) %1097)))
(approx %193 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1651 ux) %1097)))
(approx %208 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %522 (*.f32 #s(literal -1 binary32) %1464)) ux) %1097))))
(approx %208 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %522 %1642) ux) %1097))))
(approx %208 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %522 %1651) ux) %1097))))
(approx %218 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %522 %1676) ux) %1298))))
(approx %218 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %522 %1688) ux) %1298))))
(approx %218 (*.f32 %28 (fma.f32 #s(literal -1 binary32) %522 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %522 %1704) ux) %1298))))
(approx %217 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1676 ux) %1298)))
(approx %217 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1688 ux) %1298)))
(approx %217 (*.f32 %28 (fma.f32 #s(literal -1 binary32) (/.f32 %1704 ux) %1298)))
(approx uy uy)
(approx %6 (*.f32 #s(literal 2 binary32) uy))
(approx %8 %24)
(approx %9 %102)
(approx %9 (+.f32 #s(literal 1 binary32) (*.f32 %62 (fma.f32 #s(literal -2 binary32) %40 (*.f32 #s(literal 2/3 binary32) (*.f32 %62 %1729))))))
(approx %9 (+.f32 #s(literal 1 binary32) (*.f32 %62 (fma.f32 #s(literal -2 binary32) %40 (*.f32 %62 (fma.f32 #s(literal -4/45 binary32) (*.f32 %62 %1738) (*.f32 #s(literal 2/3 binary32) %1729)))))))
(approx %1747 %23)
(approx %1750 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %62 %1752) %400)))
(approx %1750 (*.f32 uy (fma.f32 #s(literal 2 binary32) %22 (*.f32 %62 (fma.f32 #s(literal -4/3 binary32) %1752 (*.f32 #s(literal 4/15 binary32) (*.f32 %62 %1759)))))))
(approx %1750 (*.f32 uy (fma.f32 #s(literal 2 binary32) %22 (*.f32 %62 (fma.f32 #s(literal -4/3 binary32) %1752 (*.f32 %62 (fma.f32 #s(literal -8/315 binary32) (*.f32 %62 %1769) (*.f32 #s(literal 4/15 binary32) %1759))))))))
(approx %215 (*.f32 #s(literal 2 binary32) %422))
(approx %215 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %62 %1781) (*.f32 #s(literal 2 binary32) %118))))
(approx %215 (*.f32 uy (fma.f32 #s(literal 2 binary32) %118 (*.f32 %62 (fma.f32 #s(literal -4/3 binary32) %1781 (*.f32 #s(literal 4/15 binary32) (*.f32 %62 %1787)))))))
(approx %215 (*.f32 uy (fma.f32 #s(literal 2 binary32) %118 (*.f32 %62 (fma.f32 #s(literal -4/3 binary32) %1781 (*.f32 %62 (fma.f32 #s(literal -8/315 binary32) (*.f32 %62 %1795) (*.f32 #s(literal 4/15 binary32) %1787))))))))
(approx %131 (*.f32 #s(literal -2 binary32) uy))
(approx %19 %34)
(approx %19 %126)
(approx %19 (+.f32 %34 (*.f32 %62 (fma.f32 #s(literal -2 binary32) %123 (*.f32 #s(literal 2/3 binary32) (*.f32 %62 %1809))))))
(approx %19 (+.f32 %34 (*.f32 %62 (fma.f32 #s(literal -2 binary32) %123 (*.f32 %62 (fma.f32 #s(literal -4/45 binary32) (*.f32 %62 %1816) (*.f32 #s(literal 2/3 binary32) %1809)))))))
(approx %20 (fma.f32 #s(literal -2 binary32) %390 %91))
(approx %20 (fma.f32 xi %34 (*.f32 %62 (fma.f32 #s(literal -2 binary32) %389 (*.f32 #s(literal 2/3 binary32) (*.f32 %62 %1827))))))
(approx %20 (fma.f32 xi %34 (*.f32 %62 (fma.f32 #s(literal -2 binary32) %389 (*.f32 %62 (fma.f32 #s(literal -4/45 binary32) (*.f32 %62 (*.f32 xi %1816)) (*.f32 #s(literal 2/3 binary32) %1827)))))))
(approx %216 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %62 %1843) %533)))
(approx %216 (*.f32 uy (fma.f32 #s(literal 2 binary32) %119 (*.f32 %62 (fma.f32 #s(literal -4/3 binary32) %1843 (*.f32 #s(literal 4/15 binary32) (*.f32 %62 %1848)))))))
(approx %216 (*.f32 uy (fma.f32 #s(literal 2 binary32) %119 (*.f32 %62 (fma.f32 #s(literal -4/3 binary32) %1843 (*.f32 %62 (fma.f32 #s(literal -8/315 binary32) (*.f32 %62 (*.f32 yi %1795)) (*.f32 #s(literal 4/15 binary32) %1848))))))))
(approx %99 (+.f32 xi %95))
(approx %117 %393)
(approx %135 %139)
(approx %135 %140)
(approx %136 %1871)
(approx %136 (+.f32 %1871 (*.f32 #s(literal -2 binary32) (*.f32 uy %1874))))
(approx %136 (+.f32 %1871 (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy %1879) (*.f32 #s(literal -2 binary32) %1874)))))
(approx %136 (+.f32 %1871 (*.f32 uy (fma.f32 #s(literal -2 binary32) %1874 (*.f32 uy (fma.f32 #s(literal -2 binary32) %1879 (*.f32 #s(literal 4/3 binary32) (*.f32 uy %1887))))))))
(approx %184 (*.f32 #s(literal -1 binary32) %196))
(approx %185 %1899)
(approx %185 (+.f32 %1899 (*.f32 #s(literal -2 binary32) (*.f32 uy %1902))))
(approx %185 (+.f32 %1899 (*.f32 uy (-.f32 (*.f32 #s(literal -2 binary32) (*.f32 uy %1907)) %1910))))
(approx %185 (+.f32 %1899 (*.f32 uy (-.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) %1907 (*.f32 #s(literal 4/3 binary32) (*.f32 uy %1915)))) %1910))))
(approx %189 %195)
(approx %189 (fma.f32 #s(literal -2 binary32) (*.f32 uy %1926) %195))
(approx %189 (fma.f32 maxCos %194 (*.f32 uy (-.f32 (*.f32 #s(literal -2 binary32) (*.f32 maxCos (*.f32 ux (*.f32 uy %1930)))) %1935))))
(approx %189 (fma.f32 maxCos %194 (*.f32 uy (-.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) %1941 (*.f32 #s(literal 4/3 binary32) (*.f32 uy %1942)))) %1935))))
(approx %190 %1951)
(approx %190 (-.f32 (+.f32 %1899 %1954) %195))
(approx %190 (-.f32 (+.f32 %1899 (*.f32 uy (-.f32 (fma.f32 #s(literal 2 binary32) %1926 %1961) %1910))) %195))
(approx %190 (-.f32 (+.f32 %1899 (*.f32 uy (-.f32 (fma.f32 #s(literal 2 binary32) %1926 (*.f32 uy (-.f32 (fma.f32 #s(literal -2 binary32) %1907 %1971) %1959))) %1910))) %195))
(approx %191 %1981)
(approx %191 (fma.f32 #s(literal 1/2 binary32) %1954 %1981))
(approx %191 (fma.f32 #s(literal 1/2 binary32) %1951 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %1961 (*.f32 #s(literal 1/2 binary32) %1953)))))
(approx %191 (fma.f32 #s(literal 1/2 binary32) %1951 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %1953 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %1971 (*.f32 #s(literal 1/2 binary32) %1960)))))))
(approx %137 %1997)
(approx %137 (fma.f32 #s(literal -2 binary32) (*.f32 uy %1999) %1997))
(approx %137 (fma.f32 uy (fma.f32 #s(literal -2 binary32) %2004 (*.f32 #s(literal -2 binary32) %1999)) %1997))
(approx %137 (fma.f32 uy (fma.f32 #s(literal -2 binary32) %1999 (*.f32 uy (fma.f32 #s(literal -2 binary32) %2003 (*.f32 #s(literal 4/3 binary32) (*.f32 uy %2009))))) %1997))
(approx %148 (fma.f32 uy %2017 %1997))
(approx %148 (fma.f32 uy (fma.f32 #s(literal -2 binary32) %2004 %2017) %1997))
(approx %148 (fma.f32 uy (fma.f32 #s(literal -2 binary32) %1999 (fma.f32 #s(literal 2 binary32) %52 (*.f32 uy (fma.f32 #s(literal -2 binary32) %2003 (*.f32 uy %2025))))) %1997))
(approx %162 %2034)
(approx %162 %2037)
(approx %162 %2043)
(approx %162 %2049)
(approx %178 (fma.f32 maxCos %88 %2034))
(approx %178 (fma.f32 maxCos %88 %2037))
(approx %178 (fma.f32 maxCos %88 %2043))
(approx %178 (fma.f32 maxCos %88 %2049))
(approx %192 %2060)
(approx %192 (fma.f32 #s(literal 1/2 binary32) %2063 %2060))
(approx %192 (fma.f32 #s(literal 1/2 binary32) %2059 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) (*.f32 uy %2066) (*.f32 #s(literal 1/2 binary32) %2062)))))
(approx %192 (fma.f32 #s(literal 1/2 binary32) %2059 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %2062 (*.f32 uy %2076)))))
(approx %193 %2082)
(approx %193 (fma.f32 #s(literal 1/2 binary32) %2063 %2082))
(approx %193 (fma.f32 #s(literal 1/2 binary32) %2059 %2089))
(approx %193 (fma.f32 #s(literal 1/2 binary32) %2059 %2095))
(approx %208 %2098)
(approx %208 (fma.f32 #s(literal 1/2 binary32) %2063 %2098))
(approx %208 (fma.f32 #s(literal 1/2 binary32) %2059 (fma.f32 maxCos %88 %2089)))
(approx %208 (fma.f32 #s(literal 1/2 binary32) %2059 (fma.f32 maxCos %88 %2095)))
(approx %218 (fma.f32 maxCos %88 %2113))
(approx %217 (fma.f32 #s(literal 2 binary32) %120 %91))
(approx %217 %2113)
(approx %215 %219)
(approx %19 %35)
(approx %51 (*.f32 uy %2123))
(approx %58 (*.f32 %62 %2123))
(approx %94 (*.f32 %62 (fma.f32 #s(literal -2 binary32) %41 (fma.f32 #s(literal 2 binary32) %2121 %2128))))
(approx %99 (*.f32 %62 (fma.f32 #s(literal -2 binary32) %41 (fma.f32 #s(literal 2 binary32) %2121 (+.f32 (/.f32 xi %62) %2128)))))
(approx %117 (*.f32 #s(literal -2 binary32) %390))
(approx %117 (*.f32 %62 (fma.f32 #s(literal -2 binary32) %389 (*.f32 #s(literal 2 binary32) %2141))))
(approx %117 (*.f32 %62 (fma.f32 #s(literal -2 binary32) %389 (fma.f32 #s(literal 2 binary32) %2141 (+.f32 (/.f32 %89 %62) (/.f32 %91 %62))))))
(approx %135 (*.f32 #s(literal -2 binary32) %23))
(approx %135 (*.f32 uy (fma.f32 #s(literal -2 binary32) %22 (*.f32 #s(literal 1/2 binary32) %2155))))
(approx %136 %141)
(approx %184 (*.f32 uy (fma.f32 #s(literal -1 binary32) %2161 %400)))
(approx %188 (*.f32 uy (fma.f32 #s(literal 2 binary32) %22 %2161)))
(approx %51 (*.f32 #s(literal -1 binary32) (*.f32 uy (fma.f32 #s(literal -2 binary32) %2121 (*.f32 #s(literal 2 binary32) %41)))))
(approx %94 (*.f32 %62 (fma.f32 #s(literal -2 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %52 (*.f32 #s(literal -1 binary32) (/.f32 %71 uy))) uy)))))
(approx %99 (*.f32 %62 (fma.f32 #s(literal -2 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %52 (*.f32 #s(literal -1 binary32) (/.f32 %73 uy))) uy)))))
(approx %117 (*.f32 %62 (fma.f32 #s(literal -2 binary32) %389 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %119 (*.f32 #s(literal -1 binary32) (/.f32 %92 uy))) uy)))))
(approx %135 (*.f32 #s(literal -1 binary32) (*.f32 uy (fma.f32 #s(literal -1/2 binary32) %2155 %400))))
(approx %184 (*.f32 #s(literal -1 binary32) (*.f32 uy (fma.f32 #s(literal -2 binary32) %22 %2161))))
(approx %188 (*.f32 #s(literal -1 binary32) (*.f32 uy (fma.f32 #s(literal -2 binary32) %22 (*.f32 #s(literal -1 binary32) %2161)))))
(approx %14 (*.f32 maxCos %29))
(approx %215 (+.f32 %149 (*.f32 #s(literal -1/2 binary32) (*.f32 %27 %2213))))
(approx %215 (+.f32 %149 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2213 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2221))))))
(approx %215 (+.f32 %149 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2213 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2221 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 (*.f32 %2229 %2231)))))))))
(approx %155 (*.f32 maxCos %163))
(approx %158 (*.f32 maxCos (*.f32 %28 %29)))
(approx %160 %167)
(approx %161 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 1/2 binary32) %166)))
(approx %161 (+.f32 #s(literal 1 binary32) (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) (*.f32 %27 %2252) (*.f32 #s(literal 1/2 binary32) %165)))))
(approx %161 (+.f32 #s(literal 1 binary32) (*.f32 %27 (fma.f32 #s(literal 1/2 binary32) %165 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2252 (*.f32 #s(literal 1/16 binary32) (*.f32 %27 (*.f32 %2229 %2262)))))))))
(approx %16 %32)
(approx %17 (+.f32 #s(literal 1 binary32) %2273))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1/2 binary32) %32)))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %31 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2279))))))
(approx %18 (+.f32 #s(literal 1 binary32) (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %31 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2279 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 (*.f32 %2229 %2230)))))))))
(approx %19 (+.f32 %25 (*.f32 #s(literal -1/2 binary32) (*.f32 %27 %2296))))
(approx %19 (+.f32 %25 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2296 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2302))))))
(approx %19 (+.f32 %25 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2296 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2302 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 (*.f32 %2229 %2309)))))))))
(approx %20 (fma.f32 #s(literal -1/2 binary32) %2321 %756))
(approx %20 %2330)
(approx %20 %2340)
(approx %216 (fma.f32 #s(literal -1/2 binary32) (*.f32 %27 %2343) %150))
(approx %216 (fma.f32 yi %149 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2343 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2348))))))
(approx %216 (fma.f32 yi %149 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2343 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2348 (*.f32 #s(literal -1/16 binary32) (*.f32 %27 %2356))))))))
(approx %86 (+.f32 xi %89))
(approx %86 (+.f32 xi (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (*.f32 maxCos %2368) %88))))
(approx %86 (+.f32 xi (*.f32 maxCos (fma.f32 maxCos (fma.f32 #s(literal -1/2 binary32) %2368 (*.f32 #s(literal -1/8 binary32) (*.f32 %27 %2375))) %88))))
(approx %117 (+.f32 xi (fma.f32 maxCos %88 %524)))
(approx %117 (+.f32 xi (fma.f32 maxCos (fma.f32 maxCos (fma.f32 #s(literal -1/2 binary32) %2368 (*.f32 uy %2393)) %88) %524)))
(approx %117 (+.f32 xi (fma.f32 maxCos (fma.f32 maxCos (fma.f32 #s(literal -1/2 binary32) %2368 (fma.f32 uy %2393 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2375 (*.f32 uy (fma.f32 #s(literal -1/4 binary32) (*.f32 %1001 (*.f32 yi (*.f32 %22 %2219))) (*.f32 #s(literal 1/4 binary32) (*.f32 %1001 (*.f32 uy (*.f32 xi (*.f32 %40 %2219))))))))))) %88) %524)))
(approx %162 (fma.f32 #s(literal 1/2 binary32) (*.f32 %27 %2420) %152))
(approx %162 (fma.f32 xi %141 (fma.f32 yi %149 (*.f32 %27 %2428))))
(approx %162 (fma.f32 xi %141 (fma.f32 yi %149 (*.f32 %27 (fma.f32 #s(literal 1/2 binary32) %2420 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2425 (*.f32 #s(literal 1/16 binary32) (*.f32 %27 (*.f32 %2229 (*.f32 %152 %2262)))))))))))
(approx %178 (fma.f32 maxCos %88 %152))
(approx %178 (fma.f32 maxCos (fma.f32 #s(literal 1/2 binary32) (*.f32 maxCos %2420) %88) %152))
(approx %178 (fma.f32 maxCos (fma.f32 maxCos %2428 %88) %152))
(approx %193 (fma.f32 #s(literal -1/2 binary32) %2321 %880))
(approx %193 (fma.f32 #s(literal 1/2 binary32) %202 %2330))
(approx %193 (fma.f32 #s(literal 1/2 binary32) %202 %2340))
(approx %208 (fma.f32 #s(literal 1/2 binary32) %202 (fma.f32 maxCos %88 %756)))
(approx %208 (fma.f32 #s(literal 1/2 binary32) %202 (fma.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (*.f32 maxCos %2320) %88) %756)))
(approx %208 (fma.f32 #s(literal 1/2 binary32) %202 (fma.f32 maxCos (fma.f32 maxCos %2328 %88) %756)))
(approx %218 (fma.f32 maxCos %88 %904))
(approx %218 (fma.f32 maxCos (fma.f32 maxCos %2474 %88) %904))
(approx %218 (fma.f32 maxCos (fma.f32 maxCos %2482 %88) %904))
(approx %217 (fma.f32 xi %25 (fma.f32 yi %149 (*.f32 %27 %2474))))
(approx %217 (fma.f32 xi %25 (fma.f32 yi %149 (*.f32 %27 %2482))))
(approx %217 (fma.f32 xi %25 (fma.f32 yi %149 (*.f32 %27 (fma.f32 #s(literal -1/2 binary32) %2320 (fma.f32 #s(literal -1/2 binary32) %2343 (*.f32 %27 (fma.f32 #s(literal -1/8 binary32) %2325 (fma.f32 #s(literal -1/8 binary32) %2348 (*.f32 %27 (fma.f32 #s(literal -1/16 binary32) %2333 (*.f32 #s(literal -1/16 binary32) %2356))))))))))))
(approx %215 %2509)
(approx %215 %2514)
(approx %215 %2520)
(approx %215 %2528)
(approx %160 %166)
(approx %160 (*.f32 %27 (fma.f32 %28 %164 %2531)))
(approx %161 %2536)
(approx %161 %2542)
(approx %161 %2551)
(approx %161 %2562)
(approx %17 %2273)
(approx %17 (*.f32 %27 (-.f32 %2531 %31)))
(approx %18 %2568)
(approx %18 %2573)
(approx %18 %2579)
(approx %18 %2588)
(approx %19 %2591)
(approx %19 %2595)
(approx %19 %2599)
(approx %19 %2604)
(approx %20 %2607)
(approx %20 %2611)
(approx %20 %2615)
(approx %20 %2620)
(approx %216 %2623)
(approx %216 %2627)
(approx %216 %2631)
(approx %216 %2636)
(approx %69 (*.f32 maxCos (fma.f32 ux zi %2638)))
(approx %86 (*.f32 maxCos %2643))
(approx %86 (*.f32 maxCos %2647))
(approx %86 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2650 %2647)))
(approx %86 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2650 (fma.f32 #s(literal 1/16 binary32) %2654 %2647))))
(approx %94 (*.f32 maxCos (fma.f32 ux zi %2659)))
(approx %99 (*.f32 maxCos (fma.f32 ux zi (+.f32 %2638 %2659))))
(approx %117 (*.f32 maxCos (fma.f32 ux %87 %2674)))
(approx %117 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) %2646 (fma.f32 ux %87 %2684))))
(approx %117 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2650 (fma.f32 #s(literal 1/2 binary32) %2646 (fma.f32 ux %87 %2697)))))
(approx %117 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2650 (fma.f32 #s(literal 1/16 binary32) %2654 (fma.f32 #s(literal 1/2 binary32) %2646 (fma.f32 ux %87 %2712))))))
(approx %162 %2720)
(approx %162 %2724)
(approx %162 %2728)
(approx %162 %2733)
(approx %178 (*.f32 maxCos %2735))
(approx %178 (*.f32 maxCos %2738))
(approx %178 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2726 %2738)))
(approx %178 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2726 (fma.f32 #s(literal 1/16 binary32) %2730 %2738))))
(approx %193 (*.f32 maxCos %2749))
(approx %193 (*.f32 maxCos %2752))
(approx %193 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2613 %2752)))
(approx %208 (*.f32 maxCos %2758))
(approx %208 (*.f32 maxCos %2761))
(approx %208 (*.f32 maxCos %2764))
(approx %208 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2613 %2764)))
(approx %218 (*.f32 maxCos %2771))
(approx %218 (*.f32 maxCos %2775))
(approx %218 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2613 (fma.f32 #s(literal -1/8 binary32) %2629 %2775))))
(approx %218 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2613 (fma.f32 #s(literal -1/8 binary32) %2629 (fma.f32 #s(literal 1/16 binary32) %2617 (fma.f32 #s(literal 1/16 binary32) %2633 %2775))))))
(approx %217 %2788)
(approx %217 %2792)
(approx %217 %2796)
(approx %217 %2802)
(approx %215 (*.f32 #s(literal -1 binary32) %2509))
(approx %215 (*.f32 #s(literal -1 binary32) %2514))
(approx %215 (*.f32 #s(literal -1 binary32) %2520))
(approx %215 (*.f32 #s(literal -1 binary32) %2528))
(approx %161 (*.f32 #s(literal -1 binary32) %2536))
(approx %161 (*.f32 #s(literal -1 binary32) %2542))
(approx %161 (*.f32 #s(literal -1 binary32) %2551))
(approx %161 (*.f32 #s(literal -1 binary32) %2562))
(approx %18 (*.f32 #s(literal -1 binary32) %2568))
(approx %18 (*.f32 #s(literal -1 binary32) %2573))
(approx %18 (*.f32 #s(literal -1 binary32) %2579))
(approx %18 (*.f32 #s(literal -1 binary32) %2588))
(approx %19 (*.f32 #s(literal -1 binary32) %2591))
(approx %19 (*.f32 #s(literal -1 binary32) %2595))
(approx %19 (*.f32 #s(literal -1 binary32) %2599))
(approx %19 (*.f32 #s(literal -1 binary32) %2604))
(approx %20 (*.f32 #s(literal -1 binary32) %2607))
(approx %20 (*.f32 #s(literal -1 binary32) %2611))
(approx %20 (*.f32 #s(literal -1 binary32) %2615))
(approx %20 (*.f32 #s(literal -1 binary32) %2620))
(approx %216 (*.f32 #s(literal -1 binary32) %2623))
(approx %216 (*.f32 #s(literal -1 binary32) %2627))
(approx %216 (*.f32 #s(literal -1 binary32) %2631))
(approx %216 (*.f32 #s(literal -1 binary32) %2636))
(approx %69 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %70 (*.f32 #s(literal -1 binary32) %2638)))))
(approx %86 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 %2642))))
(approx %86 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 %2861))))
(approx %86 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 (fma.f32 #s(literal -1/8 binary32) %2650 %2861)))))
(approx %86 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 (fma.f32 #s(literal -1/8 binary32) %2650 (fma.f32 #s(literal 1/16 binary32) %2654 %2861))))))
(approx %94 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %70 (*.f32 #s(literal -1 binary32) %2659)))))
(approx %99 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %70 (*.f32 #s(literal -1 binary32) (/.f32 %528 maxCos))))))
(approx %117 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 %2674))))
(approx %117 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 (fma.f32 #s(literal 1/2 binary32) %2646 %2684)))))
(approx %117 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 (fma.f32 #s(literal -1/8 binary32) %2650 (fma.f32 #s(literal 1/2 binary32) %2646 %2697))))))
(approx %117 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 (fma.f32 #s(literal -1/8 binary32) %2650 (fma.f32 #s(literal 1/16 binary32) %2654 (fma.f32 #s(literal 1/2 binary32) %2646 %2712)))))))
(approx %162 (*.f32 #s(literal -1 binary32) %2720))
(approx %162 (*.f32 #s(literal -1 binary32) %2724))
(approx %162 (*.f32 #s(literal -1 binary32) %2728))
(approx %162 (*.f32 #s(literal -1 binary32) %2733))
(approx %178 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 %2719))))
(approx %178 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 %2723))))
(approx %178 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 %2727))))
(approx %178 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 %2732))))
(approx %193 (*.f32 #s(literal -1 binary32) (*.f32 maxCos %2934)))
(approx %193 (*.f32 #s(literal -1 binary32) (*.f32 maxCos %2941)))
(approx %193 (*.f32 #s(literal -1 binary32) (*.f32 maxCos %2953)))
(approx %208 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 %2606))))
(approx %208 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 %2934))))
(approx %208 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 %2941))))
(approx %208 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 %2953))))
(approx %218 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 %2770))))
(approx %218 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 %2791))))
(approx %218 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 %2795))))
(approx %218 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %88 %2801))))
(approx %217 (*.f32 #s(literal -1 binary32) %2788))
(approx %217 (*.f32 #s(literal -1 binary32) %2792))
(approx %217 (*.f32 #s(literal -1 binary32) %2796))
(approx %217 (*.f32 #s(literal -1 binary32) %2802))
Calls

18 calls:

TimeVariablePoint
18.0ms
uy
-inf
9.0ms
maxCos
0
8.0ms
uy
0
8.0ms
uy
inf
7.0ms
xi
0

rewrite222.0ms (2.6%)

Memory
-14.3MiB live, 243.5MiB allocated; 27ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01221498
01951314
17071126
230031126
047691126
047871105
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
79 → 1 175
Calls
Call 1
Inputs
%2 = (*.f32 uy #s(literal 2 binary32))
%3 = (PI.f32 )
%4 = (*.f32 %2 %3)
%5 = (cos.f32 %4)
%8 = (-.f32 #s(literal 1 binary32) ux)
%13 = (*.f32 uy %3)
%14 = (*.f32 #s(literal 2 binary32) %13)
%15 = (sin.f32 %14)
%16 = (*.f32 ux %8)
%18 = (- 1 ux)
%19 = (* %18 maxCos)
%20 = (approx %19 maxCos)
%24 = (PI )
%25 = (* (* uy 2) %24)
%27 = (* %19 ux)
%30 = (sqrt (- 1 (* %27 %27)))
%31 = (* (sin %25) %30)
%32 = (approx %31 %15)
%33 = (*.f32 ux zi)
%34 = (*.f32 maxCos %33)
%35 = (*.f32 maxCos zi)
%37 = (pow.f32 %3 #s(literal 2 binary32))
%38 = (*.f32 maxCos %8)
%39 = (+.f32 uy uy)
%40 = (+.f32 %3 %3)
%41 = (*.f32 #s(literal -2 binary32) uy)
%42 = (*.f32 %3 %39)
%43 = (sin.f32 %42)
%44 = (*.f32 %3 #s(literal 1/2 binary32))
%45 = (-.f32 ux #s(literal 1 binary32))
%46 = (*.f32 %45 maxCos)
%47 = (*.f32 %38 ux)
%48 = (*.f32 %47 ux)
%49 = (fma.f32 %46 %48 #s(literal 1 binary32))
%50 = (sqrt.f32 %49)
%51 = (*.f32 %20 ux)
%52 = (*.f32 %51 %51)
%53 = (-.f32 #s(literal 1 binary32) %52)
%54 = (sqrt.f32 %53)
%55 = (*.f32 %5 %54)
%56 = (*.f32 %55 xi)
%57 = (*.f32 %51 zi)
%58 = (*.f32 %32 yi)
%59 = (*.f32 xi %37)
%60 = (*.f32 yi %3)
%61 = (*.f32 #s(literal 2 binary32) %60)
%62 = (*.f32 uy %59)
%63 = (fma.f32 #s(literal -2 binary32) %62 %61)
%64 = (*.f32 uy %63)
%65 = (+.f32 xi %34)
%68 = (* maxCos (* ux (* zi %18)))
%75 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %18 2)))))
%76 = (* xi %75)
%78 = (approx (+ %68 %76) %65)
%79 = (fma.f32 maxCos %33 %64)
%80 = (+.f32 xi %79)
%94 = (approx (+ %68 (+ (* uy (+ (* -2 (* uy (* xi (* (pow %24 2) %75)))) (* 2 (* yi (* %24 %75))))) %76)) %80)
%95 = (fma.f32 %41 %3 %44)
%96 = (sin.f32 %95)
%98 = (approx (* maxCos %18) maxCos)
%99 = (*.f32 %98 ux)
%100 = (acos.f32 %99)
%101 = (-.f32 %42 %100)
%102 = (cos.f32 %101)
%103 = (fma.f32 %40 uy %100)
%104 = (cos.f32 %103)
%105 = (-.f32 %102 %104)
%106 = (/.f32 %105 #s(literal 2 binary32))
%107 = (*.f32 %96 xi)
%108 = (fma.f32 %43 yi %107)
%109 = (*.f32 %50 %108)
%111 = (*.f32 %106 yi)
%112 = (+.f32 %56 %111)
%120 = (+ (+ (* (* (cos %25) %30) xi) (* %31 yi)) (* %27 zi))
%123 = (+.f32 %56 %58)
uy
#s(literal 2 binary32)
%2
%3
%4
%5
#s(literal 1 binary32)
ux
%8
maxCos
xi
yi
zi
%13
%14
%15
%16
%20
#s(literal -2 binary32)
%32
%33
%34
%35
#s(literal 1/2 binary32)
%37
%38
%39
%40
%41
%42
%43
%44
%45
%46
%47
%48
%49
%50
%51
%52
%53
%54
%55
%56
%57
%58
%59
%60
%61
%62
%63
%64
%65
%78
%79
%80
%94
%95
%96
%98
%99
%100
%101
%102
%103
%104
%105
%106
%107
%108
%109
(fma.f32 %16 %35 %109)
%111
%112
(+.f32 %112 %57)
(approx %120 %78)
(approx %120 %94)
%123
(+.f32 %123 %57)
Outputs
%2 = (*.f32 #s(literal 2 binary32) uy)
%3 = (*.f32 uy #s(literal 2 binary32))
%4 = (neg.f32 uy)
%5 = (-.f32 uy %4)
%7 = (*.f32 #s(literal 1 binary32) uy)
%8 = (fma.f32 #s(literal 1 binary32) uy %7)
%9 = (*.f32 uy #s(literal 1 binary32))
%10 = (fma.f32 uy #s(literal 1 binary32) %9)
%11 = (+.f32 uy uy)
%12 = (pow.f32 %11 #s(literal 1 binary32))
%13 = (+.f32 %9 %9)
%14 = (+.f32 %7 %7)
%15 = (neg.f32 %4)
%16 = (+.f32 uy %15)
%18 = (neg.f32 (-.f32 %4 uy))
%19 = (PI.f32 )
%20 = (+.f32 %19 %19)
%21 = (*.f32 %20 uy)
%22 = (*.f32 %19 uy)
%23 = (*.f32 %22 #s(literal 2 binary32))
%24 = (*.f32 %19 %11)
%25 = (*.f32 %11 %19)
%26 = (*.f32 #s(literal 2 binary32) %22)
%27 = (*.f32 uy %20)
%28 = (neg.f32 %19)
%30 = (-.f32 %22 (*.f32 %28 uy))
%32 = (-.f32 %22 (*.f32 %4 %19))
%33 = (neg.f32 %22)
%34 = (-.f32 %22 %33)
%35 = (*.f32 %22 #s(literal 1 binary32))
%36 = (fma.f32 %22 #s(literal 1 binary32) %35)
%37 = (*.f32 #s(literal 1 binary32) %22)
%38 = (fma.f32 #s(literal 1 binary32) %22 %37)
%39 = (fma.f32 %19 uy %22)
%40 = (fma.f32 uy %19 %22)
%41 = (pow.f32 %24 #s(literal 1 binary32))
%42 = (+.f32 %35 %35)
%43 = (+.f32 %37 %37)
%44 = (+.f32 %22 %22)
%45 = (cos.f32 %22)
%47 = (sin.f32 %22)
%49 = (-.f32 (*.f32 %45 %45) (*.f32 %47 %47))
%51 = (*.f32 #s(literal -1/2 binary32) %19)
%52 = (cos.f32 %51)
%54 = (*.f32 #s(literal -2 binary32) uy)
%55 = (*.f32 %54 %19)
%56 = (sin.f32 %55)
%57 = (*.f32 %52 %56)
%58 = (cos.f32 %24)
%59 = (neg.f32 %58)
%61 = (*.f32 #s(literal 1/2 binary32) %19)
%62 = (sin.f32 %61)
%64 = (-.f32 %57 (*.f32 %59 %62))
%65 = (*.f32 %62 %58)
%67 = (-.f32 %57 (neg.f32 %65))
%70 = (-.f32 %57 (*.f32 %58 (sin.f32 %51)))
%71 = (fma.f32 %62 %58 %57)
%72 = (fma.f32 %52 %56 %65)
%73 = (fma.f32 %56 %52 %65)
%74 = (sin.f32 %24)
%75 = (fma.f32 %74 %52 %65)
%76 = (fma.f32 %58 %62 %57)
%77 = (pow.f32 %58 #s(literal 1 binary32))
%79 = (+.f32 (*.f32 %74 %52) %65)
%80 = (+.f32 %65 %57)
%81 = (+.f32 %57 %65)
%82 = (fabs.f32 %22)
%83 = (fma.f32 %82 #s(literal 2 binary32) %61)
%84 = (sin.f32 %83)
%85 = (fma.f32 %20 uy %61)
%86 = (sin.f32 %85)
%87 = (fma.f32 #s(literal -2 binary32) uy #s(literal 1/2 binary32))
%88 = (*.f32 %19 %87)
%89 = (sin.f32 %88)
%90 = (fabs.f32 %24)
%91 = (neg.f32 %90)
%92 = (cos.f32 %91)
%93 = (neg.f32 %55)
%94 = (cos.f32 %93)
%95 = (fabs.f32 %90)
%96 = (cos.f32 %95)
%97 = (cos.f32 %55)
%98 = (cos.f32 %90)
%100 = (neg.f32 ux)
%101 = (neg.f32 %100)
%103 = (-.f32 #s(literal 1 binary32) ux)
%107 = (-.f32 ux #s(literal 1 binary32))
%116 = (*.f32 (*.f32 #s(literal 2 binary32) %47) %45)
%117 = (*.f32 %45 %47)
%118 = (*.f32 %117 #s(literal 2 binary32))
%119 = (*.f32 #s(literal 2 binary32) %117)
%120 = (fma.f32 %45 %47 %117)
%121 = (fma.f32 %47 %45 %117)
%122 = (pow.f32 %74 #s(literal 1 binary32))
%123 = (+.f32 %117 %117)
%124 = (*.f32 %103 ux)
%138 = (approx (* maxCos (- 1 ux)) maxCos)
%139 = (pow.f32 %138 #s(literal 1 binary32))
%142 = (* (* (- ux 1) maxCos) ux)
%144 = (sin (acos %142))
%145 = (PI )
%149 = (sin (* %145 (* 2 uy)))
%151 = (approx (* %144 %149) %74)
%153 = (*.f32 zi ux)
%156 = (*.f32 maxCos ux)
%158 = (*.f32 zi maxCos)
%160 = (*.f32 %153 maxCos)
%167 = (fabs.f32 %19)
%170 = (*.f32 %19 %19)
%173 = (*.f32 maxCos %103)
%175 = (*.f32 maxCos %100)
%177 = (*.f32 %100 maxCos)
%184 = (*.f32 %107 maxCos)
%190 = (neg.f32 %28)
%214 = (*.f32 maxCos #s(literal -1 binary32))
%216 = (*.f32 #s(literal -1 binary32) maxCos)
%225 = (*.f32 %173 ux)
%231 = (*.f32 %184 ux)
%234 = (*.f32 ux ux)
%236 = (*.f32 %225 ux)
%249 = (*.f32 %231 maxCos)
%250 = (*.f32 %249 %124)
%252 = (neg.f32 maxCos)
%253 = (*.f32 %252 maxCos)
%255 = (*.f32 %107 %107)
%256 = (*.f32 %255 %234)
%260 = (*.f32 (*.f32 %184 maxCos) %124)
%264 = (neg.f32 %236)
%267 = (*.f32 %225 maxCos)
%283 = (*.f32 %267 %103)
%287 = (*.f32 (*.f32 %173 maxCos) %103)
%290 = (*.f32 maxCos maxCos)
%292 = (*.f32 (*.f32 %290 ux) ux)
%295 = (neg.f32 %256)
%297 = (fabs.f32 %231)
%298 = (neg.f32 %297)
%304 = (*.f32 %236 maxCos)
%307 = (neg.f32 %234)
%313 = (fma.f32 %236 %184 #s(literal 1 binary32))
%330 = (sqrt.f32 %313)
%335 = (fabs.f32 %297)
%340 = (asin.f32 %225)
%349 = (neg.f32 %330)
%363 = (*.f32 %138 ux)
%364 = (*.f32 ux %138)
%365 = (*.f32 %363 ux)
%366 = (*.f32 %365 %138)
%367 = (-.f32 #s(literal 1 binary32) %366)
%368 = (sqrt.f32 %367)
%369 = (asin.f32 %363)
%373 = (/.f32 (-.f32 %363 (cos.f32 (fma.f32 #s(literal 1/2 binary32) %19 %369))) #s(literal 2 binary32))
%374 = (fma.f32 %52 %368 %373)
%375 = (pow.f32 %363 #s(literal 1 binary32))
%377 = (+.f32 (*.f32 %52 %368) %373)
%378 = (acos.f32 %363)
%379 = (+.f32 %378 %61)
%380 = (sin.f32 %379)
%381 = (fabs.f32 %378)
%382 = (cos.f32 %381)
%383 = (neg.f32 %378)
%384 = (cos.f32 %383)
%385 = (cos.f32 %378)
%386 = (*.f32 %138 %138)
%389 = (fabs.f32 %363)
%390 = (fabs.f32 %389)
%392 = (neg.f32 %389)
%394 = (*.f32 %100 %138)
%395 = (neg.f32 %394)
%397 = (*.f32 %363 %138)
%437 = (*.f32 %394 %363)
%481 = (+.f32 %369 %61)
%483 = (acos.f32 %389)
%485 = (acos.f32 %394)
%497 = (asin.f32 %394)
%499 = (fabs.f32 %369)
%501 = (asin.f32 %389)
%504 = (*.f32 %368 %58)
%668 = (-.f32 %481 %24)
%670 = (+.f32 %481 %24)
%704 = (-.f32 %483 %24)
%706 = (+.f32 %483 %24)
%740 = (-.f32 %485 %24)
%742 = (+.f32 %485 %24)
%844 = (-.f32 %369 %24)
%848 = (*.f32 %19 #s(literal -2 binary32))
%861 = (fma.f32 %20 uy %369)
%863 = (-.f32 %24 %369)
%869 = (fma.f32 %20 uy %378)
%870 = (fma.f32 #s(literal 1/2 binary32) %19 %869)
%880 = (sin.f32 %869)
%881 = (fma.f32 %848 uy %378)
%882 = (sin.f32 %881)
%898 = (*.f32 %368 xi)
%899 = (*.f32 %898 %58)
%900 = (*.f32 xi %58)
%907 = (*.f32 zi %138)
%909 = (*.f32 %138 zi)
%911 = (*.f32 %363 zi)
%917 = (*.f32 %151 yi)
%922 = (*.f32 %170 xi)
%927 = (*.f32 yi %19)
%930 = (+.f32 yi yi)
%933 = (*.f32 %20 yi)
%937 = (neg.f32 yi)
%944 = (*.f32 %927 #s(literal 1 binary32))
%947 = (*.f32 #s(literal 1 binary32) %927)
%954 = (*.f32 xi uy)
%960 = (*.f32 %922 uy)
%967 = (*.f32 #s(literal -2 binary32) (-.f32 %960 %927))
%968 = (*.f32 %960 #s(literal -2 binary32))
%969 = (*.f32 %927 #s(literal -2 binary32))
%974 = (neg.f32 %54)
%981 = (*.f32 %54 %170)
%982 = (neg.f32 %969)
%985 = (*.f32 %54 xi)
%988 = (*.f32 #s(literal -2 binary32) %954)
%991 = (*.f32 #s(literal -2 binary32) %922)
%994 = (*.f32 %170 #s(literal -2 binary32))
%1009 = (fma.f32 yi %19 %968)
%1014 = (*.f32 %922 #s(literal -2 binary32))
%1028 = (*.f32 %967 uy)
%1030 = (*.f32 %968 uy)
%1035 = (*.f32 %933 uy)
%1038 = (*.f32 uy %960)
%1040 = (*.f32 uy %54)
%1042 = (*.f32 uy %930)
%1052 = (*.f32 %960 uy)
%1062 = (neg.f32 xi)
%1065 = (*.f32 (*.f32 %252 zi) ux)
%1068 = (fma.f32 %158 ux xi)
%1083 = (* %144 xi)
%1084 = (* %142 zi)
%1086 = (approx (- %1083 %1084) %1068)
%1089 = (*.f32 %4 %967)
%1091 = (fma.f32 %1042 %19 %160)
%1094 = (*.f32 %15 %967)
%1096 = (neg.f32 %1089)
%1100 = (fma.f32 %967 uy %160)
%1129 = (neg.f32 %1100)
%1138 = (fma.f32 %967 uy xi)
%1140 = (+.f32 xi %1028)
%1142 = (fma.f32 %967 uy %1068)
%1178 = (approx (- (+ (* (* -2 (- (* (* xi uy) (* %144 (pow %145 2))) (* (* %144 %145) yi))) uy) %1083) %1084) %1142)
%1189 = (*.f32 %190 #s(literal 1/2 binary32))
%1191 = (neg.f32 %51)
%1194 = (*.f32 #s(literal -2 binary32) %19)
%1198 = (neg.f32 %20)
%1253 = (-.f32 %24 %378)
%1257 = (fma.f32 %19 uy %383)
%1259 = (-.f32 %22 %378)
%1274 = (*.f32 %363 %58)
%1275 = (neg.f32 %74)
%1276 = (*.f32 %1275 %368)
%1278 = (*.f32 %368 %56)
%1280 = (sin.f32 %1253)
%1281 = (cos.f32 %881)
%1282 = (*.f32 %1281 %62)
%1284 = (cos.f32 %869)
%1285 = (-.f32 %1284 %1281)
%1287 = (-.f32 %1281 %1284)
%1290 = (*.f32 %368 %74)
%1296 = (sin.f32 (*.f32 (+.f32 %869 %1253) #s(literal 1/2 binary32)))
%1299 = (sin.f32 (*.f32 (-.f32 %1253 %869) #s(literal 1/2 binary32)))
%1300 = (*.f32 %1296 %1299)
%1301 = (*.f32 %1300 #s(literal 1/2 binary32))
%1303 = (/.f32 %1300 #s(literal 2 binary32))
%1306 = (*.f32 %117 %368)
%1315 = (fabs.f32 %881)
%1318 = (fma.f32 #s(literal 1/2 binary32) %19 %1253)
%1332 = (fma.f32 %19 uy %378)
%1334 = (-.f32 %22 %383)
%1348 = (neg.f32 %869)
%1351 = (*.f32 %1284 %62)
%1364 = (fabs.f32 %869)
%1374 = (neg.f32 %1284)
%1444 = (fma.f32 %368 %74 %1374)
%1446 = (-.f32 %1290 %1284)
%1515 = (*.f32 %1281 #s(literal 1/2 binary32))
%1534 = (*.f32 %1284 #s(literal 1/2 binary32))
%1536 = (neg.f32 %1534)
%1538 = (/.f32 %1374 #s(literal 2 binary32))
%1545 = (*.f32 %65 xi)
%1547 = (*.f32 xi %65)
%1554 = (*.f32 %74 yi)
%1555 = (*.f32 %1062 %58)
%1564 = (*.f32 (neg.f32 %59) xi)
%1566 = (neg.f32 %1555)
%1571 = (fma.f32 %74 yi %900)
%1577 = (*.f32 %117 yi)
%1588 = (*.f32 %1571 %330)
%1590 = (*.f32 %330 yi)
%1591 = (*.f32 %1590 %74)
%1596 = (*.f32 %330 %58)
%1602 = (*.f32 %330 xi)
%1605 = (*.f32 %1602 %58)
%1608 = (*.f32 %330 %74)
%1609 = (*.f32 %937 %1608)
%1615 = (*.f32 (neg.f32 (*.f32 %349 %74)) yi)
%1617 = (neg.f32 %1609)
%1639 = (*.f32 %117 %1590)
%1648 = (*.f32 zi %173)
%1649 = (fma.f32 %1648 ux %1605)
%1657 = (*.f32 zi %103)
%1658 = (*.f32 %1657 maxCos)
%1661 = (*.f32 %231 zi)
%1663 = (*.f32 %1657 ux)
%1664 = (*.f32 %1663 maxCos)
%1670 = (fma.f32 %1590 %74 %1664)
%1673 = (*.f32 %349 %1571)
%1676 = (*.f32 (neg.f32 %349) %1571)
%1678 = (neg.f32 %1673)
%1680 = (fma.f32 %1648 ux %1588)
%1681 = (*.f32 maxCos %1657)
%1688 = (fma.f32 %1596 xi %1664)
%1690 = (-.f32 %1605 %1661)
%1698 = (neg.f32 %1661)
%1769 = (*.f32 %1287 yi)
%1771 = (*.f32 %1290 yi)
%1772 = (*.f32 #s(literal 1/2 binary32) yi)
%1774 = (/.f32 yi #s(literal 2 binary32))
%1790 = (*.f32 (neg.f32 %504) xi)
%1792 = (*.f32 %1062 %504)
%1794 = (*.f32 %59 %898)
%1796 = (neg.f32 %899)
%1798 = (*.f32 %1278 yi)
%1800 = (neg.f32 %1798)
%1802 = (fma.f32 %898 %58 %1771)
%1824 = (fma.f32 %907 ux %899)
%1827 = (*.f32 (neg.f32 zi) %363)
%1835 = (fma.f32 %1290 yi %911)
%1840 = (fma.f32 %898 %58 %1835)
%1841 = (fma.f32 %898 %58 %911)
%1843 = (-.f32 %899 %1827)
%1866 = (*.f32 %395 zi)
%1868 = (neg.f32 %1827)
%1884 = (- (* (+ (* %149 yi) (* xi (cos (* (* -2 uy) %145)))) %144) %1084)
%1885 = (approx %1884 %1086)
%1887 = (approx %1884 %1178)
%1893 = (*.f32 %937 %151)
%1897 = (*.f32 (neg.f32 (neg.f32 %151)) yi)
%1899 = (neg.f32 %1893)
%1911 = (fma.f32 %151 yi %899)
%1934 = (fma.f32 %151 yi %911)
%1945 = (fma.f32 %151 yi %1841)
uy
#s(literal 2 binary32)
%2
%3
%5
%8
%10
%12
%13
%14
%16
%11
%18
%19
%21
%23
%24
%25
%26
%27
%30
%32
%34
%36
%38
%39
%40
%41
%42
%43
%44
%49
%64
%67
%70
%71
%72
%73
%75
%76
%77
%79
%80
%81
%84
%86
%89
%92
%94
%96
%97
%98
%58
#s(literal 1 binary32)
ux
(-.f32 #s(literal 1 binary32) %101)
%103
(pow.f32 %103 #s(literal 1 binary32))
(+.f32 %100 #s(literal 1 binary32))
(+.f32 #s(literal 1 binary32) %100)
(neg.f32 %107)
maxCos
xi
yi
zi
%22
(*.f32 uy %19)
(pow.f32 %22 #s(literal 1 binary32))
%21
%23
%24
%25
%26
%27
%30
%32
%34
%36
%38
%39
%40
%41
%42
%43
%44
%116
%118
%119
%120
%121
%122
%123
%74
%124
(*.f32 ux %103)
(pow.f32 %124 #s(literal 1 binary32))
(+.f32 ux (*.f32 ux %100))
(+.f32 ux (*.f32 %100 ux))
(neg.f32 (*.f32 %107 ux))
(neg.f32 (*.f32 ux %107))
%138
%139
#s(literal -2 binary32)
%151
(pow.f32 %151 #s(literal 1 binary32))
%153
(*.f32 ux zi)
(pow.f32 %153 #s(literal 1 binary32))
(*.f32 %156 zi)
(*.f32 %158 ux)
%160
(*.f32 zi %156)
(*.f32 maxCos %153)
(*.f32 ux %158)
(pow.f32 %160 #s(literal 1 binary32))
%158
(*.f32 maxCos zi)
(pow.f32 %158 #s(literal 1 binary32))
#s(literal 1/2 binary32)
(*.f32 %167 %167)
(*.f32 %28 %28)
%170
(pow.f32 %170 #s(literal 1 binary32))
(pow.f32 %19 #s(literal 2 binary32))
%173
(*.f32 %103 maxCos)
(fma.f32 maxCos #s(literal 1 binary32) %175)
(fma.f32 #s(literal 1 binary32) maxCos %177)
(pow.f32 %173 #s(literal 1 binary32))
(+.f32 (*.f32 maxCos #s(literal 1 binary32)) %175)
(+.f32 (*.f32 #s(literal 1 binary32) maxCos) %177)
(neg.f32 %184)
%2
%3
%5
%8
%10
%12
%13
%14
%16
%11
%18
(*.f32 %19 #s(literal 2 binary32))
(*.f32 #s(literal 2 binary32) %19)
(-.f32 %19 %28)
(pow.f32 %20 #s(literal 1 binary32))
(+.f32 %19 %190)
%20
(neg.f32 (-.f32 %28 %19))
%54
(*.f32 uy #s(literal -2 binary32))
(pow.f32 %54 #s(literal 1 binary32))
(neg.f32 %11)
%21
%23
%24
%25
%26
%27
%30
%32
%34
%36
%38
%39
%40
%41
%42
%43
%44
%116
%118
%119
%120
%121
%122
%123
%74
%61
(*.f32 %19 #s(literal 1/2 binary32))
(/.f32 (*.f32 %19 #s(literal 1 binary32)) #s(literal 2 binary32))
(/.f32 (*.f32 #s(literal 1 binary32) %19) #s(literal 2 binary32))
(/.f32 %28 #s(literal -2 binary32))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %19))
(/.f32 %19 #s(literal 2 binary32))
(pow.f32 %61 #s(literal 1 binary32))
%107
(pow.f32 %107 #s(literal 1 binary32))
(+.f32 #s(literal -1 binary32) %101)
(+.f32 #s(literal -1 binary32) ux)
(+.f32 ux #s(literal -1 binary32))
(neg.f32 %103)
%184
(*.f32 maxCos %107)
(fma.f32 maxCos ux %214)
(fma.f32 maxCos ux %216)
(fma.f32 ux maxCos %214)
(fma.f32 ux maxCos %216)
(pow.f32 %184 #s(literal 1 binary32))
(+.f32 %156 %214)
(+.f32 %156 %216)
(neg.f32 %173)
(*.f32 %156 %103)
%225
(*.f32 %124 maxCos)
(*.f32 maxCos %124)
(*.f32 %103 %156)
(*.f32 ux %173)
(pow.f32 %225 #s(literal 1 binary32))
(neg.f32 %231)
(*.f32 %156 %124)
(*.f32 %234 %173)
%236
(*.f32 %173 %234)
(*.f32 %124 %156)
(*.f32 maxCos (*.f32 %124 ux))
(*.f32 maxCos (*.f32 %103 %234))
(*.f32 %103 (*.f32 %156 ux))
(*.f32 %103 (*.f32 maxCos %234))
(*.f32 ux %225)
(pow.f32 %236 #s(literal 1 binary32))
(-.f32 %250 #s(literal -1 binary32))
(-.f32 #s(literal 1 binary32) (*.f32 (neg.f32 %253) %256))
(-.f32 #s(literal 1 binary32) (*.f32 (neg.f32 %260) ux))
(-.f32 #s(literal 1 binary32) (*.f32 %264 %184))
(-.f32 #s(literal 1 binary32) (*.f32 %267 %124))
(fma.f32 %249 %124 #s(literal 1 binary32))
(fma.f32 (*.f32 %231 %103) %156 #s(literal 1 binary32))
(fma.f32 (*.f32 %231 ux) %173 #s(literal 1 binary32))
(fma.f32 (*.f32 %236 %107) maxCos #s(literal 1 binary32))
(fma.f32 (*.f32 %253 %255) %234 #s(literal 1 binary32))
(fma.f32 (*.f32 %253 %234) %255 #s(literal 1 binary32))
(fma.f32 (*.f32 %184 %173) %234 #s(literal 1 binary32))
(fma.f32 (neg.f32 %283) ux #s(literal 1 binary32))
(fma.f32 (neg.f32 %287) %234 #s(literal 1 binary32))
(fma.f32 (neg.f32 %292) %255 #s(literal 1 binary32))
(fma.f32 %295 %290 #s(literal 1 binary32))
(fma.f32 %298 %297 #s(literal 1 binary32))
(fma.f32 %292 (neg.f32 %255) #s(literal 1 binary32))
(fma.f32 %283 %100 #s(literal 1 binary32))
(fma.f32 %260 ux #s(literal 1 binary32))
(fma.f32 %304 %107 #s(literal 1 binary32))
(fma.f32 %253 %256 #s(literal 1 binary32))
(fma.f32 %287 %307 #s(literal 1 binary32))
(fma.f32 %297 %298 #s(literal 1 binary32))
(fma.f32 %231 %225 #s(literal 1 binary32))
(fma.f32 %256 %253 #s(literal 1 binary32))
(fma.f32 %290 %295 #s(literal 1 binary32))
%313
(fma.f32 %184 %236 #s(literal 1 binary32))
(fma.f32 %107 %304 #s(literal 1 binary32))
(fma.f32 %225 %231 #s(literal 1 binary32))
(fma.f32 %173 (*.f32 %234 %184) #s(literal 1 binary32))
(fma.f32 %173 %264 #s(literal 1 binary32))
(fma.f32 maxCos (*.f32 %107 %236) #s(literal 1 binary32))
(fma.f32 ux %260 #s(literal 1 binary32))
(pow.f32 %313 #s(literal 1 binary32))
(+.f32 %250 #s(literal 1 binary32))
(+.f32 #s(literal 1 binary32) %250)
(neg.f32 (-.f32 #s(literal -1 binary32) %250))
(neg.f32 (fma.f32 %231 %231 #s(literal -1 binary32)))
(sqrt.f32 (*.f32 %330 %330))
%330
(pow.f32 %330 #s(literal 1 binary32))
(pow.f32 %313 #s(literal 1/2 binary32))
(sin.f32 (acos.f32 %335))
(sin.f32 (acos.f32 %298))
(sin.f32 (+.f32 %340 %61))
(sin.f32 (acos.f32 %297))
(sin.f32 (acos.f32 %231))
(sin.f32 (acos.f32 %225))
(fabs.f32 %349)
(fabs.f32 %330)
(cos.f32 (asin.f32 %335))
(cos.f32 (asin.f32 %298))
(cos.f32 (asin.f32 %231))
(cos.f32 (fabs.f32 %340))
(cos.f32 (asin.f32 %297))
(cos.f32 %340)
%363
%364
%374
%375
%377
%380
%382
%384
%385
(*.f32 (*.f32 %386 ux) ux)
(*.f32 %390 %390)
(*.f32 %392 %392)
(*.f32 %395 %395)
(*.f32 %397 ux)
%366
(*.f32 %386 %234)
(*.f32 %389 %389)
(*.f32 %394 %394)
(*.f32 %234 %386)
(*.f32 %363 %363)
(*.f32 %138 (*.f32 %138 %234))
(*.f32 %138 %365)
(*.f32 ux %397)
(/.f32 (-.f32 (cos.f32 (-.f32 %379 %379)) (cos.f32 (+.f32 %379 %379))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %379 %381)) (sin.f32 (+.f32 %379 %381))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %379 %383)) (sin.f32 (+.f32 %379 %383))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %379 %378)) (sin.f32 (+.f32 %379 %378))) #s(literal 2 binary32))
(pow.f32 %389 #s(literal 2 binary32))
(pow.f32 %394 #s(literal 2 binary32))
(pow.f32 %366 #s(literal 1 binary32))
(pow.f32 %363 #s(literal 2 binary32))
(fabs.f32 %366)
(neg.f32 %437)
(-.f32 #s(literal 1 binary32) (*.f32 %395 %363))
%367
(fma.f32 (*.f32 %394 %138) ux #s(literal 1 binary32))
(fma.f32 (*.f32 %394 ux) %138 #s(literal 1 binary32))
(fma.f32 (neg.f32 %397) ux #s(literal 1 binary32))
(fma.f32 (neg.f32 %386) %234 #s(literal 1 binary32))
(fma.f32 (neg.f32 %138) %365 #s(literal 1 binary32))
(fma.f32 %392 %389 #s(literal 1 binary32))
(fma.f32 %395 %394 #s(literal 1 binary32))
(fma.f32 %397 %100 #s(literal 1 binary32))
(fma.f32 %386 %307 #s(literal 1 binary32))
(fma.f32 %389 %392 #s(literal 1 binary32))
(fma.f32 %394 %395 #s(literal 1 binary32))
(fma.f32 %394 %363 #s(literal 1 binary32))
(fma.f32 %363 %394 #s(literal 1 binary32))
(fma.f32 %138 (neg.f32 %365) #s(literal 1 binary32))
(pow.f32 %367 #s(literal 1 binary32))
(+.f32 %437 #s(literal 1 binary32))
(+.f32 #s(literal 1 binary32) %437)
(neg.f32 (fma.f32 %363 %363 #s(literal -1 binary32)))
(sqrt.f32 (*.f32 %368 %368))
%368
(-.f32 (/.f32 (+.f32 %368 %368) #s(literal 2 binary32)) (*.f32 %52 (sin.f32 %369)))
(pow.f32 %368 #s(literal 1 binary32))
(pow.f32 %367 #s(literal 1/2 binary32))
(sin.f32 (acos.f32 %390))
(sin.f32 (acos.f32 %392))
(sin.f32 (acos.f32 %395))
(sin.f32 %481)
(sin.f32 %483)
(sin.f32 %485)
(sin.f32 %378)
(fabs.f32 (neg.f32 %368))
(fabs.f32 %368)
(cos.f32 (asin.f32 %390))
(cos.f32 (asin.f32 %392))
(cos.f32 (asin.f32 %395))
(cos.f32 %497)
(cos.f32 %499)
(cos.f32 %501)
(cos.f32 %369)
%504
(*.f32 %58 %368)
(/.f32 (-.f32 (cos.f32 (-.f32 %481 %83)) (cos.f32 (+.f32 %481 %83))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %481 %85)) (cos.f32 (+.f32 %481 %85))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %481 %88)) (cos.f32 (+.f32 %481 %88))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %483 %83)) (cos.f32 (+.f32 %483 %83))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %483 %85)) (cos.f32 (+.f32 %483 %85))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %483 %88)) (cos.f32 (+.f32 %483 %88))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %485 %83)) (cos.f32 (+.f32 %485 %83))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %485 %85)) (cos.f32 (+.f32 %485 %85))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %485 %88)) (cos.f32 (+.f32 %485 %88))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %378 %83)) (cos.f32 (+.f32 %378 %83))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %378 %88)) (cos.f32 (+.f32 %378 %88))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %83 %481)) (cos.f32 (+.f32 %83 %481))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %83 %483)) (cos.f32 (+.f32 %83 %483))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %83 %485)) (cos.f32 (+.f32 %83 %485))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %83 %378)) (cos.f32 (+.f32 %83 %378))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %85 %481)) (cos.f32 (+.f32 %85 %481))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %85 %483)) (cos.f32 (+.f32 %85 %483))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %85 %485)) (cos.f32 (+.f32 %85 %485))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %88 %481)) (cos.f32 (fma.f32 %19 %87 %481))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %88 %483)) (cos.f32 (fma.f32 %19 %87 %483))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %88 %485)) (cos.f32 (fma.f32 %19 %87 %485))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %88 %378)) (cos.f32 (fma.f32 %19 %87 %378))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %481 %91)) (sin.f32 (+.f32 %481 %91))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %481 %93)) (sin.f32 (+.f32 %481 %93))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %481 %95)) (sin.f32 (+.f32 %481 %95))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %481 %55)) (sin.f32 (+.f32 %481 %55))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %481 %90)) (sin.f32 (+.f32 %481 %90))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 %668) (sin.f32 %670)) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %483 %91)) (sin.f32 (+.f32 %483 %91))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %483 %93)) (sin.f32 (+.f32 %483 %93))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %483 %95)) (sin.f32 (+.f32 %483 %95))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %483 %55)) (sin.f32 (+.f32 %483 %55))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %483 %90)) (sin.f32 (+.f32 %483 %90))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 %704) (sin.f32 %706)) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %485 %91)) (sin.f32 (+.f32 %485 %91))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %485 %93)) (sin.f32 (+.f32 %485 %93))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %485 %95)) (sin.f32 (+.f32 %485 %95))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %485 %55)) (sin.f32 (+.f32 %485 %55))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %485 %90)) (sin.f32 (+.f32 %485 %90))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 %740) (sin.f32 %742)) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %378 %91)) (sin.f32 (+.f32 %378 %91))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %378 %93)) (sin.f32 (+.f32 %378 %93))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %378 %95)) (sin.f32 (+.f32 %378 %95))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %83 %499)) (sin.f32 (+.f32 %83 %499))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %83 %501)) (sin.f32 (+.f32 %83 %501))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %83 %497)) (sin.f32 (+.f32 %83 %497))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %83 %369)) (sin.f32 (+.f32 %83 %369))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %85 %499)) (sin.f32 (+.f32 %85 %499))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %85 %501)) (sin.f32 (+.f32 %85 %501))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %85 %497)) (sin.f32 (+.f32 %85 %497))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %88 %499)) (sin.f32 (fma.f32 %19 %87 %499))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %88 %501)) (sin.f32 (fma.f32 %19 %87 %501))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %88 %497)) (sin.f32 (fma.f32 %19 %87 %497))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %88 %369)) (sin.f32 (fma.f32 %19 %87 %369))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %369 %55)) (cos.f32 (-.f32 %369 %55))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %369 %90)) (cos.f32 (-.f32 %369 %90))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %369 %24)) (cos.f32 %844)) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (fma.f32 %848 uy %369)) (cos.f32 (-.f32 %55 %369))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (fma.f32 %82 #s(literal 2 binary32) %369)) (cos.f32 (-.f32 %90 %369))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 %861) (cos.f32 %863)) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %378 %85)) (cos.f32 %870)) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %85 %378)) (cos.f32 (+.f32 %85 %378))) #s(literal 2 binary32))
(/.f32 (+.f32 %880 %882) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %378 %90)) (sin.f32 (+.f32 %378 %90))) #s(literal 2 binary32))
(/.f32 (+.f32 %882 %880) #s(literal 2 binary32))
(/.f32 (+.f32 %880 (sin.f32 (+.f32 %85 %369))) #s(literal 2 binary32))
(pow.f32 %504 #s(literal 1 binary32))
%899
(*.f32 %900 %368)
(*.f32 %504 xi)
(*.f32 %368 %900)
(*.f32 xi %504)
(*.f32 %58 %898)
(pow.f32 %899 #s(literal 1 binary32))
(*.f32 %907 ux)
(*.f32 %909 ux)
%911
(*.f32 %153 %138)
(*.f32 %138 %153)
(*.f32 zi %363)
(*.f32 ux %909)
(pow.f32 %911 #s(literal 1 binary32))
%917
(*.f32 yi %151)
(pow.f32 %917 #s(literal 1 binary32))
(*.f32 (*.f32 xi %19) %19)
%922
(*.f32 xi %170)
(*.f32 %19 (*.f32 %19 xi))
(pow.f32 %922 #s(literal 1 binary32))
%927
(*.f32 %19 yi)
(pow.f32 %927 #s(literal 1 binary32))
(*.f32 %930 %19)
(*.f32 %927 #s(literal 2 binary32))
%933
(*.f32 yi %20)
(*.f32 %19 %930)
(*.f32 #s(literal 2 binary32) %927)
(-.f32 %927 (*.f32 %937 %19))
(-.f32 %927 (*.f32 %28 yi))
(-.f32 %927 (neg.f32 %927))
(fma.f32 %927 #s(literal 1 binary32) %944)
(fma.f32 yi %19 %927)
(fma.f32 #s(literal 1 binary32) %927 %947)
(fma.f32 %19 yi %927)
(pow.f32 %933 #s(literal 1 binary32))
(+.f32 %944 %944)
(+.f32 %947 %947)
(+.f32 %927 %927)
(*.f32 (*.f32 %954 %19) %19)
(*.f32 (*.f32 uy %170) xi)
(*.f32 %954 %170)
%960
(*.f32 %170 %954)
(*.f32 xi (*.f32 %170 uy))
(*.f32 uy %922)
(pow.f32 %960 #s(literal 1 binary32))
%967
(-.f32 %968 %969)
(-.f32 %933 (*.f32 (neg.f32 %960) #s(literal -2 binary32)))
(-.f32 %933 (*.f32 %974 %922))
(-.f32 %933 (*.f32 #s(literal 2 binary32) %960))
(-.f32 %933 (neg.f32 %968))
(fma.f32 %981 xi %982)
(fma.f32 %981 xi %933)
(fma.f32 %985 %170 %982)
(fma.f32 %985 %170 %933)
(fma.f32 %988 %170 %982)
(fma.f32 %988 %170 %933)
(fma.f32 %991 uy %982)
(fma.f32 %991 uy %933)
(fma.f32 %954 %994 %982)
(fma.f32 %954 %994 %933)
(fma.f32 %930 %19 %968)
(fma.f32 %960 #s(literal -2 binary32) %982)
(fma.f32 %960 #s(literal -2 binary32) %933)
(fma.f32 %927 #s(literal 2 binary32) %968)
(fma.f32 %922 %54 %982)
(fma.f32 %922 %54 %933)
(fma.f32 %54 %922 %982)
(fma.f32 %54 %922 %933)
(fma.f32 %20 yi %968)
(fma.f32 #s(literal -2 binary32) %960 %982)
(fma.f32 #s(literal -2 binary32) %960 %933)
(fma.f32 yi %20 %968)
(fma.f32 yi %19 %1009)
(fma.f32 %19 %930 %968)
(fma.f32 %19 yi %1009)
(fma.f32 #s(literal 2 binary32) %927 %968)
(fma.f32 uy %1014 %982)
(fma.f32 uy %1014 %933)
(fma.f32 uy %991 %982)
(fma.f32 uy %991 %933)
(pow.f32 %967 #s(literal 1 binary32))
(+.f32 (fma.f32 %991 uy %927) %927)
(+.f32 %968 %982)
(+.f32 %968 %933)
(+.f32 %933 %968)
(+.f32 %927 %1009)
(neg.f32 (-.f32 %969 %968))
%1028
(*.f32 uy %967)
(-.f32 %1030 (*.f32 %4 %933))
(-.f32 %1030 (*.f32 %969 uy))
(-.f32 %1030 (neg.f32 %1035))
(fma.f32 %1038 #s(literal -2 binary32) %1035)
(fma.f32 %1040 %922 %1035)
(fma.f32 %1042 %19 %1030)
(fma.f32 (*.f32 uy %927) #s(literal 2 binary32) %1030)
(fma.f32 %930 %22 %1030)
(fma.f32 %968 uy %1035)
(fma.f32 %960 %54 %1035)
(fma.f32 %933 uy %1030)
(fma.f32 %927 %11 %1030)
(fma.f32 %54 %960 %1035)
(fma.f32 #s(literal -2 binary32) %1052 %1035)
(fma.f32 %11 %927 %1030)
(fma.f32 #s(literal 2 binary32) (*.f32 %927 uy) %1030)
(fma.f32 uy %968 %1035)
(fma.f32 uy %933 %1030)
(pow.f32 %1028 #s(literal 1 binary32))
(+.f32 %1030 %1035)
(+.f32 %1035 %1030)
(-.f32 %160 %1062)
(-.f32 xi %1065)
(fma.f32 %156 zi xi)
%1068
(fma.f32 %153 maxCos xi)
(fma.f32 zi %156 xi)
(fma.f32 maxCos %153 xi)
(fma.f32 ux %158 xi)
(pow.f32 %1068 #s(literal 1 binary32))
(+.f32 %160 xi)
(+.f32 xi (*.f32 (neg.f32 %252) %153))
(+.f32 xi (neg.f32 %1065))
(+.f32 xi %160)
(neg.f32 (-.f32 %1065 xi))
%1086
(pow.f32 %1086 #s(literal 1 binary32))
(-.f32 %1028 %1065)
(-.f32 %160 %1089)
(fma.f32 %1038 #s(literal -2 binary32) %1091)
(fma.f32 %1040 %922 %1091)
(fma.f32 %156 zi %1094)
(fma.f32 %156 zi %1096)
(fma.f32 %156 zi %1028)
(fma.f32 %968 uy %1091)
%1100
(fma.f32 %960 %54 %1091)
(fma.f32 %54 %960 %1091)
(fma.f32 %158 ux %1094)
(fma.f32 %158 ux %1096)
(fma.f32 %158 ux %1028)
(fma.f32 %153 maxCos %1094)
(fma.f32 %153 maxCos %1096)
(fma.f32 %153 maxCos %1028)
(fma.f32 #s(literal -2 binary32) %1052 %1091)
(fma.f32 zi %156 %1094)
(fma.f32 zi %156 %1096)
(fma.f32 zi %156 %1028)
(fma.f32 maxCos %153 %1094)
(fma.f32 maxCos %153 %1096)
(fma.f32 maxCos %153 %1028)
(fma.f32 ux %158 %1094)
(fma.f32 ux %158 %1096)
(fma.f32 ux %158 %1028)
(fma.f32 uy %968 %1091)
(fma.f32 uy %967 %160)
(pow.f32 %1100 #s(literal 1 binary32))
(+.f32 (fma.f32 %156 zi %1030) %1035)
(+.f32 %1030 %1091)
(+.f32 %1028 %160)
(+.f32 %160 %1094)
(+.f32 %160 %1096)
(+.f32 %160 %1028)
(neg.f32 %1129)
(-.f32 %1100 %1062)
(-.f32 %1068 %1089)
(-.f32 %160 (-.f32 %1089 xi))
(-.f32 xi (-.f32 %1065 %1028))
(-.f32 xi %1129)
(fma.f32 %156 zi %1138)
(fma.f32 %156 zi %1140)
%1142
(fma.f32 %158 ux %1138)
(fma.f32 %158 ux %1140)
(fma.f32 %153 maxCos %1138)
(fma.f32 %153 maxCos %1140)
(fma.f32 zi %156 %1138)
(fma.f32 zi %156 %1140)
(fma.f32 maxCos %153 %1138)
(fma.f32 maxCos %153 %1140)
(fma.f32 ux %158 %1138)
(fma.f32 ux %158 %1140)
(fma.f32 uy %967 %1068)
(pow.f32 %1142 #s(literal 1 binary32))
(+.f32 (+.f32 %1068 %1030) %1035)
(+.f32 %1140 %160)
(+.f32 %1100 xi)
(+.f32 %1068 %1028)
(+.f32 %1028 %1068)
(+.f32 %160 %1138)
(+.f32 %160 %1140)
(+.f32 xi %1100)
(neg.f32 (-.f32 %1129 xi))
%1178
(pow.f32 %1178 #s(literal 1 binary32))
%88
(*.f32 %19 (+.f32 #s(literal 1/2 binary32) %54))
(-.f32 %55 %51)
(-.f32 %61 (*.f32 %974 %19))
(-.f32 %61 (*.f32 %28 %54))
(-.f32 %61 %93)
(-.f32 %61 %24)
(fma.f32 %848 uy %1189)
(fma.f32 %848 uy %1191)
(fma.f32 %848 uy %61)
(fma.f32 %1194 uy %1189)
(fma.f32 %1194 uy %1191)
(fma.f32 %1194 uy %61)
(fma.f32 %1198 uy %1189)
(fma.f32 %1198 uy %1191)
(fma.f32 %1198 uy %61)
(fma.f32 %33 #s(literal 2 binary32) %1189)
(fma.f32 %33 #s(literal 2 binary32) %1191)
(fma.f32 %33 #s(literal 2 binary32) %61)
(fma.f32 %28 %11 %1189)
(fma.f32 %28 %11 %1191)
(fma.f32 %28 %11 %61)
(fma.f32 %4 %20 %1189)
(fma.f32 %4 %20 %1191)
(fma.f32 %4 %20 %61)
(fma.f32 %54 %19 %1189)
(fma.f32 %54 %19 %1191)
(fma.f32 %54 %19 %61)
(fma.f32 %20 %4 %1189)
(fma.f32 %20 %4 %1191)
(fma.f32 %20 %4 %61)
(fma.f32 #s(literal 1/2 binary32) %19 %55)
(fma.f32 #s(literal -2 binary32) %22 %1189)
(fma.f32 #s(literal -2 binary32) %22 %1191)
(fma.f32 #s(literal -2 binary32) %22 %61)
(fma.f32 %22 #s(literal -2 binary32) %1189)
(fma.f32 %22 #s(literal -2 binary32) %1191)
(fma.f32 %22 #s(literal -2 binary32) %61)
(fma.f32 %19 %54 %1189)
(fma.f32 %19 %54 %1191)
(fma.f32 %19 %54 %61)
(fma.f32 %19 #s(literal 1/2 binary32) %55)
(fma.f32 %11 %28 %1189)
(fma.f32 %11 %28 %1191)
(fma.f32 %11 %28 %61)
(fma.f32 #s(literal 2 binary32) %33 %1189)
(fma.f32 #s(literal 2 binary32) %33 %1191)
(fma.f32 #s(literal 2 binary32) %33 %61)
(fma.f32 uy %1194 %1189)
(fma.f32 uy %1194 %1191)
(fma.f32 uy %1194 %61)
(fma.f32 uy %1198 %1189)
(fma.f32 uy %1198 %1191)
(fma.f32 uy %1198 %61)
(pow.f32 %88 #s(literal 1 binary32))
(+.f32 %55 %1189)
(+.f32 %55 %1191)
(+.f32 %55 %61)
(+.f32 %61 %55)
(neg.f32 (-.f32 %51 %55))
%49
%64
%67
%70
%71
%72
%73
%75
%76
%77
%79
%80
%81
%84
%86
%89
%92
%94
%96
%97
%98
%58
%138
%139
%363
%364
%374
%375
%377
%380
%382
%384
%385
(-.f32 %61 %369)
(fma.f32 #s(literal 1/2 binary32) %19 %497)
(fma.f32 %19 #s(literal 1/2 binary32) %497)
(pow.f32 %378 #s(literal 1 binary32))
(+.f32 %61 %497)
%378
(neg.f32 %383)
%1253
(fma.f32 %20 uy %383)
(fma.f32 %22 #s(literal 2 binary32) %383)
(fma.f32 %19 %11 %383)
(fma.f32 %19 uy %1257)
(fma.f32 %19 uy %1259)
(fma.f32 %11 %19 %383)
(fma.f32 #s(literal 2 binary32) %22 %383)
(fma.f32 uy %20 %383)
(fma.f32 uy %19 %1257)
(fma.f32 uy %19 %1259)
(pow.f32 %1253 #s(literal 1 binary32))
(+.f32 (-.f32 %24 %61) %369)
(+.f32 %383 %24)
(+.f32 %22 %1257)
(+.f32 %22 %1259)
(+.f32 %24 %383)
(neg.f32 %881)
(-.f32 %1274 %1276)
(-.f32 %1274 %1278)
(fma.f32 %1280 %52 %1282)
(fma.f32 %1285 #s(literal -1/2 binary32) %1274)
(fma.f32 %1287 #s(literal 1/2 binary32) %1274)
(fma.f32 %368 %74 %1274)
(fma.f32 %363 %58 %1290)
(fma.f32 #s(literal 1/2 binary32) %1287 %1274)
(fma.f32 %74 %368 %1274)
(fma.f32 #s(literal -2 binary32) %1301 %1274)
(fma.f32 #s(literal -2 binary32) %1303 %1274)
(fma.f32 %58 %363 %1290)
(fma.f32 #s(literal 2 binary32) %1306 %1274)
(pow.f32 %1281 #s(literal 1 binary32))
(+.f32 (*.f32 %1280 %52) %1282)
(+.f32 %1274 %1290)
(+.f32 %1290 %1274)
(sin.f32 (+.f32 %881 %61))
(sin.f32 (+.f32 %1315 %61))
(sin.f32 %1318)
(cos.f32 (neg.f32 %1315))
(cos.f32 (fabs.f32 %1315))
%1281
(cos.f32 %1315)
(cos.f32 %1253)
(-.f32 %85 %369)
(-.f32 %61 %844)
(-.f32 %378 %55)
(-.f32 %24 %383)
%869
(fma.f32 %22 #s(literal 2 binary32) %378)
(fma.f32 %19 %11 %378)
(fma.f32 %19 uy %1332)
(fma.f32 %19 uy %1334)
(fma.f32 %11 %19 %378)
(fma.f32 #s(literal 2 binary32) %22 %378)
(fma.f32 uy %20 %378)
(fma.f32 uy %19 %1332)
(fma.f32 uy %19 %1334)
(pow.f32 %869 #s(literal 1 binary32))
(+.f32 (+.f32 %378 %22) %22)
(+.f32 %378 %24)
(+.f32 %22 %1332)
(+.f32 %22 %1334)
(+.f32 %24 %378)
(neg.f32 %1348)
(-.f32 %1274 %1290)
(fma.f32 %880 %52 %1351)
(fma.f32 %363 %58 %1276)
(fma.f32 %363 %58 %1278)
(fma.f32 %58 %363 %1276)
(fma.f32 %58 %363 %1278)
(pow.f32 %1284 #s(literal 1 binary32))
(+.f32 (*.f32 %880 %52) %1351)
(+.f32 %1274 %1276)
(+.f32 %1274 %1278)
(sin.f32 (+.f32 %1348 %61))
(sin.f32 (+.f32 %1364 %61))
(sin.f32 %870)
(cos.f32 (neg.f32 %1364))
(cos.f32 (fabs.f32 %1364))
(cos.f32 %1348)
(cos.f32 %1364)
%1284
(neg.f32 %1374)
(*.f32 (*.f32 #s(literal -2 binary32) %1299) %1296)
(*.f32 %1300 #s(literal -2 binary32))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %881 %1348) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %881 %1348) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %881 %1364) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %881 %1364) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %881 %869) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %881 %869) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %1315 %1348) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %1315 %1348) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %1315 %1364) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %1315 %1364) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %1315 %869) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %1315 %869) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %1253 %1364) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %1253 %1364) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) %1300)
(*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %1318 %870) #s(literal 2 binary32))) (cos.f32 (/.f32 (+.f32 %1318 %870) #s(literal 2 binary32)))))
%1287
(fma.f32 %363 %58 %1444)
(fma.f32 %363 %58 %1446)
(fma.f32 %58 %363 %1444)
(fma.f32 %58 %363 %1446)
(pow.f32 %1287 #s(literal 1 binary32))
(+.f32 (-.f32 %1281 %1274) %1290)
(+.f32 %1374 %1281)
(+.f32 %1274 %1444)
(+.f32 %1274 %1446)
(+.f32 %1281 %1374)
(neg.f32 %1285)
(*.f32 %1285 #s(literal -1/2 binary32))
(*.f32 %1287 #s(literal 1/2 binary32))
%1290
(*.f32 #s(literal 1/2 binary32) %1287)
(*.f32 %74 %368)
(*.f32 #s(literal -2 binary32) %1301)
(*.f32 #s(literal -2 binary32) %1303)
(*.f32 #s(literal 2 binary32) %1306)
(/.f32 (-.f32 (cos.f32 %668) (cos.f32 %670)) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 %704) (cos.f32 %706)) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 %740) (cos.f32 %742)) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %24 %481)) (cos.f32 (fma.f32 %20 uy %481))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %24 %483)) (cos.f32 (fma.f32 %20 uy %483))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %24 %485)) (cos.f32 (fma.f32 %20 uy %485))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %24 %499)) (sin.f32 (fma.f32 %20 uy %499))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %24 %501)) (sin.f32 (fma.f32 %20 uy %501))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %24 %497)) (sin.f32 (fma.f32 %20 uy %497))) #s(literal 2 binary32))
(/.f32 (*.f32 %1287 #s(literal 1 binary32)) #s(literal 2 binary32))
(/.f32 (-.f32 (*.f32 %1515 #s(literal 2 binary32)) %1284) #s(literal 2 binary32))
(/.f32 (-.f32 (*.f32 %1281 #s(literal 2 binary32)) (*.f32 #s(literal 2 binary32) %1284)) #s(literal 4 binary32))
(/.f32 (+.f32 (sin.f32 %863) (sin.f32 %861)) #s(literal 2 binary32))
(/.f32 %1285 #s(literal -2 binary32))
(/.f32 %1287 #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal -2 binary32) %1285))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %1287))
(-.f32 %1515 %1534)
(fma.f32 %1281 #s(literal 1/2 binary32) %1536)
(fma.f32 %1281 #s(literal 1/2 binary32) %1538)
(pow.f32 %1290 #s(literal 1 binary32))
(+.f32 %1515 %1536)
(+.f32 %1515 %1538)
(neg.f32 %1278)
%900
(*.f32 %58 xi)
(fma.f32 %57 xi %1545)
(fma.f32 xi %57 %1547)
(pow.f32 %900 #s(literal 1 binary32))
(+.f32 (*.f32 xi %57) %1547)
(+.f32 (*.f32 %57 xi) %1545)
(-.f32 %1554 %1555)
(-.f32 %900 (*.f32 %1275 yi))
(-.f32 %900 (*.f32 %937 %74))
(-.f32 %900 (neg.f32 %1554))
(fma.f32 %930 %117 %1564)
(fma.f32 %930 %117 %1566)
(fma.f32 %930 %117 %900)
(fma.f32 %74 yi %1564)
(fma.f32 %74 yi %1566)
%1571
(fma.f32 yi %74 %1564)
(fma.f32 yi %74 %1566)
(fma.f32 yi %74 %900)
(fma.f32 xi %58 %1554)
(fma.f32 %58 xi %1554)
(fma.f32 #s(literal 2 binary32) %1577 %1564)
(fma.f32 #s(literal 2 binary32) %1577 %1566)
(fma.f32 #s(literal 2 binary32) %1577 %900)
(pow.f32 %1571 #s(literal 1 binary32))
(+.f32 %1554 %1564)
(+.f32 %1554 %1566)
(+.f32 %1554 %900)
(+.f32 %900 %1554)
(neg.f32 (-.f32 %1555 %1554))
%1588
(*.f32 %330 %1571)
(-.f32 %1591 (*.f32 %349 %900))
(-.f32 %1591 (*.f32 %1555 %330))
(-.f32 %1591 (*.f32 (neg.f32 %1596) xi))
(-.f32 %1591 (*.f32 %1062 %1596))
(-.f32 %1591 (*.f32 %59 %1602))
(-.f32 %1591 (neg.f32 %1605))
(-.f32 %1605 %1609)
(fma.f32 %1590 %74 %1605)
(fma.f32 %1554 %330 %1605)
(fma.f32 %1596 xi %1615)
(fma.f32 %1596 xi %1617)
(fma.f32 %1596 xi %1591)
(fma.f32 %900 %330 %1615)
(fma.f32 %900 %330 %1617)
(fma.f32 %900 %330 %1591)
(fma.f32 %1602 %58 %1615)
(fma.f32 %1602 %58 %1617)
(fma.f32 %1602 %58 %1591)
(fma.f32 %330 %1554 %1605)
(fma.f32 %330 %900 %1615)
(fma.f32 %330 %900 %1617)
(fma.f32 %330 %900 %1591)
(fma.f32 %1608 yi %1605)
(fma.f32 %74 %1590 %1605)
(fma.f32 yi %1608 %1605)
(fma.f32 xi %1596 %1615)
(fma.f32 xi %1596 %1617)
(fma.f32 xi %1596 %1591)
(fma.f32 %58 %1602 %1615)
(fma.f32 %58 %1602 %1617)
(fma.f32 %58 %1602 %1591)
(fma.f32 #s(literal 2 binary32) %1639 %1605)
(pow.f32 %1588 #s(literal 1 binary32))
(+.f32 %1591 %1605)
(+.f32 %1605 %1615)
(+.f32 %1605 %1617)
(+.f32 %1605 %1591)
(neg.f32 (-.f32 %1609 %1605))
(-.f32 %1649 %1609)
(-.f32 %1588 (*.f32 (neg.f32 %158) %124))
(-.f32 %1588 (*.f32 (neg.f32 %124) %158))
(-.f32 %1588 (*.f32 %100 %1658))
(-.f32 %1588 %1661)
(-.f32 %1605 (-.f32 %1609 %1664))
(-.f32 %1605 (fma.f32 %74 (neg.f32 %1590) %1661))
(-.f32 %1605 (neg.f32 %1670))
(-.f32 %1664 %1673)
(fma.f32 %1648 ux %1676)
(fma.f32 %1648 ux %1678)
%1680
(fma.f32 %1681 ux %1676)
(fma.f32 %1681 ux %1678)
(fma.f32 %1681 ux %1588)
(fma.f32 %1658 ux %1676)
(fma.f32 %1658 ux %1678)
(fma.f32 %1658 ux %1588)
(fma.f32 %1590 %74 %1688)
(fma.f32 %1590 %74 %1690)
(fma.f32 %156 %1657 %1676)
(fma.f32 %156 %1657 %1678)
(fma.f32 %156 %1657 %1588)
(fma.f32 %1554 %330 %1688)
(fma.f32 %1554 %330 %1690)
(fma.f32 %1596 xi %1670)
(fma.f32 %1571 %330 %1698)
(fma.f32 %1571 %330 %1664)
(fma.f32 %900 %330 %1670)
(fma.f32 %1602 %58 %1670)
(fma.f32 %330 %1554 %1688)
(fma.f32 %330 %1554 %1690)
(fma.f32 %330 %1571 %1698)
(fma.f32 %330 %1571 %1664)
(fma.f32 %330 %900 %1670)
(fma.f32 %1663 maxCos %1676)
(fma.f32 %1663 maxCos %1678)
(fma.f32 %1663 maxCos %1588)
(fma.f32 %1657 %156 %1676)
(fma.f32 %1657 %156 %1678)
(fma.f32 %1657 %156 %1588)
(fma.f32 %158 %124 %1676)
(fma.f32 %158 %124 %1678)
(fma.f32 %158 %124 %1588)
(fma.f32 %160 %103 %1676)
(fma.f32 %160 %103 %1678)
(fma.f32 %160 %103 %1588)
(fma.f32 %153 %173 %1676)
(fma.f32 %153 %173 %1678)
(fma.f32 %153 %173 %1588)
(fma.f32 %1608 yi %1688)
(fma.f32 %1608 yi %1690)
(fma.f32 %225 zi %1676)
(fma.f32 %225 zi %1678)
(fma.f32 %225 zi %1588)
(fma.f32 %74 %1590 %1688)
(fma.f32 %74 %1590 %1690)
(fma.f32 %173 %153 %1676)
(fma.f32 %173 %153 %1678)
(fma.f32 %173 %153 %1588)
(fma.f32 %124 %158 %1676)
(fma.f32 %124 %158 %1678)
(fma.f32 %124 %158 %1588)
(fma.f32 zi %225 %1676)
(fma.f32 zi %225 %1678)
(fma.f32 zi %225 %1588)
(fma.f32 yi %1608 %1688)
(fma.f32 yi %1608 %1690)
(fma.f32 xi %1596 %1670)
(fma.f32 maxCos %1663 %1676)
(fma.f32 maxCos %1663 %1678)
(fma.f32 maxCos %1663 %1588)
(fma.f32 %103 %160 %1676)
(fma.f32 %103 %160 %1678)
(fma.f32 %103 %160 %1588)
(fma.f32 ux %1658 %1676)
(fma.f32 ux %1658 %1678)
(fma.f32 ux %1658 %1588)
(fma.f32 %58 %1602 %1670)
(fma.f32 #s(literal 2 binary32) %1639 %1688)
(fma.f32 #s(literal 2 binary32) %1639 %1690)
(pow.f32 %1680 #s(literal 1 binary32))
(+.f32 %1649 %1591)
(+.f32 %1670 %1605)
(+.f32 %1588 %1698)
(+.f32 %1588 %1664)
(+.f32 %1591 %1688)
(+.f32 %1591 %1690)
(+.f32 %1605 %1670)
(+.f32 %1664 %1676)
(+.f32 %1664 %1678)
(+.f32 %1664 %1588)
(neg.f32 (-.f32 %1661 %1588))
(neg.f32 (-.f32 %1673 %1664))
(*.f32 %1769 #s(literal 1/2 binary32))
%1771
(*.f32 %1287 %1772)
(*.f32 %1287 %1774)
(*.f32 yi %1290)
(/.f32 (*.f32 yi %1285) #s(literal -2 binary32))
(/.f32 (*.f32 %1285 yi) #s(literal -2 binary32))
(/.f32 (neg.f32 %1769) #s(literal -2 binary32))
(/.f32 %1769 #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %1769))
(pow.f32 %1771 #s(literal 1 binary32))
(/.f32 (fma.f32 %899 #s(literal 2 binary32) %1769) #s(literal 2 binary32))
(-.f32 %1771 %1790)
(-.f32 %1771 %1792)
(-.f32 %1771 %1794)
(-.f32 %1771 %1796)
(-.f32 %899 %1798)
(fma.f32 %898 %58 %1800)
%1802
(fma.f32 %1769 #s(literal 1/2 binary32) %899)
(fma.f32 %900 %368 %1800)
(fma.f32 %900 %368 %1771)
(fma.f32 %1290 yi %899)
(fma.f32 %1287 %1772 %899)
(fma.f32 %1287 %1774 %899)
(fma.f32 %504 xi %1800)
(fma.f32 %504 xi %1771)
(fma.f32 %368 %900 %1800)
(fma.f32 %368 %900 %1771)
(fma.f32 yi %1290 %899)
(fma.f32 xi %504 %1800)
(fma.f32 xi %504 %1771)
(fma.f32 %58 %898 %1800)
(fma.f32 %58 %898 %1771)
(pow.f32 %1802 #s(literal 1 binary32))
(+.f32 %1771 %899)
(+.f32 %899 %1800)
(+.f32 %899 %1771)
(neg.f32 (-.f32 %1798 %899))
(-.f32 %1824 %1798)
(-.f32 %1802 %1827)
(-.f32 %911 (neg.f32 %1802))
(-.f32 %899 (-.f32 %1798 %911))
(-.f32 %899 (fma.f32 %1278 yi %1827))
(-.f32 %899 (neg.f32 %1835))
(fma.f32 %907 ux %1802)
(fma.f32 %909 ux %1802)
%1840
(fma.f32 %1769 #s(literal 1/2 binary32) %1841)
(fma.f32 %1769 #s(literal 1/2 binary32) %1843)
(fma.f32 %900 %368 %1835)
(fma.f32 %1290 yi %1841)
(fma.f32 %1290 yi %1843)
(fma.f32 %1287 %1772 %1841)
(fma.f32 %1287 %1772 %1843)
(fma.f32 %1287 %1774 %1841)
(fma.f32 %1287 %1774 %1843)
(fma.f32 %504 xi %1835)
(fma.f32 %368 %900 %1835)
(fma.f32 %363 zi %1802)
(fma.f32 %153 %138 %1802)
(fma.f32 %138 %153 %1802)
(fma.f32 zi %363 %1802)
(fma.f32 yi %1290 %1841)
(fma.f32 yi %1290 %1843)
(fma.f32 xi %504 %1835)
(fma.f32 ux %909 %1802)
(fma.f32 %58 %898 %1835)
(pow.f32 %1840 #s(literal 1 binary32))
(+.f32 %1824 %1771)
(+.f32 %1835 %899)
(+.f32 %1802 %1866)
(+.f32 %1802 %1868)
(+.f32 %1802 %911)
(+.f32 %1771 %1841)
(+.f32 %1771 %1843)
(+.f32 %911 %1802)
(+.f32 %899 %1835)
(neg.f32 (-.f32 %1827 %1802))
%1885
(pow.f32 %1885 #s(literal 1 binary32))
%1887
(pow.f32 %1887 #s(literal 1 binary32))
(-.f32 %917 %1790)
(-.f32 %917 %1792)
(-.f32 %917 %1794)
(-.f32 %917 %1796)
(-.f32 %899 %1893)
(fma.f32 %898 %58 %1897)
(fma.f32 %898 %58 %1899)
(fma.f32 %898 %58 %917)
(fma.f32 %900 %368 %1897)
(fma.f32 %900 %368 %1899)
(fma.f32 %900 %368 %917)
(fma.f32 %504 xi %1897)
(fma.f32 %504 xi %1899)
(fma.f32 %504 xi %917)
(fma.f32 %368 %900 %1897)
(fma.f32 %368 %900 %1899)
(fma.f32 %368 %900 %917)
%1911
(fma.f32 yi %151 %899)
(fma.f32 xi %504 %1897)
(fma.f32 xi %504 %1899)
(fma.f32 xi %504 %917)
(fma.f32 %58 %898 %1897)
(fma.f32 %58 %898 %1899)
(fma.f32 %58 %898 %917)
(pow.f32 %1911 #s(literal 1 binary32))
(+.f32 %917 %899)
(+.f32 %899 %1897)
(+.f32 %899 %1899)
(+.f32 %899 %917)
(neg.f32 (-.f32 %1893 %899))
(-.f32 %1824 %1893)
(-.f32 %1911 %1827)
(-.f32 %911 (neg.f32 %1911))
(-.f32 %899 (-.f32 %1893 %911))
(-.f32 %899 (fma.f32 %937 %151 %1827))
(-.f32 %899 (neg.f32 %1934))
(fma.f32 %907 ux %1911)
(fma.f32 %909 ux %1911)
(fma.f32 %898 %58 %1934)
(fma.f32 %900 %368 %1934)
(fma.f32 %504 xi %1934)
(fma.f32 %368 %900 %1934)
(fma.f32 %363 zi %1911)
(fma.f32 %153 %138 %1911)
%1945
(fma.f32 %151 yi %1843)
(fma.f32 %138 %153 %1911)
(fma.f32 zi %363 %1911)
(fma.f32 yi %151 %1841)
(fma.f32 yi %151 %1843)
(fma.f32 xi %504 %1934)
(fma.f32 ux %909 %1911)
(fma.f32 %58 %898 %1934)
(pow.f32 %1945 #s(literal 1 binary32))
(+.f32 %1824 %917)
(+.f32 %1934 %899)
(+.f32 %1911 %1866)
(+.f32 %1911 %1868)
(+.f32 %1911 %911)
(+.f32 %917 %1841)
(+.f32 %917 %1843)
(+.f32 %911 %1911)
(+.f32 %899 %1934)
(neg.f32 (-.f32 %1827 %1911))

reconstruct111.0ms (1.3%)

Memory
-30.6MiB live, 82.3MiB allocated; 75ms collecting garbage

eval345.0ms (4.1%)

Memory
28.3MiB live, 421.2MiB allocated; 50ms collecting garbage
Compiler

Compiled 113 819 to 9 284 computations (91.8% saved)

prune116.0ms (1.4%)

Memory
16.4MiB live, 215.3MiB allocated; 26ms collecting garbage
Pruning

58 alts after pruning (58 fresh and 0 done)

PrunedKeptTotal
New2 037472 084
Fresh131124
Picked505
Done000
Total2 055582 113
Accuracy
99.8%
Counts
2 113 → 58
Alt Table
Click to see full alt table
StatusAccuracyProgram
80.7%
%0 = (PI.f32 )
%9 = (approx (* maxCos (- 1 ux)) maxCos)
%10 = (*.f32 %9 ux)
%11 = (acos.f32 %10)
(fma.f32 (-.f32 (cos.f32 (fma.f32 (*.f32 %0 #s(literal -2 binary32)) uy %11)) (cos.f32 (fma.f32 (+.f32 %0 %0) uy %11))) (*.f32 #s(literal 1/2 binary32) yi) (fma.f32 (*.f32 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 %10 ux) %9))) xi) (cos.f32 (*.f32 %0 (+.f32 uy uy))) (*.f32 %10 zi)))
95.6%
%5 = (approx (* maxCos (- 1 ux)) maxCos)
%22 = (*.f32 (PI.f32 ) (+.f32 uy uy))
(fma.f32 (*.f32 %5 zi) ux (fma.f32 (approx (* (sin (acos (* (* (- ux 1) maxCos) ux))) (sin (* (PI ) (* 2 uy)))) (sin.f32 %22)) yi (*.f32 (*.f32 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 %5 ux) ux) %5))) xi) (cos.f32 %22))))
45.8%
%2 = (-.f32 #s(literal 1 binary32) ux)
%14 = (PI )
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin (* %14 (+ uy uy))) yi) (* (sin (+ (* (* -2 uy) %14) (* %14 1/2))) xi)) (*.f32 yi (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 ))))))))
90.3%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%26 = (PI.f32 )
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) (*.f32 yi %26) (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 xi (pow.f32 %26 #s(literal 2 binary32))) (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi (pow.f32 %26 #s(literal 3 binary32)))))))))))))
82.5%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (+.f32 xi (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (PI.f32 ))))))))
99.0%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%28 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (*.f32 xi (+.f32 (cos.f32 %28) (/.f32 (*.f32 yi (sin.f32 %28)) xi))))))
98.6%
%21 = (pow.f32 maxCos #s(literal 2 binary32))
%34 = (PI.f32 )
(fma.f32 (*.f32 ux (-.f32 #s(literal 1 binary32) ux)) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (approx (+ (* (* (- ux 1) maxCos) (* (* (* maxCos (- 1 ux)) ux) ux)) 1) (*.f32 (pow.f32 ux #s(literal 4 binary32)) (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %21 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %21 (/.f32 #s(literal 1 binary32) (pow.f32 ux #s(literal 2 binary32)))) ux))) ux) (*.f32 #s(literal -1 binary32) %21))))) (fma.f32 (sin.f32 (*.f32 %34 (+.f32 uy uy))) yi (*.f32 (sin.f32 (fma.f32 (*.f32 #s(literal -2 binary32) uy) %34 (*.f32 %34 #s(literal 1/2 binary32)))) xi))))
98.5%
%21 = (pow.f32 maxCos #s(literal 2 binary32))
%37 = (*.f32 (PI.f32 ) (+.f32 uy uy))
(fma.f32 (*.f32 ux (-.f32 #s(literal 1 binary32) ux)) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (approx (+ (* (* (- ux 1) maxCos) (* (* (* maxCos (- 1 ux)) ux) ux)) 1) (*.f32 (pow.f32 ux #s(literal 4 binary32)) (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %21 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %21 (/.f32 #s(literal 1 binary32) (pow.f32 ux #s(literal 2 binary32)))) ux))) ux) (*.f32 #s(literal -1 binary32) %21))))) (fma.f32 (sin.f32 %37) yi (*.f32 (cos.f32 %37) xi))))
95.7%
%0 = (PI.f32 )
%12 = (* (- 1 ux) maxCos)
%14 = (*.f32 (approx %12 maxCos) ux)
%26 = (* %12 ux)
(+.f32 (+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 %0 (fma.f32 #s(literal -2 binary32) uy #s(literal 1/2 binary32)))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %14 %14)))) xi) (*.f32 (approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %26 %26)))) (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy %0)))) yi)) (*.f32 %14 zi))
80.7%
%3 = (PI.f32 )
%9 = (- 1 ux)
%13 = (*.f32 (approx (* %9 maxCos) maxCos) ux)
%25 = (acos.f32 (*.f32 (approx (* maxCos %9) maxCos) ux))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %13 %13)))) xi) (/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) (*.f32 (-.f32 (cos.f32 (fma.f32 (*.f32 %3 #s(literal -2 binary32)) uy %25)) (cos.f32 (fma.f32 (+.f32 %3 %3) uy %25))) yi)))) (*.f32 %13 zi))
80.2%
%3 = (PI.f32 )
%9 = (- 1 ux)
%13 = (*.f32 (approx (* %9 maxCos) maxCos) ux)
%25 = (acos.f32 (*.f32 (approx (* maxCos %9) maxCos) ux))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %13 %13)))) xi) (*.f32 (/.f32 (-.f32 (cos.f32 (-.f32 (*.f32 %3 (+.f32 uy uy)) %25)) (sin.f32 (+.f32 (neg.f32 (fma.f32 (+.f32 %3 %3) uy %25)) (*.f32 #s(literal 1/2 binary32) %3)))) #s(literal 2 binary32)) yi)) (*.f32 %13 zi))
80.5%
%3 = (PI.f32 )
%9 = (- 1 ux)
%13 = (*.f32 (approx (* %9 maxCos) maxCos) ux)
%25 = (acos.f32 (*.f32 (approx (* maxCos %9) maxCos) ux))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %13 %13)))) xi) (*.f32 (/.f32 (-.f32 (cos.f32 (-.f32 (*.f32 %3 (+.f32 uy uy)) %25)) (cos.f32 (fma.f32 %3 uy (fma.f32 %3 uy %25)))) #s(literal 2 binary32)) yi)) (*.f32 %13 zi))
80.7%
%3 = (PI.f32 )
%9 = (- 1 ux)
%13 = (*.f32 (approx (* %9 maxCos) maxCos) ux)
%25 = (acos.f32 (*.f32 (approx (* maxCos %9) maxCos) ux))
%26 = (fma.f32 (+.f32 %3 %3) uy %25)
%29 = (-.f32 (*.f32 %3 (+.f32 uy uy)) %25)
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %13 %13)))) xi) (*.f32 (*.f32 #s(literal -2 binary32) (*.f32 (*.f32 (sin.f32 (*.f32 (+.f32 %26 %29) #s(literal 1/2 binary32))) (sin.f32 (*.f32 (-.f32 %29 %26) #s(literal 1/2 binary32)))) #s(literal 1/2 binary32))) yi)) (*.f32 %13 zi))
95.6%
%3 = (PI.f32 )
%11 = (* (- 1 ux) maxCos)
%13 = (*.f32 (approx %11 maxCos) ux)
%25 = (* %11 ux)
%30 = (*.f32 %3 uy)
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %13 %13)))) xi) (*.f32 (approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %25 %25)))) (*.f32 (*.f32 (cos.f32 %30) (sin.f32 %30)) #s(literal 2 binary32))) yi)) (*.f32 %13 zi))
94.0%
%3 = (PI.f32 )
%11 = (* (- 1 ux) maxCos)
%13 = (*.f32 (approx %11 maxCos) ux)
%25 = (* %11 ux)
%39 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 (-.f32 #s(literal 1 binary32) ux) #s(literal 2 binary32))))))
%42 = (pow.f32 uy #s(literal 2 binary32))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %13 %13)))) xi) (approx (* (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %25 %25)))) yi) (*.f32 uy (fma.f32 #s(literal 2 binary32) (*.f32 yi (*.f32 %3 %39)) (*.f32 %42 (fma.f32 #s(literal -4/3 binary32) (*.f32 yi (*.f32 (pow.f32 %3 #s(literal 3 binary32)) %39)) (*.f32 %42 (fma.f32 #s(literal -8/315 binary32) (*.f32 %42 (*.f32 yi (*.f32 (pow.f32 %3 #s(literal 7 binary32)) %39))) (*.f32 #s(literal 4/15 binary32) (*.f32 yi (*.f32 (pow.f32 %3 #s(literal 5 binary32)) %39))))))))))) (*.f32 %13 zi))
98.7%
%11 = (* (* (- 1 ux) maxCos) ux)
%17 = (PI.f32 )
%24 = (+.f32 %17 %17)
%32 = (-.f32 #s(literal 1 binary32) ux)
(+.f32 (+.f32 (*.f32 (approx (* (cos (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (cos.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy %17)))) xi) (*.f32 (*.f32 (+.f32 (sin.f32 (fma.f32 %24 uy (asin.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux)))) (sin.f32 (fma.f32 %24 uy (asin.f32 (*.f32 (*.f32 maxCos %32) ux))))) #s(literal 1/2 binary32)) yi)) (*.f32 (*.f32 (*.f32 %32 maxCos) ux) zi))
95.5%
%4 = (* (* uy 2) (PI ))
%10 = (* (- 1 ux) maxCos)
%11 = (* %10 ux)
%14 = (sqrt (- 1 (* %11 %11)))
%19 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(+.f32 (+.f32 (*.f32 (approx (* (cos %4) %14) (cos.f32 %19)) xi) (*.f32 (approx (* (sin %4) %14) (sin.f32 %19)) yi)) (*.f32 (*.f32 (approx %10 maxCos) ux) zi))
32.4%
%3 = (PI )
%8 = (- 1 ux)
%10 = (* %8 maxCos)
%11 = (* %10 ux)
%22 = (acos (* (* maxCos %8) ux))
%38 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
%43 = (acos.f32 (*.f32 maxCos (*.f32 ux (-.f32 #s(literal 1 binary32) ux))))
(+.f32 (approx (+ (* (* (cos (* (* uy 2) %3)) (sqrt (- 1 (* %11 %11)))) xi) (* (/ (- (cos (- (* %3 (+ uy uy)) %22)) (cos (+ (* (+ %3 %3) uy) %22))) 2) yi)) (*.f32 #s(literal 1/2 binary32) (*.f32 yi (-.f32 (cos.f32 (-.f32 %38 %43)) (cos.f32 (+.f32 %43 %38)))))) (*.f32 (*.f32 (approx %10 maxCos) ux) zi))
83.6%
%0 = (PI )
%20 = (* (* (- ux 1) maxCos) ux)
%22 = (sin (acos %20))
%25 = (* %20 zi)
%40 = (PI.f32 )
(approx (- (* (+ (* (sin (* %0 (* 2 uy))) yi) (* xi (cos (* (* -2 uy) %0)))) %22) %25) (approx (- (+ (* (* -2 (- (* (* xi uy) (* %22 (pow %0 2))) (* (* %22 %0) yi))) uy) (* %22 xi)) %25) (fma.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %40 %40) xi) uy) (*.f32 yi %40))) uy (fma.f32 (*.f32 zi maxCos) ux xi))))
50.0%
%0 = (PI )
%20 = (* (* (- ux 1) maxCos) ux)
%22 = (sin (acos %20))
%25 = (* %20 zi)
(approx (- (* (+ (* (sin (* %0 (* 2 uy))) yi) (* xi (cos (* (* -2 uy) %0)))) %22) %25) (approx (- (* %22 xi) %25) (fma.f32 (*.f32 zi maxCos) ux xi)))
52.4%
%5 = (* (PI ) (* 2 uy))
%17 = (* (* (- ux 1) maxCos) ux)
%27 = (-.f32 #s(literal 1 binary32) ux)
(approx (- (* (+ (* yi (sin %5)) (* xi (cos %5))) (sin (acos %17))) (* %17 zi)) (fma.f32 (*.f32 (*.f32 zi maxCos) ux) %27 (*.f32 xi (sqrt.f32 (fma.f32 (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) maxCos) (*.f32 %27 ux) #s(literal 1 binary32))))))
52.4%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%28 = (*.f32 (-.f32 #s(literal 1 binary32) ux) ux)
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 %28 (*.f32 zi maxCos) (*.f32 xi (sqrt.f32 (fma.f32 (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) maxCos) %28 #s(literal 1 binary32))))))
52.4%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%27 = (-.f32 #s(literal 1 binary32) ux)
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 (*.f32 zi %27) (*.f32 maxCos ux) (*.f32 xi (sqrt.f32 (fma.f32 (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) maxCos) (*.f32 %27 ux) #s(literal 1 binary32))))))
90.1%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%29 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 xi (cos.f32 %29) (*.f32 yi (sin.f32 %29))))
86.9%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%27 = (-.f32 #s(literal 1 binary32) ux)
%33 = (PI.f32 )
%41 = (sqrt.f32 (fma.f32 (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) maxCos) (*.f32 %27 ux) #s(literal 1 binary32)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 maxCos (*.f32 ux (*.f32 zi %27)) (fma.f32 (*.f32 (*.f32 (*.f32 #s(literal -2 binary32) uy) xi) (*.f32 (*.f32 %33 %33) %41)) uy (fma.f32 (*.f32 uy (+.f32 yi yi)) (*.f32 %41 %33) (*.f32 xi %41)))))
98.6%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%33 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux))) (fma.f32 xi (cos.f32 %33) (*.f32 yi (sin.f32 %33)))))
95.5%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 maxCos (*.f32 ux zi) (fma.f32 xi (cos.f32 %30) (*.f32 yi (sin.f32 %30)))))
83.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%52 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* (pow %3 2) %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 (+.f32 (fma.f32 (*.f32 zi maxCos) ux xi) (*.f32 (*.f32 (*.f32 (*.f32 (*.f32 %52 %52) xi) uy) #s(literal -2 binary32)) uy)) (*.f32 (*.f32 (+.f32 %52 %52) yi) uy))))
83.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%50 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* (pow %3 2) %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (fma.f32 (*.f32 (*.f32 (*.f32 (*.f32 %50 %50) xi) uy) #s(literal -2 binary32)) uy (fma.f32 (*.f32 uy (+.f32 yi yi)) %50 (*.f32 (*.f32 zi ux) maxCos))))))
83.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%52 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* (pow %3 2) %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (fma.f32 maxCos (*.f32 ux zi) (fma.f32 (+.f32 yi yi) (*.f32 %52 uy) (*.f32 (*.f32 (*.f32 (*.f32 (*.f32 %52 %52) xi) uy) #s(literal -2 binary32)) uy))))))
83.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* (pow %3 2) %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (fma.f32 maxCos (*.f32 ux zi) (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) (*.f32 #s(literal 2 binary32) (*.f32 yi (PI.f32 )))))))))
83.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (fma.f32 maxCos (*.f32 ux zi) (*.f32 uy (approx (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))) (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 xi (pow.f32 %58 #s(literal 2 binary32))) (*.f32 #s(literal 2 binary32) (/.f32 (*.f32 yi %58) uy))))))))))
54.2%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (fma.f32 maxCos (*.f32 ux zi) (*.f32 uy (approx (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))) (*.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 (PI.f32 ) #s(literal 2 binary32)))))))))))
83.4%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%61 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (fma.f32 maxCos (*.f32 ux zi) (approx (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (fma.f32 #s(literal -2 binary32) (*.f32 xi (pow.f32 %61 #s(literal 2 binary32))) (*.f32 #s(literal 2 binary32) (/.f32 (*.f32 yi %61) uy)))))))))
79.2%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (approx (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))) (fma.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (PI.f32 ))) (*.f32 maxCos (*.f32 ux zi)))))))
83.5%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%61 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (approx (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))) (*.f32 zi (fma.f32 maxCos ux (/.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %61 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %61)))) zi)))))))
78.4%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%61 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (approx (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))) (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %61 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %61))))))))
83.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%61 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (approx (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))) (*.f32 ux (fma.f32 maxCos zi (/.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %61 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %61)))) ux)))))))
83.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%61 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (approx (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))) (*.f32 maxCos (fma.f32 ux zi (/.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %61 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %61)))) maxCos)))))))
33.1%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* (pow %3 2) %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 (-.f32 #s(literal 1 binary32) ux) #s(literal 2 binary32))))))))))))
83.0%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%64 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (fma.f32 #s(literal -2 binary32) (*.f32 xi (pow.f32 %64 #s(literal 2 binary32))) (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) (*.f32 yi %64) (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (*.f32 maxCos (*.f32 ux zi))) uy))) uy)))))))
83.3%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%63 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 xi zi) (/.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %63 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %63)))) zi)))))))
83.5%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%65 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 xi (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -2 binary32) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (pow.f32 %65 #s(literal 2 binary32))) (fma.f32 #s(literal 2 binary32) (/.f32 (*.f32 uy (*.f32 yi %65)) xi) (/.f32 (*.f32 maxCos (*.f32 ux zi)) xi))))))))
83.0%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%63 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 maxCos (fma.f32 ux zi (+.f32 (/.f32 xi maxCos) (/.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %63 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %63)))) maxCos)))))))
83.0%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%63 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) (*.f32 uy %63) (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (fma.f32 #s(literal -2 binary32) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (*.f32 xi (pow.f32 %63 #s(literal 2 binary32)))) (*.f32 maxCos (*.f32 ux zi)))) yi))))))))
83.4%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%64 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (*.f32 maxCos zi) (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %64 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %64))))) ux))))))))
83.1%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%64 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (*.f32 ux zi) (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %64 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %64))))) maxCos))))))))
50.0%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (fma.f32 (*.f32 zi ux) maxCos xi)))
50.0%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (fma.f32 (*.f32 maxCos ux) zi xi)))
52.1%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (+.f32 xi (*.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux)))))))
13.8%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (*.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux))))))
49.9%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (approx (+ xi (* maxCos (* ux zi))) (*.f32 zi (fma.f32 maxCos ux (/.f32 xi zi))))))
50.0%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (approx (+ xi (* maxCos (* ux zi))) (*.f32 xi (+.f32 #s(literal 1 binary32) (/.f32 (*.f32 maxCos (*.f32 ux zi)) xi))))))
49.9%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (approx (+ xi (* maxCos (* ux zi))) (*.f32 ux (fma.f32 maxCos zi (/.f32 xi ux))))))
49.6%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (approx (+ xi (* maxCos (* ux zi))) (*.f32 maxCos (fma.f32 ux zi (/.f32 xi maxCos))))))
12.2%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (approx (+ xi (* maxCos (* ux zi))) (*.f32 maxCos (*.f32 ux zi)))))
49.9%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (approx (+ xi (* maxCos (* ux zi))) (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) (*.f32 maxCos ux) (*.f32 #s(literal -1 binary32) (/.f32 xi zi))))))))
95.6%
%2 = (- 1 ux)
%16 = (PI )
%37 = (PI.f32 )
%38 = (*.f32 uy %37)
(approx (+ (* (* ux %2) (* maxCos zi)) (* (sqrt (+ (* (* (- ux 1) maxCos) (* (* (* maxCos %2) ux) ux)) 1)) (+ (* (sin (* %16 (+ uy uy))) yi) (* (sin (+ (* (* -2 uy) %16) (* %16 1/2))) xi)))) (fma.f32 maxCos (*.f32 ux zi) (fma.f32 xi (sin.f32 (fma.f32 #s(literal -2 binary32) %38 (*.f32 #s(literal 1/2 binary32) %37))) (*.f32 yi (sin.f32 (*.f32 #s(literal 2 binary32) %38))))))
Compiler

Compiled 3 614 to 750 computations (79.2% saved)

sample2.0ms (0.0%)

Memory
-27.0MiB live, 5.7MiB allocated; 1ms collecting garbage
Calls
Call 1
Inputs
%1 = (PI )
2
%1
1
-2
3
(pow %1 2)
-4/3
(pow %1 3)
(* %1 %1)
Outputs
#s(literal 2 binary32)
#s(literal 13176795/4194304 binary32)
#s(literal 1 binary32)
#s(literal -2 binary32)
#s(literal 3 binary32)
#s(literal 5174515/524288 binary32)
#s(literal -11184811/8388608 binary32)
#s(literal 16256219/524288 binary32)
#s(literal 5174515/524288 binary32)
Samples
0.0ms0valid
Compiler

Compiled 17 to 10 computations (41.2% saved)

series151.0ms (1.8%)

Memory
25.2MiB live, 177.2MiB allocated; 14ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0244734289
Stop Event
iter-limit
Counts
77 → 471
Calls
Call 1
Inputs
%2 = (PI.f32 )
%5 = (-.f32 #s(literal 1 binary32) ux)
%10 = (*.f32 uy %2)
%11 = (*.f32 #s(literal 2 binary32) %10)
%12 = (cos.f32 %11)
%13 = (sin.f32 %11)
%14 = (*.f32 ux %5)
%16 = (*.f32 yi %13)
%17 = (*.f32 ux zi)
%18 = (*.f32 maxCos %17)
%19 = (*.f32 maxCos zi)
%21 = (pow.f32 %2 #s(literal 2 binary32))
%23 = (pow.f32 %2 #s(literal 3 binary32))
%24 = (*.f32 maxCos %5)
%25 = (*.f32 %2 uy)
%26 = (-.f32 ux #s(literal 1 binary32))
%27 = (*.f32 %26 maxCos)
%28 = (*.f32 %24 ux)
%29 = (*.f32 %28 ux)
%30 = (fma.f32 %27 %29 #s(literal 1 binary32))
%31 = (sqrt.f32 %30)
%32 = (/.f32 %16 xi)
%33 = (+.f32 %12 %32)
%34 = (*.f32 xi %33)
%35 = (PI )
%37 = (* %35 (+ uy uy))
%42 = (+ (* (sin %37) yi) (* (cos %37) xi))
%43 = (approx %42 %34)
%44 = (*.f32 xi %21)
%45 = (*.f32 yi %2)
%46 = (*.f32 #s(literal 2 binary32) %45)
%47 = (*.f32 uy %44)
%48 = (fma.f32 #s(literal -2 binary32) %47 %46)
%49 = (*.f32 uy %48)
%50 = (*.f32 yi %23)
%51 = (*.f32 uy %50)
%52 = (*.f32 #s(literal -4/3 binary32) %51)
%53 = (fma.f32 #s(literal -2 binary32) %44 %52)
%54 = (*.f32 uy %53)
%55 = (fma.f32 #s(literal 2 binary32) %45 %54)
%56 = (*.f32 uy %55)
%57 = (+.f32 xi %56)
%58 = (approx %42 %57)
%59 = (*.f32 %2 %2)
%60 = (*.f32 %59 xi)
%61 = (+.f32 yi yi)
%62 = (*.f32 %31 %43)
%64 = (*.f32 %31 %58)
%67 = (* maxCos (* ux zi))
%69 = (approx (+ xi %67) %18)
%70 = (/.f32 xi zi)
%71 = (/.f32 %49 zi)
%72 = (+.f32 %70 %71)
%73 = (fma.f32 maxCos ux %72)
%74 = (*.f32 zi %73)
%77 = (pow %35 2)
%87 = (approx (+ xi (+ %67 (* uy (+ (* -2 (* uy (* xi %77))) (* 2 (* yi %35)))))) %74)
%88 = (*.f32 %60 uy)
%89 = (*.f32 %88 #s(literal -2 binary32))
%90 = (*.f32 %89 uy)
%91 = (fma.f32 %61 %25 %90)
%92 = (fma.f32 maxCos %17 %91)
%93 = (+.f32 xi %92)
%95 = (- 1 ux)
%98 = (* maxCos (* ux (* zi %95)))
%105 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %95 2)))))
%115 = (* xi %105)
%117 = (+ %98 (+ (* uy (+ (* -2 (* uy (* xi (* %77 %105)))) (* 2 (* yi (* %35 %105))))) %115))
%118 = (approx %117 %93)
%120 = (* (* uy 2) %35)
%123 = (* (* %95 maxCos) ux)
%126 = (sqrt (- 1 (* %123 %123)))
%134 = (+ (+ (* (* (cos %120) %126) xi) (* (* (sin %120) %126) yi)) (* %123 zi))
%137 = (approx (+ %98 %115) %69)
%139 = (approx %117 %87)
uy
#s(literal 2 binary32)
%2
#s(literal 1 binary32)
ux
%5
maxCos
xi
yi
zi
%10
%11
%12
%13
%14
#s(literal -2 binary32)
%16
%17
%18
%19
#s(literal 3 binary32)
%21
#s(literal -4/3 binary32)
%23
%24
%25
%26
%27
%28
%29
%30
%31
%32
%33
%34
%43
%44
%45
%46
%47
%48
%49
%50
%51
%52
%53
%54
%55
%56
%57
%58
%59
%60
%61
%62
(fma.f32 %14 %19 %62)
%64
(fma.f32 %14 %19 %64)
%69
%70
%71
%72
%73
%74
%87
%88
%89
%90
%91
%92
%93
%118
(approx %134 %118)
%137
(approx %134 %137)
%139
(approx %134 %139)
Outputs
%7 = (PI )
%8 = (* uy %7)
%9 = (* 2 %8)
%10 = (sin %9)
%11 = (* yi %10)
%12 = (/ %11 xi)
%14 = (PI.f32 )
%15 = (*.f32 uy %14)
%16 = (*.f32 #s(literal 2 binary32) %15)
%17 = (sin.f32 %16)
%18 = (*.f32 yi %17)
%19 = (/.f32 %18 xi)
%21 = (cos %9)
%22 = (+ %21 %12)
%23 = (cos.f32 %16)
%24 = (fma.f32 xi %23 %18)
%27 = (* xi %22)
%30 = (pow %7 2)
%31 = (* xi %30)
%32 = (pow.f32 %14 #s(literal 2 binary32))
%33 = (*.f32 xi %32)
%35 = (* uy %31)
%36 = (*.f32 uy %33)
%40 = (* yi %7)
%41 = (* 2 %40)
%42 = (+ (* -2 %35) %41)
%43 = (*.f32 yi %14)
%44 = (*.f32 #s(literal 2 binary32) %43)
%47 = (fma.f32 #s(literal -2 binary32) %36 %44)
%49 = (* uy %42)
%50 = (*.f32 uy %43)
%51 = (*.f32 #s(literal 2 binary32) %50)
%53 = (pow.f32 uy #s(literal 2 binary32))
%54 = (*.f32 %53 %33)
%55 = (fma.f32 #s(literal -2 binary32) %54 %51)
%61 = (* yi (pow %7 3))
%62 = (* uy %61)
%64 = (+ (* -2 %31) (* -4/3 %62))
%67 = (pow.f32 %14 #s(literal 3 binary32))
%68 = (*.f32 yi %67)
%69 = (*.f32 uy %68)
%70 = (*.f32 #s(literal -4/3 binary32) %69)
%72 = (fma.f32 #s(literal -2 binary32) %33 %70)
%74 = (* uy %64)
%75 = (*.f32 %53 %68)
%76 = (*.f32 #s(literal -4/3 binary32) %75)
%80 = (+ %41 %74)
%81 = (fma.f32 #s(literal -4/3 binary32) %75 %44)
%85 = (* uy %80)
%86 = (*.f32 uy %81)
%90 = (+ xi %85)
%92 = (*.f32 %53 %32)
%94 = (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -2 binary32) %92))
%95 = (*.f32 xi %94)
%100 = (- ux 1)
%102 = (* %100 maxCos)
%103 = (- 1 ux)
%104 = (* maxCos %103)
%105 = (* %104 ux)
%106 = (* %105 ux)
%108 = (+ (* %102 %106) 1)
%109 = (sqrt %108)
%111 = (* %7 (+ uy uy))
%117 = (* %109 (+ (* (sin %111) yi) (* (cos %111) xi)))
%118 = (pow.f32 maxCos #s(literal 2 binary32))
%119 = (pow.f32 ux #s(literal 2 binary32))
%120 = (-.f32 #s(literal 1 binary32) ux)
%121 = (-.f32 ux #s(literal 1 binary32))
%122 = (*.f32 %120 %121)
%123 = (*.f32 %119 %122)
%124 = (*.f32 %118 %123)
%125 = (+.f32 #s(literal 1 binary32) %124)
%126 = (sqrt.f32 %125)
%127 = (*.f32 %17 %126)
%128 = (*.f32 yi %127)
%130 = (*.f32 %23 %126)
%131 = (fma.f32 xi %130 %128)
%133 = (* ux %103)
%135 = (* maxCos zi)
%137 = (+ (* %133 %135) %117)
%138 = (*.f32 zi %120)
%139 = (*.f32 ux %138)
%140 = (fma.f32 maxCos %139 %128)
%144 = (* ux zi)
%145 = (* maxCos %144)
%146 = (+ xi %145)
%147 = (*.f32 ux zi)
%148 = (*.f32 maxCos %147)
%150 = (+.f32 xi %148)
%152 = (/ xi zi)
%153 = (/.f32 xi zi)
%155 = (/ %49 zi)
%156 = (/.f32 %50 zi)
%157 = (*.f32 #s(literal 2 binary32) %156)
%159 = (/.f32 %54 zi)
%162 = (+ %152 %155)
%163 = (/.f32 %92 zi)
%164 = (/.f32 #s(literal 1 binary32) zi)
%165 = (fma.f32 #s(literal -2 binary32) %163 %164)
%166 = (*.f32 xi %165)
%170 = (+ (* maxCos ux) %162)
%171 = (*.f32 maxCos ux)
%172 = (fma.f32 #s(literal 2 binary32) %156 %171)
%177 = (* zi %170)
%178 = (*.f32 zi %172)
%180 = (*.f32 zi %165)
%184 = (+ xi (+ %145 %49))
%185 = (fma.f32 #s(literal 2 binary32) %50 %148)
%193 = (* (* (* (* %7 %7) xi) uy) -2)
%196 = (* %193 uy)
%197 = (*.f32 #s(literal -2 binary32) %54)
%199 = (+ yi yi)
%203 = (+ %145 (+ (* %199 (* %7 uy)) %196))
%204 = (fma.f32 #s(literal -2 binary32) %54 %185)
%208 = (* maxCos (* ux (* zi %103)))
%215 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %103 2)))))
%225 = (* xi %215)
%227 = (+ %208 (+ (* uy (+ (* -2 (* uy (* xi (* %30 %215)))) (* 2 (* yi (* %7 %215))))) %225))
%228 = (pow.f32 %120 #s(literal 2 binary32))
%229 = (*.f32 %119 %228)
%232 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %118 %229)))
%233 = (*.f32 %14 %232)
%234 = (*.f32 yi %233)
%235 = (*.f32 uy %234)
%236 = (*.f32 maxCos %139)
%237 = (fma.f32 #s(literal 2 binary32) %235 %236)
%239 = (*.f32 %32 %232)
%240 = (*.f32 %53 %239)
%243 = (*.f32 xi (+.f32 %232 (*.f32 #s(literal -2 binary32) %240)))
%248 = (* (* uy 2) %7)
%251 = (* (* %103 maxCos) ux)
%254 = (sqrt (- 1 (* %251 %251)))
%262 = (+ (+ (* (* (cos %248) %254) xi) (* (* (sin %248) %254) yi)) (* %251 zi))
%263 = (*.f32 %17 %232)
%264 = (*.f32 yi %263)
%265 = (fma.f32 maxCos %139 %264)
%267 = (*.f32 %23 %232)
%268 = (fma.f32 xi %267 %264)
%271 = (+ %208 %225)
%273 = (*.f32 xi %232)
%274 = (fma.f32 maxCos %139 %273)
%277 = (+.f32 %23 %19)
%279 = (*.f32 xi %23)
%283 = (*.f32 uy %32)
%284 = (/.f32 %43 xi)
%285 = (*.f32 #s(literal 2 binary32) %284)
%286 = (fma.f32 #s(literal -2 binary32) %283 %285)
%289 = (/.f32 %50 xi)
%290 = (*.f32 #s(literal 2 binary32) %289)
%296 = (/.f32 %69 xi)
%298 = (fma.f32 #s(literal -2 binary32) %32 (*.f32 #s(literal -4/3 binary32) %296))
%301 = (/.f32 %75 xi)
%306 = (fma.f32 #s(literal -4/3 binary32) %301 %285)
%310 = (/.f32 %86 xi)
%311 = (fma.f32 #s(literal -2 binary32) %92 %310)
%318 = (*.f32 xi %130)
%320 = (/.f32 %128 xi)
%324 = (/.f32 %236 xi)
%329 = (/.f32 %148 xi)
%336 = (/.f32 %50 (*.f32 xi zi))
%354 = (/.f32 %178 xi)
%359 = (fma.f32 #s(literal -2 binary32) %92 (fma.f32 #s(literal 2 binary32) %289 %329))
%372 = (*.f32 xi %267)
%389 = (*.f32 #s(literal 2 binary32) %283)
%394 = (*.f32 #s(literal 2 binary32) %92)
%414 = (fma.f32 #s(literal -1 binary32) %310 %394)
%442 = (*.f32 #s(literal 2 binary32) %163)
%443 = (fma.f32 #s(literal -2 binary32) %336 %442)
%447 = (-.f32 %442 %164)
%461 = (*.f32 zi %447)
%470 = (fma.f32 #s(literal -1 binary32) (/.f32 %185 xi) %394)
%478 = (*.f32 #s(literal 2 binary32) %240)
%504 = (*.f32 %53 %67)
%505 = (*.f32 #s(literal 2 binary32) %14)
%506 = (fma.f32 #s(literal -4/3 binary32) %504 %505)
%507 = (*.f32 yi %506)
%510 = (*.f32 uy %507)
%511 = (fma.f32 #s(literal -2 binary32) %54 %510)
%513 = (+.f32 xi %197)
%519 = (fma.f32 maxCos %139 %318)
%521 = (fma.f32 #s(literal -2 binary32) %159 %153)
%523 = (fma.f32 #s(literal 2 binary32) %156 %153)
%526 = (fma.f32 maxCos ux %153)
%527 = (fma.f32 #s(literal -2 binary32) %159 %526)
%529 = (fma.f32 #s(literal 2 binary32) %156 %526)
%530 = (fma.f32 #s(literal -2 binary32) %159 %529)
%532 = (*.f32 zi %527)
%536 = (fma.f32 #s(literal -2 binary32) %54 %148)
%537 = (+.f32 xi %536)
%542 = (*.f32 xi %239)
%543 = (*.f32 %53 %542)
%544 = (fma.f32 #s(literal -2 binary32) %543 %274)
%546 = (fma.f32 #s(literal 2 binary32) %235 %274)
%549 = (fma.f32 maxCos %139 %372)
%551 = (/.f32 %23 yi)
%552 = (/.f32 %17 xi)
%556 = (/.f32 %279 yi)
%560 = (/.f32 %36 yi)
%564 = (/.f32 %54 yi)
%568 = (/.f32 %33 yi)
%569 = (*.f32 uy %67)
%583 = (*.f32 uy %506)
%587 = (/.f32 xi yi)
%592 = (/.f32 %318 yi)
%596 = (/.f32 %236 yi)
%601 = (*.f32 yi zi)
%602 = (/.f32 %54 %601)
%603 = (/.f32 %15 zi)
%608 = (/.f32 xi %601)
%619 = (/.f32 %532 yi)
%623 = (/.f32 %148 yi)
%636 = (*.f32 uy %233)
%659 = (*.f32 #s(literal 2 binary32) %560)
%674 = (fma.f32 #s(literal 4/3 binary32) %504 %659)
%679 = (fma.f32 #s(literal -2 binary32) %14 (*.f32 #s(literal 4/3 binary32) %504))
%680 = (*.f32 yi %679)
%690 = (*.f32 uy %679)
%759 = (*.f32 maxCos zi)
%761 = (*.f32 %126 %24)
%765 = (*.f32 uy %47)
%766 = (/.f32 %765 zi)
%768 = (+.f32 xi %765)
%769 = (/.f32 %768 zi)
%771 = (fma.f32 maxCos %147 %765)
%772 = (+.f32 xi %771)
%777 = (+ xi %203)
%778 = (+.f32 xi %55)
%782 = (fma.f32 #s(literal -2 binary32) (*.f32 uy %542) (*.f32 #s(literal 2 binary32) %234))
%783 = (fma.f32 uy %782 %273)
%788 = (*.f32 ux %120)
%789 = (/.f32 %761 zi)
%793 = (*.f32 zi %526)
%796 = (+.f32 %153 %766)
%797 = (fma.f32 maxCos ux %796)
%808 = (/.f32 %273 zi)
%822 = (*.f32 maxCos %788)
%835 = (/.f32 (fma.f32 #s(literal -1 binary32) xi (*.f32 #s(literal -1 binary32) %765)) zi)
%882 = (*.f32 #s(literal -1 binary32) ux)
%883 = (+.f32 #s(literal 1 binary32) %882)
%888 = (*.f32 #s(literal -1 binary32) %171)
%889 = (+.f32 maxCos %888)
%899 = (*.f32 maxCos %119)
%903 = (*.f32 %118 %119)
%907 = (*.f32 %118 ux)
%929 = (*.f32 #s(literal -1 binary32) %118)
%932 = (pow.f32 maxCos #s(literal 4 binary32))
%934 = (-.f32 %929 (*.f32 #s(literal 1/4 binary32) %932))
%946 = (*.f32 %118 %24)
%949 = (fma.f32 #s(literal -1/2 binary32) %946 (*.f32 %118 (*.f32 ux %24)))
%977 = (*.f32 zi %796)
%981 = (*.f32 %118 xi)
%982 = (*.f32 %118 %43)
%983 = (*.f32 %118 %36)
%985 = (*.f32 uy (fma.f32 #s(literal -1 binary32) %982 %983))
%1004 = (*.f32 %118 %279)
%1005 = (*.f32 %118 %18)
%1039 = (/.f32 #s(literal 1 binary32) ux)
%1040 = (-.f32 %1039 #s(literal 1 binary32))
%1041 = (*.f32 ux %1040)
%1048 = (/.f32 maxCos ux)
%1049 = (fma.f32 #s(literal -1 binary32) maxCos %1048)
%1050 = (*.f32 ux %1049)
%1053 = (*.f32 ux (-.f32 #s(literal 1 binary32) %1039))
%1056 = (+.f32 maxCos (*.f32 #s(literal -1 binary32) %1048))
%1057 = (*.f32 ux %1056)
%1063 = (pow.f32 ux #s(literal 3 binary32))
%1069 = (pow.f32 ux #s(literal 4 binary32))
%1073 = (/.f32 %118 ux)
%1075 = (fma.f32 #s(literal -1 binary32) %118 (*.f32 #s(literal 2 binary32) %1073))
%1078 = (/.f32 %118 %119)
%1088 = (sqrt.f32 %929)
%1089 = (*.f32 %119 %1088)
%1091 = (*.f32 ux %1088)
%1092 = (/.f32 %118 %1091)
%1098 = (-.f32 %929 (/.f32 %932 (pow.f32 %1088 #s(literal 2 binary32))))
%1100 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1098 %1089) %1092)
%1104 = (*.f32 %118 %1098)
%1105 = (pow.f32 %1088 #s(literal 3 binary32))
%1106 = (*.f32 %1063 %1105)
%1112 = (*.f32 %1088 %24)
%1115 = (/.f32 %946 %1091)
%1116 = (fma.f32 %1088 %24 %1115)
%1119 = (*.f32 %24 %1098)
%1120 = (/.f32 %1119 %1089)
%1121 = (fma.f32 #s(literal 1/2 binary32) %1120 %1116)
%1124 = (*.f32 %118 %1119)
%1125 = (/.f32 %1124 %1106)
%1132 = (/.f32 %759 ux)
%1134 = (fma.f32 %1088 %24 (+.f32 %1132 %1115))
%1138 = (fma.f32 #s(literal 1/2 binary32) %1120 %1134)
%1146 = (/.f32 xi ux)
%1147 = (fma.f32 maxCos zi %1146)
%1156 = (/.f32 %977 ux)
%1165 = (/.f32 %54 ux)
%1166 = (/.f32 %50 ux)
%1176 = (sqrt.f32 (neg.f32 %118))
%1183 = (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (*.f32 %32 %1176))) (*.f32 #s(literal 2 binary32) (*.f32 yi (*.f32 %14 %1176))))
%1184 = (*.f32 xi %1176)
%1185 = (fma.f32 uy %1183 %1184)
%1189 = (/.f32 %983 %1176)
%1190 = (/.f32 %982 %1176)
%1194 = (/.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) %1189 (*.f32 #s(literal 2 binary32) %1190))) ux)
%1195 = (*.f32 ux %1176)
%1196 = (/.f32 %981 %1195)
%1206 = (+.f32 (/.f32 %932 (pow.f32 %1176 #s(literal 2 binary32))) %118)
%1207 = (*.f32 xi %1206)
%1208 = (*.f32 %119 %1176)
%1209 = (/.f32 %1207 %1208)
%1211 = (*.f32 yi (*.f32 %14 %1206))
%1215 = (*.f32 uy (*.f32 xi (*.f32 %32 %1206)))
%1218 = (*.f32 uy (fma.f32 #s(literal -1 binary32) (/.f32 %1211 %1176) (/.f32 %1215 %1176)))
%1219 = (/.f32 %1218 %119)
%1229 = (*.f32 %118 %1207)
%1230 = (pow.f32 %1176 #s(literal 3 binary32))
%1231 = (*.f32 %1063 %1230)
%1232 = (/.f32 %1229 %1231)
%1234 = (/.f32 (*.f32 %118 %1215) %1230)
%1236 = (/.f32 (*.f32 %118 %1211) %1230)
%1251 = (*.f32 %23 %1176)
%1252 = (*.f32 %17 %1176)
%1254 = (fma.f32 xi %1251 (*.f32 yi %1252))
%1263 = (fma.f32 xi %1251 (fma.f32 yi %1252 (+.f32 %1132 (+.f32 (/.f32 %1004 %1195) (/.f32 %1005 %1195)))))
%1268 = (*.f32 xi (*.f32 %23 %1206))
%1269 = (/.f32 %1268 %1208)
%1271 = (*.f32 yi (*.f32 %17 %1206))
%1272 = (/.f32 %1271 %1208)
%1278 = (*.f32 %118 %1268)
%1280 = (*.f32 %118 %1271)
%1293 = (fma.f32 xi %1176 (+.f32 %1132 %1196))
%1331 = (/.f32 %118 %1088)
%1340 = (*.f32 ux %1105)
%1353 = (/.f32 %946 %1088)
%1356 = (fma.f32 #s(literal -1 binary32) %1353 (*.f32 #s(literal -1/2 binary32) (/.f32 %1119 %1091)))
%1367 = (fma.f32 #s(literal -1 binary32) %1353 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1124 %1340) (*.f32 #s(literal 1/2 binary32) (/.f32 %1119 %1088))) ux)))
%1425 = (/.f32 %981 %1176)
%1428 = (*.f32 uy (fma.f32 #s(literal -2 binary32) %1190 (*.f32 #s(literal 2 binary32) %1189)))
%1436 = (/.f32 %1207 %1176)
%1437 = (fma.f32 #s(literal -1/2 binary32) %1436 %1218)
%1462 = (/.f32 %1004 %1176)
%1463 = (/.f32 %1005 %1176)
%1475 = (fma.f32 #s(literal -1/2 binary32) (/.f32 %1268 %1176) (*.f32 #s(literal -1/2 binary32) (/.f32 %1271 %1176)))
%1536 = (pow.f32 %14 #s(literal 4 binary32))
%1557 = (pow.f32 %14 #s(literal 5 binary32))
%1567 = (pow.f32 %14 #s(literal 7 binary32))
%1577 = (*.f32 yi %1557)
%1578 = (*.f32 %53 %1577)
%1586 = (*.f32 %53 (*.f32 yi %1567))
%1598 = (/.f32 %68 xi)
%1628 = (*.f32 uy %72)
%1629 = (fma.f32 #s(literal 2 binary32) %43 %1628)
%1630 = (*.f32 uy %1629)
%1637 = (*.f32 xi %126)
%1640 = (*.f32 yi (*.f32 %14 %126))
%1641 = (*.f32 uy %1640)
%1645 = (*.f32 xi (*.f32 %32 %126))
%1649 = (fma.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy %1645) (*.f32 #s(literal 2 binary32) %1640)) %1637)
%1658 = (fma.f32 uy (fma.f32 #s(literal 2 binary32) %1640 (*.f32 uy (fma.f32 #s(literal -2 binary32) %1645 (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi (*.f32 %67 %126))))))) %1637)
%1660 = (fma.f32 maxCos %139 %1637)
%1669 = (/.f32 %43 zi)
%1671 = (fma.f32 #s(literal -2 binary32) (/.f32 %36 zi) (*.f32 #s(literal 2 binary32) %1669))
%1675 = (fma.f32 uy %1671 %153)
%1700 = (/.f32 %43 uy)
%1702 = (fma.f32 #s(literal -2 binary32) %33 (*.f32 #s(literal 2 binary32) %1700))
%1707 = (/.f32 %33 uy)
%1709 = (fma.f32 #s(literal -2 binary32) %1707 (*.f32 #s(literal -4/3 binary32) %68))
%1714 = (/.f32 %43 %53)
%1717 = (fma.f32 #s(literal -2 binary32) %1707 (fma.f32 #s(literal -4/3 binary32) %68 (*.f32 #s(literal 2 binary32) %1714)))
%1720 = (pow.f32 uy #s(literal 3 binary32))
%1734 = (/.f32 %33 zi)
%1735 = (*.f32 uy zi)
%1736 = (/.f32 %43 %1735)
%1742 = (/.f32 xi (*.f32 %53 zi))
%1759 = (/.f32 %148 %53)
%1771 = (/.f32 %234 uy)
%1784 = (fma.f32 #s(literal -2 binary32) %1700 (*.f32 #s(literal 2 binary32) %33))
%1789 = (fma.f32 #s(literal 4/3 binary32) %68 (*.f32 #s(literal 2 binary32) %1707))
%1802 = (*.f32 #s(literal 4/3 binary32) %68)
%1880 = (*.f32 %228 (pow.f32 %121 #s(literal 2 binary32)))
%1881 = (*.f32 %1069 %1880)
%1889 = (pow.f32 ux #s(literal 6 binary32))
%1892 = (*.f32 (pow.f32 %120 #s(literal 3 binary32)) (pow.f32 %121 #s(literal 3 binary32)))
%1903 = (*.f32 %119 (*.f32 %24 %122))
%1908 = (*.f32 %1069 (*.f32 %24 %1880))
%1911 = (fma.f32 #s(literal -1/8 binary32) (*.f32 %118 %1908) (*.f32 #s(literal 1/2 binary32) %1903))
%1940 = (*.f32 %119 (*.f32 xi %228))
%1948 = (fma.f32 #s(literal -1 binary32) (*.f32 %119 (*.f32 yi (*.f32 %14 %228))) (*.f32 %119 (*.f32 uy (*.f32 xi (*.f32 %32 %228)))))
%1955 = (pow.f32 %120 #s(literal 4 binary32))
%1957 = (*.f32 %1069 (*.f32 xi %1955))
%1979 = (*.f32 %119 (*.f32 xi (*.f32 %23 %228)))
%1982 = (*.f32 %119 (*.f32 yi (*.f32 %17 %228)))
%2021 = (sqrt.f32 %123)
%2022 = (*.f32 maxCos %2021)
%2024 = (*.f32 %118 %2021)
%2028 = (*.f32 maxCos (+.f32 %2021 (*.f32 #s(literal 1/2 binary32) (/.f32 #s(literal 1 binary32) %2024))))
%2030 = (/.f32 #s(literal 1/2 binary32) %2024)
%2034 = (*.f32 %932 (pow.f32 %2021 #s(literal 3 binary32)))
%2037 = (*.f32 maxCos (-.f32 (+.f32 %2021 %2030) (/.f32 #s(literal 1/8 binary32) %2034)))
%2039 = (pow.f32 maxCos #s(literal 6 binary32))
%2041 = (*.f32 %2039 (pow.f32 %2021 #s(literal 5 binary32)))
%2049 = (*.f32 maxCos (-.f32 (+.f32 %2021 (+.f32 %2030 (*.f32 #s(literal 1/16 binary32) (/.f32 #s(literal 1 binary32) %2041)))) (*.f32 #s(literal 1/8 binary32) (/.f32 #s(literal 1 binary32) %2034))))
%2051 = (*.f32 %2021 %24)
%2052 = (*.f32 maxCos %2051)
%2054 = (/.f32 %24 %2024)
%2055 = (fma.f32 #s(literal 1/2 binary32) %2054 %2051)
%2056 = (*.f32 maxCos %2055)
%2058 = (/.f32 %24 %2034)
%2059 = (fma.f32 #s(literal -1/8 binary32) %2058 %2055)
%2060 = (*.f32 maxCos %2059)
%2062 = (/.f32 %24 %2041)
%2064 = (fma.f32 #s(literal -1/8 binary32) %2058 (fma.f32 #s(literal 1/16 binary32) %2062 %2055))
%2065 = (*.f32 maxCos %2064)
%2067 = (fma.f32 ux %138 %2051)
%2070 = (fma.f32 #s(literal 1/2 binary32) %2054 %2067)
%2080 = (/.f32 xi maxCos)
%2081 = (fma.f32 ux zi %2080)
%2090 = (/.f32 %977 maxCos)
%2099 = (/.f32 %54 maxCos)
%2100 = (/.f32 %50 maxCos)
%2110 = (sqrt.f32 (neg.f32 %229))
%2117 = (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (*.f32 %32 %2110))) (*.f32 #s(literal 2 binary32) (*.f32 yi (*.f32 %14 %2110))))
%2118 = (*.f32 xi %2110)
%2119 = (fma.f32 uy %2117 %2118)
%2123 = (*.f32 %118 %2110)
%2124 = (/.f32 xi %2123)
%2129 = (/.f32 (*.f32 uy (fma.f32 #s(literal -1 binary32) (/.f32 %36 %2110) (/.f32 %43 %2110))) %118)
%2131 = (fma.f32 uy %2117 (fma.f32 xi %2110 %2129))
%2136 = (pow.f32 %2110 #s(literal 3 binary32))
%2137 = (*.f32 %932 %2136)
%2138 = (/.f32 xi %2137)
%2144 = (/.f32 (*.f32 uy (fma.f32 #s(literal -1/4 binary32) (/.f32 %43 %2136) (*.f32 #s(literal 1/4 binary32) (/.f32 %36 %2136)))) %932)
%2147 = (fma.f32 uy %2117 (fma.f32 xi %2110 (+.f32 %2129 %2144)))
%2153 = (pow.f32 %2110 #s(literal 5 binary32))
%2154 = (*.f32 %2039 %2153)
%2155 = (/.f32 xi %2154)
%2165 = (fma.f32 uy %2117 (fma.f32 xi %2110 (+.f32 %2129 (+.f32 %2144 (/.f32 (*.f32 uy (fma.f32 #s(literal -1/8 binary32) (/.f32 %36 %2153) (*.f32 #s(literal 1/8 binary32) (/.f32 %43 %2153)))) %2039)))))
%2175 = (fma.f32 xi (*.f32 %23 %2110) (*.f32 yi (*.f32 %17 %2110)))
%2176 = (fma.f32 ux %138 %2175)
%2179 = (/.f32 %279 %2123)
%2180 = (/.f32 %18 %2123)
%2182 = (fma.f32 #s(literal 1/2 binary32) %2179 (fma.f32 #s(literal 1/2 binary32) %2180 %2176))
%2185 = (/.f32 %279 %2137)
%2186 = (/.f32 %18 %2137)
%2191 = (/.f32 %279 %2154)
%2192 = (/.f32 %18 %2154)
%2199 = (fma.f32 ux %138 %2118)
%2202 = (fma.f32 #s(literal 1/2 binary32) %2124 %2199)
%2305 = (fma.f32 #s(literal 1/2 binary32) %2179 (fma.f32 #s(literal 1/2 binary32) %2180 %2175))
%2328 = (fma.f32 #s(literal 1/2 binary32) %2124 %2118)
(approx uy #s(literal 0 binary32))
(approx xi xi)
(approx %12 %19)
(approx %22 (/.f32 %24 xi))
(approx %27 %18)
(approx %27 %24)
(approx %31 %33)
(approx %35 %36)
(approx %42 %44)
(approx %42 %47)
(approx %49 %51)
(approx %49 %55)
(approx %64 %70)
(approx %64 %72)
(approx %74 %76)
(approx %74 (fma.f32 #s(literal -2 binary32) %36 %76))
(approx %80 %81)
(approx %80 (fma.f32 #s(literal -2 binary32) %36 %81))
(approx %85 %86)
(approx %85 (fma.f32 #s(literal -2 binary32) %54 %86))
(approx %90 (fma.f32 uy %81 %95))
(approx %117 %128)
(approx %117 %131)
(approx %137 %140)
(approx %137 (fma.f32 maxCos %139 %131))
(approx %146 %148)
(approx %146 %150)
(approx %152 %153)
(approx %155 %157)
(approx %155 (fma.f32 #s(literal -2 binary32) %159 %157))
(approx %162 (fma.f32 #s(literal 2 binary32) %156 %166))
(approx %170 %172)
(approx %170 (fma.f32 #s(literal 2 binary32) %156 (fma.f32 maxCos ux %166)))
(approx %177 %178)
(approx %177 (fma.f32 xi %180 %178))
(approx %184 %185)
(approx %184 (fma.f32 #s(literal 2 binary32) %50 (fma.f32 maxCos %147 %95)))
(approx %193 (*.f32 #s(literal -2 binary32) %36))
(approx %196 %197)
(approx %203 %204)
(approx %227 %237)
(approx %227 (fma.f32 #s(literal 2 binary32) %235 (fma.f32 maxCos %139 %243)))
(approx %262 %265)
(approx %262 (fma.f32 maxCos %139 %268))
(approx %271 %236)
(approx %271 %274)
(approx %22 %23)
(approx %22 %277)
(approx %27 %279)
(approx %27 (*.f32 xi %277))
(approx %42 (*.f32 xi %286))
(approx %49 (*.f32 xi (fma.f32 #s(literal -2 binary32) %92 %290)))
(approx %64 (*.f32 #s(literal -2 binary32) %33))
(approx %64 (*.f32 xi %298))
(approx %74 (*.f32 xi (fma.f32 #s(literal -2 binary32) %283 (*.f32 #s(literal -4/3 binary32) %301))))
(approx %80 (*.f32 xi (fma.f32 #s(literal -2 binary32) %283 %306)))
(approx %85 (*.f32 xi %311))
(approx %90 %95)
(approx %90 (*.f32 xi (+.f32 #s(literal 1 binary32) %311)))
(approx %117 %318)
(approx %117 (*.f32 xi (fma.f32 %23 %126 %320)))
(approx %137 (*.f32 xi (fma.f32 %23 %126 (+.f32 %324 %320))))
(approx %146 (*.f32 xi (+.f32 #s(literal 1 binary32) %329)))
(approx %155 (*.f32 #s(literal -2 binary32) %159))
(approx %155 (*.f32 xi (fma.f32 #s(literal -2 binary32) %163 (*.f32 #s(literal 2 binary32) %336))))
(approx %162 %166)
(approx %162 (*.f32 xi (fma.f32 #s(literal -2 binary32) %163 (fma.f32 #s(literal 2 binary32) %336 %164))))
(approx %170 (*.f32 xi (fma.f32 #s(literal -2 binary32) %163 (fma.f32 #s(literal 2 binary32) %336 (+.f32 %164 (/.f32 %171 xi))))))
(approx %177 (*.f32 xi %180))
(approx %177 (*.f32 xi (fma.f32 zi %165 %354)))
(approx %184 (*.f32 xi (+.f32 #s(literal 1 binary32) %359)))
(approx %203 (*.f32 xi %359))
(approx %227 %243)
(approx %227 (*.f32 xi (+.f32 %232 (fma.f32 #s(literal -2 binary32) %240 (fma.f32 #s(literal 2 binary32) (/.f32 %235 xi) %324)))))
(approx %262 %372)
(approx %262 (*.f32 xi (fma.f32 %23 %232 (+.f32 %324 (/.f32 %264 xi)))))
(approx %271 %273)
(approx %271 (*.f32 xi (+.f32 %232 %324)))
(approx %27 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %23 (*.f32 #s(literal -1 binary32) %19)))))
(approx %42 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -2 binary32) %284 %389))))
(approx %49 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -2 binary32) %289 %394))))
(approx %64 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal 4/3 binary32) %296 (*.f32 #s(literal 2 binary32) %32)))))
(approx %74 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal 4/3 binary32) %301 %389))))
(approx %80 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) (/.f32 %81 xi) %389))))
(approx %85 (*.f32 #s(literal -1 binary32) (*.f32 xi %414)))
(approx %90 (*.f32 #s(literal -1 binary32) (*.f32 xi (-.f32 %394 #s(literal 1 binary32)))))
(approx %90 (*.f32 #s(literal -1 binary32) (*.f32 xi (-.f32 %414 #s(literal 1 binary32)))))
(approx %117 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %130 (*.f32 #s(literal -1 binary32) %320)))))
(approx %137 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %130 (*.f32 #s(literal -1 binary32) (/.f32 %140 xi))))))
(approx %146 (*.f32 #s(literal -1 binary32) (*.f32 xi (-.f32 (*.f32 #s(literal -1 binary32) %329) #s(literal 1 binary32)))))
(approx %155 (*.f32 #s(literal -1 binary32) (*.f32 xi %443)))
(approx %162 (*.f32 #s(literal -1 binary32) (*.f32 xi %447)))
(approx %162 (*.f32 #s(literal -1 binary32) (*.f32 xi (-.f32 %443 %164))))
(approx %170 (*.f32 #s(literal -1 binary32) (*.f32 xi (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %172 xi) %442) %164))))
(approx %177 (*.f32 #s(literal -1 binary32) (*.f32 xi %461)))
(approx %177 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %354 %461))))
(approx %184 (*.f32 #s(literal -1 binary32) (*.f32 xi (-.f32 %470 #s(literal 1 binary32)))))
(approx %203 (*.f32 #s(literal -1 binary32) (*.f32 xi %470)))
(approx %227 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %232 %478))))
(approx %227 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %232 (fma.f32 #s(literal -1 binary32) (/.f32 %237 xi) %478)))))
(approx %262 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %267 (*.f32 #s(literal -1 binary32) (/.f32 %265 xi))))))
(approx %271 (*.f32 #s(literal -1 binary32) (*.f32 xi (fma.f32 #s(literal -1 binary32) %232 (*.f32 #s(literal -1 binary32) %324)))))
(approx yi yi)
(approx %40 %43)
(approx %61 %68)
(approx %62 %69)
(approx %80 (fma.f32 #s(literal -2 binary32) %36 %507))
(approx %85 %511)
(approx %90 %513)
(approx %90 (+.f32 xi %511))
(approx %199 (*.f32 #s(literal 2 binary32) yi))
(approx %137 %519)
(approx %162 %521)
(approx %162 (fma.f32 #s(literal -2 binary32) %159 %523))
(approx %170 %527)
(approx %170 %530)
(approx %177 %532)
(approx %177 (fma.f32 #s(literal 2 binary32) %50 %532))
(approx %184 %537)
(approx %184 (+.f32 xi %204))
(approx %203 %536)
(approx %227 %544)
(approx %227 (fma.f32 #s(literal -2 binary32) %543 %546))
(approx %262 %549)
(approx %22 (*.f32 yi (+.f32 %551 %552)))
(approx %27 (*.f32 yi (+.f32 %17 %556)))
(approx %42 (*.f32 yi (fma.f32 #s(literal -2 binary32) %560 %505)))
(approx %49 (*.f32 yi (fma.f32 #s(literal -2 binary32) %564 %16)))
(approx %64 (*.f32 yi (fma.f32 #s(literal -2 binary32) %568 (*.f32 #s(literal -4/3 binary32) %569))))
(approx %74 (*.f32 yi (fma.f32 #s(literal -2 binary32) %560 (*.f32 #s(literal -4/3 binary32) %504))))
(approx %80 %507)
(approx %80 (*.f32 yi (fma.f32 #s(literal -2 binary32) %560 %506)))
(approx %85 %510)
(approx %85 (*.f32 yi (fma.f32 #s(literal -2 binary32) %564 %583)))
(approx %90 (*.f32 yi (fma.f32 #s(literal -2 binary32) %564 (fma.f32 uy %506 %587))))
(approx %117 (*.f32 yi (fma.f32 %17 %126 %592)))
(approx %137 (*.f32 yi (fma.f32 %17 %126 (+.f32 %596 %592))))
(approx %155 (*.f32 yi (fma.f32 #s(literal -2 binary32) %602 (*.f32 #s(literal 2 binary32) %603))))
(approx %162 (*.f32 yi (fma.f32 #s(literal -2 binary32) %602 (fma.f32 #s(literal 2 binary32) %603 %608))))
(approx %170 (*.f32 yi (fma.f32 #s(literal -2 binary32) %602 (fma.f32 #s(literal 2 binary32) %603 (+.f32 %608 (/.f32 %171 yi))))))
(approx %177 (*.f32 yi (fma.f32 #s(literal 2 binary32) %15 %619)))
(approx %184 (*.f32 yi (fma.f32 #s(literal -2 binary32) %564 (fma.f32 #s(literal 2 binary32) %15 (+.f32 %587 %623)))))
(approx %203 (*.f32 yi (fma.f32 #s(literal -2 binary32) %564 (fma.f32 #s(literal 2 binary32) %15 %623))))
(approx %227 (*.f32 #s(literal 2 binary32) %235))
(approx %227 (*.f32 yi (fma.f32 #s(literal -2 binary32) (/.f32 %543 yi) (fma.f32 #s(literal 2 binary32) %636 (+.f32 %596 (/.f32 %273 yi))))))
(approx %262 %264)
(approx %262 (*.f32 yi (fma.f32 %17 %232 (+.f32 %596 (/.f32 %372 yi)))))
(approx %22 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %551 (*.f32 #s(literal -1 binary32) %552)))))
(approx %27 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %17 (*.f32 #s(literal -1 binary32) %556)))))
(approx %42 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %14 %659))))
(approx %49 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %15 (*.f32 #s(literal 2 binary32) %564)))))
(approx %64 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal 4/3 binary32) %569 (*.f32 #s(literal 2 binary32) %568)))))
(approx %74 (*.f32 #s(literal -1 binary32) (*.f32 yi %674)))
(approx %80 (*.f32 #s(literal -1 binary32) %680))
(approx %80 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %14 %674))))
(approx %85 (*.f32 #s(literal -1 binary32) (*.f32 uy %680)))
(approx %85 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal 2 binary32) %564 %690))))
(approx %90 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) (/.f32 %513 yi) %690))))
(approx %117 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %127 (*.f32 #s(literal -1 binary32) %592)))))
(approx %137 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %127 (*.f32 #s(literal -1 binary32) (/.f32 %519 yi))))))
(approx %155 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %603 (*.f32 #s(literal 2 binary32) %602)))))
(approx %162 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %603 (*.f32 #s(literal -1 binary32) (/.f32 %521 yi))))))
(approx %170 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %603 (*.f32 #s(literal -1 binary32) (/.f32 %527 yi))))))
(approx %177 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %15 (*.f32 #s(literal -1 binary32) %619)))))
(approx %184 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %15 (*.f32 #s(literal -1 binary32) (/.f32 %537 yi))))))
(approx %203 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %15 (*.f32 #s(literal -1 binary32) (/.f32 %536 yi))))))
(approx %227 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %636 (*.f32 #s(literal -1 binary32) (/.f32 %544 yi))))))
(approx %262 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -1 binary32) %263 (*.f32 #s(literal -1 binary32) (/.f32 %549 yi))))))
(approx zi zi)
(approx %144 %147)
(approx %135 %759)
(approx %137 %761)
(approx %137 (fma.f32 maxCos %139 %761))
(approx %155 %766)
(approx %162 %769)
(approx %170 (/.f32 %772 zi))
(approx %177 %768)
(approx %177 %772)
(approx %777 %778)
(approx %227 %783)
(approx %227 (fma.f32 maxCos %139 %783))
(approx %262 %268)
(approx %137 (*.f32 zi (fma.f32 maxCos %788 %789)))
(approx %146 %793)
(approx %170 %171)
(approx %170 %797)
(approx %177 (*.f32 zi %797))
(approx %203 (*.f32 zi (fma.f32 #s(literal -2 binary32) %159 %172)))
(approx %777 (*.f32 zi %530))
(approx %227 (*.f32 zi (fma.f32 maxCos %788 (+.f32 (/.f32 (*.f32 uy %782) zi) %808))))
(approx %262 (*.f32 zi (fma.f32 maxCos %788 (+.f32 (/.f32 %372 zi) (/.f32 %264 zi)))))
(approx %271 (*.f32 zi (fma.f32 maxCos %788 %808)))
(approx %137 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %822 (*.f32 #s(literal -1 binary32) %789)))))
(approx %146 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %171 (*.f32 #s(literal -1 binary32) %153)))))
(approx %162 (*.f32 #s(literal -1 binary32) %835))
(approx %170 (fma.f32 #s(literal -1 binary32) %835 %171))
(approx %177 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %171 (fma.f32 #s(literal -1 binary32) %153 (*.f32 #s(literal -1 binary32) %766))))))
(approx %184 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %171 (*.f32 #s(literal -1 binary32) %769)))))
(approx %203 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %171 (*.f32 #s(literal -1 binary32) (/.f32 %55 zi))))))
(approx %777 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %171 (*.f32 #s(literal -1 binary32) (/.f32 %778 zi))))))
(approx %227 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %822 (*.f32 #s(literal -1 binary32) (/.f32 %783 zi))))))
(approx %262 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %822 (*.f32 #s(literal -1 binary32) (/.f32 %268 zi))))))
(approx %271 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %822 (*.f32 #s(literal -1 binary32) %808)))))
(approx ux ux)
(approx %103 #s(literal 1 binary32))
(approx %103 %883)
(approx %133 (*.f32 ux %883))
(approx %104 maxCos)
(approx %104 %889)
(approx %100 #s(literal -1 binary32))
(approx %100 %121)
(approx %102 (*.f32 #s(literal -1 binary32) maxCos))
(approx %102 (fma.f32 #s(literal -1 binary32) maxCos %171))
(approx %105 (*.f32 ux %889))
(approx %106 %899)
(approx %106 (*.f32 %119 %889))
(approx %108 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) %903)))
(approx %108 (+.f32 #s(literal 1 binary32) (*.f32 %119 (fma.f32 #s(literal -1 binary32) %118 (*.f32 #s(literal 2 binary32) %907)))))
(approx %108 (+.f32 #s(literal 1 binary32) (*.f32 %119 (fma.f32 #s(literal -1 binary32) %118 (*.f32 ux (fma.f32 #s(literal -1 binary32) %907 (*.f32 #s(literal 2 binary32) %118)))))))
(approx %109 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1/2 binary32) %903)))
(approx %109 (+.f32 #s(literal 1 binary32) (*.f32 %119 (fma.f32 #s(literal -1/2 binary32) %118 %907))))
(approx %109 (+.f32 #s(literal 1 binary32) (*.f32 %119 (fma.f32 #s(literal -1/2 binary32) %118 (*.f32 ux (fma.f32 #s(literal 1/2 binary32) (*.f32 ux %934) %118))))))
(approx %117 (fma.f32 #s(literal -1/2 binary32) (*.f32 %118 (*.f32 %119 %24)) %24))
(approx %117 (fma.f32 xi %23 (fma.f32 yi %17 (*.f32 %119 %949))))
(approx %117 (fma.f32 xi %23 (fma.f32 yi %17 (*.f32 %119 (fma.f32 #s(literal -1/2 binary32) %946 (*.f32 ux (fma.f32 #s(literal 1/2 binary32) (*.f32 ux (*.f32 %24 %934)) %946)))))))
(approx %137 (fma.f32 maxCos %147 %24))
(approx %137 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %759 (*.f32 #s(literal -1/2 binary32) %946)))) %24))
(approx %137 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %759 %949))) %24))
(approx %170 %796)
(approx %177 %977)
(approx %177 (fma.f32 maxCos %147 %977))
(approx %227 (+.f32 xi (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1/2 binary32) %981 %985)))) %765)))
(approx %227 (+.f32 xi (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1/2 binary32) %981 (fma.f32 ux (fma.f32 uy (fma.f32 #s(literal -2 binary32) %983 (*.f32 #s(literal 2 binary32) %982)) %981) %985))))) %765)))
(approx %262 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1/2 binary32) %1004 (*.f32 #s(literal -1/2 binary32) %1005))))) %24))
(approx %262 (fma.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1/2 binary32) %1004 (fma.f32 #s(literal -1/2 binary32) %1005 (*.f32 ux (fma.f32 %118 %279 %1005))))))) %24))
(approx %271 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %759 (*.f32 #s(literal -1/2 binary32) %981)))))))
(approx %271 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1/2 binary32) %981 (*.f32 %118 (*.f32 ux xi)))))))))
(approx %103 %882)
(approx %103 %1041)
(approx %133 (*.f32 #s(literal -1 binary32) %119))
(approx %133 (*.f32 %119 %1040))
(approx %104 %888)
(approx %104 %1050)
(approx %100 %1053)
(approx %102 %1057)
(approx %105 (*.f32 #s(literal -1 binary32) %899))
(approx %105 (*.f32 %119 %1049))
(approx %106 (*.f32 #s(literal -1 binary32) (*.f32 maxCos %1063)))
(approx %106 (*.f32 %1063 %1049))
(approx %108 (*.f32 #s(literal -1 binary32) (*.f32 %118 %1069)))
(approx %108 (*.f32 %1069 %1075))
(approx %108 (*.f32 %1069 (fma.f32 #s(literal -1 binary32) %1078 %1075)))
(approx %108 (*.f32 %1069 (fma.f32 #s(literal -1 binary32) %1078 (fma.f32 #s(literal -1 binary32) %118 (fma.f32 #s(literal 2 binary32) %1073 (/.f32 #s(literal 1 binary32) %1069))))))
(approx %109 %1089)
(approx %109 (*.f32 %119 (+.f32 %1088 %1092)))
(approx %109 (*.f32 %119 (+.f32 %1088 %1100)))
(approx %109 (*.f32 %119 (+.f32 %1088 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1104 %1106) %1100))))
(approx %117 (*.f32 %119 %1112))
(approx %117 (*.f32 %119 %1116))
(approx %117 (*.f32 %119 %1121))
(approx %117 (*.f32 %119 (fma.f32 #s(literal -1/2 binary32) %1125 %1121)))
(approx %137 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 %1112)))
(approx %137 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 %1134)))
(approx %137 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 %1138)))
(approx %137 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1/2 binary32) %1125 %1138))))
(approx %146 (*.f32 ux %1147))
(approx %170 (*.f32 ux (+.f32 maxCos (+.f32 (/.f32 xi %147) (/.f32 %765 %147)))))
(approx %177 (*.f32 ux (fma.f32 maxCos zi %1156)))
(approx %184 (*.f32 ux (fma.f32 maxCos zi (+.f32 %1146 (/.f32 %765 ux)))))
(approx %203 (*.f32 ux (fma.f32 #s(literal -2 binary32) %1165 (fma.f32 #s(literal 2 binary32) %1166 %759))))
(approx %777 (*.f32 ux (fma.f32 #s(literal -2 binary32) %1165 (fma.f32 #s(literal 2 binary32) %1166 %1147))))
(approx %227 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 %1185)))
(approx %227 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 uy %1183 (fma.f32 xi %1176 (+.f32 %1132 (+.f32 %1194 %1196)))))))
(approx %227 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1/2 binary32) %1209 (fma.f32 uy %1183 (fma.f32 xi %1176 (+.f32 %1132 (+.f32 %1194 (+.f32 %1219 %1196)))))))))
(approx %227 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1/2 binary32) %1209 (fma.f32 #s(literal 1/2 binary32) %1232 (fma.f32 uy %1183 (fma.f32 xi %1176 (+.f32 %1132 (+.f32 %1194 (+.f32 %1219 (+.f32 (/.f32 (*.f32 uy (fma.f32 #s(literal -1 binary32) %1234 %1236)) %1063) %1196)))))))))))
(approx %262 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 %1254)))
(approx %262 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 %1263)))
(approx %262 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1/2 binary32) %1269 (fma.f32 #s(literal -1/2 binary32) %1272 %1263)))))
(approx %262 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1/2 binary32) %1269 (fma.f32 #s(literal -1/2 binary32) %1272 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1278 %1231) (fma.f32 #s(literal 1/2 binary32) (/.f32 %1280 %1231) %1263)))))))
(approx %271 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 %1184)))
(approx %271 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 %1293)))
(approx %271 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1/2 binary32) %1209 %1293))))
(approx %271 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1/2 binary32) %1209 (fma.f32 #s(literal 1/2 binary32) %1232 %1293)))))
(approx %103 (*.f32 #s(literal -1 binary32) %1053))
(approx %104 (*.f32 #s(literal -1 binary32) %1057))
(approx %100 (*.f32 #s(literal -1 binary32) %1041))
(approx %102 (*.f32 #s(literal -1 binary32) %1050))
(approx %106 (*.f32 #s(literal -1 binary32) (*.f32 %1063 %1056)))
(approx %108 (*.f32 %1069 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %118 %1073) ux) %929)))
(approx %108 (*.f32 %1069 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %118 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %118 (/.f32 #s(literal 1 binary32) %119)) ux))) ux) %929)))
(approx %109 (*.f32 %119 (+.f32 %1088 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1331 (*.f32 #s(literal -1/2 binary32) (/.f32 %1098 %1091))) ux)))))
(approx %109 (*.f32 %119 (+.f32 %1088 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1104 %1340) (*.f32 #s(literal 1/2 binary32) (/.f32 %1098 %1088))) ux) (*.f32 #s(literal -1 binary32) %1331)) ux)))))
(approx %117 (*.f32 %119 (fma.f32 #s(literal -1 binary32) (/.f32 %1356 ux) %1112)))
(approx %117 (*.f32 %119 (fma.f32 #s(literal -1 binary32) (/.f32 %1367 ux) %1112)))
(approx %137 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %759 (*.f32 #s(literal -1 binary32) %1353)) ux) %1112))))
(approx %137 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %759 %1356) ux) %1112))))
(approx %137 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %759 %1367) ux) %1112))))
(approx %146 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %759 (*.f32 #s(literal -1 binary32) %1146)))))
(approx %170 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) maxCos (*.f32 #s(literal -1 binary32) (/.f32 %796 ux))))))
(approx %177 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %759 (*.f32 #s(literal -1 binary32) %1156)))))
(approx %184 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %759 (*.f32 #s(literal -1 binary32) (/.f32 %768 ux))))))
(approx %203 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %759 (*.f32 #s(literal -1 binary32) (/.f32 %55 ux))))))
(approx %777 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %759 (*.f32 #s(literal -1 binary32) (/.f32 %778 ux))))))
(approx %227 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) %1425 %1428)) ux) %1185))))
(approx %227 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) %1425 (fma.f32 #s(literal -1 binary32) (/.f32 %1437 ux) %1428))) ux) %1185))))
(approx %227 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) %1425 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1229 %1230) (*.f32 uy (fma.f32 #s(literal -1 binary32) %1236 %1234))) ux) %1437) ux) %1428))) ux) %1185))))
(approx %262 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) %1462 (*.f32 #s(literal -1 binary32) %1463))) ux) %1254))))
(approx %262 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) %1462 (fma.f32 #s(literal -1 binary32) %1463 (*.f32 #s(literal -1 binary32) (/.f32 %1475 ux))))) ux) %1254))))
(approx %262 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) %1462 (fma.f32 #s(literal -1 binary32) %1463 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1278 %1230) (*.f32 #s(literal -1/2 binary32) (/.f32 %1280 %1230))) ux) %1475) ux))))) ux) %1254))))
(approx %271 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %759 (*.f32 #s(literal -1 binary32) %1425)) ux) %1184))))
(approx %271 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) %1425 (*.f32 #s(literal 1/2 binary32) (/.f32 %1207 %1195)))) ux) %1184))))
(approx %271 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %759 (fma.f32 #s(literal -1 binary32) %1425 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1436 (*.f32 #s(literal 1/2 binary32) (/.f32 %1229 (*.f32 ux %1230)))) ux)))) ux) %1184))))
(approx uy uy)
(approx %8 %15)
(approx %9 %16)
(approx %21 %94)
(approx %21 (+.f32 #s(literal 1 binary32) (*.f32 %53 (fma.f32 #s(literal -2 binary32) %32 (*.f32 #s(literal 2/3 binary32) (*.f32 %53 %1536))))))
(approx %21 (+.f32 #s(literal 1 binary32) (*.f32 %53 (fma.f32 #s(literal -2 binary32) %32 (*.f32 %53 (fma.f32 #s(literal -4/45 binary32) (*.f32 %53 (pow.f32 %14 #s(literal 6 binary32))) (*.f32 #s(literal 2/3 binary32) %1536)))))))
(approx %10 %583)
(approx %10 (*.f32 uy (fma.f32 #s(literal 2 binary32) %14 (*.f32 %53 (fma.f32 #s(literal -4/3 binary32) %67 (*.f32 #s(literal 4/15 binary32) (*.f32 %53 %1557)))))))
(approx %10 (*.f32 uy (fma.f32 #s(literal 2 binary32) %14 (*.f32 %53 (fma.f32 #s(literal -4/3 binary32) %67 (*.f32 %53 (fma.f32 #s(literal -8/315 binary32) (*.f32 %53 %1567) (*.f32 #s(literal 4/15 binary32) %1557))))))))
(approx %11 (*.f32 uy (fma.f32 #s(literal 2 binary32) %43 (*.f32 %53 (fma.f32 #s(literal -4/3 binary32) %68 (*.f32 #s(literal 4/15 binary32) %1578))))))
(approx %11 (*.f32 uy (fma.f32 #s(literal 2 binary32) %43 (*.f32 %53 (fma.f32 #s(literal -4/3 binary32) %68 (*.f32 %53 (fma.f32 #s(literal -8/315 binary32) %1586 (*.f32 #s(literal 4/15 binary32) %1577))))))))
(approx %12 %290)
(approx %12 (*.f32 uy %306))
(approx %12 (*.f32 uy (fma.f32 #s(literal 2 binary32) %284 (*.f32 %53 (fma.f32 #s(literal -4/3 binary32) %1598 (*.f32 #s(literal 4/15 binary32) (/.f32 %1578 xi)))))))
(approx %12 (*.f32 uy (fma.f32 #s(literal 2 binary32) %284 (*.f32 %53 (fma.f32 #s(literal -4/3 binary32) %1598 (*.f32 %53 (fma.f32 #s(literal -8/315 binary32) (/.f32 %1586 xi) (*.f32 #s(literal 4/15 binary32) (/.f32 %1577 xi)))))))))
(approx %22 (+.f32 #s(literal 1 binary32) %290))
(approx %22 (+.f32 #s(literal 1 binary32) (*.f32 uy %286)))
(approx %22 (+.f32 #s(literal 1 binary32) (*.f32 uy (fma.f32 #s(literal 2 binary32) %284 (*.f32 uy %298)))))
(approx %27 (+.f32 xi %51))
(approx %27 (+.f32 xi %1630))
(approx %49 %765)
(approx %74 %1628)
(approx %80 %1629)
(approx %85 %1630)
(approx %117 %1637)
(approx %117 (fma.f32 #s(literal 2 binary32) %1641 %1637))
(approx %117 %1649)
(approx %117 %1658)
(approx %137 %1660)
(approx %137 (fma.f32 #s(literal 2 binary32) %1641 %1660))
(approx %137 (fma.f32 maxCos %139 %1649))
(approx %137 (fma.f32 maxCos %139 %1658))
(approx %155 (*.f32 uy %1671))
(approx %162 %523)
(approx %162 %1675)
(approx %170 %526)
(approx %170 %529)
(approx %170 (fma.f32 maxCos ux %1675))
(approx %177 (fma.f32 #s(literal 2 binary32) %50 %793))
(approx %177 (fma.f32 uy %47 %793))
(approx %184 (+.f32 xi %185))
(approx %203 %771)
(approx %227 %546)
(approx %262 (fma.f32 maxCos %139 (fma.f32 uy (fma.f32 #s(literal 2 binary32) %234 (*.f32 uy (fma.f32 #s(literal -2 binary32) %542 (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi (*.f32 %67 %232))))))) %273)))
(approx %10 %17)
(approx %42 (*.f32 uy %1702))
(approx %49 (*.f32 %53 %1702))
(approx %64 (*.f32 uy %1709))
(approx %74 (*.f32 %53 %1709))
(approx %80 (*.f32 %53 %1717))
(approx %85 (*.f32 #s(literal -4/3 binary32) (*.f32 %1720 %68)))
(approx %85 (*.f32 %1720 %1709))
(approx %85 (*.f32 %1720 %1717))
(approx %90 (*.f32 %1720 (fma.f32 #s(literal -2 binary32) %1707 (fma.f32 #s(literal -4/3 binary32) %68 (fma.f32 #s(literal 2 binary32) %1714 (/.f32 xi %1720))))))
(approx %155 (*.f32 %53 (fma.f32 #s(literal -2 binary32) %1734 (*.f32 #s(literal 2 binary32) %1736))))
(approx %162 (*.f32 %53 (fma.f32 #s(literal -2 binary32) %1734 (fma.f32 #s(literal 2 binary32) %1736 %1742))))
(approx %170 (*.f32 %53 (fma.f32 #s(literal -2 binary32) %1734 (fma.f32 #s(literal 2 binary32) %1736 (+.f32 %1742 (/.f32 %171 %53))))))
(approx %177 (*.f32 %53 (fma.f32 #s(literal -2 binary32) %33 (fma.f32 #s(literal 2 binary32) %1700 (/.f32 %793 %53)))))
(approx %184 (*.f32 %53 (fma.f32 #s(literal -2 binary32) %33 (fma.f32 #s(literal 2 binary32) %1700 (+.f32 (/.f32 xi %53) %1759)))))
(approx %203 (*.f32 %53 (fma.f32 #s(literal -2 binary32) %33 (fma.f32 #s(literal 2 binary32) %1700 %1759))))
(approx %227 (*.f32 #s(literal -2 binary32) %543))
(approx %227 (*.f32 %53 (fma.f32 #s(literal -2 binary32) %542 (*.f32 #s(literal 2 binary32) %1771))))
(approx %227 (*.f32 %53 (fma.f32 #s(literal -2 binary32) %542 (fma.f32 #s(literal 2 binary32) %1771 (+.f32 (/.f32 %236 %53) (/.f32 %273 %53))))))
(approx %42 (*.f32 #s(literal -1 binary32) (*.f32 uy %1784)))
(approx %64 (*.f32 #s(literal -1 binary32) (*.f32 uy %1789)))
(approx %80 (*.f32 %53 (fma.f32 #s(literal -4/3 binary32) %68 (*.f32 #s(literal -1 binary32) (/.f32 %1784 uy)))))
(approx %85 (*.f32 #s(literal -1 binary32) (*.f32 %1720 %1789)))
(approx %85 (*.f32 #s(literal -1 binary32) (*.f32 %1720 (fma.f32 #s(literal -1 binary32) (/.f32 %1702 uy) %1802))))
(approx %90 (*.f32 #s(literal -1 binary32) (*.f32 %1720 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %33 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %43 (*.f32 #s(literal -1 binary32) (/.f32 xi uy))) uy))) uy) %1802))))
(approx %162 (*.f32 %53 (fma.f32 #s(literal -2 binary32) %1734 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %1669 (*.f32 #s(literal -1 binary32) (/.f32 xi %1735))) uy)))))
(approx %170 (*.f32 %53 (fma.f32 #s(literal -2 binary32) %1734 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %1669 (*.f32 #s(literal -1 binary32) (/.f32 %526 uy))) uy)))))
(approx %177 (*.f32 %53 (fma.f32 #s(literal -2 binary32) %33 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %43 (*.f32 #s(literal -1 binary32) (/.f32 %793 uy))) uy)))))
(approx %184 (*.f32 %53 (fma.f32 #s(literal -2 binary32) %33 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %43 (*.f32 #s(literal -1 binary32) (/.f32 %150 uy))) uy)))))
(approx %203 (*.f32 %53 (fma.f32 #s(literal -2 binary32) %33 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %43 (*.f32 #s(literal -1 binary32) (/.f32 %148 uy))) uy)))))
(approx %227 (*.f32 %53 (fma.f32 #s(literal -2 binary32) %542 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %234 (*.f32 #s(literal -1 binary32) (/.f32 %274 uy))) uy)))))
(approx %104 (*.f32 maxCos %120))
(approx %102 (*.f32 maxCos %121))
(approx %105 %822)
(approx %106 (*.f32 maxCos (*.f32 %119 %120)))
(approx %108 %125)
(approx %109 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 1/2 binary32) %124)))
(approx %109 (+.f32 #s(literal 1 binary32) (*.f32 %118 (fma.f32 #s(literal -1/8 binary32) (*.f32 %118 %1881) (*.f32 #s(literal 1/2 binary32) %123)))))
(approx %109 (+.f32 #s(literal 1 binary32) (*.f32 %118 (fma.f32 #s(literal 1/2 binary32) %123 (*.f32 %118 (fma.f32 #s(literal -1/8 binary32) %1881 (*.f32 #s(literal 1/16 binary32) (*.f32 %118 (*.f32 %1889 %1892)))))))))
(approx %117 (fma.f32 #s(literal 1/2 binary32) (*.f32 %118 %1903) %24))
(approx %117 (fma.f32 xi %23 (fma.f32 yi %17 (*.f32 %118 %1911))))
(approx %117 (fma.f32 xi %23 (fma.f32 yi %17 (*.f32 %118 (fma.f32 #s(literal 1/2 binary32) %1903 (*.f32 %118 (fma.f32 #s(literal -1/8 binary32) %1908 (*.f32 #s(literal 1/16 binary32) (*.f32 %118 (*.f32 %1889 (*.f32 %24 %1892)))))))))))
(approx %137 (fma.f32 maxCos %139 %24))
(approx %137 (fma.f32 maxCos (fma.f32 #s(literal 1/2 binary32) (*.f32 maxCos %1903) %139) %24))
(approx %137 (fma.f32 maxCos (fma.f32 maxCos %1911 %139) %24))
(approx %227 (+.f32 xi (fma.f32 maxCos %139 %765)))
(approx %227 (+.f32 xi (fma.f32 maxCos (fma.f32 maxCos (fma.f32 #s(literal -1/2 binary32) %1940 (*.f32 uy %1948)) %139) %765)))
(approx %227 (+.f32 xi (fma.f32 maxCos (fma.f32 maxCos (fma.f32 #s(literal -1/2 binary32) %1940 (fma.f32 uy %1948 (*.f32 %118 (fma.f32 #s(literal -1/8 binary32) %1957 (*.f32 uy (fma.f32 #s(literal -1/4 binary32) (*.f32 %1069 (*.f32 yi (*.f32 %14 %1955))) (*.f32 #s(literal 1/4 binary32) (*.f32 %1069 (*.f32 uy (*.f32 xi (*.f32 %32 %1955))))))))))) %139) %765)))
(approx %262 (fma.f32 maxCos (fma.f32 maxCos (fma.f32 #s(literal -1/2 binary32) %1979 (*.f32 #s(literal -1/2 binary32) %1982)) %139) %24))
(approx %262 (fma.f32 maxCos (fma.f32 maxCos (fma.f32 #s(literal -1/2 binary32) %1979 (fma.f32 #s(literal -1/2 binary32) %1982 (*.f32 %118 (fma.f32 #s(literal -1/8 binary32) (*.f32 %1069 (*.f32 xi (*.f32 %23 %1955))) (*.f32 #s(literal -1/8 binary32) (*.f32 %1069 (*.f32 yi (*.f32 %17 %1955)))))))) %139) %24))
(approx %271 (+.f32 xi %236))
(approx %271 (+.f32 xi (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (*.f32 maxCos %1940) %139))))
(approx %271 (+.f32 xi (*.f32 maxCos (fma.f32 maxCos (fma.f32 #s(literal -1/2 binary32) %1940 (*.f32 #s(literal -1/8 binary32) (*.f32 %118 %1957))) %139))))
(approx %108 %124)
(approx %108 (*.f32 %118 (fma.f32 %119 %122 (/.f32 #s(literal 1 binary32) %118))))
(approx %109 %2022)
(approx %109 %2028)
(approx %109 %2037)
(approx %109 %2049)
(approx %117 %2052)
(approx %117 %2056)
(approx %117 %2060)
(approx %117 %2065)
(approx %137 (*.f32 maxCos %2067))
(approx %137 (*.f32 maxCos %2070))
(approx %137 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2058 %2070)))
(approx %137 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2058 (fma.f32 #s(literal 1/16 binary32) %2062 %2070))))
(approx %146 (*.f32 maxCos %2081))
(approx %170 (*.f32 maxCos (+.f32 ux (+.f32 (/.f32 xi %759) (/.f32 %765 %759)))))
(approx %177 (*.f32 maxCos (fma.f32 ux zi %2090)))
(approx %184 (*.f32 maxCos (fma.f32 ux zi (+.f32 %2080 (/.f32 %765 maxCos)))))
(approx %203 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %2099 (fma.f32 #s(literal 2 binary32) %2100 %147))))
(approx %777 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %2099 (fma.f32 #s(literal 2 binary32) %2100 %2081))))
(approx %227 (*.f32 maxCos (fma.f32 ux %138 %2119)))
(approx %227 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) %2124 (fma.f32 ux %138 %2131))))
(approx %227 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2138 (fma.f32 #s(literal 1/2 binary32) %2124 (fma.f32 ux %138 %2147)))))
(approx %227 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2138 (fma.f32 #s(literal 1/16 binary32) %2155 (fma.f32 #s(literal 1/2 binary32) %2124 (fma.f32 ux %138 %2165))))))
(approx %262 (*.f32 maxCos %2176))
(approx %262 (*.f32 maxCos %2182))
(approx %262 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2185 (fma.f32 #s(literal -1/8 binary32) %2186 %2182))))
(approx %262 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2185 (fma.f32 #s(literal -1/8 binary32) %2186 (fma.f32 #s(literal 1/16 binary32) %2191 (fma.f32 #s(literal 1/16 binary32) %2192 %2182))))))
(approx %271 (*.f32 maxCos %2199))
(approx %271 (*.f32 maxCos %2202))
(approx %271 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2138 %2202)))
(approx %271 (*.f32 maxCos (fma.f32 #s(literal -1/8 binary32) %2138 (fma.f32 #s(literal 1/16 binary32) %2155 %2202))))
(approx %109 (*.f32 #s(literal -1 binary32) %2022))
(approx %109 (*.f32 #s(literal -1 binary32) %2028))
(approx %109 (*.f32 #s(literal -1 binary32) %2037))
(approx %109 (*.f32 #s(literal -1 binary32) %2049))
(approx %117 (*.f32 #s(literal -1 binary32) %2052))
(approx %117 (*.f32 #s(literal -1 binary32) %2056))
(approx %117 (*.f32 #s(literal -1 binary32) %2060))
(approx %117 (*.f32 #s(literal -1 binary32) %2065))
(approx %137 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 %2051))))
(approx %137 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 %2055))))
(approx %137 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 %2059))))
(approx %137 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 %2064))))
(approx %146 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %147 (*.f32 #s(literal -1 binary32) %2080)))))
(approx %170 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) ux (*.f32 #s(literal -1 binary32) (/.f32 %796 maxCos))))))
(approx %177 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %147 (*.f32 #s(literal -1 binary32) %2090)))))
(approx %184 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %147 (*.f32 #s(literal -1 binary32) (/.f32 %768 maxCos))))))
(approx %203 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %147 (*.f32 #s(literal -1 binary32) (/.f32 %55 maxCos))))))
(approx %777 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %147 (*.f32 #s(literal -1 binary32) (/.f32 %778 maxCos))))))
(approx %227 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 %2119))))
(approx %227 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 (fma.f32 #s(literal 1/2 binary32) %2124 %2131)))))
(approx %227 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 (fma.f32 #s(literal -1/8 binary32) %2138 (fma.f32 #s(literal 1/2 binary32) %2124 %2147))))))
(approx %227 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 (fma.f32 #s(literal -1/8 binary32) %2138 (fma.f32 #s(literal 1/16 binary32) %2155 (fma.f32 #s(literal 1/2 binary32) %2124 %2165)))))))
(approx %262 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 %2175))))
(approx %262 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 %2305))))
(approx %262 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 (fma.f32 #s(literal -1/8 binary32) %2185 (fma.f32 #s(literal -1/8 binary32) %2186 %2305))))))
(approx %262 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 (fma.f32 #s(literal -1/8 binary32) %2185 (fma.f32 #s(literal -1/8 binary32) %2186 (fma.f32 #s(literal 1/16 binary32) %2191 (fma.f32 #s(literal 1/16 binary32) %2192 %2305))))))))
(approx %271 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 %2118))))
(approx %271 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 %2328))))
(approx %271 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 (fma.f32 #s(literal -1/8 binary32) %2138 %2328)))))
(approx %271 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %139 (fma.f32 #s(literal -1/8 binary32) %2138 (fma.f32 #s(literal 1/16 binary32) %2155 %2328))))))
Calls

18 calls:

TimeVariablePoint
6.0ms
yi
0
6.0ms
xi
0
5.0ms
maxCos
inf
5.0ms
uy
inf
5.0ms
xi
inf

rewrite138.0ms (1.6%)

Memory
10.2MiB live, 130.0MiB allocated; 24ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01381716
02081609
17581469
228971469
041271469
041571423
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
77 → 1 132
Calls
Call 1
Inputs
%2 = (PI.f32 )
%5 = (-.f32 #s(literal 1 binary32) ux)
%10 = (*.f32 uy %2)
%11 = (*.f32 #s(literal 2 binary32) %10)
%12 = (cos.f32 %11)
%13 = (sin.f32 %11)
%14 = (*.f32 ux %5)
%16 = (*.f32 yi %13)
%17 = (*.f32 ux zi)
%18 = (*.f32 maxCos %17)
%19 = (*.f32 maxCos zi)
%21 = (pow.f32 %2 #s(literal 2 binary32))
%23 = (pow.f32 %2 #s(literal 3 binary32))
%24 = (*.f32 maxCos %5)
%25 = (*.f32 %2 uy)
%26 = (-.f32 ux #s(literal 1 binary32))
%27 = (*.f32 %26 maxCos)
%28 = (*.f32 %24 ux)
%29 = (*.f32 %28 ux)
%30 = (fma.f32 %27 %29 #s(literal 1 binary32))
%31 = (sqrt.f32 %30)
%32 = (/.f32 %16 xi)
%33 = (+.f32 %12 %32)
%34 = (*.f32 xi %33)
%35 = (PI )
%37 = (* %35 (+ uy uy))
%42 = (+ (* (sin %37) yi) (* (cos %37) xi))
%43 = (approx %42 %34)
%44 = (*.f32 xi %21)
%45 = (*.f32 yi %2)
%46 = (*.f32 #s(literal 2 binary32) %45)
%47 = (*.f32 uy %44)
%48 = (fma.f32 #s(literal -2 binary32) %47 %46)
%49 = (*.f32 uy %48)
%50 = (*.f32 yi %23)
%51 = (*.f32 uy %50)
%52 = (*.f32 #s(literal -4/3 binary32) %51)
%53 = (fma.f32 #s(literal -2 binary32) %44 %52)
%54 = (*.f32 uy %53)
%55 = (fma.f32 #s(literal 2 binary32) %45 %54)
%56 = (*.f32 uy %55)
%57 = (+.f32 xi %56)
%58 = (approx %42 %57)
%59 = (*.f32 %2 %2)
%60 = (*.f32 %59 xi)
%61 = (+.f32 yi yi)
%62 = (*.f32 %31 %43)
%64 = (*.f32 %31 %58)
%67 = (* maxCos (* ux zi))
%69 = (approx (+ xi %67) %18)
%70 = (/.f32 xi zi)
%71 = (/.f32 %49 zi)
%72 = (+.f32 %70 %71)
%73 = (fma.f32 maxCos ux %72)
%74 = (*.f32 zi %73)
%77 = (pow %35 2)
%87 = (approx (+ xi (+ %67 (* uy (+ (* -2 (* uy (* xi %77))) (* 2 (* yi %35)))))) %74)
%88 = (*.f32 %60 uy)
%89 = (*.f32 %88 #s(literal -2 binary32))
%90 = (*.f32 %89 uy)
%91 = (fma.f32 %61 %25 %90)
%92 = (fma.f32 maxCos %17 %91)
%93 = (+.f32 xi %92)
%95 = (- 1 ux)
%98 = (* maxCos (* ux (* zi %95)))
%105 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %95 2)))))
%115 = (* xi %105)
%117 = (+ %98 (+ (* uy (+ (* -2 (* uy (* xi (* %77 %105)))) (* 2 (* yi (* %35 %105))))) %115))
%118 = (approx %117 %93)
%120 = (* (* uy 2) %35)
%123 = (* (* %95 maxCos) ux)
%126 = (sqrt (- 1 (* %123 %123)))
%134 = (+ (+ (* (* (cos %120) %126) xi) (* (* (sin %120) %126) yi)) (* %123 zi))
%137 = (approx (+ %98 %115) %69)
%139 = (approx %117 %87)
uy
#s(literal 2 binary32)
%2
#s(literal 1 binary32)
ux
%5
maxCos
xi
yi
zi
%10
%11
%12
%13
%14
#s(literal -2 binary32)
%16
%17
%18
%19
#s(literal 3 binary32)
%21
#s(literal -4/3 binary32)
%23
%24
%25
%26
%27
%28
%29
%30
%31
%32
%33
%34
%43
%44
%45
%46
%47
%48
%49
%50
%51
%52
%53
%54
%55
%56
%57
%58
%59
%60
%61
%62
(fma.f32 %14 %19 %62)
%64
(fma.f32 %14 %19 %64)
%69
%70
%71
%72
%73
%74
%87
%88
%89
%90
%91
%92
%93
%118
(approx %134 %118)
%137
(approx %134 %137)
%139
(approx %134 %139)
Outputs
%2 = (PI.f32 )
%5 = (neg.f32 ux)
%6 = (neg.f32 %5)
%8 = (-.f32 #s(literal 1 binary32) ux)
%12 = (-.f32 ux #s(literal 1 binary32))
%18 = (*.f32 %2 uy)
%19 = (*.f32 uy %2)
%20 = (pow.f32 %18 #s(literal 1 binary32))
%21 = (+.f32 %2 %2)
%22 = (*.f32 %21 uy)
%23 = (+.f32 uy uy)
%29 = (neg.f32 %2)
%32 = (neg.f32 uy)
%35 = (neg.f32 %18)
%37 = (*.f32 %18 #s(literal 1 binary32))
%39 = (*.f32 #s(literal 1 binary32) %18)
%47 = (cos.f32 %18)
%48 = (sin.f32 %18)
%49 = (+.f32 %47 %48)
%50 = (-.f32 %47 %48)
%53 = (cos.f32 %22)
%54 = (*.f32 #s(literal 1/2 binary32) %53)
%55 = (+.f32 #s(literal 1/2 binary32) %54)
%56 = (-.f32 #s(literal 1/2 binary32) %54)
%58 = (fabs.f32 %47)
%60 = (*.f32 (neg.f32 %48) %48)
%62 = (neg.f32 %56)
%64 = (neg.f32 %47)
%69 = (sin.f32 %22)
%70 = (*.f32 %2 #s(literal 1/2 binary32))
%71 = (cos.f32 %70)
%73 = (*.f32 %53 (sin.f32 %70))
%81 = (*.f32 #s(literal -2 binary32) uy)
%89 = (*.f32 #s(literal -2 binary32) %18)
%92 = (fabs.f32 %22)
%99 = (neg.f32 %53)
%103 = (*.f32 %48 %47)
%110 = (*.f32 %8 ux)
%121 = (+.f32 yi yi)
%123 = (*.f32 %69 yi)
%128 = (*.f32 zi ux)
%131 = (*.f32 maxCos ux)
%133 = (*.f32 zi maxCos)
%135 = (*.f32 %128 maxCos)
%143 = (fabs.f32 %2)
%144 = (fabs.f32 %143)
%145 = (*.f32 %144 %144)
%146 = (neg.f32 %143)
%147 = (*.f32 %146 %146)
%148 = (neg.f32 %29)
%149 = (*.f32 %148 %148)
%150 = (*.f32 %143 %143)
%151 = (*.f32 %29 %29)
%152 = (*.f32 %2 %2)
%153 = (pow.f32 %143 #s(literal 2 binary32))
%154 = (pow.f32 %29 #s(literal 2 binary32))
%155 = (pow.f32 %152 #s(literal 1 binary32))
%156 = (pow.f32 %2 #s(literal 2 binary32))
%157 = (fabs.f32 %152)
%158 = (*.f32 %2 %29)
%159 = (neg.f32 %158)
%160 = (*.f32 %29 %2)
%161 = (neg.f32 %160)
%169 = (*.f32 %152 %2)
%173 = (*.f32 maxCos %8)
%175 = (*.f32 maxCos %5)
%177 = (*.f32 %5 maxCos)
%184 = (*.f32 %12 maxCos)
%193 = (*.f32 maxCos #s(literal -1 binary32))
%195 = (*.f32 #s(literal -1 binary32) maxCos)
%204 = (*.f32 %173 ux)
%210 = (*.f32 %184 ux)
%212 = (*.f32 %131 %110)
%214 = (*.f32 ux ux)
%228 = (*.f32 %210 maxCos)
%229 = (*.f32 %228 %110)
%232 = (*.f32 (*.f32 %184 maxCos) %110)
%236 = (neg.f32 %212)
%239 = (neg.f32 maxCos)
%240 = (*.f32 %239 maxCos)
%242 = (*.f32 %12 %12)
%243 = (*.f32 %242 %214)
%246 = (*.f32 %204 maxCos)
%257 = (fma.f32 %228 %110 #s(literal 1 binary32))
%262 = (*.f32 maxCos maxCos)
%264 = (*.f32 (*.f32 %262 ux) ux)
%267 = (neg.f32 %243)
%269 = (*.f32 %246 %8)
%273 = (*.f32 (*.f32 %173 maxCos) %8)
%276 = (fabs.f32 %210)
%277 = (neg.f32 %276)
%284 = (*.f32 (*.f32 maxCos %173) %214)
%310 = (sqrt.f32 %257)
%315 = (fabs.f32 %276)
%320 = (asin.f32 %204)
%329 = (neg.f32 %310)
%343 = (/.f32 %69 xi)
%345 = (/.f32 #s(literal 1 binary32) xi)
%347 = (neg.f32 yi)
%348 = (*.f32 %347 %69)
%349 = (neg.f32 xi)
%350 = (/.f32 #s(literal 1 binary32) %349)
%353 = (*.f32 yi %345)
%355 = (/.f32 yi xi)
%356 = (*.f32 %69 %355)
%361 = (neg.f32 %349)
%370 = (/.f32 %348 xi)
%372 = (*.f32 %53 xi)
%373 = (fma.f32 %69 yi %372)
%394 = (/.f32 %372 xi)
%406 = (fma.f32 %69 %355 %53)
%416 = (*.f32 %406 xi)
%426 = (*.f32 %356 xi)
%445 = (PI )
%446 = (* %445 uy)
%448 = (cos (* -2 %446))
%452 = (sin (* %446 2))
%454 = (+ (* %448 xi) (* %452 yi))
%455 = (approx %454 %416)
%458 = (*.f32 (*.f32 xi %143) %143)
%460 = (*.f32 (*.f32 xi %29) %29)
%461 = (*.f32 xi %2)
%462 = (*.f32 %461 %2)
%464 = (*.f32 %143 (*.f32 %143 xi))
%466 = (*.f32 %29 (*.f32 %29 xi))
%467 = (*.f32 %152 xi)
%468 = (*.f32 xi %152)
%469 = (*.f32 %2 %461)
%470 = (pow.f32 %467 #s(literal 1 binary32))
%471 = (*.f32 yi %2)
%474 = (*.f32 %21 yi)
%486 = (*.f32 %471 #s(literal 1 binary32))
%489 = (*.f32 #s(literal 1 binary32) %471)
%496 = (*.f32 xi uy)
%498 = (*.f32 (*.f32 %496 %143) %143)
%500 = (*.f32 (*.f32 %496 %29) %29)
%502 = (*.f32 (*.f32 %496 %2) %2)
%504 = (*.f32 (*.f32 uy %152) xi)
%505 = (*.f32 %496 %152)
%507 = (*.f32 %143 (*.f32 %143 %496))
%509 = (*.f32 %29 (*.f32 %29 %496))
%510 = (*.f32 %467 uy)
%511 = (*.f32 %152 %496)
%512 = (*.f32 %18 %461)
%513 = (*.f32 %152 uy)
%514 = (*.f32 xi %513)
%516 = (*.f32 %2 (*.f32 %461 uy))
%518 = (*.f32 %2 (*.f32 %2 %496))
%519 = (*.f32 uy %467)
%520 = (pow.f32 %510 #s(literal 1 binary32))
%521 = (-.f32 %510 %471)
%522 = (*.f32 #s(literal -2 binary32) %521)
%523 = (*.f32 %467 #s(literal -2 binary32))
%524 = (*.f32 %523 uy)
%525 = (*.f32 %471 #s(literal -2 binary32))
%527 = (*.f32 %510 #s(literal 2 binary32))
%529 = (*.f32 %81 %152)
%530 = (neg.f32 %525)
%533 = (*.f32 %81 xi)
%536 = (*.f32 #s(literal -2 binary32) %496)
%539 = (*.f32 #s(literal -2 binary32) %152)
%542 = (*.f32 #s(literal -2 binary32) xi)
%543 = (*.f32 uy %542)
%548 = (*.f32 %152 #s(literal -2 binary32))
%564 = (*.f32 %496 #s(literal -2 binary32))
%567 = (*.f32 xi %81)
%573 = (fma.f32 yi %2 %524)
%575 = (*.f32 %152 %81)
%578 = (*.f32 %461 %81)
%595 = (*.f32 %522 uy)
%596 = (*.f32 uy %522)
%597 = (*.f32 %121 uy)
%598 = (*.f32 %597 %2)
%599 = (*.f32 %527 uy)
%600 = (-.f32 %598 %599)
%601 = (*.f32 uy %510)
%602 = (*.f32 %601 #s(literal -2 binary32))
%604 = (-.f32 %602 (*.f32 %32 %474))
%607 = (-.f32 %602 (*.f32 (neg.f32 %121) %18))
%609 = (-.f32 %602 (*.f32 %525 uy))
%611 = (-.f32 %602 (*.f32 %35 %121))
%613 = (-.f32 %602 (neg.f32 %598))
%614 = (fma.f32 %601 #s(literal -2 binary32) %598)
%615 = (neg.f32 %599)
%616 = (fma.f32 %597 %2 %615)
%617 = (fma.f32 %597 %2 %602)
%618 = (*.f32 uy %81)
%619 = (fma.f32 %618 %467 %598)
%620 = (*.f32 uy %121)
%621 = (fma.f32 %620 %2 %615)
%622 = (fma.f32 %620 %2 %602)
%623 = (*.f32 uy %471)
%624 = (fma.f32 %623 #s(literal 2 binary32) %615)
%625 = (fma.f32 %623 #s(literal 2 binary32) %602)
%626 = (fma.f32 %496 %575 %598)
%627 = (fma.f32 %81 %510 %598)
%628 = (fma.f32 %524 uy %598)
%629 = (fma.f32 %121 %18 %615)
%630 = (fma.f32 %121 %18 %602)
%631 = (fma.f32 %510 %81 %598)
%632 = (fma.f32 %474 uy %615)
%633 = (fma.f32 %474 uy %602)
%634 = (fma.f32 %471 %23 %615)
%635 = (fma.f32 %471 %23 %602)
%636 = (*.f32 %81 uy)
%637 = (fma.f32 %467 %636 %598)
%638 = (fma.f32 %467 %618 %598)
%639 = (fma.f32 %23 %471 %615)
%640 = (fma.f32 %23 %471 %602)
%641 = (*.f32 %496 %81)
%642 = (fma.f32 %152 %641 %598)
%643 = (*.f32 %510 uy)
%644 = (fma.f32 #s(literal -2 binary32) %643 %598)
%645 = (fma.f32 %22 yi %615)
%646 = (fma.f32 %22 yi %602)
%647 = (fma.f32 %18 %121 %615)
%648 = (fma.f32 %18 %121 %602)
%649 = (fma.f32 %2 %620 %615)
%650 = (fma.f32 %2 %620 %602)
%651 = (*.f32 %471 uy)
%652 = (fma.f32 #s(literal 2 binary32) %651 %615)
%653 = (fma.f32 #s(literal 2 binary32) %651 %602)
%654 = (*.f32 yi %18)
%655 = (fma.f32 #s(literal 2 binary32) %654 %615)
%656 = (fma.f32 #s(literal 2 binary32) %654 %602)
%657 = (fma.f32 uy %524 %598)
%658 = (fma.f32 uy %474 %615)
%659 = (fma.f32 uy %474 %602)
%660 = (pow.f32 %595 #s(literal 1 binary32))
%661 = (+.f32 %598 %615)
%662 = (+.f32 %598 %602)
%663 = (+.f32 %602 %598)
%664 = (*.f32 %32 %522)
%665 = (neg.f32 %664)
%669 = (*.f32 %169 yi)
%675 = (*.f32 yi uy)
%683 = (*.f32 %669 uy)
%689 = (*.f32 #s(literal -4/3 binary32) uy)
%690 = (*.f32 %689 %169)
%692 = (*.f32 %689 yi)
%694 = (*.f32 #s(literal -4/3 binary32) %675)
%696 = (*.f32 #s(literal -4/3 binary32) %669)
%699 = (*.f32 %169 #s(literal -4/3 binary32))
%701 = (*.f32 %683 #s(literal -4/3 binary32))
%704 = (*.f32 %669 #s(literal -4/3 binary32))
%708 = (*.f32 #s(literal 4/3 binary32) %683)
%720 = (*.f32 %542 %143)
%721 = (neg.f32 %708)
%724 = (*.f32 %542 %29)
%727 = (*.f32 %542 %2)
%736 = (*.f32 #s(literal -2 binary32) %2)
%746 = (fma.f32 %467 #s(literal -2 binary32) %701)
%754 = (*.f32 %461 #s(literal -2 binary32))
%764 = (*.f32 %746 uy)
%770 = (*.f32 %701 uy)
%773 = (*.f32 uy %689)
%805 = (*.f32 %32 %746)
%807 = (fma.f32 %773 %669 %474)
%816 = (neg.f32 %32)
%817 = (*.f32 %816 %746)
%819 = (neg.f32 %805)
%821 = (fma.f32 %21 yi %764)
%840 = (fma.f32 yi %2 %764)
%842 = (-.f32 %471 %805)
%869 = (*.f32 %821 uy)
%875 = (*.f32 %764 uy)
%879 = (*.f32 uy uy)
%900 = (*.f32 %32 %821)
%902 = (fma.f32 %879 %746 xi)
%907 = (fma.f32 %821 uy xi)
%930 = (approx %454 %907)
%940 = (*.f32 %310 %455)
%943 = (*.f32 %204 zi)
%944 = (*.f32 %329 %455)
%947 = (*.f32 (neg.f32 %133) %110)
%950 = (*.f32 (neg.f32 %110) %133)
%952 = (*.f32 %173 zi)
%953 = (*.f32 %5 %952)
%955 = (*.f32 %210 zi)
%957 = (*.f32 zi %173)
%958 = (neg.f32 %329)
%959 = (*.f32 %958 %455)
%961 = (neg.f32 %944)
%964 = (*.f32 zi %8)
%965 = (*.f32 maxCos %964)
%981 = (fma.f32 %310 %455 %943)
%982 = (*.f32 %964 ux)
%1024 = (*.f32 %310 %930)
%1028 = (*.f32 (neg.f32 %930) %310)
%1034 = (*.f32 %958 %930)
%1036 = (neg.f32 %1028)
%1054 = (fma.f32 %310 %930 %943)
%1097 = (* (* zi ux) maxCos)
%1099 = (approx (+ %1097 xi) %135)
%1101 = (/.f32 #s(literal 1 binary32) zi)
%1103 = (neg.f32 zi)
%1104 = (/.f32 #s(literal 1 binary32) %1103)
%1109 = (neg.f32 %1103)
%1112 = (/.f32 xi zi)
%1122 = (/.f32 %522 zi)
%1127 = (*.f32 uy %1101)
%1129 = (/.f32 uy zi)
%1130 = (*.f32 %522 %1129)
%1141 = (/.f32 %598 zi)
%1145 = (/.f32 %602 zi)
%1148 = (/.f32 %664 zi)
%1150 = (fma.f32 %522 uy xi)
%1152 = (fma.f32 %1112 zi %595)
%1154 = (*.f32 zi %1150)
%1155 = (*.f32 zi zi)
%1156 = (/.f32 #s(literal 1 binary32) %1155)
%1170 = (*.f32 %1103 zi)
%1174 = (*.f32 zi %1103)
%1215 = (/.f32 %1154 zi)
%1219 = (/.f32 %1150 zi)
%1253 = (/.f32 %1150 %1103)
%1255 = (fma.f32 maxCos ux %1112)
%1264 = (fma.f32 %133 ux xi)
%1265 = (fma.f32 %522 uy %1264)
%1279 = (fma.f32 %1122 uy %131)
%1290 = (fma.f32 maxCos ux %1219)
%1303 = (*.f32 %1290 zi)
%1311 = (*.f32 %1130 zi)
%1317 = (*.f32 zi %1130)
%1332 = (* (* (pow %445 2) xi) uy)
%1333 = (* yi %445)
%1339 = (approx (+ (+ (* (* -2 (- %1332 %1333)) uy) %1097) xi) %1303)
%1371 = (fma.f32 %597 %2 %135)
%1376 = (*.f32 (*.f32 %239 zi) ux)
%1380 = (fma.f32 %601 #s(literal -2 binary32) %135)
%1387 = (*.f32 %816 %522)
%1389 = (fma.f32 %131 zi %595)
%1428 = (neg.f32 %1389)
%1430 = (+.f32 %1264 %598)
%1465 = (* (* (- ux 1) maxCos) ux)
%1467 = (sin (acos %1465))
%1469 = (* %1465 zi)
%1470 = (- (* %1467 xi) %1469)
%1476 = (+ %1470 (* (* -2 (- (* %1332 %1467) (* %1467 %1333))) uy))
%1477 = (approx %1476 %1265)
%1484 = (- (+ (* (* %1467 %452) yi) (* (* %1467 %448) xi)) %1469)
%1485 = (approx %1484 %1477)
%1487 = (approx %1470 %1099)
%1489 = (approx %1484 %1487)
%1491 = (approx %1476 %1339)
%1493 = (approx %1484 %1491)
uy
#s(literal 2 binary32)
%2
#s(literal 1 binary32)
ux
(-.f32 #s(literal 1 binary32) %6)
%8
(pow.f32 %8 #s(literal 1 binary32))
(+.f32 %5 #s(literal 1 binary32))
(+.f32 #s(literal 1 binary32) %5)
(neg.f32 %12)
maxCos
xi
yi
zi
%18
%19
%20
%22
(*.f32 %23 %2)
(*.f32 %18 #s(literal 2 binary32))
(*.f32 %2 %23)
(*.f32 #s(literal 2 binary32) %18)
(*.f32 uy %21)
(-.f32 %18 (*.f32 %29 uy))
(-.f32 %18 (*.f32 %32 %2))
(-.f32 %18 %35)
(fma.f32 %18 #s(literal 1 binary32) %37)
(fma.f32 #s(literal 1 binary32) %18 %39)
(fma.f32 %2 uy %18)
(fma.f32 uy %2 %18)
(pow.f32 %22 #s(literal 1 binary32))
(+.f32 %37 %37)
(+.f32 %39 %39)
(+.f32 %18 %18)
(*.f32 %49 %50)
(-.f32 %55 %56)
(fma.f32 %58 %58 %60)
(fma.f32 %58 %58 %62)
(fma.f32 %64 %64 %60)
(fma.f32 %64 %64 %62)
(fma.f32 %47 %47 %60)
(fma.f32 %47 %47 %62)
(fma.f32 %69 %71 %73)
(pow.f32 %53 #s(literal 1 binary32))
(+.f32 (*.f32 %69 %71) %73)
(+.f32 %55 %60)
(+.f32 %55 %62)
(sin.f32 (fma.f32 %81 %2 %70))
(sin.f32 (fma.f32 (fabs.f32 %18) #s(literal 2 binary32) %70))
(sin.f32 (fma.f32 %23 %2 %70))
(cos.f32 (neg.f32 %89))
(cos.f32 (neg.f32 %92))
(cos.f32 (fabs.f32 %92))
(cos.f32 %89)
(cos.f32 %92)
%53
(neg.f32 %99)
(*.f32 (*.f32 #s(literal 2 binary32) %48) %47)
(*.f32 %103 #s(literal 2 binary32))
(*.f32 #s(literal 2 binary32) %103)
(fma.f32 %48 %47 %103)
(fma.f32 %47 %48 %103)
(pow.f32 %69 #s(literal 1 binary32))
(+.f32 %103 %103)
%69
%110
(*.f32 ux %8)
(pow.f32 %110 #s(literal 1 binary32))
(+.f32 ux (*.f32 ux %5))
(+.f32 ux (*.f32 %5 ux))
(neg.f32 (*.f32 %12 ux))
(neg.f32 (*.f32 ux %12))
#s(literal -2 binary32)
(*.f32 %121 %103)
%123
(*.f32 yi %69)
(*.f32 #s(literal 2 binary32) (*.f32 %103 yi))
(pow.f32 %123 #s(literal 1 binary32))
%128
(*.f32 ux zi)
(pow.f32 %128 #s(literal 1 binary32))
(*.f32 %131 zi)
(*.f32 %133 ux)
%135
(*.f32 zi %131)
(*.f32 maxCos %128)
(*.f32 ux %133)
(pow.f32 %135 #s(literal 1 binary32))
%133
(*.f32 maxCos zi)
(pow.f32 %133 #s(literal 1 binary32))
#s(literal 3 binary32)
%145
%147
%149
%150
%151
%152
%153
%154
%155
%156
%157
%159
%161
#s(literal -4/3 binary32)
(*.f32 (*.f32 %2 %143) %143)
(*.f32 %158 %29)
(*.f32 %143 (*.f32 %143 %2))
(*.f32 %29 %160)
%169
(*.f32 %2 %152)
(pow.f32 %169 #s(literal 1 binary32))
(pow.f32 %2 #s(literal 3 binary32))
%173
(*.f32 %8 maxCos)
(fma.f32 maxCos #s(literal 1 binary32) %175)
(fma.f32 #s(literal 1 binary32) maxCos %177)
(pow.f32 %173 #s(literal 1 binary32))
(+.f32 (*.f32 maxCos #s(literal 1 binary32)) %175)
(+.f32 (*.f32 #s(literal 1 binary32) maxCos) %177)
(neg.f32 %184)
%18
%19
%20
%12
(pow.f32 %12 #s(literal 1 binary32))
(+.f32 #s(literal -1 binary32) %6)
(+.f32 #s(literal -1 binary32) ux)
(+.f32 ux #s(literal -1 binary32))
(neg.f32 %8)
%184
(*.f32 maxCos %12)
(fma.f32 maxCos ux %193)
(fma.f32 maxCos ux %195)
(fma.f32 ux maxCos %193)
(fma.f32 ux maxCos %195)
(pow.f32 %184 #s(literal 1 binary32))
(+.f32 %131 %193)
(+.f32 %131 %195)
(neg.f32 %173)
(*.f32 %131 %8)
%204
(*.f32 %110 maxCos)
(*.f32 maxCos %110)
(*.f32 %8 %131)
(*.f32 ux %173)
(pow.f32 %204 #s(literal 1 binary32))
(neg.f32 %210)
%212
(*.f32 %204 ux)
(*.f32 %173 %214)
(*.f32 %214 %173)
(*.f32 %110 %131)
(*.f32 maxCos (*.f32 %110 ux))
(*.f32 maxCos (*.f32 %8 %214))
(*.f32 %8 (*.f32 %131 ux))
(*.f32 %8 (*.f32 maxCos %214))
(*.f32 ux %204)
(pow.f32 %212 #s(literal 1 binary32))
(-.f32 %229 #s(literal -1 binary32))
(-.f32 #s(literal 1 binary32) (*.f32 (neg.f32 %232) ux))
(-.f32 #s(literal 1 binary32) (*.f32 %236 %184))
(-.f32 #s(literal 1 binary32) (*.f32 (neg.f32 %240) %243))
(-.f32 #s(literal 1 binary32) (*.f32 %246 %110))
(fma.f32 (*.f32 %240 %242) %214 #s(literal 1 binary32))
(fma.f32 (*.f32 %240 %214) %242 #s(literal 1 binary32))
(fma.f32 (*.f32 %212 %12) maxCos #s(literal 1 binary32))
(fma.f32 (*.f32 %184 %173) %214 #s(literal 1 binary32))
%257
(fma.f32 (*.f32 %210 %8) %131 #s(literal 1 binary32))
(fma.f32 (*.f32 %210 ux) %173 #s(literal 1 binary32))
(fma.f32 (neg.f32 %264) %242 #s(literal 1 binary32))
(fma.f32 %267 %262 #s(literal 1 binary32))
(fma.f32 (neg.f32 %269) ux #s(literal 1 binary32))
(fma.f32 (neg.f32 %273) %214 #s(literal 1 binary32))
(fma.f32 %277 %276 #s(literal 1 binary32))
(fma.f32 %269 %5 #s(literal 1 binary32))
(fma.f32 %232 ux #s(literal 1 binary32))
(fma.f32 %264 (neg.f32 %242) #s(literal 1 binary32))
(fma.f32 %284 %12 #s(literal 1 binary32))
(fma.f32 %240 %243 #s(literal 1 binary32))
(fma.f32 %273 (neg.f32 %214) #s(literal 1 binary32))
(fma.f32 %276 %277 #s(literal 1 binary32))
(fma.f32 %210 %204 #s(literal 1 binary32))
(fma.f32 %204 %210 #s(literal 1 binary32))
(fma.f32 %173 (*.f32 %214 %184) #s(literal 1 binary32))
(fma.f32 %173 %236 #s(literal 1 binary32))
(fma.f32 %243 %240 #s(literal 1 binary32))
(fma.f32 %262 %267 #s(literal 1 binary32))
(fma.f32 %212 %184 #s(literal 1 binary32))
(fma.f32 %184 %212 #s(literal 1 binary32))
(fma.f32 %12 %284 #s(literal 1 binary32))
(fma.f32 maxCos (*.f32 %12 %212) #s(literal 1 binary32))
(fma.f32 ux %232 #s(literal 1 binary32))
(pow.f32 %257 #s(literal 1 binary32))
(+.f32 %229 #s(literal 1 binary32))
(+.f32 #s(literal 1 binary32) %229)
(neg.f32 (-.f32 #s(literal -1 binary32) %229))
(neg.f32 (fma.f32 %210 %210 #s(literal -1 binary32)))
(sqrt.f32 (*.f32 %310 %310))
%310
(pow.f32 %310 #s(literal 1 binary32))
(pow.f32 %257 #s(literal 1/2 binary32))
(sin.f32 (acos.f32 %315))
(sin.f32 (acos.f32 %277))
(sin.f32 (+.f32 %320 %70))
(sin.f32 (acos.f32 %276))
(sin.f32 (acos.f32 %210))
(sin.f32 (acos.f32 %204))
(fabs.f32 %329)
(fabs.f32 %310)
(cos.f32 (asin.f32 %315))
(cos.f32 (asin.f32 %277))
(cos.f32 (asin.f32 %210))
(cos.f32 (fabs.f32 %320))
(cos.f32 (asin.f32 %276))
(cos.f32 %320)
(*.f32 %343 yi)
(*.f32 %345 %123)
(*.f32 %348 %350)
(*.f32 %123 %345)
(*.f32 %69 %353)
%356
(*.f32 yi %343)
(/.f32 (*.f32 %123 #s(literal 1 binary32)) xi)
(/.f32 (neg.f32 %348) %361)
(/.f32 %348 %349)
(/.f32 %123 xi)
(/.f32 #s(literal 1 binary32) (/.f32 %349 %348))
(/.f32 #s(literal 1 binary32) (/.f32 xi %123))
(pow.f32 %356 #s(literal 1 binary32))
(neg.f32 %370)
(*.f32 %373 %345)
(/.f32 (fma.f32 %349 %53 %348) %349)
(/.f32 (neg.f32 %373) %349)
(/.f32 %373 xi)
(/.f32 #s(literal 1 binary32) (/.f32 xi %373))
(-.f32 (fma.f32 %343 yi %55) %56)
(-.f32 %55 (-.f32 %56 %356))
(-.f32 %55 (+.f32 %56 %370))
(-.f32 %356 (/.f32 (*.f32 %349 %53) xi))
(-.f32 %356 %99)
(-.f32 %53 %370)
(fma.f32 %49 %50 %356)
(fma.f32 %343 yi %394)
(fma.f32 %343 yi %53)
(fma.f32 %345 %123 %394)
(fma.f32 %345 %123 %53)
(fma.f32 %348 %350 %394)
(fma.f32 %348 %350 %53)
(fma.f32 %123 %345 %394)
(fma.f32 %123 %345 %53)
(fma.f32 %69 %353 %394)
(fma.f32 %69 %353 %53)
(fma.f32 %69 %355 %394)
%406
(fma.f32 yi %343 %394)
(fma.f32 yi %343 %53)
(pow.f32 %406 #s(literal 1 binary32))
(+.f32 %394 %356)
(+.f32 %356 %394)
(+.f32 %356 %53)
(+.f32 %53 %356)
(neg.f32 (-.f32 %370 %53))
%416
(*.f32 xi %406)
(/.f32 (*.f32 xi %373) xi)
(/.f32 (*.f32 %373 xi) xi)
(-.f32 %372 (*.f32 %349 %356))
(-.f32 %372 (*.f32 %370 xi))
(-.f32 %372 (neg.f32 %426))
(fma.f32 (*.f32 xi yi) %343 %372)
(fma.f32 (*.f32 xi %123) %345 %372)
(fma.f32 %356 xi %372)
(fma.f32 %123 (*.f32 %345 xi) %372)
(fma.f32 %53 xi %426)
(fma.f32 yi (*.f32 %343 xi) %372)
(fma.f32 xi %356 %372)
(fma.f32 xi %53 %426)
(pow.f32 %416 #s(literal 1 binary32))
(+.f32 %426 %372)
(+.f32 %372 %426)
%455
(pow.f32 %455 #s(literal 1 binary32))
%458
%460
%462
%464
%466
%467
%468
%469
%470
%471
(*.f32 %2 yi)
(pow.f32 %471 #s(literal 1 binary32))
%474
(*.f32 %121 %2)
(*.f32 %471 #s(literal 2 binary32))
(*.f32 yi %21)
(*.f32 %2 %121)
(*.f32 #s(literal 2 binary32) %471)
(-.f32 %471 (*.f32 %347 %2))
(-.f32 %471 (*.f32 %29 yi))
(-.f32 %471 (neg.f32 %471))
(fma.f32 %471 #s(literal 1 binary32) %486)
(fma.f32 yi %2 %471)
(fma.f32 #s(literal 1 binary32) %471 %489)
(fma.f32 %2 yi %471)
(pow.f32 %474 #s(literal 1 binary32))
(+.f32 %486 %486)
(+.f32 %489 %489)
(+.f32 %471 %471)
%498
%500
%502
%504
%505
%507
%509
%510
%511
%512
%514
%516
%518
%519
%520
%522
(-.f32 %524 %525)
(-.f32 %474 %527)
(fma.f32 %529 xi %530)
(fma.f32 %529 xi %474)
(fma.f32 %533 %152 %530)
(fma.f32 %533 %152 %474)
(fma.f32 %536 %152 %530)
(fma.f32 %536 %152 %474)
(fma.f32 %539 %496 %530)
(fma.f32 %539 %496 %474)
(fma.f32 %543 %152 %530)
(fma.f32 %543 %152 %474)
(fma.f32 %542 %513 %530)
(fma.f32 %542 %513 %474)
(fma.f32 %496 %548 %530)
(fma.f32 %496 %548 %474)
(fma.f32 %81 %467 %530)
(fma.f32 %81 %467 %474)
(fma.f32 %21 yi %524)
(fma.f32 %89 %461 %530)
(fma.f32 %89 %461 %474)
(fma.f32 %523 uy %530)
(fma.f32 %523 uy %474)
(fma.f32 %121 %2 %524)
(fma.f32 %510 #s(literal -2 binary32) %530)
(fma.f32 %510 #s(literal -2 binary32) %474)
(fma.f32 %471 #s(literal 2 binary32) %524)
(fma.f32 %467 %81 %530)
(fma.f32 %467 %81 %474)
(fma.f32 %152 %564 %530)
(fma.f32 %152 %564 %474)
(fma.f32 %152 %567 %530)
(fma.f32 %152 %567 %474)
(fma.f32 #s(literal -2 binary32) %510 %530)
(fma.f32 #s(literal -2 binary32) %510 %474)
(fma.f32 yi %21 %524)
(fma.f32 yi %2 %573)
(fma.f32 xi %575 %530)
(fma.f32 xi %575 %474)
(fma.f32 %2 %578 %530)
(fma.f32 %2 %578 %474)
(fma.f32 %2 %121 %524)
(fma.f32 %2 yi %573)
(fma.f32 #s(literal 2 binary32) %471 %524)
(fma.f32 uy %523 %530)
(fma.f32 uy %523 %474)
(pow.f32 %522 #s(literal 1 binary32))
(+.f32 (fma.f32 %523 uy %471) %471)
(+.f32 %524 %530)
(+.f32 %524 %474)
(+.f32 %474 %524)
(+.f32 %471 %573)
(neg.f32 (-.f32 %525 %524))
%595
%596
%600
%604
%607
%609
%611
%613
%614
%616
%617
%619
%621
%622
%624
%625
%626
%627
%628
%629
%630
%631
%632
%633
%634
%635
%637
%638
%639
%640
%642
%644
%645
%646
%647
%648
%649
%650
%652
%653
%655
%656
%657
%658
%659
%660
%661
%662
%663
%665
(*.f32 (*.f32 yi %152) %2)
(*.f32 %471 %152)
%669
(*.f32 %152 %471)
(*.f32 yi %169)
(*.f32 %2 (*.f32 %152 yi))
(pow.f32 %669 #s(literal 1 binary32))
(*.f32 (*.f32 %675 %152) %2)
(*.f32 (*.f32 %675 %2) %152)
(*.f32 (*.f32 uy %169) yi)
(*.f32 %675 %169)
%683
(*.f32 %169 %675)
(*.f32 yi (*.f32 %169 uy))
(*.f32 uy %669)
(pow.f32 %683 #s(literal 1 binary32))
(*.f32 %690 yi)
(*.f32 %692 %169)
(*.f32 %694 %169)
(*.f32 %696 uy)
(*.f32 %689 %669)
(*.f32 %675 %699)
%701
(*.f32 %669 %689)
(*.f32 #s(literal -4/3 binary32) %683)
(*.f32 uy %704)
(pow.f32 %701 #s(literal 1 binary32))
(-.f32 %523 %708)
(-.f32 %701 (*.f32 (neg.f32 %542) %152))
(-.f32 %701 (*.f32 (neg.f32 %467) #s(literal -2 binary32)))
(-.f32 %701 (*.f32 #s(literal 2 binary32) %467))
(-.f32 %701 (neg.f32 %523))
(fma.f32 %720 %143 %721)
(fma.f32 %720 %143 %701)
(fma.f32 %724 %29 %721)
(fma.f32 %724 %29 %701)
(fma.f32 %727 %2 %721)
(fma.f32 %727 %2 %701)
(fma.f32 %539 xi %721)
(fma.f32 %539 xi %701)
(fma.f32 %690 yi %523)
(fma.f32 %692 %169 %523)
(fma.f32 %694 %169 %523)
(fma.f32 %696 uy %523)
(fma.f32 %736 %461 %721)
(fma.f32 %736 %461 %701)
(fma.f32 %542 %152 %721)
(fma.f32 %542 %152 %701)
(fma.f32 %689 %669 %523)
(fma.f32 %675 %699 %523)
(fma.f32 %683 #s(literal -4/3 binary32) %523)
(fma.f32 %669 %689 %523)
(fma.f32 %467 #s(literal -2 binary32) %721)
%746
(fma.f32 #s(literal -4/3 binary32) %683 %523)
(fma.f32 %152 %542 %721)
(fma.f32 %152 %542 %701)
(fma.f32 #s(literal -2 binary32) %467 %721)
(fma.f32 #s(literal -2 binary32) %467 %701)
(fma.f32 xi %548 %721)
(fma.f32 xi %548 %701)
(fma.f32 %2 %754 %721)
(fma.f32 %2 %754 %701)
(fma.f32 uy %704 %523)
(pow.f32 %746 #s(literal 1 binary32))
(+.f32 %523 %721)
(+.f32 %523 %701)
(+.f32 %701 %523)
(neg.f32 (-.f32 %708 %523))
%764
(*.f32 uy %746)
(-.f32 %524 (*.f32 %32 %701))
(-.f32 %524 (*.f32 %708 uy))
(-.f32 %524 (neg.f32 %770))
(fma.f32 %773 %669 %524)
(fma.f32 (*.f32 uy %683) #s(literal -4/3 binary32) %524)
(fma.f32 %529 xi %770)
(fma.f32 %533 %152 %770)
(fma.f32 %536 %152 %770)
(fma.f32 %539 %496 %770)
(fma.f32 %543 %152 %770)
(fma.f32 %542 %513 %770)
(fma.f32 %689 %683 %524)
(fma.f32 %496 %548 %770)
(fma.f32 %81 %467 %770)
(fma.f32 %89 %461 %770)
(fma.f32 %523 uy %770)
(fma.f32 %701 uy %524)
(fma.f32 %683 %689 %524)
(fma.f32 %510 #s(literal -2 binary32) %770)
(fma.f32 %467 %81 %770)
(fma.f32 #s(literal -4/3 binary32) (*.f32 %683 uy) %524)
(fma.f32 %152 %564 %770)
(fma.f32 %152 %567 %770)
(fma.f32 #s(literal -2 binary32) %510 %770)
(fma.f32 xi %575 %770)
(fma.f32 %2 %578 %770)
(fma.f32 uy %523 %770)
(fma.f32 uy %701 %524)
(pow.f32 %764 #s(literal 1 binary32))
(+.f32 %770 %524)
(+.f32 %524 %770)
(-.f32 %764 %525)
(-.f32 %474 %805)
(fma.f32 %529 xi %807)
(fma.f32 %533 %152 %807)
(fma.f32 %536 %152 %807)
(fma.f32 %539 %496 %807)
(fma.f32 %543 %152 %807)
(fma.f32 %542 %513 %807)
(fma.f32 %496 %548 %807)
(fma.f32 %81 %467 %807)
(fma.f32 %21 yi %817)
(fma.f32 %21 yi %819)
%821
(fma.f32 %89 %461 %807)
(fma.f32 %523 uy %807)
(fma.f32 %121 %2 %817)
(fma.f32 %121 %2 %819)
(fma.f32 %121 %2 %764)
(fma.f32 %746 uy %474)
(fma.f32 %510 #s(literal -2 binary32) %807)
(fma.f32 %471 #s(literal 2 binary32) %817)
(fma.f32 %471 #s(literal 2 binary32) %819)
(fma.f32 %471 #s(literal 2 binary32) %764)
(fma.f32 %467 %81 %807)
(fma.f32 %152 %564 %807)
(fma.f32 %152 %567 %807)
(fma.f32 #s(literal -2 binary32) %521 %770)
(fma.f32 #s(literal -2 binary32) %510 %807)
(fma.f32 yi %21 %817)
(fma.f32 yi %21 %819)
(fma.f32 yi %21 %764)
(fma.f32 yi %2 %840)
(fma.f32 yi %2 %842)
(fma.f32 xi %575 %807)
(fma.f32 %2 %578 %807)
(fma.f32 %2 %121 %817)
(fma.f32 %2 %121 %819)
(fma.f32 %2 %121 %764)
(fma.f32 %2 yi %840)
(fma.f32 %2 yi %842)
(fma.f32 #s(literal 2 binary32) %471 %817)
(fma.f32 #s(literal 2 binary32) %471 %819)
(fma.f32 #s(literal 2 binary32) %471 %764)
(fma.f32 uy %523 %807)
(fma.f32 uy %746 %474)
(pow.f32 %821 #s(literal 1 binary32))
(+.f32 (fma.f32 %746 uy %471) %471)
(+.f32 %524 %807)
(+.f32 %764 %474)
(+.f32 %522 %770)
(+.f32 %474 %817)
(+.f32 %474 %819)
(+.f32 %474 %764)
(+.f32 %471 %840)
(+.f32 %471 %842)
(neg.f32 (-.f32 %805 %474))
%869
(*.f32 uy %821)
(-.f32 %598 (*.f32 %32 %764))
(-.f32 %598 (*.f32 %805 uy))
(-.f32 %598 (neg.f32 %875))
(fma.f32 %597 %2 %875)
(fma.f32 %879 %746 %598)
(fma.f32 %620 %2 %875)
(fma.f32 %623 #s(literal 2 binary32) %875)
(fma.f32 %121 %18 %875)
(fma.f32 %764 uy %598)
(fma.f32 %746 %879 %598)
(fma.f32 %474 uy %875)
(fma.f32 %471 %23 %875)
(fma.f32 %23 %471 %875)
(fma.f32 %22 yi %875)
(fma.f32 %18 %121 %875)
(fma.f32 %2 %620 %875)
(fma.f32 #s(literal 2 binary32) %651 %875)
(fma.f32 #s(literal 2 binary32) %654 %875)
(fma.f32 uy %764 %598)
(fma.f32 uy %474 %875)
(pow.f32 %869 #s(literal 1 binary32))
(+.f32 %875 %598)
(+.f32 %598 %875)
(-.f32 %869 %349)
(-.f32 xi %900)
(fma.f32 %597 %2 %902)
(fma.f32 %620 %2 %902)
(fma.f32 %623 #s(literal 2 binary32) %902)
(fma.f32 %121 %18 %902)
%907
(fma.f32 %474 uy %902)
(fma.f32 %471 %23 %902)
(fma.f32 %23 %471 %902)
(fma.f32 %22 yi %902)
(fma.f32 %18 %121 %902)
(fma.f32 %2 %620 %902)
(fma.f32 #s(literal 2 binary32) %651 %902)
(fma.f32 #s(literal 2 binary32) %654 %902)
(fma.f32 uy %821 xi)
(fma.f32 uy %474 %902)
(pow.f32 %907 #s(literal 1 binary32))
(+.f32 (+.f32 xi %598) %875)
(+.f32 %598 %902)
(+.f32 %869 xi)
(+.f32 xi (*.f32 %816 %821))
(+.f32 xi (neg.f32 %900))
(+.f32 xi %869)
(neg.f32 (-.f32 %900 xi))
%930
(pow.f32 %930 #s(literal 1 binary32))
%145
%147
%149
%150
%151
%152
%153
%154
%155
%156
%157
%159
%161
%458
%460
%462
%464
%466
%467
%468
%469
%470
(*.f32 yi #s(literal 2 binary32))
(*.f32 #s(literal 2 binary32) yi)
(-.f32 yi %347)
(pow.f32 %121 #s(literal 1 binary32))
(+.f32 yi (neg.f32 %347))
%121
(neg.f32 (-.f32 %347 yi))
%940
(*.f32 %455 %310)
(pow.f32 %940 #s(literal 1 binary32))
(-.f32 %943 %944)
(-.f32 %940 %947)
(-.f32 %940 %950)
(-.f32 %940 %953)
(-.f32 %940 %955)
(fma.f32 %957 ux %959)
(fma.f32 %957 ux %961)
(fma.f32 %957 ux %940)
(fma.f32 %965 ux %959)
(fma.f32 %965 ux %961)
(fma.f32 %965 ux %940)
(fma.f32 %952 ux %959)
(fma.f32 %952 ux %961)
(fma.f32 %952 ux %940)
(fma.f32 %131 %964 %959)
(fma.f32 %131 %964 %961)
(fma.f32 %131 %964 %940)
(fma.f32 %204 zi %959)
(fma.f32 %204 zi %961)
(fma.f32 %204 zi %940)
(fma.f32 %173 %128 %959)
(fma.f32 %173 %128 %961)
(fma.f32 %173 %128 %940)
%981
(fma.f32 %982 maxCos %959)
(fma.f32 %982 maxCos %961)
(fma.f32 %982 maxCos %940)
(fma.f32 %964 %131 %959)
(fma.f32 %964 %131 %961)
(fma.f32 %964 %131 %940)
(fma.f32 %455 %310 %943)
(fma.f32 %133 %110 %959)
(fma.f32 %133 %110 %961)
(fma.f32 %133 %110 %940)
(fma.f32 %135 %8 %959)
(fma.f32 %135 %8 %961)
(fma.f32 %135 %8 %940)
(fma.f32 %128 %173 %959)
(fma.f32 %128 %173 %961)
(fma.f32 %128 %173 %940)
(fma.f32 %110 %133 %959)
(fma.f32 %110 %133 %961)
(fma.f32 %110 %133 %940)
(fma.f32 zi %204 %959)
(fma.f32 zi %204 %961)
(fma.f32 zi %204 %940)
(fma.f32 maxCos %982 %959)
(fma.f32 maxCos %982 %961)
(fma.f32 maxCos %982 %940)
(fma.f32 %8 %135 %959)
(fma.f32 %8 %135 %961)
(fma.f32 %8 %135 %940)
(fma.f32 ux %965 %959)
(fma.f32 ux %965 %961)
(fma.f32 ux %965 %940)
(fma.f32 ux %952 %959)
(fma.f32 ux %952 %961)
(fma.f32 ux %952 %940)
(pow.f32 %981 #s(literal 1 binary32))
(+.f32 %943 %959)
(+.f32 %943 %961)
(+.f32 %943 %940)
(+.f32 %940 %943)
(neg.f32 (-.f32 %944 %943))
%1024
(*.f32 %930 %310)
(pow.f32 %1024 #s(literal 1 binary32))
(-.f32 %943 %1028)
(-.f32 %1024 %947)
(-.f32 %1024 %950)
(-.f32 %1024 %953)
(-.f32 %1024 %955)
(fma.f32 %957 ux %1034)
(fma.f32 %957 ux %1036)
(fma.f32 %957 ux %1024)
(fma.f32 %965 ux %1034)
(fma.f32 %965 ux %1036)
(fma.f32 %965 ux %1024)
(fma.f32 %952 ux %1034)
(fma.f32 %952 ux %1036)
(fma.f32 %952 ux %1024)
(fma.f32 %131 %964 %1034)
(fma.f32 %131 %964 %1036)
(fma.f32 %131 %964 %1024)
(fma.f32 %204 zi %1034)
(fma.f32 %204 zi %1036)
(fma.f32 %204 zi %1024)
(fma.f32 %173 %128 %1034)
(fma.f32 %173 %128 %1036)
(fma.f32 %173 %128 %1024)
%1054
(fma.f32 %982 maxCos %1034)
(fma.f32 %982 maxCos %1036)
(fma.f32 %982 maxCos %1024)
(fma.f32 %964 %131 %1034)
(fma.f32 %964 %131 %1036)
(fma.f32 %964 %131 %1024)
(fma.f32 %930 %310 %943)
(fma.f32 %133 %110 %1034)
(fma.f32 %133 %110 %1036)
(fma.f32 %133 %110 %1024)
(fma.f32 %135 %8 %1034)
(fma.f32 %135 %8 %1036)
(fma.f32 %135 %8 %1024)
(fma.f32 %128 %173 %1034)
(fma.f32 %128 %173 %1036)
(fma.f32 %128 %173 %1024)
(fma.f32 %110 %133 %1034)
(fma.f32 %110 %133 %1036)
(fma.f32 %110 %133 %1024)
(fma.f32 zi %204 %1034)
(fma.f32 zi %204 %1036)
(fma.f32 zi %204 %1024)
(fma.f32 maxCos %982 %1034)
(fma.f32 maxCos %982 %1036)
(fma.f32 maxCos %982 %1024)
(fma.f32 %8 %135 %1034)
(fma.f32 %8 %135 %1036)
(fma.f32 %8 %135 %1024)
(fma.f32 ux %965 %1034)
(fma.f32 ux %965 %1036)
(fma.f32 ux %965 %1024)
(fma.f32 ux %952 %1034)
(fma.f32 ux %952 %1036)
(fma.f32 ux %952 %1024)
(pow.f32 %1054 #s(literal 1 binary32))
(+.f32 %943 %1034)
(+.f32 %943 %1036)
(+.f32 %943 %1024)
(+.f32 %1024 %943)
(neg.f32 (-.f32 %1028 %943))
%1099
(pow.f32 %1099 #s(literal 1 binary32))
(*.f32 %1101 xi)
(*.f32 %349 %1104)
(*.f32 xi %1101)
(/.f32 (*.f32 xi #s(literal 1 binary32)) zi)
(/.f32 %361 %1109)
(/.f32 %349 %1103)
%1112
(/.f32 #s(literal 1 binary32) (/.f32 %1103 %349))
(/.f32 #s(literal 1 binary32) (/.f32 zi xi))
(pow.f32 %1112 #s(literal 1 binary32))
(neg.f32 (/.f32 xi %1103))
(neg.f32 (/.f32 %349 zi))
(*.f32 %1122 uy)
(*.f32 %1101 %595)
(*.f32 %664 %1104)
(*.f32 %595 %1101)
(*.f32 %522 %1127)
%1130
(*.f32 uy %1122)
(/.f32 (*.f32 %595 #s(literal 1 binary32)) zi)
(/.f32 %664 %1103)
(/.f32 %595 %1109)
(/.f32 %595 zi)
(/.f32 #s(literal 1 binary32) (/.f32 %1103 %664))
(/.f32 #s(literal 1 binary32) (/.f32 zi %595))
(-.f32 %1141 (/.f32 %599 zi))
(pow.f32 %1130 #s(literal 1 binary32))
(+.f32 %1141 %1145)
(+.f32 %1145 %1141)
(neg.f32 %1148)
(*.f32 %1101 %1150)
(*.f32 %1152 %1101)
(*.f32 %1154 %1156)
(*.f32 %1150 %1101)
(/.f32 (fma.f32 %1130 %1103 %349) %1103)
(/.f32 (fma.f32 %1130 zi xi) zi)
(/.f32 (fma.f32 %1112 %1103 %664) %1103)
(/.f32 (fma.f32 %664 %1103 (*.f32 %349 %1103)) %1155)
(/.f32 (fma.f32 %664 zi (*.f32 xi %1103)) %1170)
(/.f32 (fma.f32 %595 %1103 (*.f32 %349 zi)) %1174)
(/.f32 (fma.f32 %349 %1103 (*.f32 %664 %1103)) %1155)
(/.f32 (fma.f32 %349 zi (*.f32 %595 %1103)) %1170)
(/.f32 (fma.f32 xi %1103 (*.f32 %664 zi)) %1174)
(/.f32 (fma.f32 (neg.f32 %522) uy %349) %1103)
(/.f32 (+.f32 %349 %664) %1103)
(/.f32 (fma.f32 %664 %1103 (*.f32 %1103 %349)) %1155)
(/.f32 (fma.f32 %664 zi (*.f32 %1103 xi)) %1170)
(/.f32 (fma.f32 %595 %1103 (*.f32 zi %349)) %1174)
(/.f32 (fma.f32 %349 %1103 (*.f32 %1103 %664)) %1155)
(/.f32 (fma.f32 %349 zi (*.f32 %1103 %595)) %1170)
(/.f32 (fma.f32 xi %1103 (*.f32 zi %664)) %1174)
(/.f32 (neg.f32 %1152) %1103)
(/.f32 (neg.f32 %1154) (neg.f32 %1155))
(/.f32 (neg.f32 %1150) %1103)
(/.f32 %1215 zi)
(/.f32 %1152 zi)
(/.f32 %1154 %1155)
%1219
(/.f32 #s(literal 1 binary32) (/.f32 zi %1152))
(/.f32 #s(literal 1 binary32) (/.f32 %1155 %1154))
(/.f32 #s(literal 1 binary32) (/.f32 zi %1150))
(-.f32 %1130 (*.f32 %349 %1101))
(-.f32 %1130 (neg.f32 %1112))
(-.f32 %1112 %1148)
(fma.f32 %1122 uy %1112)
(fma.f32 %1101 %595 %1112)
(fma.f32 %1101 xi %1130)
(fma.f32 %664 %1104 %1112)
(fma.f32 %349 %1104 %1130)
(fma.f32 %595 %1101 %1112)
(fma.f32 %522 %1127 %1112)
(fma.f32 %522 %1129 %1112)
(fma.f32 xi %1101 %1130)
(fma.f32 uy %1122 %1112)
(pow.f32 %1219 #s(literal 1 binary32))
(+.f32 (/.f32 (*.f32 %1112 zi) zi) %1130)
(+.f32 (/.f32 (*.f32 zi xi) %1155) (/.f32 (*.f32 (*.f32 zi uy) %522) %1155))
(+.f32 %1130 %1112)
(+.f32 %1112 %1130)
(neg.f32 %1253)
(/.f32 (fma.f32 %1255 %1103 %664) %1103)
(/.f32 (fma.f32 %1255 zi %595) zi)
(/.f32 (fma.f32 %131 zi %1152) zi)
(/.f32 (fma.f32 %131 %1155 %1154) %1155)
(/.f32 %1265 zi)
(-.f32 %1255 %1148)
(-.f32 %131 %1253)
(-.f32 %1219 (*.f32 %239 ux))
(-.f32 %1219 %177)
(-.f32 %1219 (neg.f32 %131))
(-.f32 %1112 (-.f32 %1148 %131))
(fma.f32 %1122 uy %1255)
(fma.f32 %1101 %1150 %131)
(fma.f32 %1101 %595 %1255)
(fma.f32 %1101 xi %1279)
(fma.f32 %1152 %1101 %131)
(fma.f32 %1154 %1156 %131)
(fma.f32 %1150 %1101 %131)
(fma.f32 %664 %1104 %1255)
(fma.f32 %349 %1104 %1279)
(fma.f32 %595 %1101 %1255)
(fma.f32 %522 %1127 %1255)
(fma.f32 %522 %1129 %1255)
(fma.f32 xi %1101 %1279)
%1290
(fma.f32 ux maxCos %1219)
(fma.f32 uy %1122 %1255)
(pow.f32 %1290 #s(literal 1 binary32))
(+.f32 (fma.f32 maxCos ux %1130) %1112)
(+.f32 %1255 %1130)
(+.f32 %131 %1219)
(+.f32 %1219 %131)
(+.f32 %1130 %1255)
(+.f32 %1112 %1279)
(neg.f32 (-.f32 %1253 %131))
%1303
(*.f32 zi %1290)
(-.f32 %135 (*.f32 %1103 %1219))
(-.f32 %135 (*.f32 %1253 zi))
(-.f32 %135 (neg.f32 %1215))
(fma.f32 %1255 zi %1311)
(fma.f32 %131 zi %1215)
(fma.f32 %1219 zi %135)
(fma.f32 %133 ux %1215)
(fma.f32 %128 maxCos %1215)
(fma.f32 zi %1255 %1317)
(fma.f32 zi %131 %1215)
(fma.f32 zi %1219 %135)
(fma.f32 maxCos %128 %1215)
(fma.f32 ux %133 %1215)
(pow.f32 %1303 #s(literal 1 binary32))
(+.f32 (*.f32 zi %1255) %1317)
(+.f32 (*.f32 %1255 zi) %1311)
(+.f32 %1215 %135)
(+.f32 %135 %1215)
%1339
(pow.f32 %1339 #s(literal 1 binary32))
%498
%500
%502
%504
%505
%507
%509
%510
%511
%512
%514
%516
%518
%519
%520
(*.f32 %529 xi)
(*.f32 %533 %152)
(*.f32 %536 %152)
(*.f32 %539 %496)
(*.f32 %543 %152)
(*.f32 %542 %513)
(*.f32 %496 %548)
(*.f32 %81 %467)
(*.f32 %89 %461)
%524
(*.f32 %510 #s(literal -2 binary32))
(*.f32 %467 %81)
(*.f32 %152 %564)
(*.f32 %152 %567)
(*.f32 #s(literal -2 binary32) %510)
(*.f32 xi %575)
(*.f32 %2 %578)
(*.f32 uy %523)
(pow.f32 %524 #s(literal 1 binary32))
(neg.f32 %527)
%602
(*.f32 %618 %467)
(*.f32 %496 %575)
(*.f32 %81 %510)
(*.f32 %524 uy)
(*.f32 %510 %81)
(*.f32 %467 %636)
(*.f32 %467 %618)
(*.f32 %152 %641)
(*.f32 #s(literal -2 binary32) %643)
(*.f32 uy %524)
(pow.f32 %602 #s(literal 1 binary32))
%595
%596
%600
%604
%607
%609
%611
%613
%614
%616
%617
%619
%621
%622
%624
%625
%626
%627
%628
%629
%630
%631
%632
%633
%634
%635
%637
%638
%639
%640
%642
%644
%645
%646
%647
%648
%649
%650
%652
%653
%655
%656
%657
%658
%659
%660
%661
%662
%663
%665
(-.f32 %1371 %599)
(-.f32 %598 (-.f32 %599 %135))
(-.f32 %595 %1376)
(-.f32 %135 %664)
(fma.f32 %601 #s(literal -2 binary32) %1371)
(fma.f32 %597 %2 %1380)
(fma.f32 %618 %467 %1371)
(fma.f32 %620 %2 %1380)
(fma.f32 %623 #s(literal 2 binary32) %1380)
(fma.f32 %496 %575 %1371)
(fma.f32 %81 %510 %1371)
(fma.f32 %131 zi %1387)
%1389
(fma.f32 %524 uy %1371)
(fma.f32 %121 %18 %1380)
(fma.f32 %522 uy %135)
(fma.f32 %510 %81 %1371)
(fma.f32 %474 uy %1380)
(fma.f32 %471 %23 %1380)
(fma.f32 %467 %636 %1371)
(fma.f32 %467 %618 %1371)
(fma.f32 %23 %471 %1380)
(fma.f32 %152 %641 %1371)
(fma.f32 %133 ux %1387)
(fma.f32 %133 ux %595)
(fma.f32 %128 maxCos %1387)
(fma.f32 %128 maxCos %595)
(fma.f32 #s(literal -2 binary32) %643 %1371)
(fma.f32 %22 yi %1380)
(fma.f32 %18 %121 %1380)
(fma.f32 zi %131 %1387)
(fma.f32 zi %131 %595)
(fma.f32 maxCos %128 %1387)
(fma.f32 maxCos %128 %595)
(fma.f32 ux %133 %1387)
(fma.f32 ux %133 %595)
(fma.f32 %2 %620 %1380)
(fma.f32 #s(literal 2 binary32) %651 %1380)
(fma.f32 #s(literal 2 binary32) %654 %1380)
(fma.f32 uy %524 %1371)
(fma.f32 uy %522 %135)
(fma.f32 uy %474 %1380)
(pow.f32 %1389 #s(literal 1 binary32))
(+.f32 (fma.f32 %131 zi %602) %598)
(+.f32 %1371 %602)
(+.f32 %598 %1380)
(+.f32 %602 %1371)
(+.f32 %595 %135)
(+.f32 %135 %1387)
(+.f32 %135 %595)
(neg.f32 %1428)
(-.f32 %1430 %599)
(-.f32 %1389 %349)
(-.f32 %1264 %664)
(-.f32 %135 (-.f32 %664 xi))
(-.f32 xi (-.f32 %1376 %595))
(-.f32 xi %1428)
(fma.f32 %131 zi %1150)
%1265
(fma.f32 %133 ux %1150)
(fma.f32 %128 maxCos %1150)
(fma.f32 zi %131 %1150)
(fma.f32 maxCos %128 %1150)
(fma.f32 ux %133 %1150)
(fma.f32 uy %522 %1264)
(pow.f32 %1265 #s(literal 1 binary32))
(+.f32 (+.f32 %1264 %602) %598)
(+.f32 (+.f32 xi %1371) %602)
(+.f32 %1430 %602)
(+.f32 %1371 (fma.f32 %601 #s(literal -2 binary32) xi))
(+.f32 %1150 %135)
(+.f32 %1389 xi)
(+.f32 %1264 %595)
(+.f32 %595 %1264)
(+.f32 %135 %1150)
(+.f32 xi %1389)
(neg.f32 (-.f32 %1428 xi))
%1477
(pow.f32 %1477 #s(literal 1 binary32))
%1485
(pow.f32 %1485 #s(literal 1 binary32))
%1487
(pow.f32 %1487 #s(literal 1 binary32))
%1489
(pow.f32 %1489 #s(literal 1 binary32))
%1491
(pow.f32 %1491 #s(literal 1 binary32))
%1493
(pow.f32 %1493 #s(literal 1 binary32))

reconstruct75.0ms (0.9%)

Memory
-34.4MiB live, 55.2MiB allocated; 73ms collecting garbage

eval191.0ms (2.2%)

Memory
15.7MiB live, 231.4MiB allocated; 38ms collecting garbage
Compiler

Compiled 82 081 to 7 795 computations (90.5% saved)

prune146.0ms (1.7%)

Memory
-9.5MiB live, 290.3MiB allocated; 24ms collecting garbage
Pruning

89 alts after pruning (88 fresh and 1 done)

PrunedKeptTotal
New1 718611 779
Fresh262753
Picked415
Done000
Total1 748891 837
Accuracy
99.9%
Counts
1 837 → 89
Alt Table
Click to see full alt table
StatusAccuracyProgram
80.7%
%0 = (PI.f32 )
%9 = (approx (* maxCos (- 1 ux)) maxCos)
%10 = (*.f32 %9 ux)
%11 = (acos.f32 %10)
(fma.f32 (-.f32 (cos.f32 (fma.f32 (*.f32 %0 #s(literal -2 binary32)) uy %11)) (cos.f32 (fma.f32 (+.f32 %0 %0) uy %11))) (*.f32 #s(literal 1/2 binary32) yi) (fma.f32 (*.f32 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 %10 ux) %9))) xi) (cos.f32 (*.f32 %0 (+.f32 uy uy))) (*.f32 %10 zi)))
98.3%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) uy)
%28 = (PI.f32 )
%30 = (*.f32 (+.f32 %28 %28) uy)
(fma.f32 %2 (*.f32 (*.f32 zi ux) maxCos) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) maxCos) (*.f32 %2 ux) #s(literal 1 binary32))) (approx (+ (* (cos (* -2 %17)) xi) (* (sin (* %17 2)) yi)) (*.f32 (fma.f32 (sin.f32 %30) (/.f32 yi xi) (cos.f32 %30)) xi))))
90.3%
%3 = (*.f32 (-.f32 #s(literal 1 binary32) ux) ux)
%16 = (* (PI ) uy)
%27 = (PI.f32 )
%29 = (*.f32 %27 %27)
(fma.f32 %3 (*.f32 zi maxCos) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) maxCos) %3 #s(literal 1 binary32))) (approx (+ (* (cos (* -2 %16)) xi) (* (sin (* %16 2)) yi)) (fma.f32 (fma.f32 (+.f32 %27 %27) yi (*.f32 (fma.f32 (*.f32 %29 xi) #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 (*.f32 %29 %27) yi) uy) #s(literal -4/3 binary32))) uy)) uy xi))))
95.6%
%5 = (approx (* maxCos (- 1 ux)) maxCos)
%22 = (*.f32 (PI.f32 ) (+.f32 uy uy))
(fma.f32 (*.f32 %5 zi) ux (fma.f32 (approx (* (sin (acos (* (* (- ux 1) maxCos) ux))) (sin (* (PI ) (* 2 uy)))) (sin.f32 %22)) yi (*.f32 (*.f32 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 %5 ux) ux) %5))) xi) (cos.f32 %22))))
45.8%
%2 = (-.f32 #s(literal 1 binary32) ux)
%14 = (PI )
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin (* %14 (+ uy uy))) yi) (* (sin (+ (* (* -2 uy) %14) (* %14 1/2))) xi)) (*.f32 yi (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 ))))))))
90.4%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%27 = (PI.f32 )
%29 = (*.f32 %27 %27)
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (fma.f32 (*.f32 (+.f32 yi yi) uy) %27 (fma.f32 (*.f32 uy uy) (fma.f32 (*.f32 %29 xi) #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 (*.f32 %29 %27) yi) uy) #s(literal -4/3 binary32))) xi)))))
83.4%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%25 = (PI.f32 )
%27 = (*.f32 (+.f32 %25 %25) uy)
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (fma.f32 (*.f32 xi (*.f32 (sin.f32 %27) yi)) (/.f32 #s(literal 1 binary32) xi) (*.f32 (cos.f32 %27) xi)))))
86.1%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%26 = (PI.f32 )
%28 = (*.f32 (+.f32 %26 %26) uy)
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (fma.f32 (*.f32 xi yi) (/.f32 (sin.f32 %28) xi) (*.f32 (cos.f32 %28) xi)))))
90.3%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%25 = (PI.f32 )
%26 = (*.f32 %25 %25)
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (+.f32 xi (*.f32 uy (fma.f32 (fma.f32 (*.f32 %26 xi) #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 (*.f32 %26 %25) yi) uy) #s(literal -4/3 binary32))) uy (*.f32 (+.f32 %25 %25) yi)))))))
90.3%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%25 = (PI.f32 )
%26 = (*.f32 %25 %25)
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (+.f32 xi (*.f32 uy (fma.f32 %25 yi (fma.f32 yi %25 (*.f32 (fma.f32 (*.f32 %26 xi) #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 (*.f32 %26 %25) yi) uy) #s(literal -4/3 binary32))) uy))))))))
90.3%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%26 = (PI.f32 )
%30 = (*.f32 %26 %26)
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) (*.f32 yi %26) (*.f32 uy (fma.f32 (*.f32 (*.f32 #s(literal -4/3 binary32) uy) (*.f32 %30 %26)) yi (*.f32 (*.f32 %30 xi) #s(literal -2 binary32))))))))))
90.3%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%26 = (PI.f32 )
%29 = (*.f32 %26 %26)
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) (*.f32 yi %26) (*.f32 uy (fma.f32 (*.f32 yi uy) (*.f32 (*.f32 %29 %26) #s(literal -4/3 binary32)) (*.f32 (*.f32 %29 xi) #s(literal -2 binary32))))))))))
85.6%
%2 = (-.f32 #s(literal 1 binary32) ux)
%14 = (PI )
%17 = (* %14 (+ uy uy))
%26 = (PI.f32 )
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) (*.f32 yi %26) (*.f32 uy (approx (+ (* -2 (* xi (pow %14 2))) (* -4/3 (* uy (* yi (pow %14 3))))) (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi (pow.f32 %26 #s(literal 3 binary32)))))))))))))
90.1%
%2 = (-.f32 #s(literal 1 binary32) ux)
%14 = (PI )
%17 = (* %14 (+ uy uy))
%44 = (PI.f32 )
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (+.f32 xi (*.f32 uy (approx (+ (* 2 (* yi %14)) (* uy (+ (* -2 (* xi (pow %14 2))) (* -4/3 (* uy (* yi (pow %14 3))))))) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (fma.f32 #s(literal -4/3 binary32) (*.f32 yi (pow.f32 %44 #s(literal 3 binary32))) (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) (/.f32 (*.f32 yi %44) uy) (*.f32 #s(literal 2 binary32) (*.f32 xi (pow.f32 %44 #s(literal 2 binary32))))) uy))))))))))
82.5%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (+.f32 xi (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (PI.f32 ))))))))
98.5%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%25 = (PI.f32 )
%27 = (*.f32 (+.f32 %25 %25) uy)
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (*.f32 xi (fma.f32 (/.f32 (sin.f32 %27) xi) yi (cos.f32 %27))))))
98.5%
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%26 = (PI.f32 )
%28 = (*.f32 (+.f32 %26 %26) uy)
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (*.f32 xi (fma.f32 (/.f32 #s(literal 1 binary32) xi) (*.f32 (sin.f32 %28) yi) (cos.f32 %28))))))
97.2%
%2 = (-.f32 #s(literal 1 binary32) ux)
%14 = (PI )
%17 = (* %14 (+ uy uy))
%26 = (PI.f32 )
%36 = (pow.f32 uy #s(literal 2 binary32))
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (*.f32 xi (+.f32 (cos.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy %26))) (/.f32 (approx (* yi (sin (* 2 (* uy %14)))) (*.f32 uy (fma.f32 #s(literal 2 binary32) (*.f32 yi %26) (*.f32 %36 (fma.f32 #s(literal -4/3 binary32) (*.f32 yi (pow.f32 %26 #s(literal 3 binary32))) (*.f32 %36 (fma.f32 #s(literal -8/315 binary32) (*.f32 %36 (*.f32 yi (pow.f32 %26 #s(literal 7 binary32)))) (*.f32 #s(literal 4/15 binary32) (*.f32 yi (pow.f32 %26 #s(literal 5 binary32))))))))))) xi))))))
82.4%
%2 = (-.f32 #s(literal 1 binary32) ux)
%14 = (PI )
%17 = (* %14 (+ uy uy))
%27 = (* 2 (* uy %14))
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (*.f32 xi (approx (+ (cos %27) (/ (* yi (sin %27)) xi)) (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) (/.f32 (*.f32 uy (*.f32 yi (PI.f32 ))) xi))))))))
60.4%
%2 = (-.f32 #s(literal 1 binary32) ux)
%14 = (PI )
%17 = (* %14 (+ uy uy))
%27 = (* 2 (* uy %14))
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (*.f32 xi (approx (+ (cos %27) (/ (* yi (sin %27)) xi)) (cos.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))))))))
98.5%
%20 = (* (PI ) (+ uy uy))
%31 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(fma.f32 (*.f32 ux (-.f32 #s(literal 1 binary32) ux)) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (approx (* maxCos (- 1 ux)) maxCos) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %20) yi) (* (cos %20) xi)) (*.f32 xi (+.f32 (cos.f32 %31) (/.f32 (*.f32 yi (sin.f32 %31)) xi))))))
98.6%
%21 = (pow.f32 maxCos #s(literal 2 binary32))
%34 = (PI.f32 )
(fma.f32 (*.f32 ux (-.f32 #s(literal 1 binary32) ux)) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (approx (+ (* (* (- ux 1) maxCos) (* (* (* maxCos (- 1 ux)) ux) ux)) 1) (*.f32 (pow.f32 ux #s(literal 4 binary32)) (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %21 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %21 (/.f32 #s(literal 1 binary32) (pow.f32 ux #s(literal 2 binary32)))) ux))) ux) (*.f32 #s(literal -1 binary32) %21))))) (fma.f32 (sin.f32 (*.f32 %34 (+.f32 uy uy))) yi (*.f32 (sin.f32 (fma.f32 (*.f32 #s(literal -2 binary32) uy) %34 (*.f32 %34 #s(literal 1/2 binary32)))) xi))))
95.7%
%0 = (PI.f32 )
%12 = (* (- 1 ux) maxCos)
%14 = (*.f32 (approx %12 maxCos) ux)
%26 = (* %12 ux)
(+.f32 (+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 %0 (fma.f32 #s(literal -2 binary32) uy #s(literal 1/2 binary32)))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %14 %14)))) xi) (*.f32 (approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %26 %26)))) (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy %0)))) yi)) (*.f32 %14 zi))
80.5%
%3 = (PI.f32 )
%9 = (- 1 ux)
%13 = (*.f32 (approx (* %9 maxCos) maxCos) ux)
%25 = (acos.f32 (*.f32 (approx (* maxCos %9) maxCos) ux))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %13 %13)))) xi) (*.f32 (/.f32 (-.f32 (cos.f32 (-.f32 (*.f32 %3 (+.f32 uy uy)) %25)) (cos.f32 (fma.f32 %3 uy (fma.f32 %3 uy %25)))) #s(literal 2 binary32)) yi)) (*.f32 %13 zi))
95.5%
%4 = (* (* uy 2) (PI ))
%10 = (* (- 1 ux) maxCos)
%11 = (* %10 ux)
%14 = (sqrt (- 1 (* %11 %11)))
%19 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(+.f32 (+.f32 (*.f32 (approx (* (cos %4) %14) (cos.f32 %19)) xi) (*.f32 (approx (* (sin %4) %14) (sin.f32 %19)) yi)) (*.f32 (*.f32 (approx %10 maxCos) ux) zi))
32.4%
%3 = (PI )
%8 = (- 1 ux)
%10 = (* %8 maxCos)
%11 = (* %10 ux)
%22 = (acos (* (* maxCos %8) ux))
%38 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
%43 = (acos.f32 (*.f32 maxCos (*.f32 ux (-.f32 #s(literal 1 binary32) ux))))
(+.f32 (approx (+ (* (* (cos (* (* uy 2) %3)) (sqrt (- 1 (* %11 %11)))) xi) (* (/ (- (cos (- (* %3 (+ uy uy)) %22)) (cos (+ (* (+ %3 %3) uy) %22))) 2) yi)) (*.f32 #s(literal 1/2 binary32) (*.f32 yi (-.f32 (cos.f32 (-.f32 %38 %43)) (cos.f32 (+.f32 %43 %38)))))) (*.f32 (*.f32 (approx %10 maxCos) ux) zi))
83.6%
%5 = (* (* (- ux 1) maxCos) ux)
%7 = (sin (acos %5))
%8 = (PI )
%10 = (* %8 uy)
%25 = (* %5 zi)
%40 = (PI.f32 )
(approx (- (+ (* (* %7 (sin (* %10 2))) yi) (* (* %7 (cos (* -2 %10))) xi)) %25) (approx (+ (- (* %7 xi) %25) (* (* -2 (- (* (* (* (pow %8 2) xi) uy) %7) (* %7 (* yi %8)))) uy)) (fma.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %40 %40) xi) uy) (*.f32 yi %40))) uy (fma.f32 (*.f32 zi maxCos) ux xi))))
83.4%
%5 = (* (* (- ux 1) maxCos) ux)
%7 = (sin (acos %5))
%8 = (PI )
%10 = (* %8 uy)
%25 = (* %5 zi)
%31 = (* (* (pow %8 2) xi) uy)
%33 = (* yi %8)
%47 = (PI.f32 )
(approx (- (+ (* (* %7 (sin (* %10 2))) yi) (* (* %7 (cos (* -2 %10))) xi)) %25) (approx (+ (- (* %7 xi) %25) (* (* -2 (- (* %31 %7) (* %7 %33))) uy)) (approx (+ (+ (* (* -2 (- %31 %33)) uy) (* (* zi ux) maxCos)) xi) (*.f32 (fma.f32 maxCos ux (/.f32 (fma.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %47 %47) xi) uy) (*.f32 yi %47))) uy xi) zi)) zi))))
52.4%
%5 = (* (PI ) (* 2 uy))
%17 = (* (* (- ux 1) maxCos) ux)
%27 = (-.f32 #s(literal 1 binary32) ux)
(approx (- (* (+ (* yi (sin %5)) (* xi (cos %5))) (sin (acos %17))) (* %17 zi)) (fma.f32 (*.f32 (*.f32 zi maxCos) ux) %27 (*.f32 xi (sqrt.f32 (fma.f32 (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) maxCos) (*.f32 %27 ux) #s(literal 1 binary32))))))
52.4%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%28 = (*.f32 (-.f32 #s(literal 1 binary32) ux) ux)
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 %28 (*.f32 zi maxCos) (*.f32 xi (sqrt.f32 (fma.f32 (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) maxCos) %28 #s(literal 1 binary32))))))
52.4%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%27 = (-.f32 #s(literal 1 binary32) ux)
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 (*.f32 zi %27) (*.f32 maxCos ux) (*.f32 xi (sqrt.f32 (fma.f32 (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) maxCos) (*.f32 %27 ux) #s(literal 1 binary32))))))
90.1%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%29 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 xi (cos.f32 %29) (*.f32 yi (sin.f32 %29))))
95.5%
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 maxCos (*.f32 ux zi) (fma.f32 xi (cos.f32 %30) (*.f32 yi (sin.f32 %30)))))
83.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%54 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* (pow %3 2) %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (-.f32 (+.f32 (fma.f32 (*.f32 zi maxCos) ux xi) (*.f32 (*.f32 (+.f32 yi yi) uy) %54)) (*.f32 (*.f32 (*.f32 (*.f32 (*.f32 %54 %54) xi) uy) #s(literal 2 binary32)) uy))))
83.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%52 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* (pow %3 2) %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 (fma.f32 (*.f32 (+.f32 yi yi) uy) %52 (*.f32 (*.f32 zi ux) maxCos)) (fma.f32 (*.f32 uy (*.f32 (*.f32 (*.f32 %52 %52) xi) uy)) #s(literal -2 binary32) xi))))
83.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* (pow %3 2) %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (fma.f32 maxCos (*.f32 ux zi) (fma.f32 (+.f32 yi yi) (*.f32 (PI.f32 ) uy) (*.f32 (*.f32 (*.f32 (*.f32 #s(literal 5174515/524288 binary32) xi) uy) #s(literal -2 binary32)) uy))))))
83.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* (pow %3 2) %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (fma.f32 maxCos (*.f32 ux zi) (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) (*.f32 #s(literal 2 binary32) (*.f32 yi (PI.f32 )))))))))
83.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (fma.f32 maxCos (*.f32 ux zi) (*.f32 uy (approx (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))) (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 xi (pow.f32 %58 #s(literal 2 binary32))) (*.f32 #s(literal 2 binary32) (/.f32 (*.f32 yi %58) uy))))))))))
54.2%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (fma.f32 maxCos (*.f32 ux zi) (*.f32 uy (approx (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))) (*.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 (PI.f32 ) #s(literal 2 binary32)))))))))))
79.2%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (approx (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))) (fma.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (PI.f32 ))) (*.f32 maxCos (*.f32 ux zi)))))))
78.4%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%61 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (approx (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))) (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %61 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %61))))))))
83.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%61 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (approx (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))) (*.f32 ux (fma.f32 maxCos zi (/.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %61 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %61)))) ux)))))))
83.6%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%61 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (approx (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))) (*.f32 maxCos (fma.f32 ux zi (/.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %61 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %61)))) maxCos)))))))
33.1%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* (pow %3 2) %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 (-.f32 #s(literal 1 binary32) ux) #s(literal 2 binary32))))))))))))
83.4%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%66 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* (pow %3 2) %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (+ (* (+ yi yi) (* %3 uy)) (* (* (* (* (* %3 %3) xi) uy) -2) uy)))) (*.f32 ux (fma.f32 #s(literal -2 binary32) (/.f32 (*.f32 (pow.f32 uy #s(literal 2 binary32)) (*.f32 xi (pow.f32 %66 #s(literal 2 binary32)))) ux) (fma.f32 #s(literal 2 binary32) (/.f32 (*.f32 uy (*.f32 yi %66)) ux) (fma.f32 maxCos zi (/.f32 xi ux))))))))
83.3%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%64 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (fma.f32 (fma.f32 maxCos ux (/.f32 xi zi)) zi (*.f32 (*.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %64 %64) xi) uy) (*.f32 yi %64))) (/.f32 uy zi)) zi)))))
67.1%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%63 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (fma.f32 (*.f32 zi ux) maxCos (/.f32 (*.f32 zi (fma.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %63 %63) xi) uy) (*.f32 yi %63))) uy xi)) zi)))))
37.5%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (fma.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (PI.f32 ))) (*.f32 maxCos (*.f32 ux zi))))))
83.3%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%65 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (+.f32 (*.f32 (fma.f32 maxCos ux (/.f32 xi zi)) zi) (*.f32 (*.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %65 %65) xi) uy) (*.f32 yi %65))) (/.f32 uy zi)) zi)))))
83.0%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%64 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (fma.f32 #s(literal -2 binary32) (*.f32 xi (pow.f32 %64 #s(literal 2 binary32))) (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) (*.f32 yi %64) (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (*.f32 maxCos (*.f32 ux zi))) uy))) uy)))))))
83.1%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%63 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 zi (fma.f32 (fma.f32 (/.f32 xi zi) zi (*.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %63 %63) xi) uy) (*.f32 yi %63))) uy)) (/.f32 #s(literal 1 binary32) zi) (*.f32 maxCos ux))))))
83.1%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%62 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 zi (fma.f32 (fma.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %62 %62) xi) uy) (*.f32 yi %62))) uy xi) (/.f32 #s(literal 1 binary32) zi) (*.f32 maxCos ux))))))
82.5%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%62 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 zi (fma.f32 (/.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %62 %62) xi) uy) (*.f32 yi %62))) zi) uy (fma.f32 maxCos ux (/.f32 xi zi)))))))
82.3%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%64 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 zi (fma.f32 (/.f32 #s(literal 1 binary32) zi) xi (fma.f32 (/.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %64 %64) xi) uy) (*.f32 yi %64))) zi) uy (*.f32 maxCos ux)))))))
44.7%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%62 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 zi (fma.f32 (*.f32 zi (fma.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %62 %62) xi) uy) (*.f32 yi %62))) uy xi)) (/.f32 #s(literal 1 binary32) (*.f32 zi zi)) (*.f32 maxCos ux))))))
83.2%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%62 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 zi (fma.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %62 %62) xi) uy) (*.f32 yi %62))) (/.f32 uy zi) (fma.f32 maxCos ux (/.f32 xi zi)))))))
48.0%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%62 = (PI.f32 )
%70 = (neg.f32 zi)
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 zi (fma.f32 maxCos ux (/.f32 (fma.f32 (*.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %62 %62) xi) uy) (*.f32 yi %62))) uy) %70 (*.f32 (neg.f32 xi) zi)) (*.f32 zi %70)))))))
48.0%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%62 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 zi (fma.f32 maxCos ux (/.f32 (*.f32 zi (fma.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %62 %62) xi) uy) (*.f32 yi %62))) uy xi)) (*.f32 zi zi)))))))
83.1%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%63 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 zi (fma.f32 maxCos ux (/.f32 #s(literal 1 binary32) (/.f32 zi (fma.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %63 %63) xi) uy) (*.f32 yi %63))) uy xi))))))))
83.1%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%62 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 zi (fma.f32 maxCos ux (-.f32 (*.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %62 %62) xi) uy) (*.f32 yi %62))) (/.f32 uy zi)) (*.f32 (neg.f32 xi) (/.f32 #s(literal 1 binary32) zi))))))))
46.9%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%62 = (*.f32 zi zi)
%66 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 (*.f32 zi xi) %62) (/.f32 (*.f32 (*.f32 zi uy) (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %66 %66) xi) uy) (*.f32 yi %66)))) %62)))))))
83.3%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 xi zi) (/.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) (*.f32 #s(literal 2 binary32) (*.f32 yi (PI.f32 ))))) zi)))))))
83.3%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%64 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 xi zi) (/.f32 #s(literal 1 binary32) (/.f32 zi (*.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 (*.f32 %64 %64) xi) uy) (*.f32 yi %64))) uy)))))))))
79.5%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))
%66 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) %58)) (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 xi zi) (approx (/ %58 zi) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (fma.f32 #s(literal -2 binary32) (/.f32 (*.f32 xi (pow.f32 %66 #s(literal 2 binary32))) zi) (*.f32 #s(literal 2 binary32) (/.f32 (*.f32 yi %66) (*.f32 uy zi))))))))))))
58.9%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))
%66 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) %58)) (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 xi zi) (approx (/ %58 zi) (*.f32 yi (fma.f32 #s(literal -2 binary32) (/.f32 (*.f32 (pow.f32 uy #s(literal 2 binary32)) (*.f32 xi (pow.f32 %66 #s(literal 2 binary32)))) (*.f32 yi zi)) (*.f32 #s(literal 2 binary32) (/.f32 (*.f32 uy %66) zi)))))))))))
78.9%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) %58)) (*.f32 zi (fma.f32 maxCos ux (approx (+ (/ xi zi) (/ %58 zi)) (fma.f32 #s(literal 2 binary32) (/.f32 (*.f32 uy (*.f32 yi (PI.f32 ))) zi) (/.f32 xi zi))))))))
53.5%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))
%67 = (PI.f32 )
%71 = (*.f32 yi zi)
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) %58)) (*.f32 zi (fma.f32 maxCos ux (approx (+ (/ xi zi) (/ %58 zi)) (*.f32 yi (fma.f32 #s(literal -2 binary32) (/.f32 (*.f32 (pow.f32 uy #s(literal 2 binary32)) (*.f32 xi (pow.f32 %67 #s(literal 2 binary32)))) %71) (fma.f32 #s(literal 2 binary32) (/.f32 (*.f32 uy %67) zi) (/.f32 xi %71))))))))))
57.8%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))
%67 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) %58)) (*.f32 zi (fma.f32 maxCos ux (approx (+ (/ xi zi) (/ %58 zi)) (*.f32 xi (fma.f32 #s(literal -2 binary32) (/.f32 (*.f32 (pow.f32 uy #s(literal 2 binary32)) (pow.f32 %67 #s(literal 2 binary32))) zi) (fma.f32 #s(literal 2 binary32) (/.f32 (*.f32 uy (*.f32 yi %67)) (*.f32 xi zi)) (/.f32 #s(literal 1 binary32) zi))))))))))
49.9%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) %58)) (*.f32 zi (approx (+ (* maxCos ux) (+ (/ xi zi) (/ %58 zi))) (fma.f32 maxCos ux (/.f32 xi zi)))))))
37.4%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) %58)) (*.f32 zi (approx (+ (* maxCos ux) (+ (/ xi zi) (/ %58 zi))) (fma.f32 #s(literal 2 binary32) (/.f32 (*.f32 uy (*.f32 yi (PI.f32 ))) zi) (*.f32 maxCos ux)))))))
78.1%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))
%68 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) %58)) (*.f32 zi (approx (+ (* maxCos ux) (+ (/ xi zi) (/ %58 zi))) (+.f32 (/.f32 xi zi) (/.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %68 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %68)))) zi)))))))
79.2%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))
%66 = (*.f32 ux zi)
%69 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) %58)) (*.f32 zi (approx (+ (* maxCos ux) (+ (/ xi zi) (/ %58 zi))) (*.f32 ux (+.f32 maxCos (+.f32 (/.f32 xi %66) (/.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %69 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %69)))) %66)))))))))
49.4%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))
%66 = (*.f32 maxCos zi)
%69 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) %58)) (*.f32 zi (approx (+ (* maxCos ux) (+ (/ xi zi) (/ %58 zi))) (*.f32 maxCos (+.f32 ux (+.f32 (/.f32 xi %66) (/.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %69 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %69)))) %66)))))))))
12.2%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) %58)) (*.f32 zi (approx (+ (* maxCos ux) (+ (/ xi zi) (/ %58 zi))) (*.f32 maxCos ux))))))
83.0%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%63 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) (*.f32 uy %63) (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (fma.f32 #s(literal -2 binary32) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (*.f32 xi (pow.f32 %63 #s(literal 2 binary32)))) (*.f32 maxCos (*.f32 ux zi)))) yi))))))))
83.4%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%64 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (*.f32 maxCos zi) (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %64 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %64))))) ux))))))))
83.1%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%64 = (PI.f32 )
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (*.f32 ux zi) (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (pow.f32 %64 #s(literal 2 binary32)))) (*.f32 #s(literal 2 binary32) (*.f32 yi %64))))) maxCos))))))))
79.1%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) %58)) (approx (* zi (+ (* maxCos ux) (+ (/ xi zi) (/ %58 zi)))) (fma.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (PI.f32 ))) (*.f32 zi (fma.f32 maxCos ux (/.f32 xi zi))))))))
49.7%
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) %58)) (approx (* zi (+ (* maxCos ux) (+ (/ xi zi) (/ %58 zi)))) (*.f32 xi (*.f32 zi (fma.f32 #s(literal -2 binary32) (/.f32 (*.f32 (pow.f32 uy #s(literal 2 binary32)) (pow.f32 (PI.f32 ) #s(literal 2 binary32))) zi) (/.f32 #s(literal 1 binary32) zi))))))))
50.0%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (fma.f32 (*.f32 zi ux) maxCos xi)))
52.1%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (+.f32 xi (*.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux)))))))
13.8%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (*.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux))))))
12.2%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (approx (+ xi (* maxCos (* ux zi))) (*.f32 (*.f32 zi maxCos) ux))))
50.0%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (approx (+ xi (* maxCos (* ux zi))) (*.f32 xi (+.f32 #s(literal 1 binary32) (/.f32 (*.f32 maxCos (*.f32 ux zi)) xi))))))
49.9%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (approx (+ xi (* maxCos (* ux zi))) (*.f32 ux (fma.f32 maxCos zi (/.f32 xi ux))))))
49.6%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (approx (+ xi (* maxCos (* ux zi))) (*.f32 maxCos (fma.f32 ux zi (/.f32 xi maxCos))))))
12.2%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (approx (+ xi (* maxCos (* ux zi))) (*.f32 maxCos (*.f32 ux zi)))))
49.9%
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (approx (+ xi (* maxCos (* ux zi))) (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) (*.f32 maxCos ux) (*.f32 #s(literal -1 binary32) (/.f32 xi zi))))))))
95.6%
%2 = (- 1 ux)
%16 = (PI )
%37 = (PI.f32 )
%38 = (*.f32 uy %37)
(approx (+ (* (* ux %2) (* maxCos zi)) (* (sqrt (+ (* (* (- ux 1) maxCos) (* (* (* maxCos %2) ux) ux)) 1)) (+ (* (sin (* %16 (+ uy uy))) yi) (* (sin (+ (* (* -2 uy) %16) (* %16 1/2))) xi)))) (fma.f32 maxCos (*.f32 ux zi) (fma.f32 xi (sin.f32 (fma.f32 #s(literal -2 binary32) %38 (*.f32 #s(literal 1/2 binary32) %37))) (*.f32 yi (sin.f32 (*.f32 #s(literal 2 binary32) %38))))))
Compiler

Compiled 2 649 to 526 computations (80.1% saved)

regimes4.0s (46.6%)

Memory
30.5MiB live, 4 774.7MiB allocated; 358ms collecting garbage
Counts
2 → 1
3 → 1
14 → 1
17 → 1
18 → 3
24 → 1
86 → 1
87 → 1
94 → 1
95 → 1
96 → 1
98 → 2
100 → 1
101 → 1
102 → 1
105 → 1
116 → 1
124 → 1
160 → 1
Calls
Call 1
Inputs
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%25 = (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi))
%37 = (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))))
%40 = (+ xi (* maxCos (* ux zi)))
(approx %25 (approx %37 (approx %40 (*.f32 maxCos (*.f32 ux zi)))))
(approx %25 (approx %37 (approx %40 (*.f32 (*.f32 zi maxCos) ux))))
Outputs
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (approx (+ xi (* maxCos (* ux zi))) (*.f32 maxCos (*.f32 ux zi)))))
Call 2
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%25 = (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%52 = (pow %3 2)
%70 = (* uy (+ (* -2 (* uy (* xi %52))) (* 2 (* yi %3))))
(approx %25 (approx %37 (approx %40 (*.f32 maxCos (*.f32 ux zi)))))
(approx %25 (approx %37 (approx %40 (*.f32 (*.f32 zi maxCos) ux))))
(approx %25 (approx (+ %28 (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36)) (approx (+ xi (+ %39 %70)) (*.f32 zi (approx (+ (* maxCos ux) (+ (/ xi zi) (/ %70 zi))) (*.f32 maxCos ux))))))
Outputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%58 = (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (approx (+ xi (+ (* maxCos (* ux zi)) %58)) (*.f32 zi (approx (+ (* maxCos ux) (+ (/ xi zi) (/ %58 zi))) (*.f32 maxCos ux))))))
Call 3
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%25 = (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%42 = (*.f32 maxCos (*.f32 ux zi))
%46 = (*.f32 zi maxCos)
%52 = (pow %3 2)
%63 = (+ %28 (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36))
%70 = (* uy (+ (* -2 (* uy (* xi %52))) (* 2 (* yi %3))))
%72 = (+ xi (+ %39 %70))
%77 = (+ (* maxCos ux) (+ (/ xi zi) (/ %70 zi)))
%78 = (*.f32 maxCos ux)
%102 = (* (* (- ux 1) maxCos) ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%122 = (approx %25 (approx %37 (*.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux))))))
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi (/.f32 xi maxCos))))))
%136 = (fma.f32 maxCos ux (/.f32 xi zi))
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 (*.f32 %46 ux))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 (*.f32 zi ux) maxCos xi)))
(approx (- (* (+ (* (sin (* %3 (* 2 uy))) yi) (* xi (cos (* (* -2 uy) %3)))) %104) %106) (approx (- (* %104 xi) %106) (fma.f32 %46 ux xi)))
(approx %25 (approx %37 (+.f32 xi %42)))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux (fma.f32 maxCos zi (/.f32 xi ux))))))
(approx %25 (approx %37 (approx %40 (*.f32 zi %136))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
Outputs
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (fma.f32 (*.f32 maxCos ux) zi xi)))
Call 4
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%25 = (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%42 = (*.f32 maxCos (*.f32 ux zi))
%46 = (*.f32 zi maxCos)
%52 = (pow %3 2)
%63 = (+ %28 (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36))
%70 = (* uy (+ (* -2 (* uy (* xi %52))) (* 2 (* yi %3))))
%72 = (+ xi (+ %39 %70))
%77 = (+ (* maxCos ux) (+ (/ xi zi) (/ %70 zi)))
%78 = (*.f32 maxCos ux)
%102 = (* (* (- ux 1) maxCos) ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%120 = (*.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux))))
%122 = (approx %25 (approx %37 %120))
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi (/.f32 xi maxCos))))))
%136 = (fma.f32 maxCos ux (/.f32 xi zi))
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 (*.f32 %46 ux))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 (*.f32 zi ux) maxCos xi)))
(approx (- (* (+ (* (sin (* %3 (* 2 uy))) yi) (* xi (cos (* (* -2 uy) %3)))) %104) %106) (approx (- (* %104 xi) %106) (fma.f32 %46 ux xi)))
(approx %25 (approx %37 (+.f32 xi %42)))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux (fma.f32 maxCos zi (/.f32 xi ux))))))
(approx %25 (approx %37 (approx %40 (*.f32 zi %136))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) (/.f32 %42 xi))))))
Outputs
%4 = (* (* uy 2) (PI ))
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (* xi (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2))))))) (+.f32 xi (*.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux)))))))
Call 5
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%25 = (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%42 = (*.f32 maxCos (*.f32 ux zi))
%46 = (*.f32 zi maxCos)
%52 = (pow %3 2)
%63 = (+ %28 (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36))
%70 = (* uy (+ (* -2 (* uy (* xi %52))) (* 2 (* yi %3))))
%72 = (+ xi (+ %39 %70))
%77 = (+ (* maxCos ux) (+ (/ xi zi) (/ %70 zi)))
%78 = (*.f32 maxCos ux)
%102 = (* (* (- ux 1) maxCos) ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%120 = (*.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux))))
%122 = (approx %25 (approx %37 %120))
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi (/.f32 xi maxCos))))))
%136 = (fma.f32 maxCos ux (/.f32 xi zi))
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 (*.f32 %46 ux))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 (*.f32 zi ux) maxCos xi)))
(approx (- (* (+ (* (sin (* %3 (* 2 uy))) yi) (* xi (cos (* (* -2 uy) %3)))) %104) %106) (approx (- (* %104 xi) %106) (fma.f32 %46 ux xi)))
(approx %25 (approx %37 (+.f32 xi %42)))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux (fma.f32 maxCos zi (/.f32 xi ux))))))
(approx %25 (approx %37 (approx %40 (*.f32 zi %136))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) (/.f32 %42 xi))))))
(approx %25 (approx %63 (approx %72 (fma.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (PI.f32 ))) %42))))
Outputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%25 = (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%47 = (* xi %37)
%70 = (approx %25 (approx (+ %28 (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) %47)) (approx (+ xi (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3)))))) (fma.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (PI.f32 ))) (*.f32 maxCos (*.f32 ux zi))))))
%70
(approx %25 (approx (+ %28 %47) (+.f32 xi (*.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux)))))))
%70
Call 6
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%25 = (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%42 = (*.f32 maxCos (*.f32 ux zi))
%46 = (*.f32 zi maxCos)
%52 = (pow %3 2)
%63 = (+ %28 (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36))
%70 = (* uy (+ (* -2 (* uy (* xi %52))) (* 2 (* yi %3))))
%71 = (+ %39 %70)
%72 = (+ xi %71)
%76 = (+ (/ xi zi) (/ %70 zi))
%77 = (+ (* maxCos ux) %76)
%78 = (*.f32 maxCos ux)
%102 = (* (* (- ux 1) maxCos) ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%120 = (*.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux))))
%122 = (approx %25 (approx %37 %120))
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi (/.f32 xi maxCos))))))
%135 = (/.f32 xi zi)
%136 = (fma.f32 maxCos ux %135)
%137 = (*.f32 zi %136)
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
%158 = (*.f32 uy (*.f32 yi (PI.f32 )))
%159 = (fma.f32 #s(literal 2 binary32) %158 %42)
%174 = (approx %25 (approx %37 (approx %40 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %78 (*.f32 #s(literal -1 binary32) %135)))))))
%175 = (/.f32 %158 zi)
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 (*.f32 %46 ux))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 (*.f32 zi ux) maxCos xi)))
(approx (- (* (+ (* (sin (* %3 (* 2 uy))) yi) (* xi (cos (* (* -2 uy) %3)))) %104) %106) (approx (- (* %104 xi) %106) (fma.f32 %46 ux xi)))
(approx %25 (approx %37 (+.f32 xi %42)))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux (fma.f32 maxCos zi (/.f32 xi ux))))))
(approx %25 (approx %37 (approx %40 %137)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) (/.f32 %42 xi))))))
(approx %25 (approx %63 (approx %72 %159)))
(approx %25 (approx %63 (+.f32 xi (approx %71 %159))))
%174
%174
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (fma.f32 #s(literal 2 binary32) %175 %78))))))
(approx %25 (approx %63 (approx %72 (approx (* zi %77) (fma.f32 #s(literal 2 binary32) %158 %137)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (fma.f32 #s(literal 2 binary32) %175 %135)))))))
Outputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (pow %3 2)
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* %30 %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (approx (+ (* maxCos (* ux zi)) (* uy (+ (* -2 (* uy (* xi %30))) (* 2 (* yi %3))))) (fma.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (PI.f32 ))) (*.f32 maxCos (*.f32 ux zi)))))))
Call 7
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%25 = (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%41 = (*.f32 ux zi)
%42 = (*.f32 maxCos %41)
%46 = (*.f32 zi maxCos)
%47 = (*.f32 %46 ux)
%52 = (pow %3 2)
%63 = (+ %28 (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36))
%67 = (* yi %3)
%69 = (+ (* -2 (* uy (* xi %52))) (* 2 %67))
%70 = (* uy %69)
%71 = (+ %39 %70)
%72 = (+ xi %71)
%75 = (/ %70 zi)
%76 = (+ (/ xi zi) %75)
%77 = (+ (* maxCos ux) %76)
%78 = (*.f32 maxCos ux)
%87 = (*.f32 zi ux)
%92 = (* %3 (* 2 uy))
%93 = (sin %92)
%102 = (* (* (- ux 1) maxCos) ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%107 = (- (* (+ (* %93 yi) (* xi (cos (* (* -2 uy) %3)))) %104) %106)
%108 = (* %104 xi)
%109 = (- %108 %106)
%110 = (fma.f32 %46 ux xi)
%113 = (+.f32 xi %42)
%117 = (-.f32 #s(literal 1 binary32) ux)
%118 = (*.f32 zi %117)
%119 = (*.f32 ux %118)
%120 = (*.f32 maxCos %119)
%122 = (approx %25 (approx %37 %120))
%123 = (/.f32 xi maxCos)
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi %123)))))
%130 = (fma.f32 maxCos zi (/.f32 xi ux))
%135 = (/.f32 xi zi)
%136 = (fma.f32 maxCos ux %135)
%137 = (*.f32 zi %136)
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
%149 = (/.f32 %42 xi)
%156 = (PI.f32 )
%157 = (*.f32 yi %156)
%158 = (*.f32 uy %157)
%159 = (fma.f32 #s(literal 2 binary32) %158 %42)
%174 = (approx %25 (approx %37 (approx %40 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %78 (*.f32 #s(literal -1 binary32) %135)))))))
%175 = (/.f32 %158 zi)
%182 = (* zi %77)
%199 = (*.f32 #s(literal 2 binary32) %157)
%201 = (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) %199))
%218 = (*.f32 (*.f32 (*.f32 %156 %156) xi) uy)
%220 = (*.f32 #s(literal -2 binary32) (-.f32 %218 %157))
%221 = (fma.f32 %220 uy %110)
%224 = (* %3 uy)
%234 = (- (+ (* (* %104 (sin (* %224 2))) yi) (* (* %104 (cos (* -2 %224))) xi)) %106)
%236 = (* (* %52 xi) uy)
%242 = (+ %109 (* (* -2 (- (* %236 %104) (* %104 %67))) uy))
%245 = (+.f32 yi yi)
%246 = (*.f32 %156 uy)
%263 = (fma.f32 %220 uy xi)
%270 = (*.f32 %218 #s(literal -2 binary32))
%271 = (*.f32 %270 uy)
%278 = (*.f32 %87 maxCos)
%284 = (*.f32 %245 uy)
%305 = (/.f32 #s(literal 1 binary32) zi)
%311 = (*.f32 zi %263)
%331 = (/.f32 uy zi)
%337 = (/.f32 %220 zi)
%343 = (pow.f32 %156 #s(literal 2 binary32))
%344 = (*.f32 xi %343)
%345 = (*.f32 uy %344)
%347 = (*.f32 uy (fma.f32 #s(literal -2 binary32) %345 %199))
%359 = (*.f32 zi zi)
%367 = (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos)
%370 = (*.f32 %117 ux)
%373 = (*.f32 xi (sqrt.f32 (fma.f32 (*.f32 (*.f32 %367 ux) maxCos) %370 #s(literal 1 binary32))))
%392 = (*.f32 %220 %331)
%393 = (*.f32 %392 zi)
%403 = (*.f32 %220 uy)
%412 = (neg.f32 xi)
%432 = (*.f32 maxCos zi)
%434 = (pow.f32 maxCos #s(literal 2 binary32))
%444 = (neg.f32 zi)
%458 = (/.f32 %347 zi)
%459 = (+.f32 %135 %458)
%476 = (/.f32 %347 maxCos)
%498 = (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal 2 binary32) (/.f32 %157 uy)))
%506 = (*.f32 ux %117)
%511 = (sqrt.f32 (fma.f32 %367 (*.f32 (*.f32 (*.f32 maxCos %117) ux) ux) #s(literal 1 binary32)))
%513 = (* %3 (+ uy uy))
%518 = (+ (* (sin %513) yi) (* (cos %513) xi))
%535 = (pow.f32 uy #s(literal 2 binary32))
%536 = (*.f32 %535 %343)
%537 = (/.f32 %536 zi)
%546 = (* 2 (* uy %3))
%552 = (/.f32 %158 xi)
%560 = (+.f32 xi %347)
%576 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1 binary32) (/.f32 %560 ux))))))))
%610 = (*.f32 uy %156)
%611 = (*.f32 %535 %344)
%621 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (fma.f32 #s(literal -2 binary32) %611 %42)) yi))))))))
%631 = (approx %25 (approx %63 (approx %72 (*.f32 %535 (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %157 (*.f32 #s(literal -1 binary32) (/.f32 %113 uy))) uy)))))))
%668 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %434 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %117 #s(literal 2 binary32))))))
%674 = (approx %25 (approx %63 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 %156 %668))))))
%686 = (*.f32 yi zi)
%687 = (/.f32 %611 %686)
%688 = (/.f32 %610 zi)
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 %47)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 %87 maxCos xi)))
(approx %107 (approx %109 %110))
(approx %25 (approx %37 %113))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux %130))))
(approx %25 (approx %37 (approx %40 %137)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) %149)))))
(approx %25 (approx %63 (approx %72 %159)))
(approx %25 (approx %63 (+.f32 xi (approx %71 %159))))
%174
%174
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (fma.f32 #s(literal 2 binary32) %175 %78))))))
(approx %25 (approx %63 (approx %72 (approx %182 (fma.f32 #s(literal 2 binary32) %158 %137)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (fma.f32 #s(literal 2 binary32) %175 %135)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %201))))
(approx %107 (approx (- (+ (* (* -2 (- (* (* xi uy) (* %104 %52)) (* (* %104 %3) yi))) uy) %108) %106) %221))
(approx %234 (approx %242 %221))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 (*.f32 (*.f32 (*.f32 (*.f32 #s(literal 5174515/524288 binary32) xi) uy) #s(literal -2 binary32)) uy))))))
(approx %234 (approx %242 (approx (+ (+ (* (* -2 (- %236 %67)) uy) (* (* zi ux) maxCos)) xi) (*.f32 (fma.f32 maxCos ux (/.f32 %263 zi)) zi))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 %271)))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 %270 uy (fma.f32 (*.f32 uy %245) %156 %278)))))
(approx %25 (approx %63 (+.f32 (fma.f32 %284 %156 %278) (fma.f32 (*.f32 uy %218) #s(literal -2 binary32) xi))))
(approx %25 (approx %63 (+.f32 (+.f32 %110 %271) (*.f32 (*.f32 (+.f32 %156 %156) yi) uy))))
(approx %25 (approx %63 (-.f32 (+.f32 %110 (*.f32 %284 %156)) (*.f32 (*.f32 %218 #s(literal 2 binary32)) uy))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %263 %305 %78)))))
(approx %25 (approx %63 (approx %72 (fma.f32 %87 maxCos (/.f32 %311 zi)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 %201 zi)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 #s(literal 1 binary32) (/.f32 zi %263)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %220 %331 %136)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %337 uy %136)))))
(approx %25 (approx %63 (+.f32 xi (approx %71 %347))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 #s(literal -2 binary32) %345)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 %311 %359))))))
(approx %25 (fma.f32 %118 %78 %373))
(approx %25 (fma.f32 %370 %46 %373))
(approx (- (* (+ (* yi %93) (* xi (cos %92))) %104) %106) (fma.f32 %47 %117 %373))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %305 xi (fma.f32 %337 uy %78))))))
(approx %25 (approx %63 (approx %72 (fma.f32 %136 zi %393))))
(approx %25 (approx %63 (approx %72 (+.f32 (*.f32 %136 zi) %393))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 #s(literal 1 binary32) (/.f32 zi %403))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (-.f32 %392 (*.f32 %412 %305)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %311 (/.f32 #s(literal 1 binary32) %359) %78)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 (fma.f32 %135 zi %403) %305 %78)))))
(approx %25 (approx %37 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1/2 binary32) (*.f32 %434 xi)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 (fma.f32 %403 %444 (*.f32 %412 zi)) (*.f32 zi %444)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %347))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %459)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 (*.f32 zi xi) %359) (/.f32 (*.f32 (*.f32 zi uy) %220) %359)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 maxCos (fma.f32 ux zi %476))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 ux (fma.f32 maxCos zi (/.f32 %347 ux)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 zi (fma.f32 maxCos ux %458))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 uy %498)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 #s(literal 2 binary32) %158)))))
(approx %25 (approx %63 (approx %72 (*.f32 maxCos (fma.f32 ux zi (+.f32 %123 %476))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux %459)))))
(approx %25 (approx %63 (approx %72 (approx %182 (*.f32 xi (*.f32 zi (fma.f32 #s(literal -2 binary32) %537 %305)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx (+ (cos %546) (/ (* yi (sin %546)) xi)) (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) %552)))))))
(approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 %560 maxCos))))))))
%576
%576
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 maxCos (+.f32 ux (+.f32 (/.f32 xi %432) (/.f32 %347 %432)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 ux (+.f32 maxCos (+.f32 (/.f32 xi %41) (/.f32 %347 %41)))))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (approx %70 (*.f32 %535 %498))))))
(approx %25 (approx %63 (approx %72 (*.f32 xi (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -2 binary32) %536 (fma.f32 #s(literal 2 binary32) %552 %149)))))))
%621
%621
%631
%631
(approx %25 (approx %63 (approx (+ xi (+ %39 (+ (* (+ yi yi) %224) (* (* (* (* (* %3 %3) xi) uy) -2) uy)))) (*.f32 ux (fma.f32 #s(literal -2 binary32) (/.f32 %611 ux) (fma.f32 #s(literal 2 binary32) (/.f32 %158 ux) %130))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 %535 (fma.f32 #s(literal -2 binary32) (/.f32 %344 zi) (*.f32 #s(literal 2 binary32) (/.f32 %157 (*.f32 uy zi))))))))))))
%674
%674
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 xi (fma.f32 #s(literal -2 binary32) %537 (fma.f32 #s(literal 2 binary32) (/.f32 %158 (*.f32 xi zi)) %305)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (*.f32 #s(literal 2 binary32) %688))))))))))
(approx %25 (fma.f32 maxCos %119 (*.f32 xi %668)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (fma.f32 #s(literal 2 binary32) %688 (/.f32 xi %686))))))))))
Outputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%37 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (approx (+ (* maxCos (* ux (* zi %8))) (+ (* uy (+ (* -2 (* uy (* xi (* (pow %3 2) %37)))) (* 2 (* yi (* %3 %37))))) (* xi %37))) (+.f32 xi (fma.f32 maxCos (*.f32 ux zi) (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) (*.f32 #s(literal 2 binary32) (*.f32 yi (PI.f32 )))))))))
Call 8
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%25 = (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%41 = (*.f32 ux zi)
%42 = (*.f32 maxCos %41)
%46 = (*.f32 zi maxCos)
%47 = (*.f32 %46 ux)
%52 = (pow %3 2)
%63 = (+ %28 (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36))
%67 = (* yi %3)
%69 = (+ (* -2 (* uy (* xi %52))) (* 2 %67))
%70 = (* uy %69)
%71 = (+ %39 %70)
%72 = (+ xi %71)
%75 = (/ %70 zi)
%76 = (+ (/ xi zi) %75)
%77 = (+ (* maxCos ux) %76)
%78 = (*.f32 maxCos ux)
%87 = (*.f32 zi ux)
%92 = (* %3 (* 2 uy))
%93 = (sin %92)
%102 = (* (* (- ux 1) maxCos) ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%107 = (- (* (+ (* %93 yi) (* xi (cos (* (* -2 uy) %3)))) %104) %106)
%108 = (* %104 xi)
%109 = (- %108 %106)
%110 = (fma.f32 %46 ux xi)
%113 = (+.f32 xi %42)
%117 = (-.f32 #s(literal 1 binary32) ux)
%118 = (*.f32 zi %117)
%119 = (*.f32 ux %118)
%120 = (*.f32 maxCos %119)
%122 = (approx %25 (approx %37 %120))
%123 = (/.f32 xi maxCos)
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi %123)))))
%130 = (fma.f32 maxCos zi (/.f32 xi ux))
%135 = (/.f32 xi zi)
%136 = (fma.f32 maxCos ux %135)
%137 = (*.f32 zi %136)
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
%149 = (/.f32 %42 xi)
%156 = (PI.f32 )
%157 = (*.f32 yi %156)
%158 = (*.f32 uy %157)
%159 = (fma.f32 #s(literal 2 binary32) %158 %42)
%174 = (approx %25 (approx %37 (approx %40 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %78 (*.f32 #s(literal -1 binary32) %135)))))))
%175 = (/.f32 %158 zi)
%182 = (* zi %77)
%199 = (*.f32 #s(literal 2 binary32) %157)
%201 = (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) %199))
%216 = (*.f32 %156 %156)
%217 = (*.f32 %216 xi)
%218 = (*.f32 %217 uy)
%220 = (*.f32 #s(literal -2 binary32) (-.f32 %218 %157))
%221 = (fma.f32 %220 uy %110)
%224 = (* %3 uy)
%226 = (sin (* %224 2))
%230 = (cos (* -2 %224))
%234 = (- (+ (* (* %104 %226) yi) (* (* %104 %230) xi)) %106)
%236 = (* (* %52 xi) uy)
%242 = (+ %109 (* (* -2 (- (* %236 %104) (* %104 %67))) uy))
%245 = (+.f32 yi yi)
%246 = (*.f32 %156 uy)
%263 = (fma.f32 %220 uy xi)
%270 = (*.f32 %218 #s(literal -2 binary32))
%271 = (*.f32 %270 uy)
%278 = (*.f32 %87 maxCos)
%284 = (*.f32 %245 uy)
%292 = (+.f32 %156 %156)
%305 = (/.f32 #s(literal 1 binary32) zi)
%311 = (*.f32 zi %263)
%331 = (/.f32 uy zi)
%337 = (/.f32 %220 zi)
%343 = (pow.f32 %156 #s(literal 2 binary32))
%344 = (*.f32 xi %343)
%345 = (*.f32 uy %344)
%347 = (*.f32 uy (fma.f32 #s(literal -2 binary32) %345 %199))
%359 = (*.f32 zi zi)
%367 = (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos)
%370 = (*.f32 %117 ux)
%372 = (sqrt.f32 (fma.f32 (*.f32 (*.f32 %367 ux) maxCos) %370 #s(literal 1 binary32)))
%373 = (*.f32 xi %372)
%392 = (*.f32 %220 %331)
%393 = (*.f32 %392 zi)
%403 = (*.f32 %220 uy)
%412 = (neg.f32 xi)
%432 = (*.f32 maxCos zi)
%434 = (pow.f32 maxCos #s(literal 2 binary32))
%444 = (neg.f32 zi)
%458 = (/.f32 %347 zi)
%459 = (+.f32 %135 %458)
%476 = (/.f32 %347 maxCos)
%498 = (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal 2 binary32) (/.f32 %157 uy)))
%506 = (*.f32 ux %117)
%511 = (sqrt.f32 (fma.f32 %367 (*.f32 (*.f32 (*.f32 maxCos %117) ux) ux) #s(literal 1 binary32)))
%513 = (* %3 (+ uy uy))
%518 = (+ (* (sin %513) yi) (* (cos %513) xi))
%535 = (pow.f32 uy #s(literal 2 binary32))
%536 = (*.f32 %535 %343)
%537 = (/.f32 %536 zi)
%546 = (* 2 (* uy %3))
%552 = (/.f32 %158 xi)
%560 = (+.f32 xi %347)
%576 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1 binary32) (/.f32 %560 ux))))))))
%610 = (*.f32 uy %156)
%611 = (*.f32 %535 %344)
%621 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (fma.f32 #s(literal -2 binary32) %611 %42)) yi))))))))
%631 = (approx %25 (approx %63 (approx %72 (*.f32 %535 (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %157 (*.f32 #s(literal -1 binary32) (/.f32 %113 uy))) uy)))))))
%668 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %434 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %117 #s(literal 2 binary32))))))
%674 = (approx %25 (approx %63 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 %156 %668))))))
%686 = (*.f32 yi zi)
%687 = (/.f32 %611 %686)
%688 = (/.f32 %610 zi)
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 %47)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 %87 maxCos xi)))
(approx %107 (approx %109 %110))
(approx %25 (approx %37 %113))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux %130))))
(approx %25 (approx %37 (approx %40 %137)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) %149)))))
(approx %25 (approx %63 (approx %72 %159)))
(approx %25 (approx %63 (+.f32 xi (approx %71 %159))))
%174
%174
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (fma.f32 #s(literal 2 binary32) %175 %78))))))
(approx %25 (approx %63 (approx %72 (approx %182 (fma.f32 #s(literal 2 binary32) %158 %137)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (fma.f32 #s(literal 2 binary32) %175 %135)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %201))))
(approx %107 (approx (- (+ (* (* -2 (- (* (* xi uy) (* %104 %52)) (* (* %104 %3) yi))) uy) %108) %106) %221))
(approx %234 (approx %242 %221))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 (*.f32 (*.f32 (*.f32 (*.f32 #s(literal 5174515/524288 binary32) xi) uy) #s(literal -2 binary32)) uy))))))
(approx %234 (approx %242 (approx (+ (+ (* (* -2 (- %236 %67)) uy) (* (* zi ux) maxCos)) xi) (*.f32 (fma.f32 maxCos ux (/.f32 %263 zi)) zi))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 %271)))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 %270 uy (fma.f32 (*.f32 uy %245) %156 %278)))))
(approx %25 (approx %63 (+.f32 (fma.f32 %284 %156 %278) (fma.f32 (*.f32 uy %218) #s(literal -2 binary32) xi))))
(approx %25 (approx %63 (+.f32 (+.f32 %110 %271) (*.f32 (*.f32 %292 yi) uy))))
(approx %25 (approx %63 (-.f32 (+.f32 %110 (*.f32 %284 %156)) (*.f32 (*.f32 %218 #s(literal 2 binary32)) uy))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %263 %305 %78)))))
(approx %25 (approx %63 (approx %72 (fma.f32 %87 maxCos (/.f32 %311 zi)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 %201 zi)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 #s(literal 1 binary32) (/.f32 zi %263)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %220 %331 %136)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %337 uy %136)))))
(approx %25 (approx %63 (+.f32 xi (approx %71 %347))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 #s(literal -2 binary32) %345)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 %311 %359))))))
(approx %25 (fma.f32 %118 %78 %373))
(approx %25 (fma.f32 %370 %46 %373))
(approx (- (* (+ (* yi %93) (* xi (cos %92))) %104) %106) (fma.f32 %47 %117 %373))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %305 xi (fma.f32 %337 uy %78))))))
(approx %25 (approx %63 (approx %72 (fma.f32 %136 zi %393))))
(approx %25 (approx %63 (approx %72 (+.f32 (*.f32 %136 zi) %393))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 #s(literal 1 binary32) (/.f32 zi %403))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (-.f32 %392 (*.f32 %412 %305)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %311 (/.f32 #s(literal 1 binary32) %359) %78)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 (fma.f32 %135 zi %403) %305 %78)))))
(approx %25 (approx %37 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1/2 binary32) (*.f32 %434 xi)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 (fma.f32 %403 %444 (*.f32 %412 zi)) (*.f32 zi %444)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %347))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %459)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 (*.f32 zi xi) %359) (/.f32 (*.f32 (*.f32 zi uy) %220) %359)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 maxCos (fma.f32 ux zi %476))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 ux (fma.f32 maxCos zi (/.f32 %347 ux)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 zi (fma.f32 maxCos ux %458))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 uy %498)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 #s(literal 2 binary32) %158)))))
(approx %25 (approx %63 (approx %72 (*.f32 maxCos (fma.f32 ux zi (+.f32 %123 %476))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux %459)))))
(approx %25 (approx %63 (approx %72 (approx %182 (*.f32 xi (*.f32 zi (fma.f32 #s(literal -2 binary32) %537 %305)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx (+ (cos %546) (/ (* yi (sin %546)) xi)) (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) %552)))))))
(approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 %560 maxCos))))))))
%576
%576
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 maxCos (+.f32 ux (+.f32 (/.f32 xi %432) (/.f32 %347 %432)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 ux (+.f32 maxCos (+.f32 (/.f32 xi %41) (/.f32 %347 %41)))))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (approx %70 (*.f32 %535 %498))))))
(approx %25 (approx %63 (approx %72 (*.f32 xi (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -2 binary32) %536 (fma.f32 #s(literal 2 binary32) %552 %149)))))))
%621
%621
%631
%631
(approx %25 (approx %63 (approx (+ xi (+ %39 (+ (* (+ yi yi) %224) (* (* (* (* (* %3 %3) xi) uy) -2) uy)))) (*.f32 ux (fma.f32 #s(literal -2 binary32) (/.f32 %611 ux) (fma.f32 #s(literal 2 binary32) (/.f32 %158 ux) %130))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 %535 (fma.f32 #s(literal -2 binary32) (/.f32 %344 zi) (*.f32 #s(literal 2 binary32) (/.f32 %157 (*.f32 uy zi))))))))))))
%674
%674
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 xi (fma.f32 #s(literal -2 binary32) %537 (fma.f32 #s(literal 2 binary32) (/.f32 %158 (*.f32 xi zi)) %305)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (*.f32 #s(literal 2 binary32) %688))))))))))
(approx %25 (fma.f32 maxCos %119 (*.f32 xi %668)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (fma.f32 #s(literal 2 binary32) %688 (/.f32 xi %686))))))))))
(fma.f32 %370 %46 (*.f32 %372 (approx (+ (* %230 xi) (* %226 yi)) (fma.f32 (fma.f32 %292 yi (*.f32 (fma.f32 %217 #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 (*.f32 %216 %156) yi) uy) #s(literal -4/3 binary32))) uy)) uy xi))))
Outputs
%3 = (*.f32 (-.f32 #s(literal 1 binary32) ux) ux)
%16 = (* (PI ) uy)
%27 = (PI.f32 )
%29 = (*.f32 %27 %27)
(fma.f32 %3 (*.f32 zi maxCos) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) maxCos) %3 #s(literal 1 binary32))) (approx (+ (* (cos (* -2 %16)) xi) (* (sin (* %16 2)) yi)) (fma.f32 (fma.f32 (+.f32 %27 %27) yi (*.f32 (fma.f32 (*.f32 %29 xi) #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 (*.f32 %29 %27) yi) uy) #s(literal -4/3 binary32))) uy)) uy xi))))
Call 9
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%25 = (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%41 = (*.f32 ux zi)
%42 = (*.f32 maxCos %41)
%46 = (*.f32 zi maxCos)
%47 = (*.f32 %46 ux)
%52 = (pow %3 2)
%63 = (+ %28 (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36))
%64 = (* xi %52)
%67 = (* yi %3)
%69 = (+ (* -2 (* uy %64)) (* 2 %67))
%70 = (* uy %69)
%71 = (+ %39 %70)
%72 = (+ xi %71)
%75 = (/ %70 zi)
%76 = (+ (/ xi zi) %75)
%77 = (+ (* maxCos ux) %76)
%78 = (*.f32 maxCos ux)
%87 = (*.f32 zi ux)
%92 = (* %3 (* 2 uy))
%93 = (sin %92)
%96 = (* (* -2 uy) %3)
%102 = (* (* (- ux 1) maxCos) ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%107 = (- (* (+ (* %93 yi) (* xi (cos %96))) %104) %106)
%108 = (* %104 xi)
%109 = (- %108 %106)
%110 = (fma.f32 %46 ux xi)
%113 = (+.f32 xi %42)
%117 = (-.f32 #s(literal 1 binary32) ux)
%118 = (*.f32 zi %117)
%119 = (*.f32 ux %118)
%120 = (*.f32 maxCos %119)
%122 = (approx %25 (approx %37 %120))
%123 = (/.f32 xi maxCos)
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi %123)))))
%130 = (fma.f32 maxCos zi (/.f32 xi ux))
%135 = (/.f32 xi zi)
%136 = (fma.f32 maxCos ux %135)
%137 = (*.f32 zi %136)
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
%149 = (/.f32 %42 xi)
%156 = (PI.f32 )
%157 = (*.f32 yi %156)
%158 = (*.f32 uy %157)
%159 = (fma.f32 #s(literal 2 binary32) %158 %42)
%174 = (approx %25 (approx %37 (approx %40 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %78 (*.f32 #s(literal -1 binary32) %135)))))))
%175 = (/.f32 %158 zi)
%182 = (* zi %77)
%199 = (*.f32 #s(literal 2 binary32) %157)
%201 = (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) %199))
%216 = (*.f32 %156 %156)
%217 = (*.f32 %216 xi)
%218 = (*.f32 %217 uy)
%220 = (*.f32 #s(literal -2 binary32) (-.f32 %218 %157))
%221 = (fma.f32 %220 uy %110)
%224 = (* %3 uy)
%226 = (sin (* %224 2))
%230 = (cos (* -2 %224))
%234 = (- (+ (* (* %104 %226) yi) (* (* %104 %230) xi)) %106)
%236 = (* (* %52 xi) uy)
%242 = (+ %109 (* (* -2 (- (* %236 %104) (* %104 %67))) uy))
%245 = (+.f32 yi yi)
%246 = (*.f32 %156 uy)
%263 = (fma.f32 %220 uy xi)
%270 = (*.f32 %218 #s(literal -2 binary32))
%271 = (*.f32 %270 uy)
%278 = (*.f32 %87 maxCos)
%284 = (*.f32 %245 uy)
%292 = (+.f32 %156 %156)
%293 = (*.f32 %292 yi)
%305 = (/.f32 #s(literal 1 binary32) zi)
%311 = (*.f32 zi %263)
%331 = (/.f32 uy zi)
%337 = (/.f32 %220 zi)
%343 = (pow.f32 %156 #s(literal 2 binary32))
%344 = (*.f32 xi %343)
%345 = (*.f32 uy %344)
%347 = (*.f32 uy (fma.f32 #s(literal -2 binary32) %345 %199))
%359 = (*.f32 zi zi)
%367 = (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos)
%370 = (*.f32 %117 ux)
%372 = (sqrt.f32 (fma.f32 (*.f32 (*.f32 %367 ux) maxCos) %370 #s(literal 1 binary32)))
%373 = (*.f32 xi %372)
%392 = (*.f32 %220 %331)
%393 = (*.f32 %392 zi)
%403 = (*.f32 %220 uy)
%412 = (neg.f32 xi)
%432 = (*.f32 maxCos zi)
%434 = (pow.f32 maxCos #s(literal 2 binary32))
%444 = (neg.f32 zi)
%458 = (/.f32 %347 zi)
%459 = (+.f32 %135 %458)
%476 = (/.f32 %347 maxCos)
%498 = (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal 2 binary32) (/.f32 %157 uy)))
%506 = (*.f32 ux %117)
%511 = (sqrt.f32 (fma.f32 %367 (*.f32 (*.f32 (*.f32 maxCos %117) ux) ux) #s(literal 1 binary32)))
%513 = (* %3 (+ uy uy))
%515 = (* (sin %513) yi)
%518 = (+ %515 (* (cos %513) xi))
%535 = (pow.f32 uy #s(literal 2 binary32))
%536 = (*.f32 %535 %343)
%537 = (/.f32 %536 zi)
%546 = (* 2 (* uy %3))
%551 = (+ (cos %546) (/ (* yi (sin %546)) xi))
%552 = (/.f32 %158 xi)
%560 = (+.f32 xi %347)
%576 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1 binary32) (/.f32 %560 ux))))))))
%610 = (*.f32 uy %156)
%611 = (*.f32 %535 %344)
%621 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (fma.f32 #s(literal -2 binary32) %611 %42)) yi))))))))
%631 = (approx %25 (approx %63 (approx %72 (*.f32 %535 (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %157 (*.f32 #s(literal -1 binary32) (/.f32 %113 uy))) uy)))))))
%668 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %434 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %117 #s(literal 2 binary32))))))
%674 = (approx %25 (approx %63 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 %156 %668))))))
%686 = (*.f32 yi zi)
%687 = (/.f32 %611 %686)
%688 = (/.f32 %610 zi)
%715 = (*.f32 %216 %156)
%720 = (fma.f32 %217 #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 %715 yi) uy) #s(literal -4/3 binary32)))
%756 = (*.f32 %217 #s(literal -2 binary32))
%775 = (*.f32 #s(literal 2 binary32) %610)
%783 = (*.f32 yi (sin.f32 %775))
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 %47)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 %87 maxCos xi)))
(approx %107 (approx %109 %110))
(approx %25 (approx %37 %113))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux %130))))
(approx %25 (approx %37 (approx %40 %137)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) %149)))))
(approx %25 (approx %63 (approx %72 %159)))
(approx %25 (approx %63 (+.f32 xi (approx %71 %159))))
%174
%174
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (fma.f32 #s(literal 2 binary32) %175 %78))))))
(approx %25 (approx %63 (approx %72 (approx %182 (fma.f32 #s(literal 2 binary32) %158 %137)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (fma.f32 #s(literal 2 binary32) %175 %135)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %201))))
(approx %107 (approx (- (+ (* (* -2 (- (* (* xi uy) (* %104 %52)) (* (* %104 %3) yi))) uy) %108) %106) %221))
(approx %234 (approx %242 %221))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 (*.f32 (*.f32 (*.f32 (*.f32 #s(literal 5174515/524288 binary32) xi) uy) #s(literal -2 binary32)) uy))))))
(approx %234 (approx %242 (approx (+ (+ (* (* -2 (- %236 %67)) uy) (* (* zi ux) maxCos)) xi) (*.f32 (fma.f32 maxCos ux (/.f32 %263 zi)) zi))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 %271)))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 %270 uy (fma.f32 (*.f32 uy %245) %156 %278)))))
(approx %25 (approx %63 (+.f32 (fma.f32 %284 %156 %278) (fma.f32 (*.f32 uy %218) #s(literal -2 binary32) xi))))
(approx %25 (approx %63 (+.f32 (+.f32 %110 %271) (*.f32 %293 uy))))
(approx %25 (approx %63 (-.f32 (+.f32 %110 (*.f32 %284 %156)) (*.f32 (*.f32 %218 #s(literal 2 binary32)) uy))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %263 %305 %78)))))
(approx %25 (approx %63 (approx %72 (fma.f32 %87 maxCos (/.f32 %311 zi)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 %201 zi)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 #s(literal 1 binary32) (/.f32 zi %263)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %220 %331 %136)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %337 uy %136)))))
(approx %25 (approx %63 (+.f32 xi (approx %71 %347))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 #s(literal -2 binary32) %345)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 %311 %359))))))
(approx %25 (fma.f32 %118 %78 %373))
(approx %25 (fma.f32 %370 %46 %373))
(approx (- (* (+ (* yi %93) (* xi (cos %92))) %104) %106) (fma.f32 %47 %117 %373))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %305 xi (fma.f32 %337 uy %78))))))
(approx %25 (approx %63 (approx %72 (fma.f32 %136 zi %393))))
(approx %25 (approx %63 (approx %72 (+.f32 (*.f32 %136 zi) %393))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 #s(literal 1 binary32) (/.f32 zi %403))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (-.f32 %392 (*.f32 %412 %305)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %311 (/.f32 #s(literal 1 binary32) %359) %78)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 (fma.f32 %135 zi %403) %305 %78)))))
(approx %25 (approx %37 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1/2 binary32) (*.f32 %434 xi)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 (fma.f32 %403 %444 (*.f32 %412 zi)) (*.f32 zi %444)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %347))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %459)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 (*.f32 zi xi) %359) (/.f32 (*.f32 (*.f32 zi uy) %220) %359)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 maxCos (fma.f32 ux zi %476))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 ux (fma.f32 maxCos zi (/.f32 %347 ux)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 zi (fma.f32 maxCos ux %458))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 uy %498)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 #s(literal 2 binary32) %158)))))
(approx %25 (approx %63 (approx %72 (*.f32 maxCos (fma.f32 ux zi (+.f32 %123 %476))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux %459)))))
(approx %25 (approx %63 (approx %72 (approx %182 (*.f32 xi (*.f32 zi (fma.f32 #s(literal -2 binary32) %537 %305)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) %552)))))))
(approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 %560 maxCos))))))))
%576
%576
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 maxCos (+.f32 ux (+.f32 (/.f32 xi %432) (/.f32 %347 %432)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 ux (+.f32 maxCos (+.f32 (/.f32 xi %41) (/.f32 %347 %41)))))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (approx %70 (*.f32 %535 %498))))))
(approx %25 (approx %63 (approx %72 (*.f32 xi (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -2 binary32) %536 (fma.f32 #s(literal 2 binary32) %552 %149)))))))
%621
%621
%631
%631
(approx %25 (approx %63 (approx (+ xi (+ %39 (+ (* (+ yi yi) %224) (* (* (* (* (* %3 %3) xi) uy) -2) uy)))) (*.f32 ux (fma.f32 #s(literal -2 binary32) (/.f32 %611 ux) (fma.f32 #s(literal 2 binary32) (/.f32 %158 ux) %130))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 %535 (fma.f32 #s(literal -2 binary32) (/.f32 %344 zi) (*.f32 #s(literal 2 binary32) (/.f32 %157 (*.f32 uy zi))))))))))))
%674
%674
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 xi (fma.f32 #s(literal -2 binary32) %537 (fma.f32 #s(literal 2 binary32) (/.f32 %158 (*.f32 xi zi)) %305)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (*.f32 #s(literal 2 binary32) %688))))))))))
(approx %25 (fma.f32 maxCos %119 (*.f32 xi %668)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (fma.f32 #s(literal 2 binary32) %688 (/.f32 xi %686))))))))))
(fma.f32 %370 %46 (*.f32 %372 (approx (+ (* %230 xi) (* %226 yi)) (fma.f32 (fma.f32 %292 yi (*.f32 %720 uy)) uy xi))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %720 uy %293))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (approx (+ (* -2 %64) (* -4/3 (* uy (* yi (pow %3 3))))) (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi (pow.f32 %156 #s(literal 3 binary32)))))))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 yi uy) (*.f32 %715 #s(literal -4/3 binary32)) %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 (*.f32 #s(literal -4/3 binary32) uy) %715) yi %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 (cos.f32 %775))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx (+ %515 (* (sin (+ %96 (* %3 1/2))) xi)) %783)))
Outputs
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%25 = (PI.f32 )
%26 = (*.f32 %25 %25)
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (+.f32 xi (*.f32 uy (fma.f32 (fma.f32 (*.f32 %26 xi) #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 (*.f32 %26 %25) yi) uy) #s(literal -4/3 binary32))) uy (*.f32 (+.f32 %25 %25) yi)))))))
Call 10
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%25 = (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%41 = (*.f32 ux zi)
%42 = (*.f32 maxCos %41)
%46 = (*.f32 zi maxCos)
%47 = (*.f32 %46 ux)
%52 = (pow %3 2)
%63 = (+ %28 (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36))
%64 = (* xi %52)
%67 = (* yi %3)
%69 = (+ (* -2 (* uy %64)) (* 2 %67))
%70 = (* uy %69)
%71 = (+ %39 %70)
%72 = (+ xi %71)
%75 = (/ %70 zi)
%76 = (+ (/ xi zi) %75)
%77 = (+ (* maxCos ux) %76)
%78 = (*.f32 maxCos ux)
%87 = (*.f32 zi ux)
%92 = (* %3 (* 2 uy))
%93 = (sin %92)
%96 = (* (* -2 uy) %3)
%102 = (* (* (- ux 1) maxCos) ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%107 = (- (* (+ (* %93 yi) (* xi (cos %96))) %104) %106)
%108 = (* %104 xi)
%109 = (- %108 %106)
%110 = (fma.f32 %46 ux xi)
%113 = (+.f32 xi %42)
%117 = (-.f32 #s(literal 1 binary32) ux)
%118 = (*.f32 zi %117)
%119 = (*.f32 ux %118)
%120 = (*.f32 maxCos %119)
%122 = (approx %25 (approx %37 %120))
%123 = (/.f32 xi maxCos)
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi %123)))))
%130 = (fma.f32 maxCos zi (/.f32 xi ux))
%135 = (/.f32 xi zi)
%136 = (fma.f32 maxCos ux %135)
%137 = (*.f32 zi %136)
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
%149 = (/.f32 %42 xi)
%156 = (PI.f32 )
%157 = (*.f32 yi %156)
%158 = (*.f32 uy %157)
%159 = (fma.f32 #s(literal 2 binary32) %158 %42)
%174 = (approx %25 (approx %37 (approx %40 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %78 (*.f32 #s(literal -1 binary32) %135)))))))
%175 = (/.f32 %158 zi)
%182 = (* zi %77)
%199 = (*.f32 #s(literal 2 binary32) %157)
%201 = (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) %199))
%216 = (*.f32 %156 %156)
%217 = (*.f32 %216 xi)
%218 = (*.f32 %217 uy)
%220 = (*.f32 #s(literal -2 binary32) (-.f32 %218 %157))
%221 = (fma.f32 %220 uy %110)
%224 = (* %3 uy)
%226 = (sin (* %224 2))
%230 = (cos (* -2 %224))
%234 = (- (+ (* (* %104 %226) yi) (* (* %104 %230) xi)) %106)
%236 = (* (* %52 xi) uy)
%242 = (+ %109 (* (* -2 (- (* %236 %104) (* %104 %67))) uy))
%245 = (+.f32 yi yi)
%246 = (*.f32 %156 uy)
%263 = (fma.f32 %220 uy xi)
%270 = (*.f32 %218 #s(literal -2 binary32))
%271 = (*.f32 %270 uy)
%278 = (*.f32 %87 maxCos)
%284 = (*.f32 %245 uy)
%292 = (+.f32 %156 %156)
%293 = (*.f32 %292 yi)
%305 = (/.f32 #s(literal 1 binary32) zi)
%311 = (*.f32 zi %263)
%331 = (/.f32 uy zi)
%337 = (/.f32 %220 zi)
%343 = (pow.f32 %156 #s(literal 2 binary32))
%344 = (*.f32 xi %343)
%345 = (*.f32 uy %344)
%347 = (*.f32 uy (fma.f32 #s(literal -2 binary32) %345 %199))
%359 = (*.f32 zi zi)
%367 = (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos)
%370 = (*.f32 %117 ux)
%372 = (sqrt.f32 (fma.f32 (*.f32 (*.f32 %367 ux) maxCos) %370 #s(literal 1 binary32)))
%373 = (*.f32 xi %372)
%392 = (*.f32 %220 %331)
%393 = (*.f32 %392 zi)
%403 = (*.f32 %220 uy)
%412 = (neg.f32 xi)
%432 = (*.f32 maxCos zi)
%434 = (pow.f32 maxCos #s(literal 2 binary32))
%444 = (neg.f32 zi)
%458 = (/.f32 %347 zi)
%459 = (+.f32 %135 %458)
%476 = (/.f32 %347 maxCos)
%498 = (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal 2 binary32) (/.f32 %157 uy)))
%506 = (*.f32 ux %117)
%511 = (sqrt.f32 (fma.f32 %367 (*.f32 (*.f32 (*.f32 maxCos %117) ux) ux) #s(literal 1 binary32)))
%513 = (* %3 (+ uy uy))
%515 = (* (sin %513) yi)
%518 = (+ %515 (* (cos %513) xi))
%535 = (pow.f32 uy #s(literal 2 binary32))
%536 = (*.f32 %535 %343)
%537 = (/.f32 %536 zi)
%546 = (* 2 (* uy %3))
%551 = (+ (cos %546) (/ (* yi (sin %546)) xi))
%552 = (/.f32 %158 xi)
%560 = (+.f32 xi %347)
%576 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1 binary32) (/.f32 %560 ux))))))))
%610 = (*.f32 uy %156)
%611 = (*.f32 %535 %344)
%621 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (fma.f32 #s(literal -2 binary32) %611 %42)) yi))))))))
%631 = (approx %25 (approx %63 (approx %72 (*.f32 %535 (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %157 (*.f32 #s(literal -1 binary32) (/.f32 %113 uy))) uy)))))))
%668 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %434 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %117 #s(literal 2 binary32))))))
%674 = (approx %25 (approx %63 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 %156 %668))))))
%686 = (*.f32 yi zi)
%687 = (/.f32 %611 %686)
%688 = (/.f32 %610 zi)
%715 = (*.f32 %216 %156)
%720 = (fma.f32 %217 #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 %715 yi) uy) #s(literal -4/3 binary32)))
%721 = (*.f32 %720 uy)
%756 = (*.f32 %217 #s(literal -2 binary32))
%775 = (*.f32 #s(literal 2 binary32) %610)
%783 = (*.f32 yi (sin.f32 %775))
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 %47)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 %87 maxCos xi)))
(approx %107 (approx %109 %110))
(approx %25 (approx %37 %113))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux %130))))
(approx %25 (approx %37 (approx %40 %137)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) %149)))))
(approx %25 (approx %63 (approx %72 %159)))
(approx %25 (approx %63 (+.f32 xi (approx %71 %159))))
%174
%174
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (fma.f32 #s(literal 2 binary32) %175 %78))))))
(approx %25 (approx %63 (approx %72 (approx %182 (fma.f32 #s(literal 2 binary32) %158 %137)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (fma.f32 #s(literal 2 binary32) %175 %135)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %201))))
(approx %107 (approx (- (+ (* (* -2 (- (* (* xi uy) (* %104 %52)) (* (* %104 %3) yi))) uy) %108) %106) %221))
(approx %234 (approx %242 %221))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 (*.f32 (*.f32 (*.f32 (*.f32 #s(literal 5174515/524288 binary32) xi) uy) #s(literal -2 binary32)) uy))))))
(approx %234 (approx %242 (approx (+ (+ (* (* -2 (- %236 %67)) uy) (* (* zi ux) maxCos)) xi) (*.f32 (fma.f32 maxCos ux (/.f32 %263 zi)) zi))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 %271)))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 %270 uy (fma.f32 (*.f32 uy %245) %156 %278)))))
(approx %25 (approx %63 (+.f32 (fma.f32 %284 %156 %278) (fma.f32 (*.f32 uy %218) #s(literal -2 binary32) xi))))
(approx %25 (approx %63 (+.f32 (+.f32 %110 %271) (*.f32 %293 uy))))
(approx %25 (approx %63 (-.f32 (+.f32 %110 (*.f32 %284 %156)) (*.f32 (*.f32 %218 #s(literal 2 binary32)) uy))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %263 %305 %78)))))
(approx %25 (approx %63 (approx %72 (fma.f32 %87 maxCos (/.f32 %311 zi)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 %201 zi)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 #s(literal 1 binary32) (/.f32 zi %263)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %220 %331 %136)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %337 uy %136)))))
(approx %25 (approx %63 (+.f32 xi (approx %71 %347))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 #s(literal -2 binary32) %345)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 %311 %359))))))
(approx %25 (fma.f32 %118 %78 %373))
(approx %25 (fma.f32 %370 %46 %373))
(approx (- (* (+ (* yi %93) (* xi (cos %92))) %104) %106) (fma.f32 %47 %117 %373))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %305 xi (fma.f32 %337 uy %78))))))
(approx %25 (approx %63 (approx %72 (fma.f32 %136 zi %393))))
(approx %25 (approx %63 (approx %72 (+.f32 (*.f32 %136 zi) %393))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 #s(literal 1 binary32) (/.f32 zi %403))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (-.f32 %392 (*.f32 %412 %305)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %311 (/.f32 #s(literal 1 binary32) %359) %78)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 (fma.f32 %135 zi %403) %305 %78)))))
(approx %25 (approx %37 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1/2 binary32) (*.f32 %434 xi)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 (fma.f32 %403 %444 (*.f32 %412 zi)) (*.f32 zi %444)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %347))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %459)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 (*.f32 zi xi) %359) (/.f32 (*.f32 (*.f32 zi uy) %220) %359)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 maxCos (fma.f32 ux zi %476))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 ux (fma.f32 maxCos zi (/.f32 %347 ux)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 zi (fma.f32 maxCos ux %458))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 uy %498)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 #s(literal 2 binary32) %158)))))
(approx %25 (approx %63 (approx %72 (*.f32 maxCos (fma.f32 ux zi (+.f32 %123 %476))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux %459)))))
(approx %25 (approx %63 (approx %72 (approx %182 (*.f32 xi (*.f32 zi (fma.f32 #s(literal -2 binary32) %537 %305)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) %552)))))))
(approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 %560 maxCos))))))))
%576
%576
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 maxCos (+.f32 ux (+.f32 (/.f32 xi %432) (/.f32 %347 %432)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 ux (+.f32 maxCos (+.f32 (/.f32 xi %41) (/.f32 %347 %41)))))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (approx %70 (*.f32 %535 %498))))))
(approx %25 (approx %63 (approx %72 (*.f32 xi (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -2 binary32) %536 (fma.f32 #s(literal 2 binary32) %552 %149)))))))
%621
%621
%631
%631
(approx %25 (approx %63 (approx (+ xi (+ %39 (+ (* (+ yi yi) %224) (* (* (* (* (* %3 %3) xi) uy) -2) uy)))) (*.f32 ux (fma.f32 #s(literal -2 binary32) (/.f32 %611 ux) (fma.f32 #s(literal 2 binary32) (/.f32 %158 ux) %130))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 %535 (fma.f32 #s(literal -2 binary32) (/.f32 %344 zi) (*.f32 #s(literal 2 binary32) (/.f32 %157 (*.f32 uy zi))))))))))))
%674
%674
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 xi (fma.f32 #s(literal -2 binary32) %537 (fma.f32 #s(literal 2 binary32) (/.f32 %158 (*.f32 xi zi)) %305)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (*.f32 #s(literal 2 binary32) %688))))))))))
(approx %25 (fma.f32 maxCos %119 (*.f32 xi %668)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (fma.f32 #s(literal 2 binary32) %688 (/.f32 xi %686))))))))))
(fma.f32 %370 %46 (*.f32 %372 (approx (+ (* %230 xi) (* %226 yi)) (fma.f32 (fma.f32 %292 yi %721) uy xi))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %720 uy %293))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (approx (+ (* -2 %64) (* -4/3 (* uy (* yi (pow %3 3))))) (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi (pow.f32 %156 #s(literal 3 binary32)))))))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 yi uy) (*.f32 %715 #s(literal -4/3 binary32)) %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 (*.f32 #s(literal -4/3 binary32) uy) %715) yi %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 (cos.f32 %775))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx (+ %515 (* (sin (+ %96 (* %3 1/2))) xi)) %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %156 yi (fma.f32 yi %156 %721)))))))
Outputs
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%25 = (PI.f32 )
%26 = (*.f32 %25 %25)
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (+.f32 xi (*.f32 uy (fma.f32 %25 yi (fma.f32 yi %25 (*.f32 (fma.f32 (*.f32 %26 xi) #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 (*.f32 %26 %25) yi) uy) #s(literal -4/3 binary32))) uy))))))))
Call 11
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%25 = (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%41 = (*.f32 ux zi)
%42 = (*.f32 maxCos %41)
%46 = (*.f32 zi maxCos)
%47 = (*.f32 %46 ux)
%52 = (pow %3 2)
%63 = (+ %28 (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36))
%64 = (* xi %52)
%67 = (* yi %3)
%69 = (+ (* -2 (* uy %64)) (* 2 %67))
%70 = (* uy %69)
%71 = (+ %39 %70)
%72 = (+ xi %71)
%75 = (/ %70 zi)
%76 = (+ (/ xi zi) %75)
%77 = (+ (* maxCos ux) %76)
%78 = (*.f32 maxCos ux)
%87 = (*.f32 zi ux)
%92 = (* %3 (* 2 uy))
%93 = (sin %92)
%96 = (* (* -2 uy) %3)
%102 = (* (* (- ux 1) maxCos) ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%107 = (- (* (+ (* %93 yi) (* xi (cos %96))) %104) %106)
%108 = (* %104 xi)
%109 = (- %108 %106)
%110 = (fma.f32 %46 ux xi)
%113 = (+.f32 xi %42)
%117 = (-.f32 #s(literal 1 binary32) ux)
%118 = (*.f32 zi %117)
%119 = (*.f32 ux %118)
%120 = (*.f32 maxCos %119)
%122 = (approx %25 (approx %37 %120))
%123 = (/.f32 xi maxCos)
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi %123)))))
%130 = (fma.f32 maxCos zi (/.f32 xi ux))
%135 = (/.f32 xi zi)
%136 = (fma.f32 maxCos ux %135)
%137 = (*.f32 zi %136)
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
%149 = (/.f32 %42 xi)
%156 = (PI.f32 )
%157 = (*.f32 yi %156)
%158 = (*.f32 uy %157)
%159 = (fma.f32 #s(literal 2 binary32) %158 %42)
%174 = (approx %25 (approx %37 (approx %40 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %78 (*.f32 #s(literal -1 binary32) %135)))))))
%175 = (/.f32 %158 zi)
%182 = (* zi %77)
%199 = (*.f32 #s(literal 2 binary32) %157)
%201 = (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) %199))
%216 = (*.f32 %156 %156)
%217 = (*.f32 %216 xi)
%218 = (*.f32 %217 uy)
%220 = (*.f32 #s(literal -2 binary32) (-.f32 %218 %157))
%221 = (fma.f32 %220 uy %110)
%224 = (* %3 uy)
%226 = (sin (* %224 2))
%230 = (cos (* -2 %224))
%234 = (- (+ (* (* %104 %226) yi) (* (* %104 %230) xi)) %106)
%236 = (* (* %52 xi) uy)
%242 = (+ %109 (* (* -2 (- (* %236 %104) (* %104 %67))) uy))
%245 = (+.f32 yi yi)
%246 = (*.f32 %156 uy)
%263 = (fma.f32 %220 uy xi)
%270 = (*.f32 %218 #s(literal -2 binary32))
%271 = (*.f32 %270 uy)
%278 = (*.f32 %87 maxCos)
%284 = (*.f32 %245 uy)
%292 = (+.f32 %156 %156)
%293 = (*.f32 %292 yi)
%305 = (/.f32 #s(literal 1 binary32) zi)
%311 = (*.f32 zi %263)
%331 = (/.f32 uy zi)
%337 = (/.f32 %220 zi)
%343 = (pow.f32 %156 #s(literal 2 binary32))
%344 = (*.f32 xi %343)
%345 = (*.f32 uy %344)
%347 = (*.f32 uy (fma.f32 #s(literal -2 binary32) %345 %199))
%359 = (*.f32 zi zi)
%367 = (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos)
%370 = (*.f32 %117 ux)
%372 = (sqrt.f32 (fma.f32 (*.f32 (*.f32 %367 ux) maxCos) %370 #s(literal 1 binary32)))
%373 = (*.f32 xi %372)
%392 = (*.f32 %220 %331)
%393 = (*.f32 %392 zi)
%403 = (*.f32 %220 uy)
%412 = (neg.f32 xi)
%432 = (*.f32 maxCos zi)
%434 = (pow.f32 maxCos #s(literal 2 binary32))
%444 = (neg.f32 zi)
%458 = (/.f32 %347 zi)
%459 = (+.f32 %135 %458)
%476 = (/.f32 %347 maxCos)
%498 = (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal 2 binary32) (/.f32 %157 uy)))
%506 = (*.f32 ux %117)
%511 = (sqrt.f32 (fma.f32 %367 (*.f32 (*.f32 (*.f32 maxCos %117) ux) ux) #s(literal 1 binary32)))
%513 = (* %3 (+ uy uy))
%515 = (* (sin %513) yi)
%518 = (+ %515 (* (cos %513) xi))
%535 = (pow.f32 uy #s(literal 2 binary32))
%536 = (*.f32 %535 %343)
%537 = (/.f32 %536 zi)
%546 = (* 2 (* uy %3))
%551 = (+ (cos %546) (/ (* yi (sin %546)) xi))
%552 = (/.f32 %158 xi)
%560 = (+.f32 xi %347)
%576 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1 binary32) (/.f32 %560 ux))))))))
%610 = (*.f32 uy %156)
%611 = (*.f32 %535 %344)
%621 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (fma.f32 #s(literal -2 binary32) %611 %42)) yi))))))))
%631 = (approx %25 (approx %63 (approx %72 (*.f32 %535 (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %157 (*.f32 #s(literal -1 binary32) (/.f32 %113 uy))) uy)))))))
%668 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %434 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %117 #s(literal 2 binary32))))))
%674 = (approx %25 (approx %63 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 %156 %668))))))
%686 = (*.f32 yi zi)
%687 = (/.f32 %611 %686)
%688 = (/.f32 %610 zi)
%715 = (*.f32 %216 %156)
%720 = (fma.f32 %217 #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 %715 yi) uy) #s(literal -4/3 binary32)))
%721 = (*.f32 %720 uy)
%756 = (*.f32 %217 #s(literal -2 binary32))
%775 = (*.f32 #s(literal 2 binary32) %610)
%783 = (*.f32 yi (sin.f32 %775))
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 %47)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 %87 maxCos xi)))
(approx %107 (approx %109 %110))
(approx %25 (approx %37 %113))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux %130))))
(approx %25 (approx %37 (approx %40 %137)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) %149)))))
(approx %25 (approx %63 (approx %72 %159)))
(approx %25 (approx %63 (+.f32 xi (approx %71 %159))))
%174
%174
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (fma.f32 #s(literal 2 binary32) %175 %78))))))
(approx %25 (approx %63 (approx %72 (approx %182 (fma.f32 #s(literal 2 binary32) %158 %137)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (fma.f32 #s(literal 2 binary32) %175 %135)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %201))))
(approx %107 (approx (- (+ (* (* -2 (- (* (* xi uy) (* %104 %52)) (* (* %104 %3) yi))) uy) %108) %106) %221))
(approx %234 (approx %242 %221))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 (*.f32 (*.f32 (*.f32 (*.f32 #s(literal 5174515/524288 binary32) xi) uy) #s(literal -2 binary32)) uy))))))
(approx %234 (approx %242 (approx (+ (+ (* (* -2 (- %236 %67)) uy) (* (* zi ux) maxCos)) xi) (*.f32 (fma.f32 maxCos ux (/.f32 %263 zi)) zi))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 %271)))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 %270 uy (fma.f32 (*.f32 uy %245) %156 %278)))))
(approx %25 (approx %63 (+.f32 (fma.f32 %284 %156 %278) (fma.f32 (*.f32 uy %218) #s(literal -2 binary32) xi))))
(approx %25 (approx %63 (+.f32 (+.f32 %110 %271) (*.f32 %293 uy))))
(approx %25 (approx %63 (-.f32 (+.f32 %110 (*.f32 %284 %156)) (*.f32 (*.f32 %218 #s(literal 2 binary32)) uy))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %263 %305 %78)))))
(approx %25 (approx %63 (approx %72 (fma.f32 %87 maxCos (/.f32 %311 zi)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 %201 zi)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 #s(literal 1 binary32) (/.f32 zi %263)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %220 %331 %136)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %337 uy %136)))))
(approx %25 (approx %63 (+.f32 xi (approx %71 %347))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 #s(literal -2 binary32) %345)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 %311 %359))))))
(approx %25 (fma.f32 %118 %78 %373))
(approx %25 (fma.f32 %370 %46 %373))
(approx (- (* (+ (* yi %93) (* xi (cos %92))) %104) %106) (fma.f32 %47 %117 %373))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %305 xi (fma.f32 %337 uy %78))))))
(approx %25 (approx %63 (approx %72 (fma.f32 %136 zi %393))))
(approx %25 (approx %63 (approx %72 (+.f32 (*.f32 %136 zi) %393))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 #s(literal 1 binary32) (/.f32 zi %403))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (-.f32 %392 (*.f32 %412 %305)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %311 (/.f32 #s(literal 1 binary32) %359) %78)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 (fma.f32 %135 zi %403) %305 %78)))))
(approx %25 (approx %37 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1/2 binary32) (*.f32 %434 xi)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 (fma.f32 %403 %444 (*.f32 %412 zi)) (*.f32 zi %444)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %347))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %459)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 (*.f32 zi xi) %359) (/.f32 (*.f32 (*.f32 zi uy) %220) %359)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 maxCos (fma.f32 ux zi %476))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 ux (fma.f32 maxCos zi (/.f32 %347 ux)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 zi (fma.f32 maxCos ux %458))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 uy %498)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 #s(literal 2 binary32) %158)))))
(approx %25 (approx %63 (approx %72 (*.f32 maxCos (fma.f32 ux zi (+.f32 %123 %476))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux %459)))))
(approx %25 (approx %63 (approx %72 (approx %182 (*.f32 xi (*.f32 zi (fma.f32 #s(literal -2 binary32) %537 %305)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) %552)))))))
(approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 %560 maxCos))))))))
%576
%576
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 maxCos (+.f32 ux (+.f32 (/.f32 xi %432) (/.f32 %347 %432)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 ux (+.f32 maxCos (+.f32 (/.f32 xi %41) (/.f32 %347 %41)))))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (approx %70 (*.f32 %535 %498))))))
(approx %25 (approx %63 (approx %72 (*.f32 xi (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -2 binary32) %536 (fma.f32 #s(literal 2 binary32) %552 %149)))))))
%621
%621
%631
%631
(approx %25 (approx %63 (approx (+ xi (+ %39 (+ (* (+ yi yi) %224) (* (* (* (* (* %3 %3) xi) uy) -2) uy)))) (*.f32 ux (fma.f32 #s(literal -2 binary32) (/.f32 %611 ux) (fma.f32 #s(literal 2 binary32) (/.f32 %158 ux) %130))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 %535 (fma.f32 #s(literal -2 binary32) (/.f32 %344 zi) (*.f32 #s(literal 2 binary32) (/.f32 %157 (*.f32 uy zi))))))))))))
%674
%674
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 xi (fma.f32 #s(literal -2 binary32) %537 (fma.f32 #s(literal 2 binary32) (/.f32 %158 (*.f32 xi zi)) %305)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (*.f32 #s(literal 2 binary32) %688))))))))))
(approx %25 (fma.f32 maxCos %119 (*.f32 xi %668)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (fma.f32 #s(literal 2 binary32) %688 (/.f32 xi %686))))))))))
(fma.f32 %370 %46 (*.f32 %372 (approx (+ (* %230 xi) (* %226 yi)) (fma.f32 (fma.f32 %292 yi %721) uy xi))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %720 uy %293))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (approx (+ (* -2 %64) (* -4/3 (* uy (* yi (pow %3 3))))) (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi (pow.f32 %156 #s(literal 3 binary32)))))))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 yi uy) (*.f32 %715 #s(literal -4/3 binary32)) %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 (*.f32 #s(literal -4/3 binary32) uy) %715) yi %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 (cos.f32 %775))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx (+ %515 (* (sin (+ %96 (* %3 1/2))) xi)) %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %156 yi (fma.f32 yi %156 %721)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (fma.f32 %284 %156 (fma.f32 (*.f32 uy uy) %720 xi)))))
Outputs
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (* (PI ) (+ uy uy))
%27 = (PI.f32 )
%29 = (*.f32 %27 %27)
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (fma.f32 (*.f32 (+.f32 yi yi) uy) %27 (fma.f32 (*.f32 uy uy) (fma.f32 (*.f32 %29 xi) #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 (*.f32 %29 %27) yi) uy) #s(literal -4/3 binary32))) xi)))))
Call 12
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%25 = (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%41 = (*.f32 ux zi)
%42 = (*.f32 maxCos %41)
%46 = (*.f32 zi maxCos)
%47 = (*.f32 %46 ux)
%52 = (pow %3 2)
%62 = (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36)
%63 = (+ %28 %62)
%64 = (* xi %52)
%67 = (* yi %3)
%69 = (+ (* -2 (* uy %64)) (* 2 %67))
%70 = (* uy %69)
%71 = (+ %39 %70)
%72 = (+ xi %71)
%75 = (/ %70 zi)
%76 = (+ (/ xi zi) %75)
%77 = (+ (* maxCos ux) %76)
%78 = (*.f32 maxCos ux)
%87 = (*.f32 zi ux)
%92 = (* %3 (* 2 uy))
%93 = (sin %92)
%96 = (* (* -2 uy) %3)
%102 = (* (* (- ux 1) maxCos) ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%107 = (- (* (+ (* %93 yi) (* xi (cos %96))) %104) %106)
%108 = (* %104 xi)
%109 = (- %108 %106)
%110 = (fma.f32 %46 ux xi)
%113 = (+.f32 xi %42)
%117 = (-.f32 #s(literal 1 binary32) ux)
%118 = (*.f32 zi %117)
%119 = (*.f32 ux %118)
%120 = (*.f32 maxCos %119)
%122 = (approx %25 (approx %37 %120))
%123 = (/.f32 xi maxCos)
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi %123)))))
%130 = (fma.f32 maxCos zi (/.f32 xi ux))
%135 = (/.f32 xi zi)
%136 = (fma.f32 maxCos ux %135)
%137 = (*.f32 zi %136)
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
%149 = (/.f32 %42 xi)
%156 = (PI.f32 )
%157 = (*.f32 yi %156)
%158 = (*.f32 uy %157)
%159 = (fma.f32 #s(literal 2 binary32) %158 %42)
%174 = (approx %25 (approx %37 (approx %40 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %78 (*.f32 #s(literal -1 binary32) %135)))))))
%175 = (/.f32 %158 zi)
%182 = (* zi %77)
%199 = (*.f32 #s(literal 2 binary32) %157)
%201 = (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) %199))
%216 = (*.f32 %156 %156)
%217 = (*.f32 %216 xi)
%218 = (*.f32 %217 uy)
%220 = (*.f32 #s(literal -2 binary32) (-.f32 %218 %157))
%221 = (fma.f32 %220 uy %110)
%224 = (* %3 uy)
%226 = (sin (* %224 2))
%230 = (cos (* -2 %224))
%234 = (- (+ (* (* %104 %226) yi) (* (* %104 %230) xi)) %106)
%236 = (* (* %52 xi) uy)
%242 = (+ %109 (* (* -2 (- (* %236 %104) (* %104 %67))) uy))
%245 = (+.f32 yi yi)
%246 = (*.f32 %156 uy)
%263 = (fma.f32 %220 uy xi)
%270 = (*.f32 %218 #s(literal -2 binary32))
%271 = (*.f32 %270 uy)
%278 = (*.f32 %87 maxCos)
%284 = (*.f32 %245 uy)
%292 = (+.f32 %156 %156)
%293 = (*.f32 %292 yi)
%305 = (/.f32 #s(literal 1 binary32) zi)
%311 = (*.f32 zi %263)
%331 = (/.f32 uy zi)
%337 = (/.f32 %220 zi)
%343 = (pow.f32 %156 #s(literal 2 binary32))
%344 = (*.f32 xi %343)
%345 = (*.f32 uy %344)
%347 = (*.f32 uy (fma.f32 #s(literal -2 binary32) %345 %199))
%359 = (*.f32 zi zi)
%367 = (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos)
%370 = (*.f32 %117 ux)
%372 = (sqrt.f32 (fma.f32 (*.f32 (*.f32 %367 ux) maxCos) %370 #s(literal 1 binary32)))
%373 = (*.f32 xi %372)
%392 = (*.f32 %220 %331)
%393 = (*.f32 %392 zi)
%403 = (*.f32 %220 uy)
%412 = (neg.f32 xi)
%432 = (*.f32 maxCos zi)
%434 = (pow.f32 maxCos #s(literal 2 binary32))
%444 = (neg.f32 zi)
%458 = (/.f32 %347 zi)
%459 = (+.f32 %135 %458)
%476 = (/.f32 %347 maxCos)
%498 = (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal 2 binary32) (/.f32 %157 uy)))
%506 = (*.f32 ux %117)
%511 = (sqrt.f32 (fma.f32 %367 (*.f32 (*.f32 (*.f32 maxCos %117) ux) ux) #s(literal 1 binary32)))
%513 = (* %3 (+ uy uy))
%515 = (* (sin %513) yi)
%518 = (+ %515 (* (cos %513) xi))
%535 = (pow.f32 uy #s(literal 2 binary32))
%536 = (*.f32 %535 %343)
%537 = (/.f32 %536 zi)
%546 = (* 2 (* uy %3))
%551 = (+ (cos %546) (/ (* yi (sin %546)) xi))
%552 = (/.f32 %158 xi)
%560 = (+.f32 xi %347)
%576 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1 binary32) (/.f32 %560 ux))))))))
%610 = (*.f32 uy %156)
%611 = (*.f32 %535 %344)
%621 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (fma.f32 #s(literal -2 binary32) %611 %42)) yi))))))))
%631 = (approx %25 (approx %63 (approx %72 (*.f32 %535 (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %157 (*.f32 #s(literal -1 binary32) (/.f32 %113 uy))) uy)))))))
%668 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %434 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %117 #s(literal 2 binary32))))))
%672 = (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 %156 %668))))
%674 = (approx %25 (approx %63 %672))
%686 = (*.f32 yi zi)
%687 = (/.f32 %611 %686)
%688 = (/.f32 %610 zi)
%715 = (*.f32 %216 %156)
%720 = (fma.f32 %217 #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 %715 yi) uy) #s(literal -4/3 binary32)))
%721 = (*.f32 %720 uy)
%756 = (*.f32 %217 #s(literal -2 binary32))
%775 = (*.f32 #s(literal 2 binary32) %610)
%776 = (cos.f32 %775)
%783 = (*.f32 yi (sin.f32 %775))
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 %47)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 %87 maxCos xi)))
(approx %107 (approx %109 %110))
(approx %25 (approx %37 %113))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux %130))))
(approx %25 (approx %37 (approx %40 %137)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) %149)))))
(approx %25 (approx %63 (approx %72 %159)))
(approx %25 (approx %63 (+.f32 xi (approx %71 %159))))
%174
%174
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (fma.f32 #s(literal 2 binary32) %175 %78))))))
(approx %25 (approx %63 (approx %72 (approx %182 (fma.f32 #s(literal 2 binary32) %158 %137)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (fma.f32 #s(literal 2 binary32) %175 %135)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %201))))
(approx %107 (approx (- (+ (* (* -2 (- (* (* xi uy) (* %104 %52)) (* (* %104 %3) yi))) uy) %108) %106) %221))
(approx %234 (approx %242 %221))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 (*.f32 (*.f32 (*.f32 (*.f32 #s(literal 5174515/524288 binary32) xi) uy) #s(literal -2 binary32)) uy))))))
(approx %234 (approx %242 (approx (+ (+ (* (* -2 (- %236 %67)) uy) (* (* zi ux) maxCos)) xi) (*.f32 (fma.f32 maxCos ux (/.f32 %263 zi)) zi))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 %271)))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 %270 uy (fma.f32 (*.f32 uy %245) %156 %278)))))
(approx %25 (approx %63 (+.f32 (fma.f32 %284 %156 %278) (fma.f32 (*.f32 uy %218) #s(literal -2 binary32) xi))))
(approx %25 (approx %63 (+.f32 (+.f32 %110 %271) (*.f32 %293 uy))))
(approx %25 (approx %63 (-.f32 (+.f32 %110 (*.f32 %284 %156)) (*.f32 (*.f32 %218 #s(literal 2 binary32)) uy))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %263 %305 %78)))))
(approx %25 (approx %63 (approx %72 (fma.f32 %87 maxCos (/.f32 %311 zi)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 %201 zi)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 #s(literal 1 binary32) (/.f32 zi %263)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %220 %331 %136)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %337 uy %136)))))
(approx %25 (approx %63 (+.f32 xi (approx %71 %347))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 #s(literal -2 binary32) %345)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 %311 %359))))))
(approx %25 (fma.f32 %118 %78 %373))
(approx %25 (fma.f32 %370 %46 %373))
(approx (- (* (+ (* yi %93) (* xi (cos %92))) %104) %106) (fma.f32 %47 %117 %373))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %305 xi (fma.f32 %337 uy %78))))))
(approx %25 (approx %63 (approx %72 (fma.f32 %136 zi %393))))
(approx %25 (approx %63 (approx %72 (+.f32 (*.f32 %136 zi) %393))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 #s(literal 1 binary32) (/.f32 zi %403))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (-.f32 %392 (*.f32 %412 %305)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %311 (/.f32 #s(literal 1 binary32) %359) %78)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 (fma.f32 %135 zi %403) %305 %78)))))
(approx %25 (approx %37 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1/2 binary32) (*.f32 %434 xi)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 (fma.f32 %403 %444 (*.f32 %412 zi)) (*.f32 zi %444)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %347))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %459)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 (*.f32 zi xi) %359) (/.f32 (*.f32 (*.f32 zi uy) %220) %359)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 maxCos (fma.f32 ux zi %476))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 ux (fma.f32 maxCos zi (/.f32 %347 ux)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 zi (fma.f32 maxCos ux %458))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 uy %498)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 #s(literal 2 binary32) %158)))))
(approx %25 (approx %63 (approx %72 (*.f32 maxCos (fma.f32 ux zi (+.f32 %123 %476))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux %459)))))
(approx %25 (approx %63 (approx %72 (approx %182 (*.f32 xi (*.f32 zi (fma.f32 #s(literal -2 binary32) %537 %305)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) %552)))))))
(approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 %560 maxCos))))))))
%576
%576
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 maxCos (+.f32 ux (+.f32 (/.f32 xi %432) (/.f32 %347 %432)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 ux (+.f32 maxCos (+.f32 (/.f32 xi %41) (/.f32 %347 %41)))))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (approx %70 (*.f32 %535 %498))))))
(approx %25 (approx %63 (approx %72 (*.f32 xi (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -2 binary32) %536 (fma.f32 #s(literal 2 binary32) %552 %149)))))))
%621
%621
%631
%631
(approx %25 (approx %63 (approx (+ xi (+ %39 (+ (* (+ yi yi) %224) (* (* (* (* (* %3 %3) xi) uy) -2) uy)))) (*.f32 ux (fma.f32 #s(literal -2 binary32) (/.f32 %611 ux) (fma.f32 #s(literal 2 binary32) (/.f32 %158 ux) %130))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 %535 (fma.f32 #s(literal -2 binary32) (/.f32 %344 zi) (*.f32 #s(literal 2 binary32) (/.f32 %157 (*.f32 uy zi))))))))))))
%674
%674
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 xi (fma.f32 #s(literal -2 binary32) %537 (fma.f32 #s(literal 2 binary32) (/.f32 %158 (*.f32 xi zi)) %305)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (*.f32 #s(literal 2 binary32) %688))))))))))
(approx %25 (fma.f32 maxCos %119 (*.f32 xi %668)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (fma.f32 #s(literal 2 binary32) %688 (/.f32 xi %686))))))))))
(fma.f32 %370 %46 (*.f32 %372 (approx (+ (* %230 xi) (* %226 yi)) (fma.f32 (fma.f32 %292 yi %721) uy xi))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %720 uy %293))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (approx (+ (* -2 %64) (* -4/3 (* uy (* yi (pow %3 3))))) (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi (pow.f32 %156 #s(literal 3 binary32)))))))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 yi uy) (*.f32 %715 #s(literal -4/3 binary32)) %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 (*.f32 #s(literal -4/3 binary32) uy) %715) yi %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 %776)))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx (+ %515 (* (sin (+ %96 (* %3 1/2))) xi)) %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %156 yi (fma.f32 yi %156 %721)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (fma.f32 %284 %156 (fma.f32 (*.f32 uy uy) %720 xi)))))
(approx %25 (fma.f32 xi %776 %783))
(approx %25 (fma.f32 maxCos %119 (approx %62 %672)))
Outputs
%2 = (-.f32 #s(literal 1 binary32) ux)
%14 = (PI )
%17 = (* %14 (+ uy uy))
%27 = (PI.f32 )
%29 = (*.f32 %27 %27)
%45 = (* (* uy 2) %14)
%50 = (* (* (- 1 ux) maxCos) ux)
%53 = (sqrt (- 1 (* %50 %50)))
%64 = (*.f32 #s(literal 2 binary32) (*.f32 uy %27))
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (approx (+ (* (sin %17) yi) (* (cos %17) xi)) (fma.f32 (*.f32 (+.f32 yi yi) uy) %27 (fma.f32 (*.f32 uy uy) (fma.f32 (*.f32 %29 xi) #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 (*.f32 %29 %27) yi) uy) #s(literal -4/3 binary32))) xi)))))
(approx (+ (+ (* (* (cos %45) %53) xi) (* (* (sin %45) %53) yi)) (* %50 zi)) (fma.f32 xi (cos.f32 %64) (*.f32 yi (sin.f32 %64))))
Call 13
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%11 = (* (* %8 maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%25 = (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%41 = (*.f32 ux zi)
%42 = (*.f32 maxCos %41)
%46 = (*.f32 zi maxCos)
%47 = (*.f32 %46 ux)
%52 = (pow %3 2)
%62 = (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36)
%63 = (+ %28 %62)
%64 = (* xi %52)
%67 = (* yi %3)
%69 = (+ (* -2 (* uy %64)) (* 2 %67))
%70 = (* uy %69)
%71 = (+ %39 %70)
%72 = (+ xi %71)
%75 = (/ %70 zi)
%76 = (+ (/ xi zi) %75)
%77 = (+ (* maxCos ux) %76)
%78 = (*.f32 maxCos ux)
%87 = (*.f32 zi ux)
%92 = (* %3 (* 2 uy))
%93 = (sin %92)
%96 = (* (* -2 uy) %3)
%102 = (* (* (- ux 1) maxCos) ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%107 = (- (* (+ (* %93 yi) (* xi (cos %96))) %104) %106)
%108 = (* %104 xi)
%109 = (- %108 %106)
%110 = (fma.f32 %46 ux xi)
%113 = (+.f32 xi %42)
%117 = (-.f32 #s(literal 1 binary32) ux)
%118 = (*.f32 zi %117)
%119 = (*.f32 ux %118)
%120 = (*.f32 maxCos %119)
%122 = (approx %25 (approx %37 %120))
%123 = (/.f32 xi maxCos)
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi %123)))))
%130 = (fma.f32 maxCos zi (/.f32 xi ux))
%135 = (/.f32 xi zi)
%136 = (fma.f32 maxCos ux %135)
%137 = (*.f32 zi %136)
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
%149 = (/.f32 %42 xi)
%156 = (PI.f32 )
%157 = (*.f32 yi %156)
%158 = (*.f32 uy %157)
%159 = (fma.f32 #s(literal 2 binary32) %158 %42)
%174 = (approx %25 (approx %37 (approx %40 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %78 (*.f32 #s(literal -1 binary32) %135)))))))
%175 = (/.f32 %158 zi)
%182 = (* zi %77)
%199 = (*.f32 #s(literal 2 binary32) %157)
%201 = (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) %199))
%216 = (*.f32 %156 %156)
%217 = (*.f32 %216 xi)
%218 = (*.f32 %217 uy)
%220 = (*.f32 #s(literal -2 binary32) (-.f32 %218 %157))
%221 = (fma.f32 %220 uy %110)
%224 = (* %3 uy)
%226 = (sin (* %224 2))
%230 = (cos (* -2 %224))
%234 = (- (+ (* (* %104 %226) yi) (* (* %104 %230) xi)) %106)
%236 = (* (* %52 xi) uy)
%242 = (+ %109 (* (* -2 (- (* %236 %104) (* %104 %67))) uy))
%245 = (+.f32 yi yi)
%246 = (*.f32 %156 uy)
%263 = (fma.f32 %220 uy xi)
%270 = (*.f32 %218 #s(literal -2 binary32))
%271 = (*.f32 %270 uy)
%278 = (*.f32 %87 maxCos)
%284 = (*.f32 %245 uy)
%292 = (+.f32 %156 %156)
%293 = (*.f32 %292 yi)
%305 = (/.f32 #s(literal 1 binary32) zi)
%311 = (*.f32 zi %263)
%331 = (/.f32 uy zi)
%337 = (/.f32 %220 zi)
%343 = (pow.f32 %156 #s(literal 2 binary32))
%344 = (*.f32 xi %343)
%345 = (*.f32 uy %344)
%347 = (*.f32 uy (fma.f32 #s(literal -2 binary32) %345 %199))
%359 = (*.f32 zi zi)
%367 = (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos)
%370 = (*.f32 %117 ux)
%372 = (sqrt.f32 (fma.f32 (*.f32 (*.f32 %367 ux) maxCos) %370 #s(literal 1 binary32)))
%373 = (*.f32 xi %372)
%392 = (*.f32 %220 %331)
%393 = (*.f32 %392 zi)
%403 = (*.f32 %220 uy)
%412 = (neg.f32 xi)
%432 = (*.f32 maxCos zi)
%434 = (pow.f32 maxCos #s(literal 2 binary32))
%444 = (neg.f32 zi)
%458 = (/.f32 %347 zi)
%459 = (+.f32 %135 %458)
%476 = (/.f32 %347 maxCos)
%498 = (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal 2 binary32) (/.f32 %157 uy)))
%506 = (*.f32 ux %117)
%511 = (sqrt.f32 (fma.f32 %367 (*.f32 (*.f32 (*.f32 maxCos %117) ux) ux) #s(literal 1 binary32)))
%513 = (* %3 (+ uy uy))
%515 = (* (sin %513) yi)
%518 = (+ %515 (* (cos %513) xi))
%535 = (pow.f32 uy #s(literal 2 binary32))
%536 = (*.f32 %535 %343)
%537 = (/.f32 %536 zi)
%546 = (* 2 (* uy %3))
%551 = (+ (cos %546) (/ (* yi (sin %546)) xi))
%552 = (/.f32 %158 xi)
%560 = (+.f32 xi %347)
%576 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1 binary32) (/.f32 %560 ux))))))))
%610 = (*.f32 uy %156)
%611 = (*.f32 %535 %344)
%621 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (fma.f32 #s(literal -2 binary32) %611 %42)) yi))))))))
%631 = (approx %25 (approx %63 (approx %72 (*.f32 %535 (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %157 (*.f32 #s(literal -1 binary32) (/.f32 %113 uy))) uy)))))))
%668 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %434 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %117 #s(literal 2 binary32))))))
%672 = (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 %156 %668))))
%674 = (approx %25 (approx %63 %672))
%686 = (*.f32 yi zi)
%687 = (/.f32 %611 %686)
%688 = (/.f32 %610 zi)
%715 = (*.f32 %216 %156)
%720 = (fma.f32 %217 #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 %715 yi) uy) #s(literal -4/3 binary32)))
%721 = (*.f32 %720 uy)
%756 = (*.f32 %217 #s(literal -2 binary32))
%775 = (*.f32 #s(literal 2 binary32) %610)
%776 = (cos.f32 %775)
%783 = (*.f32 yi (sin.f32 %775))
%809 = (fma.f32 xi %776 %783)
%815 = (approx %25 (fma.f32 maxCos %41 %809))
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 %47)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 %87 maxCos xi)))
(approx %107 (approx %109 %110))
(approx %25 (approx %37 %113))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux %130))))
(approx %25 (approx %37 (approx %40 %137)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) %149)))))
(approx %25 (approx %63 (approx %72 %159)))
(approx %25 (approx %63 (+.f32 xi (approx %71 %159))))
%174
%174
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (fma.f32 #s(literal 2 binary32) %175 %78))))))
(approx %25 (approx %63 (approx %72 (approx %182 (fma.f32 #s(literal 2 binary32) %158 %137)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (fma.f32 #s(literal 2 binary32) %175 %135)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %201))))
(approx %107 (approx (- (+ (* (* -2 (- (* (* xi uy) (* %104 %52)) (* (* %104 %3) yi))) uy) %108) %106) %221))
(approx %234 (approx %242 %221))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 (*.f32 (*.f32 (*.f32 (*.f32 #s(literal 5174515/524288 binary32) xi) uy) #s(literal -2 binary32)) uy))))))
(approx %234 (approx %242 (approx (+ (+ (* (* -2 (- %236 %67)) uy) (* (* zi ux) maxCos)) xi) (*.f32 (fma.f32 maxCos ux (/.f32 %263 zi)) zi))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 %271)))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 %270 uy (fma.f32 (*.f32 uy %245) %156 %278)))))
(approx %25 (approx %63 (+.f32 (fma.f32 %284 %156 %278) (fma.f32 (*.f32 uy %218) #s(literal -2 binary32) xi))))
(approx %25 (approx %63 (+.f32 (+.f32 %110 %271) (*.f32 %293 uy))))
(approx %25 (approx %63 (-.f32 (+.f32 %110 (*.f32 %284 %156)) (*.f32 (*.f32 %218 #s(literal 2 binary32)) uy))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %263 %305 %78)))))
(approx %25 (approx %63 (approx %72 (fma.f32 %87 maxCos (/.f32 %311 zi)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 %201 zi)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 #s(literal 1 binary32) (/.f32 zi %263)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %220 %331 %136)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %337 uy %136)))))
(approx %25 (approx %63 (+.f32 xi (approx %71 %347))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 #s(literal -2 binary32) %345)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 %311 %359))))))
(approx %25 (fma.f32 %118 %78 %373))
(approx %25 (fma.f32 %370 %46 %373))
(approx (- (* (+ (* yi %93) (* xi (cos %92))) %104) %106) (fma.f32 %47 %117 %373))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %305 xi (fma.f32 %337 uy %78))))))
(approx %25 (approx %63 (approx %72 (fma.f32 %136 zi %393))))
(approx %25 (approx %63 (approx %72 (+.f32 (*.f32 %136 zi) %393))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 #s(literal 1 binary32) (/.f32 zi %403))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (-.f32 %392 (*.f32 %412 %305)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %311 (/.f32 #s(literal 1 binary32) %359) %78)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 (fma.f32 %135 zi %403) %305 %78)))))
(approx %25 (approx %37 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1/2 binary32) (*.f32 %434 xi)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 (fma.f32 %403 %444 (*.f32 %412 zi)) (*.f32 zi %444)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %347))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %459)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 (*.f32 zi xi) %359) (/.f32 (*.f32 (*.f32 zi uy) %220) %359)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 maxCos (fma.f32 ux zi %476))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 ux (fma.f32 maxCos zi (/.f32 %347 ux)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 zi (fma.f32 maxCos ux %458))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 uy %498)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 #s(literal 2 binary32) %158)))))
(approx %25 (approx %63 (approx %72 (*.f32 maxCos (fma.f32 ux zi (+.f32 %123 %476))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux %459)))))
(approx %25 (approx %63 (approx %72 (approx %182 (*.f32 xi (*.f32 zi (fma.f32 #s(literal -2 binary32) %537 %305)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) %552)))))))
(approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 %560 maxCos))))))))
%576
%576
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 maxCos (+.f32 ux (+.f32 (/.f32 xi %432) (/.f32 %347 %432)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 ux (+.f32 maxCos (+.f32 (/.f32 xi %41) (/.f32 %347 %41)))))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (approx %70 (*.f32 %535 %498))))))
(approx %25 (approx %63 (approx %72 (*.f32 xi (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -2 binary32) %536 (fma.f32 #s(literal 2 binary32) %552 %149)))))))
%621
%621
%631
%631
(approx %25 (approx %63 (approx (+ xi (+ %39 (+ (* (+ yi yi) %224) (* (* (* (* (* %3 %3) xi) uy) -2) uy)))) (*.f32 ux (fma.f32 #s(literal -2 binary32) (/.f32 %611 ux) (fma.f32 #s(literal 2 binary32) (/.f32 %158 ux) %130))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 %535 (fma.f32 #s(literal -2 binary32) (/.f32 %344 zi) (*.f32 #s(literal 2 binary32) (/.f32 %157 (*.f32 uy zi))))))))))))
%674
%674
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 xi (fma.f32 #s(literal -2 binary32) %537 (fma.f32 #s(literal 2 binary32) (/.f32 %158 (*.f32 xi zi)) %305)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (*.f32 #s(literal 2 binary32) %688))))))))))
(approx %25 (fma.f32 maxCos %119 (*.f32 xi %668)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (fma.f32 #s(literal 2 binary32) %688 (/.f32 xi %686))))))))))
(fma.f32 %370 %46 (*.f32 %372 (approx (+ (* %230 xi) (* %226 yi)) (fma.f32 (fma.f32 %292 yi %721) uy xi))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %720 uy %293))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (approx (+ (* -2 %64) (* -4/3 (* uy (* yi (pow %3 3))))) (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi (pow.f32 %156 #s(literal 3 binary32)))))))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 yi uy) (*.f32 %715 #s(literal -4/3 binary32)) %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 (*.f32 #s(literal -4/3 binary32) uy) %715) yi %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 %776)))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx (+ %515 (* (sin (+ %96 (* %3 1/2))) xi)) %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %156 yi (fma.f32 yi %156 %721)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (fma.f32 %284 %156 (fma.f32 (*.f32 uy uy) %720 xi)))))
(approx %25 %809)
(approx %25 (fma.f32 maxCos %119 (approx %62 %672)))
%815
%815
Outputs
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%30 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 maxCos (*.f32 ux zi) (fma.f32 xi (cos.f32 %30) (*.f32 yi (sin.f32 %30)))))
Call 14
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%10 = (* %8 maxCos)
%11 = (* %10 ux)
%14 = (sqrt (- 1 (* %11 %11)))
%15 = (* (cos %4) %14)
%19 = (* (sin %4) %14)
%25 = (+ (+ (* %15 xi) (* %19 yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%41 = (*.f32 ux zi)
%42 = (*.f32 maxCos %41)
%46 = (*.f32 zi maxCos)
%47 = (*.f32 %46 ux)
%52 = (pow %3 2)
%62 = (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36)
%63 = (+ %28 %62)
%64 = (* xi %52)
%67 = (* yi %3)
%69 = (+ (* -2 (* uy %64)) (* 2 %67))
%70 = (* uy %69)
%71 = (+ %39 %70)
%72 = (+ xi %71)
%75 = (/ %70 zi)
%76 = (+ (/ xi zi) %75)
%77 = (+ (* maxCos ux) %76)
%78 = (*.f32 maxCos ux)
%87 = (*.f32 zi ux)
%92 = (* %3 (* 2 uy))
%93 = (sin %92)
%96 = (* (* -2 uy) %3)
%102 = (* (* (- ux 1) maxCos) ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%107 = (- (* (+ (* %93 yi) (* xi (cos %96))) %104) %106)
%108 = (* %104 xi)
%109 = (- %108 %106)
%110 = (fma.f32 %46 ux xi)
%113 = (+.f32 xi %42)
%117 = (-.f32 #s(literal 1 binary32) ux)
%118 = (*.f32 zi %117)
%119 = (*.f32 ux %118)
%120 = (*.f32 maxCos %119)
%122 = (approx %25 (approx %37 %120))
%123 = (/.f32 xi maxCos)
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi %123)))))
%130 = (fma.f32 maxCos zi (/.f32 xi ux))
%135 = (/.f32 xi zi)
%136 = (fma.f32 maxCos ux %135)
%137 = (*.f32 zi %136)
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
%149 = (/.f32 %42 xi)
%156 = (PI.f32 )
%157 = (*.f32 yi %156)
%158 = (*.f32 uy %157)
%159 = (fma.f32 #s(literal 2 binary32) %158 %42)
%174 = (approx %25 (approx %37 (approx %40 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %78 (*.f32 #s(literal -1 binary32) %135)))))))
%175 = (/.f32 %158 zi)
%182 = (* zi %77)
%199 = (*.f32 #s(literal 2 binary32) %157)
%201 = (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) %199))
%216 = (*.f32 %156 %156)
%217 = (*.f32 %216 xi)
%218 = (*.f32 %217 uy)
%220 = (*.f32 #s(literal -2 binary32) (-.f32 %218 %157))
%221 = (fma.f32 %220 uy %110)
%224 = (* %3 uy)
%226 = (sin (* %224 2))
%230 = (cos (* -2 %224))
%234 = (- (+ (* (* %104 %226) yi) (* (* %104 %230) xi)) %106)
%236 = (* (* %52 xi) uy)
%242 = (+ %109 (* (* -2 (- (* %236 %104) (* %104 %67))) uy))
%245 = (+.f32 yi yi)
%246 = (*.f32 %156 uy)
%263 = (fma.f32 %220 uy xi)
%270 = (*.f32 %218 #s(literal -2 binary32))
%271 = (*.f32 %270 uy)
%278 = (*.f32 %87 maxCos)
%284 = (*.f32 %245 uy)
%292 = (+.f32 %156 %156)
%293 = (*.f32 %292 yi)
%305 = (/.f32 #s(literal 1 binary32) zi)
%311 = (*.f32 zi %263)
%331 = (/.f32 uy zi)
%337 = (/.f32 %220 zi)
%343 = (pow.f32 %156 #s(literal 2 binary32))
%344 = (*.f32 xi %343)
%345 = (*.f32 uy %344)
%347 = (*.f32 uy (fma.f32 #s(literal -2 binary32) %345 %199))
%359 = (*.f32 zi zi)
%367 = (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos)
%370 = (*.f32 %117 ux)
%372 = (sqrt.f32 (fma.f32 (*.f32 (*.f32 %367 ux) maxCos) %370 #s(literal 1 binary32)))
%373 = (*.f32 xi %372)
%392 = (*.f32 %220 %331)
%393 = (*.f32 %392 zi)
%403 = (*.f32 %220 uy)
%412 = (neg.f32 xi)
%432 = (*.f32 maxCos zi)
%434 = (pow.f32 maxCos #s(literal 2 binary32))
%444 = (neg.f32 zi)
%458 = (/.f32 %347 zi)
%459 = (+.f32 %135 %458)
%476 = (/.f32 %347 maxCos)
%498 = (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal 2 binary32) (/.f32 %157 uy)))
%506 = (*.f32 ux %117)
%511 = (sqrt.f32 (fma.f32 %367 (*.f32 (*.f32 (*.f32 maxCos %117) ux) ux) #s(literal 1 binary32)))
%513 = (* %3 (+ uy uy))
%515 = (* (sin %513) yi)
%518 = (+ %515 (* (cos %513) xi))
%535 = (pow.f32 uy #s(literal 2 binary32))
%536 = (*.f32 %535 %343)
%537 = (/.f32 %536 zi)
%546 = (* 2 (* uy %3))
%551 = (+ (cos %546) (/ (* yi (sin %546)) xi))
%552 = (/.f32 %158 xi)
%560 = (+.f32 xi %347)
%576 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1 binary32) (/.f32 %560 ux))))))))
%610 = (*.f32 uy %156)
%611 = (*.f32 %535 %344)
%621 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (fma.f32 #s(literal -2 binary32) %611 %42)) yi))))))))
%631 = (approx %25 (approx %63 (approx %72 (*.f32 %535 (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %157 (*.f32 #s(literal -1 binary32) (/.f32 %113 uy))) uy)))))))
%668 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %434 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %117 #s(literal 2 binary32))))))
%672 = (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 %156 %668))))
%674 = (approx %25 (approx %63 %672))
%686 = (*.f32 yi zi)
%687 = (/.f32 %611 %686)
%688 = (/.f32 %610 zi)
%715 = (*.f32 %216 %156)
%720 = (fma.f32 %217 #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 %715 yi) uy) #s(literal -4/3 binary32)))
%721 = (*.f32 %720 uy)
%756 = (*.f32 %217 #s(literal -2 binary32))
%775 = (*.f32 #s(literal 2 binary32) %610)
%776 = (cos.f32 %775)
%782 = (sin.f32 %775)
%783 = (*.f32 yi %782)
%809 = (fma.f32 xi %776 %783)
%815 = (approx %25 (fma.f32 maxCos %41 %809))
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 %47)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 %87 maxCos xi)))
(approx %107 (approx %109 %110))
(approx %25 (approx %37 %113))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux %130))))
(approx %25 (approx %37 (approx %40 %137)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) %149)))))
(approx %25 (approx %63 (approx %72 %159)))
(approx %25 (approx %63 (+.f32 xi (approx %71 %159))))
%174
%174
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (fma.f32 #s(literal 2 binary32) %175 %78))))))
(approx %25 (approx %63 (approx %72 (approx %182 (fma.f32 #s(literal 2 binary32) %158 %137)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (fma.f32 #s(literal 2 binary32) %175 %135)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %201))))
(approx %107 (approx (- (+ (* (* -2 (- (* (* xi uy) (* %104 %52)) (* (* %104 %3) yi))) uy) %108) %106) %221))
(approx %234 (approx %242 %221))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 (*.f32 (*.f32 (*.f32 (*.f32 #s(literal 5174515/524288 binary32) xi) uy) #s(literal -2 binary32)) uy))))))
(approx %234 (approx %242 (approx (+ (+ (* (* -2 (- %236 %67)) uy) (* (* zi ux) maxCos)) xi) (*.f32 (fma.f32 maxCos ux (/.f32 %263 zi)) zi))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 %271)))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 %270 uy (fma.f32 (*.f32 uy %245) %156 %278)))))
(approx %25 (approx %63 (+.f32 (fma.f32 %284 %156 %278) (fma.f32 (*.f32 uy %218) #s(literal -2 binary32) xi))))
(approx %25 (approx %63 (+.f32 (+.f32 %110 %271) (*.f32 %293 uy))))
(approx %25 (approx %63 (-.f32 (+.f32 %110 (*.f32 %284 %156)) (*.f32 (*.f32 %218 #s(literal 2 binary32)) uy))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %263 %305 %78)))))
(approx %25 (approx %63 (approx %72 (fma.f32 %87 maxCos (/.f32 %311 zi)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 %201 zi)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 #s(literal 1 binary32) (/.f32 zi %263)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %220 %331 %136)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %337 uy %136)))))
(approx %25 (approx %63 (+.f32 xi (approx %71 %347))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 #s(literal -2 binary32) %345)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 %311 %359))))))
(approx %25 (fma.f32 %118 %78 %373))
(approx %25 (fma.f32 %370 %46 %373))
(approx (- (* (+ (* yi %93) (* xi (cos %92))) %104) %106) (fma.f32 %47 %117 %373))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %305 xi (fma.f32 %337 uy %78))))))
(approx %25 (approx %63 (approx %72 (fma.f32 %136 zi %393))))
(approx %25 (approx %63 (approx %72 (+.f32 (*.f32 %136 zi) %393))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 #s(literal 1 binary32) (/.f32 zi %403))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (-.f32 %392 (*.f32 %412 %305)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %311 (/.f32 #s(literal 1 binary32) %359) %78)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 (fma.f32 %135 zi %403) %305 %78)))))
(approx %25 (approx %37 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1/2 binary32) (*.f32 %434 xi)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 (fma.f32 %403 %444 (*.f32 %412 zi)) (*.f32 zi %444)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %347))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %459)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 (*.f32 zi xi) %359) (/.f32 (*.f32 (*.f32 zi uy) %220) %359)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 maxCos (fma.f32 ux zi %476))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 ux (fma.f32 maxCos zi (/.f32 %347 ux)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 zi (fma.f32 maxCos ux %458))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 uy %498)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 #s(literal 2 binary32) %158)))))
(approx %25 (approx %63 (approx %72 (*.f32 maxCos (fma.f32 ux zi (+.f32 %123 %476))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux %459)))))
(approx %25 (approx %63 (approx %72 (approx %182 (*.f32 xi (*.f32 zi (fma.f32 #s(literal -2 binary32) %537 %305)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) %552)))))))
(approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 %560 maxCos))))))))
%576
%576
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 maxCos (+.f32 ux (+.f32 (/.f32 xi %432) (/.f32 %347 %432)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 ux (+.f32 maxCos (+.f32 (/.f32 xi %41) (/.f32 %347 %41)))))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (approx %70 (*.f32 %535 %498))))))
(approx %25 (approx %63 (approx %72 (*.f32 xi (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -2 binary32) %536 (fma.f32 #s(literal 2 binary32) %552 %149)))))))
%621
%621
%631
%631
(approx %25 (approx %63 (approx (+ xi (+ %39 (+ (* (+ yi yi) %224) (* (* (* (* (* %3 %3) xi) uy) -2) uy)))) (*.f32 ux (fma.f32 #s(literal -2 binary32) (/.f32 %611 ux) (fma.f32 #s(literal 2 binary32) (/.f32 %158 ux) %130))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 %535 (fma.f32 #s(literal -2 binary32) (/.f32 %344 zi) (*.f32 #s(literal 2 binary32) (/.f32 %157 (*.f32 uy zi))))))))))))
%674
%674
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 xi (fma.f32 #s(literal -2 binary32) %537 (fma.f32 #s(literal 2 binary32) (/.f32 %158 (*.f32 xi zi)) %305)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (*.f32 #s(literal 2 binary32) %688))))))))))
(approx %25 (fma.f32 maxCos %119 (*.f32 xi %668)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (fma.f32 #s(literal 2 binary32) %688 (/.f32 xi %686))))))))))
(fma.f32 %370 %46 (*.f32 %372 (approx (+ (* %230 xi) (* %226 yi)) (fma.f32 (fma.f32 %292 yi %721) uy xi))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %720 uy %293))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (approx (+ (* -2 %64) (* -4/3 (* uy (* yi (pow %3 3))))) (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi (pow.f32 %156 #s(literal 3 binary32)))))))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 yi uy) (*.f32 %715 #s(literal -4/3 binary32)) %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 (*.f32 #s(literal -4/3 binary32) uy) %715) yi %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 %776)))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx (+ %515 (* (sin (+ %96 (* %3 1/2))) xi)) %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %156 yi (fma.f32 yi %156 %721)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (fma.f32 %284 %156 (fma.f32 (*.f32 uy uy) %720 xi)))))
(approx %25 %809)
(approx %25 (fma.f32 maxCos %119 (approx %62 %672)))
%815
%815
(+.f32 (+.f32 (*.f32 (approx %15 %776) xi) (*.f32 (approx %19 %782) yi)) (*.f32 (*.f32 (approx %10 maxCos) ux) zi))
Outputs
%4 = (* (* uy 2) (PI ))
%10 = (* (- 1 ux) maxCos)
%11 = (* %10 ux)
%14 = (sqrt (- 1 (* %11 %11)))
%19 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(+.f32 (+.f32 (*.f32 (approx (* (cos %4) %14) (cos.f32 %19)) xi) (*.f32 (approx (* (sin %4) %14) (sin.f32 %19)) yi)) (*.f32 (*.f32 (approx %10 maxCos) ux) zi))
Call 15
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%10 = (* %8 maxCos)
%11 = (* %10 ux)
%14 = (sqrt (- 1 (* %11 %11)))
%15 = (* (cos %4) %14)
%19 = (* (sin %4) %14)
%25 = (+ (+ (* %15 xi) (* %19 yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%41 = (*.f32 ux zi)
%42 = (*.f32 maxCos %41)
%46 = (*.f32 zi maxCos)
%47 = (*.f32 %46 ux)
%52 = (pow %3 2)
%62 = (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36)
%63 = (+ %28 %62)
%64 = (* xi %52)
%67 = (* yi %3)
%69 = (+ (* -2 (* uy %64)) (* 2 %67))
%70 = (* uy %69)
%71 = (+ %39 %70)
%72 = (+ xi %71)
%75 = (/ %70 zi)
%76 = (+ (/ xi zi) %75)
%77 = (+ (* maxCos ux) %76)
%78 = (*.f32 maxCos ux)
%87 = (*.f32 zi ux)
%92 = (* %3 (* 2 uy))
%93 = (sin %92)
%96 = (* (* -2 uy) %3)
%101 = (* (- ux 1) maxCos)
%102 = (* %101 ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%107 = (- (* (+ (* %93 yi) (* xi (cos %96))) %104) %106)
%108 = (* %104 xi)
%109 = (- %108 %106)
%110 = (fma.f32 %46 ux xi)
%113 = (+.f32 xi %42)
%117 = (-.f32 #s(literal 1 binary32) ux)
%118 = (*.f32 zi %117)
%119 = (*.f32 ux %118)
%120 = (*.f32 maxCos %119)
%122 = (approx %25 (approx %37 %120))
%123 = (/.f32 xi maxCos)
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi %123)))))
%130 = (fma.f32 maxCos zi (/.f32 xi ux))
%135 = (/.f32 xi zi)
%136 = (fma.f32 maxCos ux %135)
%137 = (*.f32 zi %136)
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
%149 = (/.f32 %42 xi)
%156 = (PI.f32 )
%157 = (*.f32 yi %156)
%158 = (*.f32 uy %157)
%159 = (fma.f32 #s(literal 2 binary32) %158 %42)
%174 = (approx %25 (approx %37 (approx %40 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %78 (*.f32 #s(literal -1 binary32) %135)))))))
%175 = (/.f32 %158 zi)
%182 = (* zi %77)
%199 = (*.f32 #s(literal 2 binary32) %157)
%201 = (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) %199))
%216 = (*.f32 %156 %156)
%217 = (*.f32 %216 xi)
%218 = (*.f32 %217 uy)
%220 = (*.f32 #s(literal -2 binary32) (-.f32 %218 %157))
%221 = (fma.f32 %220 uy %110)
%224 = (* %3 uy)
%226 = (sin (* %224 2))
%230 = (cos (* -2 %224))
%234 = (- (+ (* (* %104 %226) yi) (* (* %104 %230) xi)) %106)
%236 = (* (* %52 xi) uy)
%242 = (+ %109 (* (* -2 (- (* %236 %104) (* %104 %67))) uy))
%245 = (+.f32 yi yi)
%246 = (*.f32 %156 uy)
%263 = (fma.f32 %220 uy xi)
%270 = (*.f32 %218 #s(literal -2 binary32))
%271 = (*.f32 %270 uy)
%278 = (*.f32 %87 maxCos)
%284 = (*.f32 %245 uy)
%292 = (+.f32 %156 %156)
%293 = (*.f32 %292 yi)
%305 = (/.f32 #s(literal 1 binary32) zi)
%311 = (*.f32 zi %263)
%331 = (/.f32 uy zi)
%337 = (/.f32 %220 zi)
%343 = (pow.f32 %156 #s(literal 2 binary32))
%344 = (*.f32 xi %343)
%345 = (*.f32 uy %344)
%347 = (*.f32 uy (fma.f32 #s(literal -2 binary32) %345 %199))
%359 = (*.f32 zi zi)
%367 = (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos)
%370 = (*.f32 %117 ux)
%372 = (sqrt.f32 (fma.f32 (*.f32 (*.f32 %367 ux) maxCos) %370 #s(literal 1 binary32)))
%373 = (*.f32 xi %372)
%392 = (*.f32 %220 %331)
%393 = (*.f32 %392 zi)
%403 = (*.f32 %220 uy)
%412 = (neg.f32 xi)
%432 = (*.f32 maxCos zi)
%434 = (pow.f32 maxCos #s(literal 2 binary32))
%444 = (neg.f32 zi)
%458 = (/.f32 %347 zi)
%459 = (+.f32 %135 %458)
%476 = (/.f32 %347 maxCos)
%498 = (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal 2 binary32) (/.f32 %157 uy)))
%506 = (*.f32 ux %117)
%511 = (sqrt.f32 (fma.f32 %367 (*.f32 (*.f32 (*.f32 maxCos %117) ux) ux) #s(literal 1 binary32)))
%513 = (* %3 (+ uy uy))
%515 = (* (sin %513) yi)
%518 = (+ %515 (* (cos %513) xi))
%535 = (pow.f32 uy #s(literal 2 binary32))
%536 = (*.f32 %535 %343)
%537 = (/.f32 %536 zi)
%546 = (* 2 (* uy %3))
%551 = (+ (cos %546) (/ (* yi (sin %546)) xi))
%552 = (/.f32 %158 xi)
%560 = (+.f32 xi %347)
%576 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1 binary32) (/.f32 %560 ux))))))))
%610 = (*.f32 uy %156)
%611 = (*.f32 %535 %344)
%621 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (fma.f32 #s(literal -2 binary32) %611 %42)) yi))))))))
%631 = (approx %25 (approx %63 (approx %72 (*.f32 %535 (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %157 (*.f32 #s(literal -1 binary32) (/.f32 %113 uy))) uy)))))))
%668 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %434 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %117 #s(literal 2 binary32))))))
%672 = (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 %156 %668))))
%674 = (approx %25 (approx %63 %672))
%686 = (*.f32 yi zi)
%687 = (/.f32 %611 %686)
%688 = (/.f32 %610 zi)
%715 = (*.f32 %216 %156)
%720 = (fma.f32 %217 #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 %715 yi) uy) #s(literal -4/3 binary32)))
%721 = (*.f32 %720 uy)
%756 = (*.f32 %217 #s(literal -2 binary32))
%775 = (*.f32 #s(literal 2 binary32) %610)
%776 = (cos.f32 %775)
%782 = (sin.f32 %775)
%783 = (*.f32 yi %782)
%792 = (+ %515 (* (sin (+ %96 (* %3 1/2))) xi))
%809 = (fma.f32 xi %776 %783)
%815 = (approx %25 (fma.f32 maxCos %41 %809))
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 %47)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 %87 maxCos xi)))
(approx %107 (approx %109 %110))
(approx %25 (approx %37 %113))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux %130))))
(approx %25 (approx %37 (approx %40 %137)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) %149)))))
(approx %25 (approx %63 (approx %72 %159)))
(approx %25 (approx %63 (+.f32 xi (approx %71 %159))))
%174
%174
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (fma.f32 #s(literal 2 binary32) %175 %78))))))
(approx %25 (approx %63 (approx %72 (approx %182 (fma.f32 #s(literal 2 binary32) %158 %137)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (fma.f32 #s(literal 2 binary32) %175 %135)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %201))))
(approx %107 (approx (- (+ (* (* -2 (- (* (* xi uy) (* %104 %52)) (* (* %104 %3) yi))) uy) %108) %106) %221))
(approx %234 (approx %242 %221))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 (*.f32 (*.f32 (*.f32 (*.f32 #s(literal 5174515/524288 binary32) xi) uy) #s(literal -2 binary32)) uy))))))
(approx %234 (approx %242 (approx (+ (+ (* (* -2 (- %236 %67)) uy) (* (* zi ux) maxCos)) xi) (*.f32 (fma.f32 maxCos ux (/.f32 %263 zi)) zi))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 %271)))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 %270 uy (fma.f32 (*.f32 uy %245) %156 %278)))))
(approx %25 (approx %63 (+.f32 (fma.f32 %284 %156 %278) (fma.f32 (*.f32 uy %218) #s(literal -2 binary32) xi))))
(approx %25 (approx %63 (+.f32 (+.f32 %110 %271) (*.f32 %293 uy))))
(approx %25 (approx %63 (-.f32 (+.f32 %110 (*.f32 %284 %156)) (*.f32 (*.f32 %218 #s(literal 2 binary32)) uy))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %263 %305 %78)))))
(approx %25 (approx %63 (approx %72 (fma.f32 %87 maxCos (/.f32 %311 zi)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 %201 zi)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 #s(literal 1 binary32) (/.f32 zi %263)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %220 %331 %136)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %337 uy %136)))))
(approx %25 (approx %63 (+.f32 xi (approx %71 %347))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 #s(literal -2 binary32) %345)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 %311 %359))))))
(approx %25 (fma.f32 %118 %78 %373))
(approx %25 (fma.f32 %370 %46 %373))
(approx (- (* (+ (* yi %93) (* xi (cos %92))) %104) %106) (fma.f32 %47 %117 %373))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %305 xi (fma.f32 %337 uy %78))))))
(approx %25 (approx %63 (approx %72 (fma.f32 %136 zi %393))))
(approx %25 (approx %63 (approx %72 (+.f32 (*.f32 %136 zi) %393))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 #s(literal 1 binary32) (/.f32 zi %403))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (-.f32 %392 (*.f32 %412 %305)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %311 (/.f32 #s(literal 1 binary32) %359) %78)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 (fma.f32 %135 zi %403) %305 %78)))))
(approx %25 (approx %37 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1/2 binary32) (*.f32 %434 xi)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 (fma.f32 %403 %444 (*.f32 %412 zi)) (*.f32 zi %444)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %347))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %459)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 (*.f32 zi xi) %359) (/.f32 (*.f32 (*.f32 zi uy) %220) %359)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 maxCos (fma.f32 ux zi %476))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 ux (fma.f32 maxCos zi (/.f32 %347 ux)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 zi (fma.f32 maxCos ux %458))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 uy %498)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 #s(literal 2 binary32) %158)))))
(approx %25 (approx %63 (approx %72 (*.f32 maxCos (fma.f32 ux zi (+.f32 %123 %476))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux %459)))))
(approx %25 (approx %63 (approx %72 (approx %182 (*.f32 xi (*.f32 zi (fma.f32 #s(literal -2 binary32) %537 %305)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) %552)))))))
(approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 %560 maxCos))))))))
%576
%576
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 maxCos (+.f32 ux (+.f32 (/.f32 xi %432) (/.f32 %347 %432)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 ux (+.f32 maxCos (+.f32 (/.f32 xi %41) (/.f32 %347 %41)))))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (approx %70 (*.f32 %535 %498))))))
(approx %25 (approx %63 (approx %72 (*.f32 xi (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -2 binary32) %536 (fma.f32 #s(literal 2 binary32) %552 %149)))))))
%621
%621
%631
%631
(approx %25 (approx %63 (approx (+ xi (+ %39 (+ (* (+ yi yi) %224) (* (* (* (* (* %3 %3) xi) uy) -2) uy)))) (*.f32 ux (fma.f32 #s(literal -2 binary32) (/.f32 %611 ux) (fma.f32 #s(literal 2 binary32) (/.f32 %158 ux) %130))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 %535 (fma.f32 #s(literal -2 binary32) (/.f32 %344 zi) (*.f32 #s(literal 2 binary32) (/.f32 %157 (*.f32 uy zi))))))))))))
%674
%674
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 xi (fma.f32 #s(literal -2 binary32) %537 (fma.f32 #s(literal 2 binary32) (/.f32 %158 (*.f32 xi zi)) %305)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (*.f32 #s(literal 2 binary32) %688))))))))))
(approx %25 (fma.f32 maxCos %119 (*.f32 xi %668)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (fma.f32 #s(literal 2 binary32) %688 (/.f32 xi %686))))))))))
(fma.f32 %370 %46 (*.f32 %372 (approx (+ (* %230 xi) (* %226 yi)) (fma.f32 (fma.f32 %292 yi %721) uy xi))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %720 uy %293))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (approx (+ (* -2 %64) (* -4/3 (* uy (* yi (pow %3 3))))) (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi (pow.f32 %156 #s(literal 3 binary32)))))))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 yi uy) (*.f32 %715 #s(literal -4/3 binary32)) %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 (*.f32 #s(literal -4/3 binary32) uy) %715) yi %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 %776)))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx %792 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %156 yi (fma.f32 yi %156 %721)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (fma.f32 %284 %156 (fma.f32 (*.f32 uy uy) %720 xi)))))
(approx %25 %809)
(approx %25 (fma.f32 maxCos %119 (approx %62 %672)))
%815
%815
(+.f32 (+.f32 (*.f32 (approx %15 %776) xi) (*.f32 (approx %19 %782) yi)) (*.f32 (*.f32 (approx %10 maxCos) ux) zi))
(approx (+ (* (* ux %8) (* maxCos zi)) (* (sqrt (+ (* %101 (* (* (* maxCos %8) ux) ux)) 1)) %792)) (fma.f32 maxCos %41 (fma.f32 xi (sin.f32 (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal 1/2 binary32) %156))) %783)))
Outputs
%2 = (- 1 ux)
%16 = (PI )
%37 = (PI.f32 )
%38 = (*.f32 uy %37)
(approx (+ (* (* ux %2) (* maxCos zi)) (* (sqrt (+ (* (* (- ux 1) maxCos) (* (* (* maxCos %2) ux) ux)) 1)) (+ (* (sin (* %16 (+ uy uy))) yi) (* (sin (+ (* (* -2 uy) %16) (* %16 1/2))) xi)))) (fma.f32 maxCos (*.f32 ux zi) (fma.f32 xi (sin.f32 (fma.f32 #s(literal -2 binary32) %38 (*.f32 #s(literal 1/2 binary32) %37))) (*.f32 yi (sin.f32 (*.f32 #s(literal 2 binary32) %38))))))
Call 16
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%10 = (* %8 maxCos)
%11 = (* %10 ux)
%14 = (sqrt (- 1 (* %11 %11)))
%15 = (* (cos %4) %14)
%19 = (* (sin %4) %14)
%25 = (+ (+ (* %15 xi) (* %19 yi)) (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%41 = (*.f32 ux zi)
%42 = (*.f32 maxCos %41)
%46 = (*.f32 zi maxCos)
%47 = (*.f32 %46 ux)
%52 = (pow %3 2)
%62 = (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36)
%63 = (+ %28 %62)
%64 = (* xi %52)
%67 = (* yi %3)
%69 = (+ (* -2 (* uy %64)) (* 2 %67))
%70 = (* uy %69)
%71 = (+ %39 %70)
%72 = (+ xi %71)
%75 = (/ %70 zi)
%76 = (+ (/ xi zi) %75)
%77 = (+ (* maxCos ux) %76)
%78 = (*.f32 maxCos ux)
%87 = (*.f32 zi ux)
%92 = (* %3 (* 2 uy))
%93 = (sin %92)
%96 = (* (* -2 uy) %3)
%101 = (* (- ux 1) maxCos)
%102 = (* %101 ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%107 = (- (* (+ (* %93 yi) (* xi (cos %96))) %104) %106)
%108 = (* %104 xi)
%109 = (- %108 %106)
%110 = (fma.f32 %46 ux xi)
%113 = (+.f32 xi %42)
%117 = (-.f32 #s(literal 1 binary32) ux)
%118 = (*.f32 zi %117)
%119 = (*.f32 ux %118)
%120 = (*.f32 maxCos %119)
%122 = (approx %25 (approx %37 %120))
%123 = (/.f32 xi maxCos)
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi %123)))))
%130 = (fma.f32 maxCos zi (/.f32 xi ux))
%135 = (/.f32 xi zi)
%136 = (fma.f32 maxCos ux %135)
%137 = (*.f32 zi %136)
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
%149 = (/.f32 %42 xi)
%156 = (PI.f32 )
%157 = (*.f32 yi %156)
%158 = (*.f32 uy %157)
%159 = (fma.f32 #s(literal 2 binary32) %158 %42)
%174 = (approx %25 (approx %37 (approx %40 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %78 (*.f32 #s(literal -1 binary32) %135)))))))
%175 = (/.f32 %158 zi)
%182 = (* zi %77)
%199 = (*.f32 #s(literal 2 binary32) %157)
%201 = (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) %199))
%216 = (*.f32 %156 %156)
%217 = (*.f32 %216 xi)
%218 = (*.f32 %217 uy)
%220 = (*.f32 #s(literal -2 binary32) (-.f32 %218 %157))
%221 = (fma.f32 %220 uy %110)
%224 = (* %3 uy)
%226 = (sin (* %224 2))
%230 = (cos (* -2 %224))
%234 = (- (+ (* (* %104 %226) yi) (* (* %104 %230) xi)) %106)
%236 = (* (* %52 xi) uy)
%242 = (+ %109 (* (* -2 (- (* %236 %104) (* %104 %67))) uy))
%245 = (+.f32 yi yi)
%246 = (*.f32 %156 uy)
%263 = (fma.f32 %220 uy xi)
%270 = (*.f32 %218 #s(literal -2 binary32))
%271 = (*.f32 %270 uy)
%278 = (*.f32 %87 maxCos)
%284 = (*.f32 %245 uy)
%292 = (+.f32 %156 %156)
%293 = (*.f32 %292 yi)
%305 = (/.f32 #s(literal 1 binary32) zi)
%311 = (*.f32 zi %263)
%331 = (/.f32 uy zi)
%337 = (/.f32 %220 zi)
%343 = (pow.f32 %156 #s(literal 2 binary32))
%344 = (*.f32 xi %343)
%345 = (*.f32 uy %344)
%347 = (*.f32 uy (fma.f32 #s(literal -2 binary32) %345 %199))
%359 = (*.f32 zi zi)
%367 = (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos)
%370 = (*.f32 %117 ux)
%372 = (sqrt.f32 (fma.f32 (*.f32 (*.f32 %367 ux) maxCos) %370 #s(literal 1 binary32)))
%373 = (*.f32 xi %372)
%392 = (*.f32 %220 %331)
%393 = (*.f32 %392 zi)
%403 = (*.f32 %220 uy)
%412 = (neg.f32 xi)
%432 = (*.f32 maxCos zi)
%434 = (pow.f32 maxCos #s(literal 2 binary32))
%444 = (neg.f32 zi)
%458 = (/.f32 %347 zi)
%459 = (+.f32 %135 %458)
%476 = (/.f32 %347 maxCos)
%498 = (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal 2 binary32) (/.f32 %157 uy)))
%506 = (*.f32 ux %117)
%511 = (sqrt.f32 (fma.f32 %367 (*.f32 (*.f32 (*.f32 maxCos %117) ux) ux) #s(literal 1 binary32)))
%513 = (* %3 (+ uy uy))
%515 = (* (sin %513) yi)
%518 = (+ %515 (* (cos %513) xi))
%535 = (pow.f32 uy #s(literal 2 binary32))
%536 = (*.f32 %535 %343)
%537 = (/.f32 %536 zi)
%546 = (* 2 (* uy %3))
%551 = (+ (cos %546) (/ (* yi (sin %546)) xi))
%552 = (/.f32 %158 xi)
%560 = (+.f32 xi %347)
%576 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1 binary32) (/.f32 %560 ux))))))))
%610 = (*.f32 uy %156)
%611 = (*.f32 %535 %344)
%621 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (fma.f32 #s(literal -2 binary32) %611 %42)) yi))))))))
%631 = (approx %25 (approx %63 (approx %72 (*.f32 %535 (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %157 (*.f32 #s(literal -1 binary32) (/.f32 %113 uy))) uy)))))))
%668 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %434 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %117 #s(literal 2 binary32))))))
%672 = (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 %156 %668))))
%674 = (approx %25 (approx %63 %672))
%686 = (*.f32 yi zi)
%687 = (/.f32 %611 %686)
%688 = (/.f32 %610 zi)
%715 = (*.f32 %216 %156)
%720 = (fma.f32 %217 #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 %715 yi) uy) #s(literal -4/3 binary32)))
%721 = (*.f32 %720 uy)
%756 = (*.f32 %217 #s(literal -2 binary32))
%775 = (*.f32 #s(literal 2 binary32) %610)
%776 = (cos.f32 %775)
%782 = (sin.f32 %775)
%783 = (*.f32 yi %782)
%792 = (+ %515 (* (sin (+ %96 (* %3 1/2))) xi))
%809 = (fma.f32 xi %776 %783)
%815 = (approx %25 (fma.f32 maxCos %41 %809))
%844 = (approx %25 (fma.f32 maxCos %119 %809))
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 %47)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 %87 maxCos xi)))
(approx %107 (approx %109 %110))
(approx %25 (approx %37 %113))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux %130))))
(approx %25 (approx %37 (approx %40 %137)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) %149)))))
(approx %25 (approx %63 (approx %72 %159)))
(approx %25 (approx %63 (+.f32 xi (approx %71 %159))))
%174
%174
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (fma.f32 #s(literal 2 binary32) %175 %78))))))
(approx %25 (approx %63 (approx %72 (approx %182 (fma.f32 #s(literal 2 binary32) %158 %137)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (fma.f32 #s(literal 2 binary32) %175 %135)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %201))))
(approx %107 (approx (- (+ (* (* -2 (- (* (* xi uy) (* %104 %52)) (* (* %104 %3) yi))) uy) %108) %106) %221))
(approx %234 (approx %242 %221))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 (*.f32 (*.f32 (*.f32 (*.f32 #s(literal 5174515/524288 binary32) xi) uy) #s(literal -2 binary32)) uy))))))
(approx %234 (approx %242 (approx (+ (+ (* (* -2 (- %236 %67)) uy) (* (* zi ux) maxCos)) xi) (*.f32 (fma.f32 maxCos ux (/.f32 %263 zi)) zi))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 %271)))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 %270 uy (fma.f32 (*.f32 uy %245) %156 %278)))))
(approx %25 (approx %63 (+.f32 (fma.f32 %284 %156 %278) (fma.f32 (*.f32 uy %218) #s(literal -2 binary32) xi))))
(approx %25 (approx %63 (+.f32 (+.f32 %110 %271) (*.f32 %293 uy))))
(approx %25 (approx %63 (-.f32 (+.f32 %110 (*.f32 %284 %156)) (*.f32 (*.f32 %218 #s(literal 2 binary32)) uy))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %263 %305 %78)))))
(approx %25 (approx %63 (approx %72 (fma.f32 %87 maxCos (/.f32 %311 zi)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 %201 zi)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 #s(literal 1 binary32) (/.f32 zi %263)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %220 %331 %136)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %337 uy %136)))))
(approx %25 (approx %63 (+.f32 xi (approx %71 %347))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 #s(literal -2 binary32) %345)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 %311 %359))))))
(approx %25 (fma.f32 %118 %78 %373))
(approx %25 (fma.f32 %370 %46 %373))
(approx (- (* (+ (* yi %93) (* xi (cos %92))) %104) %106) (fma.f32 %47 %117 %373))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %305 xi (fma.f32 %337 uy %78))))))
(approx %25 (approx %63 (approx %72 (fma.f32 %136 zi %393))))
(approx %25 (approx %63 (approx %72 (+.f32 (*.f32 %136 zi) %393))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 #s(literal 1 binary32) (/.f32 zi %403))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (-.f32 %392 (*.f32 %412 %305)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %311 (/.f32 #s(literal 1 binary32) %359) %78)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 (fma.f32 %135 zi %403) %305 %78)))))
(approx %25 (approx %37 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1/2 binary32) (*.f32 %434 xi)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 (fma.f32 %403 %444 (*.f32 %412 zi)) (*.f32 zi %444)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %347))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %459)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 (*.f32 zi xi) %359) (/.f32 (*.f32 (*.f32 zi uy) %220) %359)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 maxCos (fma.f32 ux zi %476))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 ux (fma.f32 maxCos zi (/.f32 %347 ux)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 zi (fma.f32 maxCos ux %458))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 uy %498)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 #s(literal 2 binary32) %158)))))
(approx %25 (approx %63 (approx %72 (*.f32 maxCos (fma.f32 ux zi (+.f32 %123 %476))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux %459)))))
(approx %25 (approx %63 (approx %72 (approx %182 (*.f32 xi (*.f32 zi (fma.f32 #s(literal -2 binary32) %537 %305)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) %552)))))))
(approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 %560 maxCos))))))))
%576
%576
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 maxCos (+.f32 ux (+.f32 (/.f32 xi %432) (/.f32 %347 %432)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 ux (+.f32 maxCos (+.f32 (/.f32 xi %41) (/.f32 %347 %41)))))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (approx %70 (*.f32 %535 %498))))))
(approx %25 (approx %63 (approx %72 (*.f32 xi (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -2 binary32) %536 (fma.f32 #s(literal 2 binary32) %552 %149)))))))
%621
%621
%631
%631
(approx %25 (approx %63 (approx (+ xi (+ %39 (+ (* (+ yi yi) %224) (* (* (* (* (* %3 %3) xi) uy) -2) uy)))) (*.f32 ux (fma.f32 #s(literal -2 binary32) (/.f32 %611 ux) (fma.f32 #s(literal 2 binary32) (/.f32 %158 ux) %130))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 %535 (fma.f32 #s(literal -2 binary32) (/.f32 %344 zi) (*.f32 #s(literal 2 binary32) (/.f32 %157 (*.f32 uy zi))))))))))))
%674
%674
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 xi (fma.f32 #s(literal -2 binary32) %537 (fma.f32 #s(literal 2 binary32) (/.f32 %158 (*.f32 xi zi)) %305)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (*.f32 #s(literal 2 binary32) %688))))))))))
(approx %25 (fma.f32 maxCos %119 (*.f32 xi %668)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (fma.f32 #s(literal 2 binary32) %688 (/.f32 xi %686))))))))))
(fma.f32 %370 %46 (*.f32 %372 (approx (+ (* %230 xi) (* %226 yi)) (fma.f32 (fma.f32 %292 yi %721) uy xi))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %720 uy %293))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (approx (+ (* -2 %64) (* -4/3 (* uy (* yi (pow %3 3))))) (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi (pow.f32 %156 #s(literal 3 binary32)))))))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 yi uy) (*.f32 %715 #s(literal -4/3 binary32)) %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 (*.f32 #s(literal -4/3 binary32) uy) %715) yi %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 %776)))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx %792 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %156 yi (fma.f32 yi %156 %721)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (fma.f32 %284 %156 (fma.f32 (*.f32 uy uy) %720 xi)))))
(approx %25 %809)
(approx %25 (fma.f32 maxCos %119 (approx %62 %672)))
%815
%815
(+.f32 (+.f32 (*.f32 (approx %15 %776) xi) (*.f32 (approx %19 %782) yi)) (*.f32 (*.f32 (approx %10 maxCos) ux) zi))
(approx (+ (* (* ux %8) (* maxCos zi)) (* (sqrt (+ (* %101 (* (* (* maxCos %8) ux) ux)) 1)) %792)) (fma.f32 maxCos %41 (fma.f32 xi (sin.f32 (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal 1/2 binary32) %156))) %783)))
%844
%844
%844
Outputs
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%33 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(approx (+ (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (* %11 zi)) (fma.f32 maxCos (*.f32 ux (*.f32 zi (-.f32 #s(literal 1 binary32) ux))) (fma.f32 xi (cos.f32 %33) (*.f32 yi (sin.f32 %33)))))
Call 17
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%10 = (* %8 maxCos)
%11 = (* %10 ux)
%14 = (sqrt (- 1 (* %11 %11)))
%15 = (* (cos %4) %14)
%17 = (* %15 xi)
%19 = (* (sin %4) %14)
%22 = (+ %17 (* %19 yi))
%25 = (+ %22 (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%41 = (*.f32 ux zi)
%42 = (*.f32 maxCos %41)
%46 = (*.f32 zi maxCos)
%47 = (*.f32 %46 ux)
%52 = (pow %3 2)
%62 = (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36)
%63 = (+ %28 %62)
%64 = (* xi %52)
%67 = (* yi %3)
%69 = (+ (* -2 (* uy %64)) (* 2 %67))
%70 = (* uy %69)
%71 = (+ %39 %70)
%72 = (+ xi %71)
%75 = (/ %70 zi)
%76 = (+ (/ xi zi) %75)
%77 = (+ (* maxCos ux) %76)
%78 = (*.f32 maxCos ux)
%87 = (*.f32 zi ux)
%92 = (* %3 (* 2 uy))
%93 = (sin %92)
%96 = (* (* -2 uy) %3)
%101 = (* (- ux 1) maxCos)
%102 = (* %101 ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%107 = (- (* (+ (* %93 yi) (* xi (cos %96))) %104) %106)
%108 = (* %104 xi)
%109 = (- %108 %106)
%110 = (fma.f32 %46 ux xi)
%113 = (+.f32 xi %42)
%117 = (-.f32 #s(literal 1 binary32) ux)
%118 = (*.f32 zi %117)
%119 = (*.f32 ux %118)
%120 = (*.f32 maxCos %119)
%122 = (approx %25 (approx %37 %120))
%123 = (/.f32 xi maxCos)
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi %123)))))
%130 = (fma.f32 maxCos zi (/.f32 xi ux))
%135 = (/.f32 xi zi)
%136 = (fma.f32 maxCos ux %135)
%137 = (*.f32 zi %136)
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
%149 = (/.f32 %42 xi)
%156 = (PI.f32 )
%157 = (*.f32 yi %156)
%158 = (*.f32 uy %157)
%159 = (fma.f32 #s(literal 2 binary32) %158 %42)
%174 = (approx %25 (approx %37 (approx %40 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %78 (*.f32 #s(literal -1 binary32) %135)))))))
%175 = (/.f32 %158 zi)
%182 = (* zi %77)
%199 = (*.f32 #s(literal 2 binary32) %157)
%201 = (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) %199))
%216 = (*.f32 %156 %156)
%217 = (*.f32 %216 xi)
%218 = (*.f32 %217 uy)
%220 = (*.f32 #s(literal -2 binary32) (-.f32 %218 %157))
%221 = (fma.f32 %220 uy %110)
%224 = (* %3 uy)
%226 = (sin (* %224 2))
%230 = (cos (* -2 %224))
%234 = (- (+ (* (* %104 %226) yi) (* (* %104 %230) xi)) %106)
%236 = (* (* %52 xi) uy)
%242 = (+ %109 (* (* -2 (- (* %236 %104) (* %104 %67))) uy))
%245 = (+.f32 yi yi)
%246 = (*.f32 %156 uy)
%263 = (fma.f32 %220 uy xi)
%270 = (*.f32 %218 #s(literal -2 binary32))
%271 = (*.f32 %270 uy)
%277 = (*.f32 uy %245)
%278 = (*.f32 %87 maxCos)
%284 = (*.f32 %245 uy)
%292 = (+.f32 %156 %156)
%293 = (*.f32 %292 yi)
%305 = (/.f32 #s(literal 1 binary32) zi)
%311 = (*.f32 zi %263)
%331 = (/.f32 uy zi)
%337 = (/.f32 %220 zi)
%343 = (pow.f32 %156 #s(literal 2 binary32))
%344 = (*.f32 xi %343)
%345 = (*.f32 uy %344)
%347 = (*.f32 uy (fma.f32 #s(literal -2 binary32) %345 %199))
%359 = (*.f32 zi zi)
%367 = (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos)
%370 = (*.f32 %117 ux)
%372 = (sqrt.f32 (fma.f32 (*.f32 (*.f32 %367 ux) maxCos) %370 #s(literal 1 binary32)))
%373 = (*.f32 xi %372)
%383 = (- (* (+ (* yi %93) (* xi (cos %92))) %104) %106)
%392 = (*.f32 %220 %331)
%393 = (*.f32 %392 zi)
%403 = (*.f32 %220 uy)
%412 = (neg.f32 xi)
%432 = (*.f32 maxCos zi)
%434 = (pow.f32 maxCos #s(literal 2 binary32))
%444 = (neg.f32 zi)
%458 = (/.f32 %347 zi)
%459 = (+.f32 %135 %458)
%476 = (/.f32 %347 maxCos)
%498 = (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal 2 binary32) (/.f32 %157 uy)))
%506 = (*.f32 ux %117)
%511 = (sqrt.f32 (fma.f32 %367 (*.f32 (*.f32 (*.f32 maxCos %117) ux) ux) #s(literal 1 binary32)))
%513 = (* %3 (+ uy uy))
%515 = (* (sin %513) yi)
%518 = (+ %515 (* (cos %513) xi))
%535 = (pow.f32 uy #s(literal 2 binary32))
%536 = (*.f32 %535 %343)
%537 = (/.f32 %536 zi)
%546 = (* 2 (* uy %3))
%551 = (+ (cos %546) (/ (* yi (sin %546)) xi))
%552 = (/.f32 %158 xi)
%560 = (+.f32 xi %347)
%576 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1 binary32) (/.f32 %560 ux))))))))
%610 = (*.f32 uy %156)
%611 = (*.f32 %535 %344)
%621 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (fma.f32 #s(literal -2 binary32) %611 %42)) yi))))))))
%631 = (approx %25 (approx %63 (approx %72 (*.f32 %535 (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %157 (*.f32 #s(literal -1 binary32) (/.f32 %113 uy))) uy)))))))
%668 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %434 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %117 #s(literal 2 binary32))))))
%672 = (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 %156 %668))))
%674 = (approx %25 (approx %63 %672))
%686 = (*.f32 yi zi)
%687 = (/.f32 %611 %686)
%688 = (/.f32 %610 zi)
%715 = (*.f32 %216 %156)
%720 = (fma.f32 %217 #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 %715 yi) uy) #s(literal -4/3 binary32)))
%721 = (*.f32 %720 uy)
%745 = (*.f32 #s(literal -4/3 binary32) (*.f32 uy (*.f32 yi (pow.f32 %156 #s(literal 3 binary32)))))
%756 = (*.f32 %217 #s(literal -2 binary32))
%775 = (*.f32 #s(literal 2 binary32) %610)
%776 = (cos.f32 %775)
%782 = (sin.f32 %775)
%783 = (*.f32 yi %782)
%792 = (+ %515 (* (sin (+ %96 (* %3 1/2))) xi))
%809 = (fma.f32 xi %776 %783)
%815 = (approx %25 (fma.f32 maxCos %41 %809))
%819 = (*.f32 (approx %19 %782) yi)
%822 = (*.f32 (approx %10 maxCos) ux)
%823 = (*.f32 %822 zi)
%828 = (* maxCos %8)
%829 = (* %828 ux)
%844 = (approx %25 (fma.f32 maxCos %119 %809))
%858 = (approx %828 maxCos)
%862 = (*.f32 %156 (+.f32 uy uy))
%863 = (sin.f32 %862)
%866 = (*.f32 (*.f32 %858 ux) ux)
%871 = (cos.f32 %862)
%880 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %822 %822)))
%909 = (approx %8 #s(literal 1 binary32))
%924 = (acos %829)
%936 = (acos.f32 (*.f32 maxCos %506))
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 %47)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 %87 maxCos xi)))
(approx %107 (approx %109 %110))
(approx %25 (approx %37 %113))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux %130))))
(approx %25 (approx %37 (approx %40 %137)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) %149)))))
(approx %25 (approx %63 (approx %72 %159)))
(approx %25 (approx %63 (+.f32 xi (approx %71 %159))))
%174
%174
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (fma.f32 #s(literal 2 binary32) %175 %78))))))
(approx %25 (approx %63 (approx %72 (approx %182 (fma.f32 #s(literal 2 binary32) %158 %137)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (fma.f32 #s(literal 2 binary32) %175 %135)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %201))))
(approx %107 (approx (- (+ (* (* -2 (- (* (* xi uy) (* %104 %52)) (* (* %104 %3) yi))) uy) %108) %106) %221))
(approx %234 (approx %242 %221))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 (*.f32 (*.f32 (*.f32 (*.f32 #s(literal 5174515/524288 binary32) xi) uy) #s(literal -2 binary32)) uy))))))
(approx %234 (approx %242 (approx (+ (+ (* (* -2 (- %236 %67)) uy) (* (* zi ux) maxCos)) xi) (*.f32 (fma.f32 maxCos ux (/.f32 %263 zi)) zi))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 %271)))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 %270 uy (fma.f32 %277 %156 %278)))))
(approx %25 (approx %63 (+.f32 (fma.f32 %284 %156 %278) (fma.f32 (*.f32 uy %218) #s(literal -2 binary32) xi))))
(approx %25 (approx %63 (+.f32 (+.f32 %110 %271) (*.f32 %293 uy))))
(approx %25 (approx %63 (-.f32 (+.f32 %110 (*.f32 %284 %156)) (*.f32 (*.f32 %218 #s(literal 2 binary32)) uy))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %263 %305 %78)))))
(approx %25 (approx %63 (approx %72 (fma.f32 %87 maxCos (/.f32 %311 zi)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 %201 zi)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 #s(literal 1 binary32) (/.f32 zi %263)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %220 %331 %136)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %337 uy %136)))))
(approx %25 (approx %63 (+.f32 xi (approx %71 %347))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 #s(literal -2 binary32) %345)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 %311 %359))))))
(approx %25 (fma.f32 %118 %78 %373))
(approx %25 (fma.f32 %370 %46 %373))
(approx %383 (fma.f32 %47 %117 %373))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %305 xi (fma.f32 %337 uy %78))))))
(approx %25 (approx %63 (approx %72 (fma.f32 %136 zi %393))))
(approx %25 (approx %63 (approx %72 (+.f32 (*.f32 %136 zi) %393))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 #s(literal 1 binary32) (/.f32 zi %403))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (-.f32 %392 (*.f32 %412 %305)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %311 (/.f32 #s(literal 1 binary32) %359) %78)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 (fma.f32 %135 zi %403) %305 %78)))))
(approx %25 (approx %37 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1/2 binary32) (*.f32 %434 xi)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 (fma.f32 %403 %444 (*.f32 %412 zi)) (*.f32 zi %444)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %347))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %459)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 (*.f32 zi xi) %359) (/.f32 (*.f32 (*.f32 zi uy) %220) %359)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 maxCos (fma.f32 ux zi %476))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 ux (fma.f32 maxCos zi (/.f32 %347 ux)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 zi (fma.f32 maxCos ux %458))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 uy %498)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 #s(literal 2 binary32) %158)))))
(approx %25 (approx %63 (approx %72 (*.f32 maxCos (fma.f32 ux zi (+.f32 %123 %476))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux %459)))))
(approx %25 (approx %63 (approx %72 (approx %182 (*.f32 xi (*.f32 zi (fma.f32 #s(literal -2 binary32) %537 %305)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) %552)))))))
(approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 %560 maxCos))))))))
%576
%576
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 maxCos (+.f32 ux (+.f32 (/.f32 xi %432) (/.f32 %347 %432)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 ux (+.f32 maxCos (+.f32 (/.f32 xi %41) (/.f32 %347 %41)))))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (approx %70 (*.f32 %535 %498))))))
(approx %25 (approx %63 (approx %72 (*.f32 xi (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -2 binary32) %536 (fma.f32 #s(literal 2 binary32) %552 %149)))))))
%621
%621
%631
%631
(approx %25 (approx %63 (approx (+ xi (+ %39 (+ (* (+ yi yi) %224) (* (* (* (* (* %3 %3) xi) uy) -2) uy)))) (*.f32 ux (fma.f32 #s(literal -2 binary32) (/.f32 %611 ux) (fma.f32 #s(literal 2 binary32) (/.f32 %158 ux) %130))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 %535 (fma.f32 #s(literal -2 binary32) (/.f32 %344 zi) (*.f32 #s(literal 2 binary32) (/.f32 %157 (*.f32 uy zi))))))))))))
%674
%674
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 xi (fma.f32 #s(literal -2 binary32) %537 (fma.f32 #s(literal 2 binary32) (/.f32 %158 (*.f32 xi zi)) %305)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (*.f32 #s(literal 2 binary32) %688))))))))))
(approx %25 (fma.f32 maxCos %119 (*.f32 xi %668)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (fma.f32 #s(literal 2 binary32) %688 (/.f32 xi %686))))))))))
(fma.f32 %370 %46 (*.f32 %372 (approx (+ (* %230 xi) (* %226 yi)) (fma.f32 (fma.f32 %292 yi %721) uy xi))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %720 uy %293))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (approx (+ (* -2 %64) (* -4/3 (* uy (* yi (pow %3 3))))) %745))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 yi uy) (*.f32 %715 #s(literal -4/3 binary32)) %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 (*.f32 #s(literal -4/3 binary32) uy) %715) yi %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 %776)))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx %792 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %156 yi (fma.f32 yi %156 %721)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (fma.f32 %284 %156 (fma.f32 (*.f32 uy uy) %720 xi)))))
(approx %25 %809)
(approx %25 (fma.f32 maxCos %119 (approx %62 %672)))
%815
%815
(+.f32 (+.f32 (*.f32 (approx %15 %776) xi) %819) %823)
(approx (+ (* (* ux %8) (* maxCos zi)) (* (sqrt (+ (* %101 (* %829 ux)) 1)) %792)) (fma.f32 maxCos %41 (fma.f32 xi (sin.f32 (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal 1/2 binary32) %156))) %783)))
%844
%844
%844
(+.f32 (approx %22 %809) (*.f32 (*.f32 (*.f32 %117 maxCos) ux) zi))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 #s(literal -2 binary32) %344 %745))))))))
(fma.f32 (*.f32 %858 zi) ux (fma.f32 (approx (* %104 %93) %863) yi (*.f32 (*.f32 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %866 %858))) xi) %871)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %156)) %880) xi) %819) %823)
(+.f32 (+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 %156 (fma.f32 #s(literal -2 binary32) uy #s(literal 1/2 binary32)))) %880) xi) %819) %823)
(approx %383 (fma.f32 %47 %117 (fma.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 uy %217) %372) (*.f32 %157 %372))) uy %373)))
(approx %25 (fma.f32 maxCos %119 (fma.f32 (*.f32 (*.f32 (*.f32 #s(literal -2 binary32) uy) xi) (*.f32 %216 %372)) uy (fma.f32 %277 (*.f32 %372 %156) %373))))
(fma.f32 (*.f32 ux %909) %432 (*.f32 (sqrt.f32 (fma.f32 %367 (*.f32 (*.f32 (*.f32 maxCos %909) ux) ux) #s(literal 1 binary32))) (fma.f32 %863 yi (*.f32 %871 xi))))
(approx %25 (fma.f32 maxCos %119 (*.f32 yi (*.f32 %782 %668))))
(+.f32 (approx (+ %17 (* (/ (- (cos (- %513 %924)) (cos (+ (* (+ %3 %3) uy) %924))) 2) yi)) (*.f32 #s(literal 1/2 binary32) (*.f32 yi (-.f32 (cos.f32 (-.f32 %775 %936)) (cos.f32 (+.f32 %936 %775)))))) %823)
(fma.f32 %506 %432 (*.f32 (sqrt.f32 (fma.f32 %367 %866 #s(literal 1 binary32))) (approx %518 (*.f32 xi (+.f32 %776 (/.f32 %783 xi))))))
Outputs
%4 = (* (* uy 2) (PI ))
%11 = (* (* (- 1 ux) maxCos) ux)
%14 = (sqrt (- 1 (* %11 %11)))
%26 = (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))
(+.f32 (approx (+ (* (* (cos %4) %14) xi) (* (* (sin %4) %14) yi)) (fma.f32 xi (cos.f32 %26) (*.f32 yi (sin.f32 %26)))) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) zi))
Call 18
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%8 = (- 1 ux)
%10 = (* %8 maxCos)
%11 = (* %10 ux)
%14 = (sqrt (- 1 (* %11 %11)))
%15 = (* (cos %4) %14)
%17 = (* %15 xi)
%19 = (* (sin %4) %14)
%22 = (+ %17 (* %19 yi))
%25 = (+ %22 (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%41 = (*.f32 ux zi)
%42 = (*.f32 maxCos %41)
%46 = (*.f32 zi maxCos)
%47 = (*.f32 %46 ux)
%52 = (pow %3 2)
%62 = (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36)
%63 = (+ %28 %62)
%64 = (* xi %52)
%67 = (* yi %3)
%68 = (* 2 %67)
%69 = (+ (* -2 (* uy %64)) %68)
%70 = (* uy %69)
%71 = (+ %39 %70)
%72 = (+ xi %71)
%75 = (/ %70 zi)
%76 = (+ (/ xi zi) %75)
%77 = (+ (* maxCos ux) %76)
%78 = (*.f32 maxCos ux)
%87 = (*.f32 zi ux)
%92 = (* %3 (* 2 uy))
%93 = (sin %92)
%96 = (* (* -2 uy) %3)
%101 = (* (- ux 1) maxCos)
%102 = (* %101 ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%107 = (- (* (+ (* %93 yi) (* xi (cos %96))) %104) %106)
%108 = (* %104 xi)
%109 = (- %108 %106)
%110 = (fma.f32 %46 ux xi)
%113 = (+.f32 xi %42)
%117 = (-.f32 #s(literal 1 binary32) ux)
%118 = (*.f32 zi %117)
%119 = (*.f32 ux %118)
%120 = (*.f32 maxCos %119)
%122 = (approx %25 (approx %37 %120))
%123 = (/.f32 xi maxCos)
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi %123)))))
%130 = (fma.f32 maxCos zi (/.f32 xi ux))
%135 = (/.f32 xi zi)
%136 = (fma.f32 maxCos ux %135)
%137 = (*.f32 zi %136)
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
%149 = (/.f32 %42 xi)
%156 = (PI.f32 )
%157 = (*.f32 yi %156)
%158 = (*.f32 uy %157)
%159 = (fma.f32 #s(literal 2 binary32) %158 %42)
%174 = (approx %25 (approx %37 (approx %40 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %78 (*.f32 #s(literal -1 binary32) %135)))))))
%175 = (/.f32 %158 zi)
%182 = (* zi %77)
%199 = (*.f32 #s(literal 2 binary32) %157)
%201 = (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) %199))
%216 = (*.f32 %156 %156)
%217 = (*.f32 %216 xi)
%218 = (*.f32 %217 uy)
%220 = (*.f32 #s(literal -2 binary32) (-.f32 %218 %157))
%221 = (fma.f32 %220 uy %110)
%224 = (* %3 uy)
%226 = (sin (* %224 2))
%230 = (cos (* -2 %224))
%234 = (- (+ (* (* %104 %226) yi) (* (* %104 %230) xi)) %106)
%236 = (* (* %52 xi) uy)
%242 = (+ %109 (* (* -2 (- (* %236 %104) (* %104 %67))) uy))
%245 = (+.f32 yi yi)
%246 = (*.f32 %156 uy)
%263 = (fma.f32 %220 uy xi)
%270 = (*.f32 %218 #s(literal -2 binary32))
%271 = (*.f32 %270 uy)
%277 = (*.f32 uy %245)
%278 = (*.f32 %87 maxCos)
%284 = (*.f32 %245 uy)
%292 = (+.f32 %156 %156)
%293 = (*.f32 %292 yi)
%305 = (/.f32 #s(literal 1 binary32) zi)
%311 = (*.f32 zi %263)
%331 = (/.f32 uy zi)
%337 = (/.f32 %220 zi)
%343 = (pow.f32 %156 #s(literal 2 binary32))
%344 = (*.f32 xi %343)
%345 = (*.f32 uy %344)
%347 = (*.f32 uy (fma.f32 #s(literal -2 binary32) %345 %199))
%359 = (*.f32 zi zi)
%367 = (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos)
%370 = (*.f32 %117 ux)
%372 = (sqrt.f32 (fma.f32 (*.f32 (*.f32 %367 ux) maxCos) %370 #s(literal 1 binary32)))
%373 = (*.f32 xi %372)
%383 = (- (* (+ (* yi %93) (* xi (cos %92))) %104) %106)
%392 = (*.f32 %220 %331)
%393 = (*.f32 %392 zi)
%403 = (*.f32 %220 uy)
%412 = (neg.f32 xi)
%432 = (*.f32 maxCos zi)
%434 = (pow.f32 maxCos #s(literal 2 binary32))
%444 = (neg.f32 zi)
%458 = (/.f32 %347 zi)
%459 = (+.f32 %135 %458)
%476 = (/.f32 %347 maxCos)
%496 = (/.f32 %157 uy)
%498 = (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal 2 binary32) %496))
%506 = (*.f32 ux %117)
%511 = (sqrt.f32 (fma.f32 %367 (*.f32 (*.f32 (*.f32 maxCos %117) ux) ux) #s(literal 1 binary32)))
%513 = (* %3 (+ uy uy))
%515 = (* (sin %513) yi)
%518 = (+ %515 (* (cos %513) xi))
%535 = (pow.f32 uy #s(literal 2 binary32))
%536 = (*.f32 %535 %343)
%537 = (/.f32 %536 zi)
%546 = (* 2 (* uy %3))
%551 = (+ (cos %546) (/ (* yi (sin %546)) xi))
%552 = (/.f32 %158 xi)
%560 = (+.f32 xi %347)
%576 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1 binary32) (/.f32 %560 ux))))))))
%610 = (*.f32 uy %156)
%611 = (*.f32 %535 %344)
%621 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (fma.f32 #s(literal -2 binary32) %611 %42)) yi))))))))
%631 = (approx %25 (approx %63 (approx %72 (*.f32 %535 (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %157 (*.f32 #s(literal -1 binary32) (/.f32 %113 uy))) uy)))))))
%668 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %434 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 %117 #s(literal 2 binary32))))))
%672 = (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 yi (*.f32 %156 %668))))
%674 = (approx %25 (approx %63 %672))
%686 = (*.f32 yi zi)
%687 = (/.f32 %611 %686)
%688 = (/.f32 %610 zi)
%714 = (+ (* %230 xi) (* %226 yi))
%715 = (*.f32 %216 %156)
%720 = (fma.f32 %217 #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 %715 yi) uy) #s(literal -4/3 binary32)))
%721 = (*.f32 %720 uy)
%740 = (+ (* -2 %64) (* -4/3 (* uy (* yi (pow %3 3)))))
%743 = (*.f32 yi (pow.f32 %156 #s(literal 3 binary32)))
%745 = (*.f32 #s(literal -4/3 binary32) (*.f32 uy %743))
%756 = (*.f32 %217 #s(literal -2 binary32))
%775 = (*.f32 #s(literal 2 binary32) %610)
%776 = (cos.f32 %775)
%782 = (sin.f32 %775)
%783 = (*.f32 yi %782)
%792 = (+ %515 (* (sin (+ %96 (* %3 1/2))) xi))
%809 = (fma.f32 xi %776 %783)
%815 = (approx %25 (fma.f32 maxCos %41 %809))
%819 = (*.f32 (approx %19 %782) yi)
%822 = (*.f32 (approx %10 maxCos) ux)
%823 = (*.f32 %822 zi)
%828 = (* maxCos %8)
%829 = (* %828 ux)
%844 = (approx %25 (fma.f32 maxCos %119 %809))
%858 = (approx %828 maxCos)
%862 = (*.f32 %156 (+.f32 uy uy))
%863 = (sin.f32 %862)
%866 = (*.f32 (*.f32 %858 ux) ux)
%871 = (cos.f32 %862)
%876 = (*.f32 (*.f32 uy #s(literal 2 binary32)) %156)
%880 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %822 %822)))
%882 = (*.f32 (*.f32 (cos.f32 %876) %880) xi)
%909 = (approx %8 #s(literal 1 binary32))
%917 = (fma.f32 %863 yi (*.f32 %871 xi))
%924 = (acos %829)
%936 = (acos.f32 (*.f32 maxCos %506))
%951 = (approx %518 (*.f32 xi (+.f32 %776 (/.f32 %783 xi))))
%954 = (*.f32 %511 %917)
%963 = (*.f32 %292 uy)
%964 = (sin.f32 %963)
%966 = (cos.f32 %963)
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 %47)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 %87 maxCos xi)))
(approx %107 (approx %109 %110))
(approx %25 (approx %37 %113))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux %130))))
(approx %25 (approx %37 (approx %40 %137)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) %149)))))
(approx %25 (approx %63 (approx %72 %159)))
(approx %25 (approx %63 (+.f32 xi (approx %71 %159))))
%174
%174
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (fma.f32 #s(literal 2 binary32) %175 %78))))))
(approx %25 (approx %63 (approx %72 (approx %182 (fma.f32 #s(literal 2 binary32) %158 %137)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (fma.f32 #s(literal 2 binary32) %175 %135)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %201))))
(approx %107 (approx (- (+ (* (* -2 (- (* (* xi uy) (* %104 %52)) (* (* %104 %3) yi))) uy) %108) %106) %221))
(approx %234 (approx %242 %221))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 (*.f32 (*.f32 (*.f32 (*.f32 #s(literal 5174515/524288 binary32) xi) uy) #s(literal -2 binary32)) uy))))))
(approx %234 (approx %242 (approx (+ (+ (* (* -2 (- %236 %67)) uy) (* (* zi ux) maxCos)) xi) (*.f32 (fma.f32 maxCos ux (/.f32 %263 zi)) zi))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 %271)))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 %270 uy (fma.f32 %277 %156 %278)))))
(approx %25 (approx %63 (+.f32 (fma.f32 %284 %156 %278) (fma.f32 (*.f32 uy %218) #s(literal -2 binary32) xi))))
(approx %25 (approx %63 (+.f32 (+.f32 %110 %271) (*.f32 %293 uy))))
(approx %25 (approx %63 (-.f32 (+.f32 %110 (*.f32 %284 %156)) (*.f32 (*.f32 %218 #s(literal 2 binary32)) uy))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %263 %305 %78)))))
(approx %25 (approx %63 (approx %72 (fma.f32 %87 maxCos (/.f32 %311 zi)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 %201 zi)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 #s(literal 1 binary32) (/.f32 zi %263)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %220 %331 %136)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %337 uy %136)))))
(approx %25 (approx %63 (+.f32 xi (approx %71 %347))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 #s(literal -2 binary32) %345)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 %311 %359))))))
(approx %25 (fma.f32 %118 %78 %373))
(approx %25 (fma.f32 %370 %46 %373))
(approx %383 (fma.f32 %47 %117 %373))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %305 xi (fma.f32 %337 uy %78))))))
(approx %25 (approx %63 (approx %72 (fma.f32 %136 zi %393))))
(approx %25 (approx %63 (approx %72 (+.f32 (*.f32 %136 zi) %393))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 #s(literal 1 binary32) (/.f32 zi %403))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (-.f32 %392 (*.f32 %412 %305)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %311 (/.f32 #s(literal 1 binary32) %359) %78)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 (fma.f32 %135 zi %403) %305 %78)))))
(approx %25 (approx %37 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1/2 binary32) (*.f32 %434 xi)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 (fma.f32 %403 %444 (*.f32 %412 zi)) (*.f32 zi %444)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %347))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %459)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 (*.f32 zi xi) %359) (/.f32 (*.f32 (*.f32 zi uy) %220) %359)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 maxCos (fma.f32 ux zi %476))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 ux (fma.f32 maxCos zi (/.f32 %347 ux)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 zi (fma.f32 maxCos ux %458))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 uy %498)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 #s(literal 2 binary32) %158)))))
(approx %25 (approx %63 (approx %72 (*.f32 maxCos (fma.f32 ux zi (+.f32 %123 %476))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux %459)))))
(approx %25 (approx %63 (approx %72 (approx %182 (*.f32 xi (*.f32 zi (fma.f32 #s(literal -2 binary32) %537 %305)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) %552)))))))
(approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 %560 maxCos))))))))
%576
%576
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 maxCos (+.f32 ux (+.f32 (/.f32 xi %432) (/.f32 %347 %432)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 ux (+.f32 maxCos (+.f32 (/.f32 xi %41) (/.f32 %347 %41)))))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (approx %70 (*.f32 %535 %498))))))
(approx %25 (approx %63 (approx %72 (*.f32 xi (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -2 binary32) %536 (fma.f32 #s(literal 2 binary32) %552 %149)))))))
%621
%621
%631
%631
(approx %25 (approx %63 (approx (+ xi (+ %39 (+ (* (+ yi yi) %224) (* (* (* (* (* %3 %3) xi) uy) -2) uy)))) (*.f32 ux (fma.f32 #s(literal -2 binary32) (/.f32 %611 ux) (fma.f32 #s(literal 2 binary32) (/.f32 %158 ux) %130))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 %535 (fma.f32 #s(literal -2 binary32) (/.f32 %344 zi) (*.f32 #s(literal 2 binary32) (/.f32 %157 (*.f32 uy zi))))))))))))
%674
%674
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 xi (fma.f32 #s(literal -2 binary32) %537 (fma.f32 #s(literal 2 binary32) (/.f32 %158 (*.f32 xi zi)) %305)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (*.f32 #s(literal 2 binary32) %688))))))))))
(approx %25 (fma.f32 maxCos %119 (*.f32 xi %668)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (fma.f32 #s(literal 2 binary32) %688 (/.f32 xi %686))))))))))
(fma.f32 %370 %46 (*.f32 %372 (approx %714 (fma.f32 (fma.f32 %292 yi %721) uy xi))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %720 uy %293))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (approx %740 %745))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 yi uy) (*.f32 %715 #s(literal -4/3 binary32)) %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 (*.f32 #s(literal -4/3 binary32) uy) %715) yi %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 %776)))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx %792 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %156 yi (fma.f32 yi %156 %721)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (fma.f32 %284 %156 (fma.f32 (*.f32 uy uy) %720 xi)))))
(approx %25 %809)
(approx %25 (fma.f32 maxCos %119 (approx %62 %672)))
%815
%815
(+.f32 (+.f32 (*.f32 (approx %15 %776) xi) %819) %823)
(approx (+ (* (* ux %8) (* maxCos zi)) (* (sqrt (+ (* %101 (* %829 ux)) 1)) %792)) (fma.f32 maxCos %41 (fma.f32 xi (sin.f32 (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal 1/2 binary32) %156))) %783)))
%844
%844
%844
(+.f32 (approx %22 %809) (*.f32 (*.f32 (*.f32 %117 maxCos) ux) zi))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 #s(literal -2 binary32) %344 %745))))))))
(fma.f32 (*.f32 %858 zi) ux (fma.f32 (approx (* %104 %93) %863) yi (*.f32 (*.f32 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %866 %858))) xi) %871)))
(+.f32 (+.f32 %882 %819) %823)
(+.f32 (+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 %156 (fma.f32 #s(literal -2 binary32) uy #s(literal 1/2 binary32)))) %880) xi) %819) %823)
(approx %383 (fma.f32 %47 %117 (fma.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 uy %217) %372) (*.f32 %157 %372))) uy %373)))
(approx %25 (fma.f32 maxCos %119 (fma.f32 (*.f32 (*.f32 (*.f32 #s(literal -2 binary32) uy) xi) (*.f32 %216 %372)) uy (fma.f32 %277 (*.f32 %372 %156) %373))))
(fma.f32 (*.f32 ux %909) %432 (*.f32 (sqrt.f32 (fma.f32 %367 (*.f32 (*.f32 (*.f32 maxCos %909) ux) ux) #s(literal 1 binary32))) %917))
(approx %25 (fma.f32 maxCos %119 (*.f32 yi (*.f32 %782 %668))))
(+.f32 (approx (+ %17 (* (/ (- (cos (- %513 %924)) (cos (+ (* (+ %3 %3) uy) %924))) 2) yi)) (*.f32 #s(literal 1/2 binary32) (*.f32 yi (-.f32 (cos.f32 (-.f32 %775 %936)) (cos.f32 (+.f32 %936 %775)))))) %823)
(fma.f32 %506 %432 (*.f32 (sqrt.f32 (fma.f32 %367 %866 #s(literal 1 binary32))) %951))
(fma.f32 %506 %432 %954)
(fma.f32 %117 (*.f32 %78 zi) %954)
(+.f32 (+.f32 %882 (*.f32 (*.f32 (sin.f32 %876) %880) yi)) %823)
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (fma.f32 (/.f32 %964 xi) yi %966)))))
(fma.f32 %117 %278 (*.f32 %372 (approx %714 (*.f32 (fma.f32 %964 (/.f32 yi xi) %966) xi))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (approx (+ %68 (* uy %740)) (*.f32 %535 (fma.f32 #s(literal -4/3 binary32) %743 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %496 (*.f32 #s(literal 2 binary32) %344)) uy))))))))))
(fma.f32 %506 %432 (*.f32 %511 (fma.f32 %863 yi (*.f32 (sin.f32 (fma.f32 %292 uy (*.f32 %156 #s(literal 1/2 binary32)))) xi))))
(fma.f32 %506 %432 (*.f32 %511 %951))
Outputs
%2 = (-.f32 #s(literal 1 binary32) ux)
%17 = (*.f32 (PI.f32 ) (+.f32 uy uy))
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (fma.f32 (sin.f32 %17) yi (*.f32 (cos.f32 %17) xi))))
Call 19
Inputs
%3 = (PI )
%4 = (* (* uy 2) %3)
%5 = (cos %4)
%8 = (- 1 ux)
%10 = (* %8 maxCos)
%11 = (* %10 ux)
%13 = (- 1 (* %11 %11))
%14 = (sqrt %13)
%15 = (* %5 %14)
%17 = (* %15 xi)
%18 = (sin %4)
%19 = (* %18 %14)
%21 = (* %19 yi)
%22 = (+ %17 %21)
%25 = (+ %22 (* %11 zi))
%28 = (* maxCos (* ux (* zi %8)))
%35 = (sqrt (- 1 (* (pow maxCos 2) (* (pow ux 2) (pow %8 2)))))
%36 = (* xi %35)
%37 = (+ %28 %36)
%39 = (* maxCos (* ux zi))
%40 = (+ xi %39)
%41 = (*.f32 ux zi)
%42 = (*.f32 maxCos %41)
%46 = (*.f32 zi maxCos)
%47 = (*.f32 %46 ux)
%52 = (pow %3 2)
%62 = (+ (* uy (+ (* -2 (* uy (* xi (* %52 %35)))) (* 2 (* yi (* %3 %35))))) %36)
%63 = (+ %28 %62)
%64 = (* xi %52)
%67 = (* yi %3)
%68 = (* 2 %67)
%69 = (+ (* -2 (* uy %64)) %68)
%70 = (* uy %69)
%71 = (+ %39 %70)
%72 = (+ xi %71)
%75 = (/ %70 zi)
%76 = (+ (/ xi zi) %75)
%77 = (+ (* maxCos ux) %76)
%78 = (*.f32 maxCos ux)
%87 = (*.f32 zi ux)
%92 = (* %3 (* 2 uy))
%93 = (sin %92)
%96 = (* (* -2 uy) %3)
%101 = (* (- ux 1) maxCos)
%102 = (* %101 ux)
%104 = (sin (acos %102))
%106 = (* %102 zi)
%107 = (- (* (+ (* %93 yi) (* xi (cos %96))) %104) %106)
%108 = (* %104 xi)
%109 = (- %108 %106)
%110 = (fma.f32 %46 ux xi)
%113 = (+.f32 xi %42)
%117 = (-.f32 #s(literal 1 binary32) ux)
%118 = (*.f32 zi %117)
%119 = (*.f32 ux %118)
%120 = (*.f32 maxCos %119)
%122 = (approx %25 (approx %37 %120))
%123 = (/.f32 xi maxCos)
%128 = (approx %25 (approx %37 (approx %40 (*.f32 maxCos (fma.f32 ux zi %123)))))
%130 = (fma.f32 maxCos zi (/.f32 xi ux))
%135 = (/.f32 xi zi)
%136 = (fma.f32 maxCos ux %135)
%137 = (*.f32 zi %136)
%148 = (approx %25 (approx %37 (+.f32 xi %120)))
%149 = (/.f32 %42 xi)
%156 = (PI.f32 )
%157 = (*.f32 yi %156)
%158 = (*.f32 uy %157)
%159 = (fma.f32 #s(literal 2 binary32) %158 %42)
%174 = (approx %25 (approx %37 (approx %40 (*.f32 #s(literal -1 binary32) (*.f32 zi (fma.f32 #s(literal -1 binary32) %78 (*.f32 #s(literal -1 binary32) %135)))))))
%175 = (/.f32 %158 zi)
%182 = (* zi %77)
%199 = (*.f32 #s(literal 2 binary32) %157)
%201 = (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi #s(literal 5174515/524288 binary32))) %199))
%216 = (*.f32 %156 %156)
%217 = (*.f32 %216 xi)
%218 = (*.f32 %217 uy)
%220 = (*.f32 #s(literal -2 binary32) (-.f32 %218 %157))
%221 = (fma.f32 %220 uy %110)
%224 = (* %3 uy)
%226 = (sin (* %224 2))
%230 = (cos (* -2 %224))
%234 = (- (+ (* (* %104 %226) yi) (* (* %104 %230) xi)) %106)
%236 = (* (* %52 xi) uy)
%242 = (+ %109 (* (* -2 (- (* %236 %104) (* %104 %67))) uy))
%245 = (+.f32 yi yi)
%246 = (*.f32 %156 uy)
%263 = (fma.f32 %220 uy xi)
%270 = (*.f32 %218 #s(literal -2 binary32))
%271 = (*.f32 %270 uy)
%277 = (*.f32 uy %245)
%278 = (*.f32 %87 maxCos)
%284 = (*.f32 %245 uy)
%292 = (+.f32 %156 %156)
%293 = (*.f32 %292 yi)
%305 = (/.f32 #s(literal 1 binary32) zi)
%311 = (*.f32 zi %263)
%331 = (/.f32 uy zi)
%337 = (/.f32 %220 zi)
%343 = (pow.f32 %156 #s(literal 2 binary32))
%344 = (*.f32 xi %343)
%345 = (*.f32 uy %344)
%347 = (*.f32 uy (fma.f32 #s(literal -2 binary32) %345 %199))
%359 = (*.f32 zi zi)
%367 = (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos)
%368 = (*.f32 %367 ux)
%370 = (*.f32 %117 ux)
%372 = (sqrt.f32 (fma.f32 (*.f32 %368 maxCos) %370 #s(literal 1 binary32)))
%373 = (*.f32 xi %372)
%383 = (- (* (+ (* yi %93) (* xi (cos %92))) %104) %106)
%392 = (*.f32 %220 %331)
%393 = (*.f32 %392 zi)
%403 = (*.f32 %220 uy)
%412 = (neg.f32 xi)
%432 = (*.f32 maxCos zi)
%434 = (pow.f32 maxCos #s(literal 2 binary32))
%444 = (neg.f32 zi)
%458 = (/.f32 %347 zi)
%459 = (+.f32 %135 %458)
%476 = (/.f32 %347 maxCos)
%496 = (/.f32 %157 uy)
%498 = (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal 2 binary32) %496))
%506 = (*.f32 ux %117)
%508 = (*.f32 (*.f32 maxCos %117) ux)
%511 = (sqrt.f32 (fma.f32 %367 (*.f32 %508 ux) #s(literal 1 binary32)))
%513 = (* %3 (+ uy uy))
%515 = (* (sin %513) yi)
%518 = (+ %515 (* (cos %513) xi))
%535 = (pow.f32 uy #s(literal 2 binary32))
%536 = (*.f32 %535 %343)
%537 = (/.f32 %536 zi)
%546 = (* 2 (* uy %3))
%549 = (* yi (sin %546))
%551 = (+ (cos %546) (/ %549 xi))
%552 = (/.f32 %158 xi)
%560 = (+.f32 xi %347)
%576 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1 binary32) (/.f32 %560 ux))))))))
%610 = (*.f32 uy %156)
%611 = (*.f32 %535 %344)
%621 = (approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 yi (fma.f32 #s(literal -2 binary32) %610 (*.f32 #s(literal -1 binary32) (/.f32 (+.f32 xi (fma.f32 #s(literal -2 binary32) %611 %42)) yi))))))))
%631 = (approx %25 (approx %63 (approx %72 (*.f32 %535 (fma.f32 #s(literal -2 binary32) %344 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %157 (*.f32 #s(literal -1 binary32) (/.f32 %113 uy))) uy)))))))
%663 = (pow.f32 ux #s(literal 2 binary32))
%668 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %434 (*.f32 %663 (pow.f32 %117 #s(literal 2 binary32))))))
%670 = (*.f32 yi (*.f32 %156 %668))
%671 = (*.f32 uy %670)
%672 = (*.f32 #s(literal 2 binary32) %671)
%674 = (approx %25 (approx %63 %672))
%686 = (*.f32 yi zi)
%687 = (/.f32 %611 %686)
%688 = (/.f32 %610 zi)
%699 = (*.f32 xi %668)
%700 = (fma.f32 maxCos %119 %699)
%714 = (+ (* %230 xi) (* %226 yi))
%715 = (*.f32 %216 %156)
%720 = (fma.f32 %217 #s(literal -2 binary32) (*.f32 (*.f32 (*.f32 %715 yi) uy) #s(literal -4/3 binary32)))
%721 = (*.f32 %720 uy)
%740 = (+ (* -2 %64) (* -4/3 (* uy (* yi (pow %3 3)))))
%742 = (pow.f32 %156 #s(literal 3 binary32))
%743 = (*.f32 yi %742)
%745 = (*.f32 #s(literal -4/3 binary32) (*.f32 uy %743))
%756 = (*.f32 %217 #s(literal -2 binary32))
%775 = (*.f32 #s(literal 2 binary32) %610)
%776 = (cos.f32 %775)
%782 = (sin.f32 %775)
%783 = (*.f32 yi %782)
%792 = (+ %515 (* (sin (+ %96 (* %3 1/2))) xi))
%809 = (fma.f32 xi %776 %783)
%815 = (approx %25 (fma.f32 maxCos %41 %809))
%817 = (*.f32 (approx %15 %776) xi)
%819 = (*.f32 (approx %19 %782) yi)
%822 = (*.f32 (approx %10 maxCos) ux)
%823 = (*.f32 %822 zi)
%828 = (* maxCos %8)
%829 = (* %828 ux)
%832 = (+ (* %101 (* %829 ux)) 1)
%837 = (*.f32 #s(literal 1/2 binary32) %156)
%844 = (approx %25 (fma.f32 maxCos %119 %809))
%847 = (*.f32 (*.f32 %117 maxCos) ux)
%848 = (*.f32 %847 zi)
%858 = (approx %828 maxCos)
%862 = (*.f32 %156 (+.f32 uy uy))
%863 = (sin.f32 %862)
%865 = (*.f32 %858 ux)
%866 = (*.f32 %865 ux)
%870 = (*.f32 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %866 %858))) xi)
%871 = (cos.f32 %862)
%876 = (*.f32 (*.f32 uy #s(literal 2 binary32)) %156)
%877 = (cos.f32 %876)
%880 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %822 %822)))
%882 = (*.f32 (*.f32 %877 %880) xi)
%887 = (sin.f32 (*.f32 %156 (fma.f32 #s(literal -2 binary32) uy #s(literal 1/2 binary32))))
%900 = (*.f32 #s(literal -2 binary32) uy)
%909 = (approx %8 #s(literal 1 binary32))
%917 = (fma.f32 %863 yi (*.f32 %871 xi))
%921 = (*.f32 yi (*.f32 %782 %668))
%924 = (acos %829)
%936 = (acos.f32 (*.f32 maxCos %506))
%951 = (approx %518 (*.f32 xi (+.f32 %776 (/.f32 %783 xi))))
%954 = (*.f32 %511 %917)
%958 = (sin.f32 %876)
%963 = (*.f32 %292 uy)
%964 = (sin.f32 %963)
%965 = (/.f32 %964 xi)
%966 = (cos.f32 %963)
%992 = (*.f32 %156 #s(literal 1/2 binary32))
%993 = (fma.f32 %292 uy %992)
%1004 = (fma.f32 %863 yi (*.f32 (sin.f32 (fma.f32 %900 %156 %992)) xi))
%1007 = (/.f32 #s(literal 1 binary32) xi)
%1008 = (*.f32 %964 yi)
%1015 = (*.f32 %966 xi)
%1035 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %847 %847)))
%1037 = (*.f32 (*.f32 %877 %1035) xi)
%1039 = (*.f32 (*.f32 %958 %1035) yi)
%1065 = (acos.f32 %865)
%1068 = (fma.f32 %292 uy %1065)
%1069 = (cos.f32 %1068)
%1070 = (-.f32 (cos.f32 (fma.f32 (*.f32 %156 #s(literal -2 binary32)) uy %1065)) %1069)
%1076 = (fma.f32 %292 uy (asin.f32 %368))
%1077 = (sin.f32 %1076)
%1079 = (fma.f32 %292 uy (asin.f32 %508))
%1081 = (+.f32 %1077 (sin.f32 %1079))
%1083 = (*.f32 (*.f32 %1081 #s(literal 1/2 binary32)) yi)
%1086 = (-.f32 %862 %1065)
%1087 = (cos.f32 %1086)
%1124 = (acos.f32 %508)
%1136 = (pow.f32 %156 #s(literal 5 binary32))
%1181 = (pow.f32 ux #s(literal 4 binary32))
%1182 = (/.f32 #s(literal 1 binary32) %663)
%1192 = (sqrt.f32 (approx %832 (*.f32 %1181 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %434 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %434 %1182) ux))) ux) (*.f32 #s(literal -1 binary32) %434)))))
%1199 = (pow.f32 %156 #s(literal 7 binary32))
%1225 = (*.f32 #s(literal 2 binary32) %670)
%1231 = (*.f32 yi (*.f32 %742 %668))
%1248 = (sqrt.f32 (approx %13 (*.f32 %1181 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 %1182 %434) ux)) (*.f32 #s(literal 2 binary32) %434)) ux)) %434))))
%1256 = (*.f32 yi (*.f32 %1136 %668))
%1263 = (approx %21 (*.f32 uy (fma.f32 #s(literal 2 binary32) %670 (*.f32 %535 (fma.f32 #s(literal -4/3 binary32) %1231 (*.f32 #s(literal 4/15 binary32) (*.f32 %535 %1256)))))))
%1278 = (approx %21 (*.f32 uy (fma.f32 #s(literal 2 binary32) %670 (*.f32 %535 (fma.f32 #s(literal -4/3 binary32) %1231 (*.f32 %535 (fma.f32 #s(literal -8/315 binary32) (*.f32 %535 (*.f32 yi (*.f32 %1199 %668))) (*.f32 #s(literal 4/15 binary32) %1256))))))))
%1280 = (+.f32 (+.f32 %882 %1278) %823)
(approx %25 (approx %37 (approx %40 %42)))
(approx %25 (approx %37 (approx %40 %47)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %78)))))
(approx %25 (approx %37 (fma.f32 %78 zi xi)))
(approx %25 (approx %37 (fma.f32 %87 maxCos xi)))
(approx %107 (approx %109 %110))
(approx %25 (approx %37 %113))
%122
%122
%128
%128
(approx %25 (approx %37 (approx %40 (*.f32 ux %130))))
(approx %25 (approx %37 (approx %40 %137)))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %136)))))
%148
%148
(approx %25 (approx %37 (approx %40 (*.f32 xi (+.f32 #s(literal 1 binary32) %149)))))
(approx %25 (approx %63 (approx %72 %159)))
(approx %25 (approx %63 (+.f32 xi (approx %71 %159))))
%174
%174
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (fma.f32 #s(literal 2 binary32) %175 %78))))))
(approx %25 (approx %63 (approx %72 (approx %182 (fma.f32 #s(literal 2 binary32) %158 %137)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (fma.f32 #s(literal 2 binary32) %175 %135)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %201))))
(approx %107 (approx (- (+ (* (* -2 (- (* (* xi uy) (* %104 %52)) (* (* %104 %3) yi))) uy) %108) %106) %221))
(approx %234 (approx %242 %221))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 (*.f32 (*.f32 (*.f32 (*.f32 #s(literal 5174515/524288 binary32) xi) uy) #s(literal -2 binary32)) uy))))))
(approx %234 (approx %242 (approx (+ (+ (* (* -2 (- %236 %67)) uy) (* (* zi ux) maxCos)) xi) (*.f32 (fma.f32 maxCos ux (/.f32 %263 zi)) zi))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (fma.f32 %245 %246 %271)))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 %270 uy (fma.f32 %277 %156 %278)))))
(approx %25 (approx %63 (+.f32 (fma.f32 %284 %156 %278) (fma.f32 (*.f32 uy %218) #s(literal -2 binary32) xi))))
(approx %25 (approx %63 (+.f32 (+.f32 %110 %271) (*.f32 %293 uy))))
(approx %25 (approx %63 (-.f32 (+.f32 %110 (*.f32 %284 %156)) (*.f32 (*.f32 %218 #s(literal 2 binary32)) uy))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %263 %305 %78)))))
(approx %25 (approx %63 (approx %72 (fma.f32 %87 maxCos (/.f32 %311 zi)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 %201 zi)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 #s(literal 1 binary32) (/.f32 zi %263)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %220 %331 %136)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %337 uy %136)))))
(approx %25 (approx %63 (+.f32 xi (approx %71 %347))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 #s(literal -2 binary32) %345)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 %311 %359))))))
(approx %25 (fma.f32 %118 %78 %373))
(approx %25 (fma.f32 %370 %46 %373))
(approx %383 (fma.f32 %47 %117 %373))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %305 xi (fma.f32 %337 uy %78))))))
(approx %25 (approx %63 (approx %72 (fma.f32 %136 zi %393))))
(approx %25 (approx %63 (approx %72 (+.f32 (*.f32 %136 zi) %393))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (/.f32 #s(literal 1 binary32) (/.f32 zi %403))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (-.f32 %392 (*.f32 %412 %305)))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 %311 (/.f32 #s(literal 1 binary32) %359) %78)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 (fma.f32 %135 zi %403) %305 %78)))))
(approx %25 (approx %37 (+.f32 xi (*.f32 ux (fma.f32 maxCos zi (*.f32 ux (fma.f32 #s(literal -1 binary32) %432 (*.f32 #s(literal -1/2 binary32) (*.f32 %434 xi)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (/.f32 (fma.f32 %403 %444 (*.f32 %412 zi)) (*.f32 zi %444)))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 %347))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 %459)))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 (/.f32 (*.f32 zi xi) %359) (/.f32 (*.f32 (*.f32 zi uy) %220) %359)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 maxCos (fma.f32 ux zi %476))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 ux (fma.f32 maxCos zi (/.f32 %347 ux)))))))
(approx %25 (approx %63 (+.f32 xi (approx %71 (*.f32 zi (fma.f32 maxCos ux %458))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (*.f32 uy (approx %69 (*.f32 uy %498)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 #s(literal 2 binary32) %158)))))
(approx %25 (approx %63 (approx %72 (*.f32 maxCos (fma.f32 ux zi (+.f32 %123 %476))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux %459)))))
(approx %25 (approx %63 (approx %72 (approx %182 (*.f32 xi (*.f32 zi (fma.f32 #s(literal -2 binary32) %537 %305)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) %552)))))))
(approx %25 (approx %63 (approx %72 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 %560 maxCos))))))))
%576
%576
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 maxCos (+.f32 ux (+.f32 (/.f32 xi %432) (/.f32 %347 %432)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (approx %77 (*.f32 ux (+.f32 maxCos (+.f32 (/.f32 xi %41) (/.f32 %347 %41)))))))))
(approx %25 (approx %63 (+.f32 xi (fma.f32 maxCos %41 (approx %70 (*.f32 %535 %498))))))
(approx %25 (approx %63 (approx %72 (*.f32 xi (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -2 binary32) %536 (fma.f32 #s(literal 2 binary32) %552 %149)))))))
%621
%621
%631
%631
(approx %25 (approx %63 (approx (+ xi (+ %39 (+ (* (+ yi yi) %224) (* (* (* (* (* %3 %3) xi) uy) -2) uy)))) (*.f32 ux (fma.f32 #s(literal -2 binary32) (/.f32 %611 ux) (fma.f32 #s(literal 2 binary32) (/.f32 %158 ux) %130))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 %535 (fma.f32 #s(literal -2 binary32) (/.f32 %344 zi) (*.f32 #s(literal 2 binary32) (/.f32 %157 (*.f32 uy zi))))))))))))
%674
%674
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 xi (fma.f32 #s(literal -2 binary32) %537 (fma.f32 #s(literal 2 binary32) (/.f32 %158 (*.f32 xi zi)) %305)))))))))
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (+.f32 %135 (approx %75 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (*.f32 #s(literal 2 binary32) %688))))))))))
(approx %25 %700)
(approx %25 (approx %63 (approx %72 (*.f32 zi (fma.f32 maxCos ux (approx %76 (*.f32 yi (fma.f32 #s(literal -2 binary32) %687 (fma.f32 #s(literal 2 binary32) %688 (/.f32 xi %686))))))))))
(fma.f32 %370 %46 (*.f32 %372 (approx %714 (fma.f32 (fma.f32 %292 yi %721) uy xi))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %720 uy %293))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (approx %740 %745))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 yi uy) (*.f32 %715 #s(literal -4/3 binary32)) %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 (*.f32 (*.f32 #s(literal -4/3 binary32) uy) %715) yi %756))))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (approx %551 %776)))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx %792 %783)))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 %156 yi (fma.f32 yi %156 %721)))))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (fma.f32 %284 %156 (fma.f32 (*.f32 uy uy) %720 xi)))))
(approx %25 %809)
(approx %25 (fma.f32 maxCos %119 (approx %62 %672)))
%815
%815
(+.f32 (+.f32 %817 %819) %823)
(approx (+ (* (* ux %8) (* maxCos zi)) (* (sqrt %832) %792)) (fma.f32 maxCos %41 (fma.f32 xi (sin.f32 (fma.f32 #s(literal -2 binary32) %610 %837)) %783)))
%844
%844
%844
(+.f32 (approx %22 %809) %848)
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 uy (fma.f32 #s(literal -2 binary32) %344 %745))))))))
(fma.f32 (*.f32 %858 zi) ux (fma.f32 (approx (* %104 %93) %863) yi (*.f32 %870 %871)))
(+.f32 (+.f32 %882 %819) %823)
(+.f32 (+.f32 (*.f32 (*.f32 %887 %880) xi) %819) %823)
(approx %383 (fma.f32 %47 %117 (fma.f32 (*.f32 #s(literal -2 binary32) (-.f32 (*.f32 (*.f32 uy %217) %372) (*.f32 %157 %372))) uy %373)))
(approx %25 (fma.f32 maxCos %119 (fma.f32 (*.f32 (*.f32 %900 xi) (*.f32 %216 %372)) uy (fma.f32 %277 (*.f32 %372 %156) %373))))
(fma.f32 (*.f32 ux %909) %432 (*.f32 (sqrt.f32 (fma.f32 %367 (*.f32 (*.f32 (*.f32 maxCos %909) ux) ux) #s(literal 1 binary32))) %917))
(approx %25 (fma.f32 maxCos %119 %921))
(+.f32 (approx (+ %17 (* (/ (- (cos (- %513 %924)) (cos (+ (* (+ %3 %3) uy) %924))) 2) yi)) (*.f32 #s(literal 1/2 binary32) (*.f32 yi (-.f32 (cos.f32 (-.f32 %775 %936)) (cos.f32 (+.f32 %936 %775)))))) %823)
(fma.f32 %506 %432 (*.f32 (sqrt.f32 (fma.f32 %367 %866 #s(literal 1 binary32))) %951))
(fma.f32 %506 %432 %954)
(fma.f32 %117 (*.f32 %78 zi) %954)
(+.f32 (+.f32 %882 (*.f32 (*.f32 %958 %880) yi)) %823)
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (fma.f32 %965 yi %966)))))
(fma.f32 %117 %278 (*.f32 %372 (approx %714 (*.f32 (fma.f32 %964 (/.f32 yi xi) %966) xi))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (+.f32 xi (*.f32 uy (approx (+ %68 (* uy %740)) (*.f32 %535 (fma.f32 #s(literal -4/3 binary32) %743 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %496 (*.f32 #s(literal 2 binary32) %344)) uy))))))))))
(fma.f32 %506 %432 (*.f32 %511 (fma.f32 %863 yi (*.f32 (sin.f32 %993) xi))))
(fma.f32 %506 %432 (*.f32 %511 %951))
(fma.f32 %506 %432 (*.f32 %511 %1004))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (fma.f32 %1007 %1008 %966)))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (fma.f32 (*.f32 xi yi) %965 %1015))))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (fma.f32 (*.f32 xi %1008) %1007 %1015))))
(+.f32 (+.f32 %882 (*.f32 (approx %19 (*.f32 (*.f32 (cos.f32 %246) (sin.f32 %246)) #s(literal 2 binary32))) yi)) %823)
(+.f32 (+.f32 %1037 %1039) %848)
(approx %25 (fma.f32 #s(literal 2 binary32) %671 %700))
(+.f32 (+.f32 (*.f32 (*.f32 %887 %1035) xi) %1039) %848)
(+.f32 (+.f32 (*.f32 (*.f32 (approx %5 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -2 binary32) %536))) %1035) xi) %1039) %848)
(+.f32 (+.f32 %1037 (*.f32 (*.f32 (approx %18 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %535 %742) (*.f32 #s(literal 2 binary32) %156)))) %1035) yi)) %848)
(fma.f32 %1070 (*.f32 #s(literal 1/2 binary32) yi) (fma.f32 %870 %871 (*.f32 %865 zi)))
(+.f32 (+.f32 %817 %1083) %848)
(+.f32 (+.f32 %882 (*.f32 (/.f32 (-.f32 %1087 %1069) #s(literal 2 binary32)) yi)) %823)
(+.f32 (+.f32 %882 (*.f32 (/.f32 (-.f32 %1087 (cos.f32 (fma.f32 %156 uy (fma.f32 %156 uy %1065)))) #s(literal 2 binary32)) yi)) %823)
(+.f32 (+.f32 %882 (/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) (*.f32 %1070 yi)))) %823)
(+.f32 (+.f32 %882 (*.f32 (/.f32 (-.f32 %1087 (sin.f32 (+.f32 (neg.f32 %1068) %837))) #s(literal 2 binary32)) yi)) %823)
(+.f32 (+.f32 %1037 (*.f32 (*.f32 (*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 %610) (cos.f32 %610))) %1035) yi)) %848)
(+.f32 (+.f32 %1037 %1083) %848)
(+.f32 (+.f32 %1037 (*.f32 (*.f32 (-.f32 (cos.f32 (-.f32 %862 %1124)) (cos.f32 (fma.f32 %292 uy %1124))) #s(literal 1/2 binary32)) yi)) %848)
(+.f32 (+.f32 %1037 (*.f32 (*.f32 (approx %18 (*.f32 uy (fma.f32 #s(literal 2 binary32) %156 (*.f32 %535 (fma.f32 #s(literal -4/3 binary32) %742 (*.f32 #s(literal 4/15 binary32) (*.f32 %535 %1136))))))) %1035) yi)) %848)
(+.f32 (+.f32 %1037 (*.f32 (/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %1081)) yi)) %848)
(+.f32 (+.f32 (*.f32 (/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) (+.f32 (cos.f32 %1079) (cos.f32 %1076)))) xi) %1039) %848)
(+.f32 (+.f32 %1037 (*.f32 (*.f32 (+.f32 %1077 (sin.f32 (-.f32 %993 %1124))) #s(literal 1/2 binary32)) yi)) %848)
(+.f32 (+.f32 %882 (*.f32 (*.f32 #s(literal -2 binary32) (*.f32 (*.f32 (sin.f32 (*.f32 (+.f32 %1068 %1086) #s(literal 1/2 binary32))) (sin.f32 (*.f32 (-.f32 %1086 %1068) #s(literal 1/2 binary32)))) #s(literal 1/2 binary32))) yi)) %823)
(fma.f32 %506 %432 (*.f32 %1192 %917))
(fma.f32 %506 %432 (*.f32 %1192 %1004))
(fma.f32 %506 %432 (*.f32 %511 (approx %518 (*.f32 xi (+.f32 %776 (/.f32 (approx %549 (*.f32 uy (fma.f32 #s(literal 2 binary32) %157 (*.f32 %535 (fma.f32 #s(literal -4/3 binary32) %743 (*.f32 %535 (fma.f32 #s(literal -8/315 binary32) (*.f32 %535 (*.f32 yi %1199)) (*.f32 #s(literal 4/15 binary32) (*.f32 yi %1136))))))))) xi))))))
(+.f32 (approx %22 (*.f32 xi (fma.f32 %776 %668 (/.f32 %921 xi)))) %848)
(approx %25 (fma.f32 maxCos %119 (fma.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy (*.f32 xi (*.f32 %343 %668))) %1225) %699)))
(+.f32 (+.f32 %1037 (approx %21 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %535 %1231) %1225)))) %848)
(+.f32 (+.f32 (*.f32 (*.f32 %877 %1248) xi) (*.f32 (*.f32 %958 %1248) yi)) %848)
(+.f32 (+.f32 %882 %1263) %823)
(+.f32 (+.f32 %1037 %1263) %848)
%1280
%1280
(+.f32 (+.f32 %1037 %1278) %848)
Outputs
%2 = (-.f32 #s(literal 1 binary32) ux)
%14 = (PI.f32 )
(fma.f32 (*.f32 ux %2) (*.f32 maxCos zi) (*.f32 (sqrt.f32 (fma.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) (*.f32 (*.f32 (*.f32 maxCos %2) ux) ux) #s(literal 1 binary32))) (fma.f32 (sin.f32 (*.f32 %14 (+.f32 uy uy))) yi (*.f32 (sin.f32 (fma.f32 (*.f32 #s(literal -2 binary32) uy) %14 (*.f32 %14 #s(literal 1/2 binary32)))) xi))))
Calls

182 calls:

107.0ms
uy
58.0ms
yi
54.0ms
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
52.0ms
(*.f32 uy #s(literal 2 binary32))
48.0ms
xi
Results
AccuracySegmentsBranch
12.2%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
12.2%1
ux
12.2%1
yi
12.2%1
(*.f32 uy #s(literal 2 binary32))
12.2%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
12.2%1
xi
12.2%1
zi
12.2%1
uy
12.2%1
maxCos
12.2%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
12.2%1
ux
12.2%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
12.2%1
xi
12.2%1
yi
12.2%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
12.2%1
zi
12.2%1
maxCos
12.2%1
(*.f32 uy #s(literal 2 binary32))
12.2%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
12.2%1
uy
50.0%1
ux
50.0%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
50.0%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
50.0%1
xi
50.0%1
yi
50.0%1
maxCos
50.0%1
zi
50.0%1
(*.f32 uy #s(literal 2 binary32))
50.0%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
50.0%1
uy
52.1%1
(*.f32 uy #s(literal 2 binary32))
52.1%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
52.1%1
uy
52.1%1
xi
52.1%1
yi
52.1%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
52.1%1
(*.f32 uy #s(literal 2 binary32))
52.1%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
64.5%3
xi
66.0%3
yi
52.1%1
zi
52.1%1
uy
52.1%1
maxCos
52.1%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
52.1%1
ux
79.2%1
zi
79.2%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
79.2%1
(*.f32 uy #s(literal 2 binary32))
79.2%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
79.2%1
xi
79.2%1
yi
79.2%1
ux
79.2%1
uy
79.2%1
maxCos
79.2%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
83.6%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
83.6%1
(*.f32 uy #s(literal 2 binary32))
83.6%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
83.6%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
83.6%1
xi
83.6%1
yi
83.6%1
uy
83.6%1
maxCos
83.6%1
zi
83.6%1
ux
90.3%1
yi
90.3%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
90.3%1
(*.f32 uy #s(literal 2 binary32))
90.3%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
90.3%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
90.3%1
xi
90.3%1
uy
90.3%1
maxCos
90.3%1
zi
90.3%1
ux
90.3%1
yi
90.3%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
90.3%1
maxCos
90.3%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
90.3%1
(*.f32 uy #s(literal 2 binary32))
90.3%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
90.3%1
xi
90.3%1
ux
90.3%1
uy
90.3%1
zi
90.3%1
xi
90.3%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
90.3%1
yi
90.3%1
maxCos
90.3%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
90.3%1
(*.f32 uy #s(literal 2 binary32))
90.3%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
90.3%1
zi
90.3%1
ux
90.3%1
uy
90.4%1
ux
90.4%1
zi
90.4%1
maxCos
90.4%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
90.4%1
(*.f32 uy #s(literal 2 binary32))
90.4%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
90.4%1
uy
96.5%2
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
90.4%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
96.2%2
maxCos
97.5%2
(*.f32 uy #s(literal 2 binary32))
97.5%2
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
90.4%1
xi
90.4%1
yi
94.1%2
zi
90.4%1
ux
97.5%2
uy
95.5%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
95.5%1
maxCos
95.5%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
95.5%1
(*.f32 uy #s(literal 2 binary32))
95.5%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
95.5%1
xi
95.5%1
yi
95.5%1
zi
95.5%1
ux
95.5%1
uy
95.5%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
95.5%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
95.5%1
(*.f32 uy #s(literal 2 binary32))
95.5%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
95.5%1
xi
95.5%1
yi
95.5%1
zi
95.5%1
ux
95.5%1
uy
95.5%1
maxCos
95.6%1
(*.f32 uy #s(literal 2 binary32))
95.6%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
95.6%1
xi
95.6%1
yi
95.6%1
zi
95.6%1
ux
95.6%1
uy
95.6%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
95.6%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
95.6%1
maxCos
98.6%1
(*.f32 uy #s(literal 2 binary32))
98.6%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
98.6%1
xi
98.6%1
yi
98.6%1
zi
98.6%1
ux
98.6%1
uy
98.6%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
98.6%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
98.6%1
maxCos
98.6%1
ux
98.6%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
98.6%1
(*.f32 uy #s(literal 2 binary32))
98.6%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
98.6%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
98.6%1
xi
98.6%1
yi
98.6%1
zi
98.6%1
uy
98.6%1
maxCos
99.2%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
99.2%1
(*.f32 uy #s(literal 2 binary32))
99.2%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
99.2%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
99.2%1
xi
99.2%1
yi
99.2%1
zi
99.2%1
ux
99.2%1
uy
99.2%1
maxCos
99.2%1
(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
99.2%1
(*.f32 uy #s(literal 2 binary32))
99.2%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
99.2%1
%4 = (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
%11 = (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
%14 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11)))
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 %4) %14) xi) (*.f32 (*.f32 (sin.f32 %4) %14) yi)) (*.f32 %11 zi))
99.2%1
xi
99.2%1
yi
99.2%1
zi
99.2%1
ux
99.2%1
uy
99.2%1
maxCos
Compiler

Compiled 6 195 to 840 computations (86.4% saved)

bsearch43.0ms (0.5%)

Memory
-11.6MiB live, 117.1MiB allocated; 4ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.018137868493795395
0.018393458798527718
Compiler

Compiled 68 to 27 computations (60.3% saved)

bsearch4.0ms (0.0%)

Memory
26.4MiB live, 26.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.5223657255761534e-13
1.660813305458253e-12
0.0ms
-5.43610591598988e-17
-6.448118961083085e-18
Compiler

Compiled 68 to 27 computations (60.3% saved)

derivations263.0ms (3.1%)

Memory
-11.3MiB live, 240.6MiB allocated; 22ms collecting garbage
Stop Event
fuel
Compiler

Compiled 615 to 128 computations (79.2% saved)

preprocess128.0ms (1.5%)

Memory
19.2MiB live, 268.8MiB allocated; 21ms collecting garbage
Compiler

Compiled 680 to 154 computations (77.4% saved)

end0.0ms (0.0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...