UniformSampleCone, y

Time bar (total: 4.2s)

start0.0ms (0.0%)

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

analyze60.0ms (1.4%)

Memory
4.3MiB live, 56.8MiB allocated; 13ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0.0%0.0%0.1%99.9%0.0%0.0%0.0%0
0.0%0.0%0.1%99.9%0.0%0.0%0.0%1
0.0%0.0%0.1%99.9%0.0%0.0%0.0%2
0.0%0.0%0.1%99.9%0.0%0.0%0.0%3
12.5%0.0%0.1%99.9%0.0%0.0%0.0%4
18.7%0.0%0.1%99.9%0.0%0.0%0.0%5
28.1%0.0%0.1%99.9%0.0%0.0%0.0%6
42.2%0.0%0.1%99.9%0.0%0.0%0.0%7
49.2%0.0%0.0%99.9%0.0%0.0%0.0%8
57.4%0.1%0.0%99.9%0.0%0.0%0.0%9
67.0%0.1%0.0%99.9%0.0%0.0%0.0%10
71.8%0.1%0.0%99.9%0.0%0.0%0.0%11
76.9%0.1%0.0%99.9%0.0%0.0%0.0%12
Compiler

Compiled 49 to 28 computations (42.9% saved)

sample605.0ms (14.3%)

Memory
34.3MiB live, 397.8MiB allocated; 191ms collecting garbage
Samples
204.0ms3 171×1valid
172.0ms5 084×0valid
0.0ms2valid
Precisions
Click to see histograms. Total time spent on operations: 59.0ms
Sinu: 32.0ms (54.7% of total, 0.0 MiB)
Mul: 8.0ms (13.7% of total, 0.0 MiB)
Sqrt: 6.0ms (10.2% of total, 0.0 MiB)
adjust: 4.0ms (6.8% of total, 0.0 MiB)
Sub: 4.0ms (6.8% of total, 0.0 MiB)
Add: 3.0ms (5.1% of total, 0.0 MiB)
Assert: 0.0ms (0.0% of total, 0.0 MiB)
Le: 0.0ms (0.0% of total, 0.0 MiB)
And: 0.0ms (0.0% of total, 0.0 MiB)
Bogosity

preprocess31.0ms (0.7%)

Memory
-12.9MiB live, 17.7MiB allocated; 4ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
065167
1373161
21863161
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
55.8%
%11 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11))))
Compiler

Compiled 50 to 32 computations (36.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)

series37.0ms (0.9%)

Memory
-16.2MiB live, 22.7MiB allocated; 4ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06545339
Stop Event
iter-limit
Counts
16 → 106
Calls
Call 1
Inputs
%2 = (*.f32 uy #s(literal 2 binary32))
%3 = (PI.f32 )
%4 = (*.f32 %2 %3)
%5 = (sin.f32 %4)
%8 = (-.f32 #s(literal 1 binary32) ux)
%10 = (*.f32 ux maxCos)
%11 = (+.f32 %8 %10)
%12 = (*.f32 %11 %11)
%13 = (-.f32 #s(literal 1 binary32) %12)
%14 = (sqrt.f32 %13)
uy
#s(literal 2 binary32)
%2
%3
%4
%5
#s(literal 1 binary32)
ux
%8
maxCos
%10
%11
%12
%13
%14
(*.f32 %5 %14)
Outputs
%6 = (- 1 ux)
%10 = (*.f32 #s(literal -1 binary32) ux)
%14 = (* ux maxCos)
%15 = (*.f32 maxCos ux)
%17 = (+ %6 %14)
%18 = (-.f32 maxCos #s(literal 1 binary32))
%19 = (*.f32 ux %18)
%22 = (* %17 %17)
%24 = (*.f32 #s(literal 2 binary32) maxCos)
%29 = (pow.f32 %18 #s(literal 2 binary32))
%30 = (*.f32 ux %29)
%36 = (- 1 %22)
%37 = (-.f32 #s(literal 2 binary32) %24)
%38 = (*.f32 ux %37)
%45 = (sqrt %36)
%46 = (sqrt.f32 %38)
%49 = (pow.f32 ux #s(literal 2 binary32))
%50 = (*.f32 %49 %29)
%55 = (/.f32 %29 %46)
%58 = (pow.f32 %18 #s(literal 4 binary32))
%61 = (pow.f32 %46 #s(literal 3 binary32))
%71 = (pow.f32 %18 #s(literal 6 binary32))
%74 = (pow.f32 %46 #s(literal 5 binary32))
%84 = (* uy 2)
%86 = (* %84 (PI ))
%87 = (sin %86)
%88 = (* %87 %45)
%89 = (PI.f32 )
%91 = (*.f32 #s(literal 2 binary32) (*.f32 uy %89))
%92 = (sin.f32 %91)
%93 = (*.f32 %92 %46)
%95 = (*.f32 %92 %29)
%100 = (/.f32 %95 %46)
%101 = (*.f32 %92 %58)
%121 = (/.f32 #s(literal 1 binary32) ux)
%131 = (/.f32 maxCos ux)
%132 = (fma.f32 #s(literal 2 binary32) %131 %29)
%133 = (*.f32 #s(literal 2 binary32) %121)
%149 = (sqrt.f32 (neg.f32 %29))
%150 = (*.f32 ux %149)
%154 = (*.f32 #s(literal 1/2 binary32) (/.f32 %37 %150))
%158 = (pow.f32 %37 #s(literal 2 binary32))
%160 = (*.f32 %49 (pow.f32 %149 #s(literal 3 binary32)))
%161 = (/.f32 %158 %160)
%167 = (pow.f32 %37 #s(literal 3 binary32))
%170 = (*.f32 (pow.f32 ux #s(literal 3 binary32)) (pow.f32 %149 #s(literal 5 binary32)))
%177 = (*.f32 %92 %149)
%182 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %92 %37) %150) %177)
%186 = (/.f32 (*.f32 %92 %158) %160)
%201 = (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) maxCos))
%209 = (pow.f32 %201 #s(literal 2 binary32))
%210 = (*.f32 %49 %209)
%214 = (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -2 binary32) maxCos))
%231 = (sqrt.f32 (neg.f32 %209))
%232 = (*.f32 ux %231)
%241 = (/.f32 %214 %231)
%243 = (pow.f32 %214 #s(literal 2 binary32))
%244 = (pow.f32 %231 #s(literal 3 binary32))
%245 = (*.f32 ux %244)
%256 = (pow.f32 %214 #s(literal 3 binary32))
%258 = (*.f32 ux (pow.f32 %231 #s(literal 5 binary32)))
%271 = (*.f32 %92 %231)
%275 = (*.f32 %92 %214)
%281 = (/.f32 %275 %231)
%282 = (*.f32 %92 %243)
%309 = (pow.f32 uy #s(literal 2 binary32))
%310 = (pow.f32 %89 #s(literal 3 binary32))
%317 = (pow.f32 %89 #s(literal 5 binary32))
%327 = (pow.f32 %89 #s(literal 7 binary32))
%338 = (-.f32 (+.f32 #s(literal 1 binary32) %15) ux)
%341 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 %338 #s(literal 2 binary32))))
%342 = (*.f32 %89 %341)
%346 = (*.f32 %310 %341)
%352 = (*.f32 %317 %341)
%374 = (-.f32 #s(literal 1 binary32) ux)
%377 = (pow.f32 %374 #s(literal 2 binary32))
%379 = (*.f32 ux %374)
%380 = (*.f32 maxCos %379)
%383 = (*.f32 maxCos %49)
%387 = (-.f32 #s(literal 1 binary32) %377)
%400 = (sqrt.f32 %387)
%406 = (/.f32 %379 %400)
%407 = (*.f32 %49 %377)
%410 = (+.f32 (/.f32 %407 (pow.f32 %400 #s(literal 2 binary32))) %49)
%418 = (*.f32 %410 %374)
%421 = (pow.f32 %400 #s(literal 3 binary32))
%431 = (*.f32 %92 %400)
%434 = (*.f32 ux (*.f32 %92 %374))
%439 = (/.f32 %434 %400)
%440 = (*.f32 %92 %410)
%464 = (pow.f32 maxCos #s(literal 2 binary32))
%465 = (*.f32 %464 %49)
%467 = (/.f32 %379 maxCos)
%473 = (fma.f32 #s(literal 2 binary32) %467 (+.f32 (/.f32 %377 %464) %49))
%487 = (sqrt.f32 (neg.f32 %49))
%488 = (*.f32 maxCos %487)
%490 = (/.f32 %379 %488)
%493 = (*.f32 maxCos (+.f32 %487 (*.f32 #s(literal -1 binary32) %490)))
%498 = (-.f32 #s(literal 1 binary32) (+.f32 (/.f32 %407 (pow.f32 %487 #s(literal 2 binary32))) %377))
%499 = (*.f32 %464 %487)
%501 = (*.f32 #s(literal 1/2 binary32) (/.f32 %498 %499))
%506 = (*.f32 %374 %498)
%507 = (*.f32 ux %506)
%509 = (pow.f32 %487 #s(literal 3 binary32))
%510 = (*.f32 (pow.f32 maxCos #s(literal 3 binary32)) %509)
%517 = (*.f32 %92 %487)
%518 = (*.f32 maxCos %517)
%520 = (/.f32 %434 %488)
%522 = (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %520 %517))
%524 = (*.f32 %92 %498)
%526 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %524 %499) %517)
%531 = (*.f32 ux (*.f32 %92 %506))
%564 = (/.f32 %379 %487)
%572 = (*.f32 maxCos %509)
%590 = (/.f32 %434 %487)
(approx uy #s(literal 0 binary32))
(approx ux ux)
(approx %6 #s(literal 1 binary32))
(approx %6 (+.f32 #s(literal 1 binary32) %10))
(approx %14 %15)
(approx %17 (+.f32 #s(literal 1 binary32) %19))
(approx %22 (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 %24 #s(literal 2 binary32)))))
(approx %22 (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 (fma.f32 #s(literal 2 binary32) maxCos %30) #s(literal 2 binary32)))))
(approx %36 %38)
(approx %36 (*.f32 ux (-.f32 (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -1 binary32) %30)) %24)))
(approx %45 %46)
(approx %45 (+.f32 %46 (*.f32 #s(literal -1/2 binary32) (/.f32 %50 %46))))
(approx %45 (+.f32 %46 (*.f32 %49 (fma.f32 #s(literal -1/2 binary32) %55 (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %49 %58) %61))))))
(approx %45 (+.f32 %46 (*.f32 %49 (fma.f32 #s(literal -1/2 binary32) %55 (*.f32 %49 (fma.f32 #s(literal -1/8 binary32) (/.f32 %58 %61) (*.f32 #s(literal -1/16 binary32) (/.f32 (*.f32 %49 %71) %74))))))))
(approx %88 %93)
(approx %88 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 %49 %95) %46) %93))
(approx %88 (fma.f32 %92 %46 (*.f32 %49 (fma.f32 #s(literal -1/2 binary32) %100 (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %49 %101) %61))))))
(approx %88 (fma.f32 %92 %46 (*.f32 %49 (fma.f32 #s(literal -1/2 binary32) %100 (*.f32 %49 (fma.f32 #s(literal -1/8 binary32) (/.f32 %101 %61) (*.f32 #s(literal -1/16 binary32) (/.f32 (*.f32 %49 (*.f32 %92 %71)) %74))))))))
(approx %6 %10)
(approx %6 (*.f32 ux (-.f32 %121 #s(literal 1 binary32))))
(approx %17 %19)
(approx %17 (*.f32 ux (-.f32 (+.f32 maxCos %121) #s(literal 1 binary32))))
(approx %22 %50)
(approx %22 (*.f32 %49 (-.f32 %132 %133)))
(approx %22 (*.f32 %49 (-.f32 (fma.f32 #s(literal 2 binary32) %131 (+.f32 (/.f32 #s(literal 1 binary32) %49) %29)) %133)))
(approx %36 (*.f32 #s(literal -1 binary32) %50))
(approx %36 (*.f32 %49 (-.f32 %133 %132)))
(approx %45 %150)
(approx %45 (*.f32 ux (+.f32 %149 %154)))
(approx %45 (*.f32 ux (+.f32 %149 (fma.f32 #s(literal -1/8 binary32) %161 %154))))
(approx %45 (*.f32 ux (+.f32 %149 (fma.f32 #s(literal -1/8 binary32) %161 (fma.f32 #s(literal 1/16 binary32) (/.f32 %167 %170) %154)))))
(approx %88 (*.f32 ux %177))
(approx %88 (*.f32 ux %182))
(approx %88 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %186 %182)))
(approx %88 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %186 (fma.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %92 %167) %170) %182))))
(approx %6 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 #s(literal 1 binary32) %121))))
(approx %17 (*.f32 #s(literal -1 binary32) (*.f32 ux %201)))
(approx %17 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 %201 %121))))
(approx %22 %210)
(approx %22 (*.f32 %49 (fma.f32 #s(literal -1 binary32) (/.f32 %214 ux) %209)))
(approx %22 (*.f32 %49 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 %214 %121) ux) %209)))
(approx %36 (*.f32 #s(literal -1 binary32) %210))
(approx %36 (*.f32 %49 (-.f32 (fma.f32 #s(literal -2 binary32) %131 %133) %209)))
(approx %45 (*.f32 #s(literal -1 binary32) %232))
(approx %45 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %231 (*.f32 #s(literal 1/2 binary32) (/.f32 %214 %232))))))
(approx %45 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %231 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %241 (*.f32 #s(literal 1/8 binary32) (/.f32 %243 %245))) ux))))))
(approx %45 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %231 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/8 binary32) (/.f32 %243 %244) (*.f32 #s(literal 1/16 binary32) (/.f32 %256 %258))) ux) (*.f32 #s(literal -1/2 binary32) %241)) ux))))))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 ux %271)))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal 1/2 binary32) (/.f32 %275 %232) %271))))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %281 (*.f32 #s(literal 1/8 binary32) (/.f32 %282 %245))) ux) %271))))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/8 binary32) (/.f32 %282 %244) (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %92 %256) %258))) ux) (*.f32 #s(literal -1/2 binary32) %281)) ux) %271))))
(approx uy uy)
(approx %84 (*.f32 #s(literal 2 binary32) uy))
(approx %86 %91)
(approx %87 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %309 %310) (*.f32 #s(literal 2 binary32) %89))))
(approx %87 (*.f32 uy (fma.f32 #s(literal 2 binary32) %89 (*.f32 %309 (fma.f32 #s(literal -4/3 binary32) %310 (*.f32 #s(literal 4/15 binary32) (*.f32 %309 %317)))))))
(approx %87 (*.f32 uy (fma.f32 #s(literal 2 binary32) %89 (*.f32 %309 (fma.f32 #s(literal -4/3 binary32) %310 (*.f32 %309 (fma.f32 #s(literal -8/315 binary32) (*.f32 %309 %327) (*.f32 #s(literal 4/15 binary32) %317))))))))
(approx %88 (*.f32 #s(literal 2 binary32) (*.f32 uy %342)))
(approx %88 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %309 %346) (*.f32 #s(literal 2 binary32) %342))))
(approx %88 (*.f32 uy (fma.f32 #s(literal 2 binary32) %342 (*.f32 %309 (fma.f32 #s(literal -4/3 binary32) %346 (*.f32 #s(literal 4/15 binary32) (*.f32 %309 %352)))))))
(approx %88 (*.f32 uy (fma.f32 #s(literal 2 binary32) %342 (*.f32 %309 (fma.f32 #s(literal -4/3 binary32) %346 (*.f32 %309 (fma.f32 #s(literal -8/315 binary32) (*.f32 %309 (*.f32 %327 %341)) (*.f32 #s(literal 4/15 binary32) %352))))))))
(approx %87 %92)
(approx %88 (*.f32 %92 %341))
(approx maxCos maxCos)
(approx %17 %374)
(approx %17 %338)
(approx %22 %377)
(approx %22 (fma.f32 #s(literal 2 binary32) %380 %377))
(approx %22 (fma.f32 maxCos (fma.f32 #s(literal 2 binary32) %379 %383) %377))
(approx %36 %387)
(approx %36 (-.f32 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -2 binary32) %380)) %377))
(approx %36 (-.f32 (+.f32 #s(literal 1 binary32) (*.f32 maxCos (-.f32 (*.f32 #s(literal -1 binary32) %383) (*.f32 #s(literal 2 binary32) %379)))) %377))
(approx %45 %400)
(approx %45 (+.f32 %400 (*.f32 #s(literal -1 binary32) (/.f32 %380 %400))))
(approx %45 (+.f32 %400 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %406 (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos %410) %400))))))
(approx %45 (+.f32 %400 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %406 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos (*.f32 ux %418)) %421) (*.f32 #s(literal -1/2 binary32) (/.f32 %410 %400))))))))
(approx %88 %431)
(approx %88 (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 maxCos %434) %400) %431))
(approx %88 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %439 (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos %440) %400))) %431))
(approx %88 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %439 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos (*.f32 ux (*.f32 %92 %418))) %421) (*.f32 #s(literal -1/2 binary32) (/.f32 %440 %400))))) %431))
(approx %17 (*.f32 maxCos (-.f32 (+.f32 ux (/.f32 #s(literal 1 binary32) maxCos)) (/.f32 ux maxCos))))
(approx %22 %465)
(approx %22 (*.f32 %464 (fma.f32 #s(literal 2 binary32) %467 %49)))
(approx %22 (*.f32 %464 %473))
(approx %36 (*.f32 #s(literal -1 binary32) %465))
(approx %36 (*.f32 %464 (-.f32 (*.f32 #s(literal -2 binary32) %467) %49)))
(approx %36 (*.f32 %464 (-.f32 (/.f32 #s(literal 1 binary32) %464) %473)))
(approx %45 %488)
(approx %45 %493)
(approx %45 (*.f32 maxCos (+.f32 %487 (fma.f32 #s(literal -1 binary32) %490 %501))))
(approx %45 (*.f32 maxCos (+.f32 %487 (fma.f32 #s(literal -1 binary32) %490 (fma.f32 #s(literal 1/2 binary32) (/.f32 %507 %510) %501)))))
(approx %88 %518)
(approx %88 %522)
(approx %88 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %520 %526)))
(approx %88 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %520 (fma.f32 #s(literal 1/2 binary32) (/.f32 %531 %510) %526))))
(approx %17 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) ux (*.f32 #s(literal -1 binary32) (/.f32 %374 maxCos))))))
(approx %22 (*.f32 %464 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %379 (*.f32 #s(literal -1 binary32) (/.f32 %377 maxCos))) maxCos) %49)))
(approx %36 (*.f32 %464 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %387 maxCos)) (*.f32 #s(literal -2 binary32) %379)) maxCos)) %49)))
(approx %45 (*.f32 #s(literal -1 binary32) %488))
(approx %45 (*.f32 #s(literal -1 binary32) %493))
(approx %45 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %487 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %498 %488) %564) maxCos))))))
(approx %45 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %487 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/2 binary32) (/.f32 %507 %572) (*.f32 #s(literal 1/2 binary32) (/.f32 %498 %487))) maxCos) %564) maxCos))))))
(approx %88 (*.f32 #s(literal -1 binary32) %518))
(approx %88 (*.f32 #s(literal -1 binary32) %522))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %524 %488) %590) maxCos) %517))))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/2 binary32) (/.f32 %531 %572) (*.f32 #s(literal 1/2 binary32) (/.f32 %524 %487))) maxCos) %590) maxCos) %517))))
Calls

9 calls:

TimeVariablePoint
2.0ms
maxCos
0
1.0ms
ux
-inf
1.0ms
ux
0
1.0ms
ux
inf
1.0ms
maxCos
inf

rewrite124.0ms (2.9%)

Memory
31.4MiB live, 122.7MiB allocated; 8ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
016108
02778
18978
235478
3241878
0473778
0475473
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
16 → 658
Calls
Call 1
Inputs
%2 = (*.f32 uy #s(literal 2 binary32))
%3 = (PI.f32 )
%4 = (*.f32 %2 %3)
%5 = (sin.f32 %4)
%8 = (-.f32 #s(literal 1 binary32) ux)
%10 = (*.f32 ux maxCos)
%11 = (+.f32 %8 %10)
%12 = (*.f32 %11 %11)
%13 = (-.f32 #s(literal 1 binary32) %12)
%14 = (sqrt.f32 %13)
uy
#s(literal 2 binary32)
%2
%3
%4
%5
#s(literal 1 binary32)
ux
%8
maxCos
%10
%11
%12
%13
%14
(*.f32 %5 %14)
Outputs
%9 = (+.f32 uy uy)
%14 = (neg.f32 uy)
%22 = (PI.f32 )
%23 = (*.f32 %22 uy)
%27 = (+.f32 %22 %22)
%31 = (*.f32 %22 %9)
%34 = (*.f32 #s(literal 1 binary32) %23)
%38 = (*.f32 %23 #s(literal 1 binary32))
%51 = (sin.f32 %31)
%54 = (neg.f32 ux)
%58 = (-.f32 #s(literal 1 binary32) ux)
%74 = (-.f32 ux #s(literal 1 binary32))
%77 = (neg.f32 maxCos)
%78 = (neg.f32 %77)
%82 = (*.f32 maxCos ux)
%86 = (*.f32 %77 ux)
%88 = (fma.f32 maxCos ux %58)
%89 = (*.f32 %88 #s(literal 1/2 binary32))
%91 = (*.f32 %88 #s(literal 2 binary32))
%93 = (*.f32 #s(literal 2 binary32) %88)
%97 = (*.f32 #s(literal 1/2 binary32) %88)
%101 = (fma.f32 maxCos ux #s(literal 1 binary32))
%103 = (-.f32 %82 ux)
%107 = (-.f32 ux %82)
%109 = (*.f32 %88 #s(literal 0 binary32))
%111 = (*.f32 #s(literal 0 binary32) %88)
%116 = (*.f32 %54 #s(literal 1 binary32))
%119 = (*.f32 %58 #s(literal 1 binary32))
%128 = (*.f32 %82 #s(literal 1 binary32))
%132 = (*.f32 #s(literal 1 binary32) %54)
%134 = (*.f32 #s(literal 1 binary32) %58)
%138 = (*.f32 #s(literal 1 binary32) %82)
%161 = (-.f32 #s(literal 1/2 binary32) %107)
%172 = (*.f32 #s(literal 1 binary32) %103)
%175 = (-.f32 ux %101)
%181 = (fabs.f32 %88)
%182 = (neg.f32 %181)
%183 = (neg.f32 %182)
%190 = (*.f32 %88 %88)
%193 = (*.f32 %74 %74)
%194 = (*.f32 #s(literal 2 binary32) %58)
%195 = (*.f32 %194 %86)
%196 = (*.f32 %82 maxCos)
%197 = (*.f32 %196 ux)
%201 = (fma.f32 %196 ux (*.f32 %194 %82))
%204 = (fma.f32 %194 %82 %193)
%205 = (neg.f32 %197)
%208 = (*.f32 %58 maxCos)
%211 = (fma.f32 %74 %74 (*.f32 #s(literal -2 binary32) (*.f32 %208 %54)))
%213 = (*.f32 %107 #s(literal 2 binary32))
%214 = (-.f32 #s(literal 1 binary32) %213)
%215 = (*.f32 %107 %107)
%218 = (*.f32 %88 maxCos)
%219 = (*.f32 %218 ux)
%220 = (*.f32 %74 %88)
%222 = (*.f32 %74 %175)
%223 = (*.f32 %82 %175)
%227 = (fma.f32 %54 %88 %219)
%229 = (*.f32 %54 %88)
%230 = (-.f32 %229 %223)
%232 = (*.f32 %88 %103)
%234 = (*.f32 %103 %88)
%236 = (fma.f32 %208 ux %222)
%240 = (fma.f32 %196 ux %222)
%242 = (fma.f32 %74 %74 %219)
%244 = (-.f32 %193 %223)
%246 = (*.f32 %82 ux)
%250 = (*.f32 %58 ux)
%254 = (*.f32 maxCos maxCos)
%255 = (*.f32 ux ux)
%266 = (fabs.f32 %82)
%270 = (fabs.f32 %58)
%271 = (fma.f32 %208 ux %219)
%273 = (*.f32 %208 ux)
%274 = (-.f32 %273 %223)
%279 = (*.f32 %88 ux)
%292 = (*.f32 %175 %86)
%294 = (*.f32 %86 %175)
%318 = (*.f32 ux %58)
%322 = (*.f32 ux %82)
%336 = (*.f32 maxCos %82)
%340 = (*.f32 maxCos %58)
%375 = (pow.f32 %74 #s(literal 2 binary32))
%384 = (pow.f32 %101 #s(literal 2 binary32))
%429 = (*.f32 %175 %88)
%433 = (-.f32 %181 #s(literal -1 binary32))
%434 = (neg.f32 %433)
%435 = (-.f32 %181 #s(literal 1 binary32))
%437 = (-.f32 %107 #s(literal 0 binary32))
%438 = (neg.f32 %437)
%439 = (-.f32 %107 #s(literal 2 binary32))
%441 = (+.f32 #s(literal 1 binary32) %182)
%442 = (-.f32 #s(literal 1 binary32) %182)
%444 = (neg.f32 %435)
%446 = (-.f32 #s(literal 1 binary32) %181)
%448 = (-.f32 %88 #s(literal 1 binary32))
%450 = (neg.f32 %439)
%452 = (-.f32 %88 #s(literal -1 binary32))
%454 = (neg.f32 %448)
%456 = (-.f32 #s(literal 1 binary32) %88)
%458 = (fma.f32 %175 %88 #s(literal 1 binary32))
%459 = (sqrt.f32 %458)
%460 = (neg.f32 %459)
%463 = (acos.f32 %181)
%464 = (neg.f32 %463)
%471 = (acos.f32 %175)
%472 = (neg.f32 %471)
%479 = (acos.f32 %88)
%480 = (neg.f32 %479)
%487 = (+.f32 %463 %22)
%494 = (+.f32 %471 %22)
%501 = (+.f32 %479 %22)
%688 = (asin.f32 %88)
%689 = (fabs.f32 %688)
%690 = (*.f32 %22 #s(literal 1/2 binary32))
%691 = (+.f32 %689 %690)
%698 = (asin.f32 %181)
%699 = (+.f32 %698 %690)
%706 = (asin.f32 %175)
%707 = (+.f32 %706 %690)
%714 = (acos.f32 %182)
%937 = (+.f32 %463 %690)
%944 = (+.f32 %471 %690)
%951 = (+.f32 %479 %690)
%958 = (+.f32 %689 %22)
%965 = (+.f32 %698 %22)
%972 = (+.f32 %706 %22)
%979 = (+.f32 %688 %22)
%1196 = (neg.f32 %689)
%1203 = (fabs.f32 %689)
%1210 = (fabs.f32 %698)
%1217 = (asin.f32 %182)
%1688 = (*.f32 %458 %458)
%1690 = (-.f32 #s(literal 1 binary32) %222)
%1719 = (sin.f32 %689)
%1722 = (sin.f32 %698)
%1725 = (sin.f32 %706)
%1728 = (sin.f32 %688)
%1735 = (fma.f32 %74 %88 #s(literal 1 binary32))
%1739 = (neg.f32 %218)
%1759 = (fma.f32 %82 %175 #s(literal 1 binary32))
%1762 = (neg.f32 (fma.f32 %218 ux #s(literal -1 binary32)))
%1829 = (sqrt.f32 %459)
%1832 = (/.f32 (+.f32 %459 %459) #s(literal 2 binary32))
%1833 = (cos.f32 %690)
%1837 = (/.f32 (-.f32 %459 %460) #s(literal 2 binary32))
%1839 = (cos.f32 %479)
%1890 = (cos.f32 (-.f32 %479 %31))
%1892 = (cos.f32 (fma.f32 %27 uy %479))
%1893 = (-.f32 %1890 %1892)
%1896 = (sin.f32 (fma.f32 %27 uy %688))
%1898 = (sin.f32 (fma.f32 %27 uy %706))
%1899 = (+.f32 %1896 %1898)
%1901 = (*.f32 %459 %51)
uy
#s(literal 2 binary32)
(*.f32 (*.f32 uy #s(literal 1/2 binary32)) #s(literal 4 binary32))
(*.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 4 binary32) uy))
(*.f32 #s(literal 1 binary32) %9)
(*.f32 %9 #s(literal 1 binary32))
(*.f32 #s(literal 2 binary32) uy)
(*.f32 uy #s(literal 2 binary32))
(-.f32 uy (*.f32 %14 #s(literal 1 binary32)))
(-.f32 uy (*.f32 #s(literal -1 binary32) uy))
(-.f32 uy %14)
(pow.f32 %9 #s(literal 1 binary32))
%9
%22
(*.f32 (*.f32 %23 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(*.f32 %23 #s(literal 2 binary32))
(*.f32 %27 uy)
(*.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 4 binary32) %23))
(*.f32 %31 #s(literal 1 binary32))
%31
(*.f32 %9 %22)
(*.f32 #s(literal 2 binary32) %34)
(*.f32 #s(literal 2 binary32) %23)
(*.f32 uy %27)
(fma.f32 %23 #s(literal 1 binary32) %38)
(fma.f32 #s(literal 1 binary32) %23 %34)
(fma.f32 %22 uy %23)
(fma.f32 uy %22 %23)
(pow.f32 %31 #s(literal 1 binary32))
(+.f32 %38 %38)
(+.f32 %34 %34)
(+.f32 %23 %23)
(*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 %23) (cos.f32 %23)))
(pow.f32 %51 #s(literal 1 binary32))
%51
#s(literal 1 binary32)
ux
(/.f32 (fma.f32 %54 #s(literal 2 binary32) #s(literal 2 binary32)) #s(literal 2 binary32))
(-.f32 %54 #s(literal -1 binary32))
%58
(pow.f32 %58 #s(literal 1 binary32))
(+.f32 (+.f32 %54 #s(literal 1/2 binary32)) #s(literal 1/2 binary32))
(+.f32 %54 #s(literal 1 binary32))
(+.f32 #s(literal 1/2 binary32) (+.f32 #s(literal 1/2 binary32) %54))
(+.f32 #s(literal 1/2 binary32) (-.f32 #s(literal 1/2 binary32) ux))
(+.f32 %58 #s(literal 0 binary32))
(+.f32 #s(literal 1 binary32) (+.f32 #s(literal 0 binary32) %54))
(+.f32 #s(literal 1 binary32) (-.f32 #s(literal 0 binary32) ux))
(+.f32 #s(literal 1 binary32) %54)
(neg.f32 %74)
maxCos
(*.f32 %78 ux)
(*.f32 %77 %54)
(*.f32 %54 %77)
%82
(*.f32 ux %78)
(*.f32 ux maxCos)
(pow.f32 %82 #s(literal 1 binary32))
(neg.f32 %86)
(*.f32 %89 #s(literal 2 binary32))
(*.f32 %91 #s(literal 1/2 binary32))
(*.f32 #s(literal 1/2 binary32) %93)
(*.f32 %88 #s(literal 1 binary32))
(*.f32 #s(literal 1 binary32) %88)
(*.f32 #s(literal 2 binary32) %97)
(/.f32 %93 #s(literal 2 binary32))
(/.f32 %91 #s(literal 2 binary32))
(-.f32 %101 ux)
(-.f32 %103 #s(literal -1 binary32))
(-.f32 %82 %74)
(-.f32 %58 %86)
(-.f32 #s(literal 1 binary32) %107)
(fma.f32 %89 #s(literal 2 binary32) %109)
(fma.f32 %89 #s(literal 2 binary32) %111)
(fma.f32 %78 ux %58)
(fma.f32 %91 #s(literal 1/2 binary32) %109)
(fma.f32 %91 #s(literal 1/2 binary32) %111)
(fma.f32 %101 #s(literal 1 binary32) %116)
(fma.f32 %77 %54 %58)
(fma.f32 %82 #s(literal 1 binary32) %119)
(fma.f32 %54 %77 %58)
(fma.f32 #s(literal 1/2 binary32) %93 %109)
(fma.f32 #s(literal 1/2 binary32) %93 %111)
(fma.f32 #s(literal 1/2 binary32) %88 %97)
(fma.f32 %88 #s(literal 1/2 binary32) %89)
(fma.f32 %88 #s(literal 1 binary32) %109)
(fma.f32 %88 #s(literal 1 binary32) %111)
%88
(fma.f32 %58 #s(literal 1 binary32) %128)
(fma.f32 ux %78 %58)
(fma.f32 ux maxCos %58)
(fma.f32 #s(literal 1 binary32) %101 %132)
(fma.f32 #s(literal 1 binary32) %82 %134)
(fma.f32 #s(literal 1 binary32) %88 %109)
(fma.f32 #s(literal 1 binary32) %88 %111)
(fma.f32 #s(literal 1 binary32) %58 %138)
(fma.f32 #s(literal 2 binary32) %97 %109)
(fma.f32 #s(literal 2 binary32) %97 %111)
(pow.f32 %88 #s(literal 1 binary32))
(+.f32 %89 %89)
(+.f32 (*.f32 #s(literal 1 binary32) %101) %132)
(+.f32 %97 %97)
(+.f32 %134 %138)
(+.f32 (*.f32 %101 #s(literal 1 binary32)) %116)
(+.f32 %128 %119)
(+.f32 %119 %128)
(+.f32 %138 %134)
(+.f32 %101 %54)
(+.f32 %103 #s(literal 1 binary32))
(+.f32 %82 %58)
(+.f32 %54 (-.f32 #s(literal 1 binary32) %86))
(+.f32 %54 %101)
(+.f32 #s(literal 1/2 binary32) (+.f32 #s(literal 1/2 binary32) %103))
(+.f32 #s(literal 1/2 binary32) %161)
(+.f32 %88 %109)
(+.f32 %88 %111)
(+.f32 %58 %82)
(+.f32 #s(literal 1 binary32) (+.f32 #s(literal 0 binary32) %103))
(+.f32 #s(literal 1 binary32) (-.f32 #s(literal 0 binary32) %107))
(+.f32 #s(literal 1 binary32) (*.f32 %103 #s(literal 1 binary32)))
(+.f32 #s(literal 1 binary32) %172)
(+.f32 #s(literal 1 binary32) %103)
(neg.f32 (*.f32 %175 #s(literal 1 binary32)))
(neg.f32 (*.f32 #s(literal 1 binary32) %175))
(neg.f32 %175)
(*.f32 %183 %183)
(*.f32 %183 %181)
(*.f32 %182 %182)
(*.f32 %181 %183)
(*.f32 %181 %181)
(*.f32 %175 %175)
%190
(sqrt.f32 (*.f32 %190 %190))
(-.f32 %193 (-.f32 %195 %197))
(-.f32 %201 (neg.f32 %193))
(-.f32 %204 %205)
(-.f32 %211 %205)
(-.f32 %214 (neg.f32 %215))
(-.f32 %219 %220)
(-.f32 %222 %223)
(-.f32 #s(literal 1 binary32) (-.f32 %213 %215))
(fma.f32 %89 #s(literal 2 binary32) %227)
(fma.f32 %89 #s(literal 2 binary32) %230)
(fma.f32 %89 #s(literal 2 binary32) %232)
(fma.f32 %89 #s(literal 2 binary32) %234)
(fma.f32 %196 ux %236)
(fma.f32 %196 ux %204)
(fma.f32 %196 ux %211)
(fma.f32 %208 ux %240)
(fma.f32 %208 ux %242)
(fma.f32 %208 ux %244)
(fma.f32 %246 maxCos %236)
(fma.f32 %246 maxCos %204)
(fma.f32 %246 maxCos %211)
(fma.f32 %250 maxCos %240)
(fma.f32 %250 maxCos %242)
(fma.f32 %250 maxCos %244)
(fma.f32 %254 %255 %236)
(fma.f32 %254 %255 %204)
(fma.f32 %254 %255 %211)
(fma.f32 %255 %254 %236)
(fma.f32 %255 %254 %204)
(fma.f32 %255 %254 %211)
(fma.f32 %91 #s(literal 1/2 binary32) %227)
(fma.f32 %91 #s(literal 1/2 binary32) %230)
(fma.f32 %91 #s(literal 1/2 binary32) %232)
(fma.f32 %91 #s(literal 1/2 binary32) %234)
(fma.f32 %266 %266 %236)
(fma.f32 %266 %266 %204)
(fma.f32 %266 %266 %211)
(fma.f32 %270 %270 %271)
(fma.f32 %270 %270 %274)
(fma.f32 %270 %270 %201)
(fma.f32 %101 %88 %229)
(fma.f32 %218 ux %222)
(fma.f32 %279 maxCos %222)
(fma.f32 %82 %82 %236)
(fma.f32 %82 %82 %204)
(fma.f32 %82 %82 %211)
(fma.f32 %82 %88 %222)
(fma.f32 %82 %58 %240)
(fma.f32 %82 %58 %242)
(fma.f32 %82 %58 %244)
(fma.f32 %107 %107 %214)
(fma.f32 %74 %74 %271)
(fma.f32 %74 %74 %274)
(fma.f32 %74 %74 %201)
(fma.f32 %74 %175 %292)
(fma.f32 %74 %175 %294)
(fma.f32 %74 %175 %219)
(fma.f32 %86 %86 %236)
(fma.f32 %86 %86 %204)
(fma.f32 %86 %86 %211)
(fma.f32 %86 %175 %222)
(fma.f32 %175 %74 %292)
(fma.f32 %175 %74 %294)
(fma.f32 %175 %74 %219)
(fma.f32 %175 %86 %222)
(fma.f32 #s(literal 1/2 binary32) %93 %227)
(fma.f32 #s(literal 1/2 binary32) %93 %230)
(fma.f32 #s(literal 1/2 binary32) %93 %232)
(fma.f32 #s(literal 1/2 binary32) %93 %234)
(fma.f32 %88 %101 %229)
(fma.f32 %88 %82 %222)
(fma.f32 %88 %58 %292)
(fma.f32 %88 %58 %294)
(fma.f32 %88 %58 %219)
(fma.f32 %88 #s(literal 1 binary32) %227)
(fma.f32 %88 #s(literal 1 binary32) %230)
(fma.f32 %88 #s(literal 1 binary32) %232)
(fma.f32 %88 #s(literal 1 binary32) %234)
(fma.f32 maxCos %318 %240)
(fma.f32 maxCos %318 %242)
(fma.f32 maxCos %318 %244)
(fma.f32 maxCos %322 %236)
(fma.f32 maxCos %322 %204)
(fma.f32 maxCos %322 %211)
(fma.f32 maxCos %279 %222)
(fma.f32 %58 %82 %240)
(fma.f32 %58 %82 %242)
(fma.f32 %58 %82 %244)
(fma.f32 %58 %88 %292)
(fma.f32 %58 %88 %294)
(fma.f32 %58 %88 %219)
(fma.f32 %58 %58 %271)
(fma.f32 %58 %58 %274)
(fma.f32 %58 %58 %201)
(fma.f32 ux %336 %236)
(fma.f32 ux %336 %204)
(fma.f32 ux %336 %211)
(fma.f32 ux %340 %240)
(fma.f32 ux %340 %242)
(fma.f32 ux %340 %244)
(fma.f32 ux %218 %222)
(fma.f32 #s(literal 1 binary32) %88 %227)
(fma.f32 #s(literal 1 binary32) %88 %230)
(fma.f32 #s(literal 1 binary32) %88 %232)
(fma.f32 #s(literal 1 binary32) %88 %234)
(fma.f32 #s(literal 2 binary32) %161 %215)
(fma.f32 #s(literal 2 binary32) %97 %227)
(fma.f32 #s(literal 2 binary32) %97 %230)
(fma.f32 #s(literal 2 binary32) %97 %232)
(fma.f32 #s(literal 2 binary32) %97 %234)
(pow.f32 %182 #s(literal 2 binary32))
(pow.f32 %181 #s(literal 2 binary32))
(pow.f32 %175 #s(literal 2 binary32))
(pow.f32 %190 #s(literal 1 binary32))
(pow.f32 %88 #s(literal 2 binary32))
(+.f32 (fma.f32 %218 ux %193) %273)
(+.f32 (fma.f32 %218 ux %88) %229)
(+.f32 (fma.f32 %218 ux %273) %193)
(+.f32 (fma.f32 %74 %175 %197) %273)
(+.f32 (fma.f32 %74 %175 %273) %197)
(+.f32 %292 %222)
(+.f32 (*.f32 %88 %101) %229)
(+.f32 (*.f32 %101 %88) %229)
(+.f32 %294 %222)
(+.f32 (+.f32 %375 (*.f32 #s(literal 2 binary32) (*.f32 %74 %86))) %197)
(+.f32 (fma.f32 %196 ux (*.f32 #s(literal 2 binary32) (*.f32 %86 %74))) %375)
(+.f32 (+.f32 %384 (*.f32 #s(literal 2 binary32) (*.f32 %101 %54))) (pow.f32 %54 #s(literal 2 binary32)))
(+.f32 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) %172)) (pow.f32 %103 #s(literal 2 binary32)))
(+.f32 (-.f32 %215 %213) #s(literal 1 binary32))
(+.f32 (-.f32 %197 %195) %193)
(+.f32 (-.f32 %384 (*.f32 #s(literal 2 binary32) (*.f32 %101 ux))) (pow.f32 ux #s(literal 2 binary32)))
(+.f32 (-.f32 %197 (*.f32 #s(literal 2 binary32) (*.f32 %82 %74))) %375)
(+.f32 %193 %271)
(+.f32 %193 %274)
(+.f32 %193 %201)
(+.f32 %197 %236)
(+.f32 %197 %204)
(+.f32 %197 %211)
(+.f32 %201 %193)
(+.f32 %273 %240)
(+.f32 %273 %242)
(+.f32 %273 %244)
(+.f32 %204 %197)
(+.f32 %211 %197)
(+.f32 %215 %214)
(+.f32 %214 %215)
(+.f32 %219 %222)
(+.f32 %222 %292)
(+.f32 %222 %294)
(+.f32 %222 %219)
(+.f32 %88 %227)
(+.f32 %88 %230)
(+.f32 %88 %232)
(+.f32 %88 %234)
(fabs.f32 %429)
(fabs.f32 %190)
(neg.f32 %429)
(*.f32 %434 %435)
(*.f32 %438 %439)
(*.f32 %441 %442)
(*.f32 %433 %444)
(*.f32 %433 %446)
(*.f32 %439 %448)
(*.f32 %437 %450)
(*.f32 %437 %452)
(*.f32 %452 %454)
(*.f32 %452 %456)
(*.f32 %460 %460)
(*.f32 %459 %459)
(/.f32 (-.f32 (cos.f32 (-.f32 %464 %464)) (cos.f32 (+.f32 %464 %464))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %464 %472)) (cos.f32 (+.f32 %464 %472))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %464 %480)) (cos.f32 (+.f32 %464 %480))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %464 %487)) (cos.f32 (+.f32 %464 %487))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %464 %494)) (cos.f32 (+.f32 %464 %494))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %464 %501)) (cos.f32 (+.f32 %464 %501))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %472 %464)) (cos.f32 (+.f32 %472 %464))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %472 %472)) (cos.f32 (+.f32 %472 %472))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %472 %480)) (cos.f32 (+.f32 %472 %480))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %472 %487)) (cos.f32 (+.f32 %472 %487))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %472 %494)) (cos.f32 (+.f32 %472 %494))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %472 %501)) (cos.f32 (+.f32 %472 %501))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %480 %464)) (cos.f32 (+.f32 %480 %464))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %480 %472)) (cos.f32 (+.f32 %480 %472))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %480 %480)) (cos.f32 (+.f32 %480 %480))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %480 %487)) (cos.f32 (+.f32 %480 %487))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %480 %494)) (cos.f32 (+.f32 %480 %494))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %480 %501)) (cos.f32 (+.f32 %480 %501))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %487 %464)) (cos.f32 (+.f32 %487 %464))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %487 %472)) (cos.f32 (+.f32 %487 %472))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %487 %480)) (cos.f32 (+.f32 %487 %480))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %487 %487)) (cos.f32 (+.f32 %487 %487))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %487 %494)) (cos.f32 (+.f32 %487 %494))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %487 %501)) (cos.f32 (+.f32 %487 %501))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %494 %464)) (cos.f32 (+.f32 %494 %464))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %494 %472)) (cos.f32 (+.f32 %494 %472))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %494 %480)) (cos.f32 (+.f32 %494 %480))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %494 %487)) (cos.f32 (+.f32 %494 %487))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %494 %494)) (cos.f32 (+.f32 %494 %494))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %494 %501)) (cos.f32 (+.f32 %494 %501))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %501 %464)) (cos.f32 (+.f32 %501 %464))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %501 %472)) (cos.f32 (+.f32 %501 %472))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %501 %480)) (cos.f32 (+.f32 %501 %480))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %501 %487)) (cos.f32 (+.f32 %501 %487))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %501 %494)) (cos.f32 (+.f32 %501 %494))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %501 %501)) (cos.f32 (+.f32 %501 %501))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %691 %691)) (cos.f32 (+.f32 %691 %691))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %691 %699)) (cos.f32 (+.f32 %691 %699))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %691 %707)) (cos.f32 (+.f32 %691 %707))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %691 %714)) (cos.f32 (+.f32 %691 %714))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %691 %463)) (cos.f32 (+.f32 %691 %463))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %691 %471)) (cos.f32 (+.f32 %691 %471))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %691 %479)) (cos.f32 (+.f32 %691 %479))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %699 %691)) (cos.f32 (+.f32 %699 %691))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %699 %699)) (cos.f32 (+.f32 %699 %699))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %699 %707)) (cos.f32 (+.f32 %699 %707))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %699 %714)) (cos.f32 (+.f32 %699 %714))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %699 %463)) (cos.f32 (+.f32 %699 %463))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %699 %471)) (cos.f32 (+.f32 %699 %471))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %699 %479)) (cos.f32 (+.f32 %699 %479))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %707 %691)) (cos.f32 (+.f32 %707 %691))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %707 %699)) (cos.f32 (+.f32 %707 %699))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %707 %707)) (cos.f32 (+.f32 %707 %707))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %707 %714)) (cos.f32 (+.f32 %707 %714))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %707 %463)) (cos.f32 (+.f32 %707 %463))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %707 %471)) (cos.f32 (+.f32 %707 %471))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %707 %479)) (cos.f32 (+.f32 %707 %479))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %714 %691)) (cos.f32 (+.f32 %714 %691))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %714 %699)) (cos.f32 (+.f32 %714 %699))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %714 %707)) (cos.f32 (+.f32 %714 %707))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %714 %714)) (cos.f32 (+.f32 %714 %714))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %714 %463)) (cos.f32 (+.f32 %714 %463))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %714 %471)) (cos.f32 (+.f32 %714 %471))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %714 %479)) (cos.f32 (+.f32 %714 %479))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %463 %691)) (cos.f32 (+.f32 %463 %691))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %463 %699)) (cos.f32 (+.f32 %463 %699))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %463 %707)) (cos.f32 (+.f32 %463 %707))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %463 %714)) (cos.f32 (+.f32 %463 %714))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %471 %691)) (cos.f32 (+.f32 %471 %691))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %471 %699)) (cos.f32 (+.f32 %471 %699))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %471 %707)) (cos.f32 (+.f32 %471 %707))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %471 %714)) (cos.f32 (+.f32 %471 %714))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %479 %691)) (cos.f32 (+.f32 %479 %691))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %479 %699)) (cos.f32 (+.f32 %479 %699))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %479 %707)) (cos.f32 (+.f32 %479 %707))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %479 %714)) (cos.f32 (+.f32 %479 %714))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %464 %937)) (sin.f32 (+.f32 %464 %937))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %464 %944)) (sin.f32 (+.f32 %464 %944))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %464 %951)) (sin.f32 (+.f32 %464 %951))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %464 %958)) (sin.f32 (+.f32 %464 %958))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %464 %965)) (sin.f32 (+.f32 %464 %965))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %464 %972)) (sin.f32 (+.f32 %464 %972))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %464 %979)) (sin.f32 (+.f32 %464 %979))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %472 %937)) (sin.f32 (+.f32 %472 %937))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %472 %944)) (sin.f32 (+.f32 %472 %944))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %472 %951)) (sin.f32 (+.f32 %472 %951))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %472 %958)) (sin.f32 (+.f32 %472 %958))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %472 %965)) (sin.f32 (+.f32 %472 %965))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %472 %972)) (sin.f32 (+.f32 %472 %972))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %472 %979)) (sin.f32 (+.f32 %472 %979))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %480 %937)) (sin.f32 (+.f32 %480 %937))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %480 %944)) (sin.f32 (+.f32 %480 %944))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %480 %951)) (sin.f32 (+.f32 %480 %951))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %480 %958)) (sin.f32 (+.f32 %480 %958))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %480 %965)) (sin.f32 (+.f32 %480 %965))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %480 %972)) (sin.f32 (+.f32 %480 %972))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %480 %979)) (sin.f32 (+.f32 %480 %979))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %487 %937)) (sin.f32 (+.f32 %487 %937))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %487 %944)) (sin.f32 (+.f32 %487 %944))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %487 %951)) (sin.f32 (+.f32 %487 %951))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %487 %958)) (sin.f32 (+.f32 %487 %958))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %487 %965)) (sin.f32 (+.f32 %487 %965))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %487 %972)) (sin.f32 (+.f32 %487 %972))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %487 %979)) (sin.f32 (+.f32 %487 %979))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %494 %937)) (sin.f32 (+.f32 %494 %937))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %494 %944)) (sin.f32 (+.f32 %494 %944))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %494 %951)) (sin.f32 (+.f32 %494 %951))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %494 %958)) (sin.f32 (+.f32 %494 %958))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %494 %965)) (sin.f32 (+.f32 %494 %965))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %494 %972)) (sin.f32 (+.f32 %494 %972))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %494 %979)) (sin.f32 (+.f32 %494 %979))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %501 %937)) (sin.f32 (+.f32 %501 %937))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %501 %944)) (sin.f32 (+.f32 %501 %944))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %501 %951)) (sin.f32 (+.f32 %501 %951))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %501 %958)) (sin.f32 (+.f32 %501 %958))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %501 %965)) (sin.f32 (+.f32 %501 %965))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %501 %972)) (sin.f32 (+.f32 %501 %972))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %501 %979)) (sin.f32 (+.f32 %501 %979))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %691 %1196)) (sin.f32 (+.f32 %691 %1196))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %691 %1203)) (sin.f32 (+.f32 %691 %1203))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %691 %1210)) (sin.f32 (+.f32 %691 %1210))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %691 %1217)) (sin.f32 (+.f32 %691 %1217))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %691 %706)) (sin.f32 (+.f32 %691 %706))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %691 %689)) (sin.f32 (+.f32 %691 %689))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %691 %698)) (sin.f32 (+.f32 %691 %698))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %691 %688)) (sin.f32 (+.f32 %691 %688))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %699 %1196)) (sin.f32 (+.f32 %699 %1196))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %699 %1203)) (sin.f32 (+.f32 %699 %1203))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %699 %1210)) (sin.f32 (+.f32 %699 %1210))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %699 %1217)) (sin.f32 (+.f32 %699 %1217))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %699 %706)) (sin.f32 (+.f32 %699 %706))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %699 %689)) (sin.f32 (+.f32 %699 %689))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %699 %698)) (sin.f32 (+.f32 %699 %698))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %699 %688)) (sin.f32 (+.f32 %699 %688))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %707 %1196)) (sin.f32 (+.f32 %707 %1196))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %707 %1203)) (sin.f32 (+.f32 %707 %1203))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %707 %1210)) (sin.f32 (+.f32 %707 %1210))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %707 %1217)) (sin.f32 (+.f32 %707 %1217))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %707 %706)) (sin.f32 (+.f32 %707 %706))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %707 %689)) (sin.f32 (+.f32 %707 %689))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %707 %698)) (sin.f32 (+.f32 %707 %698))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %707 %688)) (sin.f32 (+.f32 %707 %688))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %714 %1196)) (sin.f32 (+.f32 %714 %1196))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %714 %1203)) (sin.f32 (+.f32 %714 %1203))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %714 %1210)) (sin.f32 (+.f32 %714 %1210))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %714 %1217)) (sin.f32 (+.f32 %714 %1217))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %714 %706)) (sin.f32 (+.f32 %714 %706))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %714 %689)) (sin.f32 (+.f32 %714 %689))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %714 %698)) (sin.f32 (+.f32 %714 %698))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %714 %688)) (sin.f32 (+.f32 %714 %688))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %463 %1196)) (sin.f32 (+.f32 %463 %1196))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %463 %1203)) (sin.f32 (+.f32 %463 %1203))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %463 %1210)) (sin.f32 (+.f32 %463 %1210))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %463 %1217)) (sin.f32 (+.f32 %463 %1217))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %471 %1196)) (sin.f32 (+.f32 %471 %1196))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %471 %1203)) (sin.f32 (+.f32 %471 %1203))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %471 %1210)) (sin.f32 (+.f32 %471 %1210))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %471 %1217)) (sin.f32 (+.f32 %471 %1217))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %479 %1196)) (sin.f32 (+.f32 %479 %1196))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %479 %1203)) (sin.f32 (+.f32 %479 %1203))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %479 %1210)) (sin.f32 (+.f32 %479 %1210))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %479 %1217)) (sin.f32 (+.f32 %479 %1217))) #s(literal 2 binary32))
(/.f32 (fma.f32 %429 #s(literal 2 binary32) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %689 %689)) (cos.f32 (-.f32 %689 %689))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %689 %698)) (cos.f32 (-.f32 %689 %698))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %689 %706)) (cos.f32 (-.f32 %689 %706))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %689 %688)) (cos.f32 (-.f32 %689 %688))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %698 %689)) (cos.f32 (-.f32 %698 %689))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %698 %698)) (cos.f32 (-.f32 %698 %698))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %698 %706)) (cos.f32 (-.f32 %698 %706))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %698 %688)) (cos.f32 (-.f32 %698 %688))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %706 %689)) (cos.f32 (-.f32 %706 %689))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %706 %698)) (cos.f32 (-.f32 %706 %698))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %706 %706)) (cos.f32 (-.f32 %706 %706))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %706 %688)) (cos.f32 (-.f32 %706 %688))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %688 %689)) (cos.f32 (-.f32 %688 %689))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %688 %698)) (cos.f32 (-.f32 %688 %698))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %688 %706)) (cos.f32 (-.f32 %688 %706))) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %688 %688)) (cos.f32 (-.f32 %688 %688))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %463 %463)) (cos.f32 (+.f32 %463 %463))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %463 %471)) (cos.f32 (+.f32 %463 %471))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %463 %479)) (cos.f32 (+.f32 %463 %479))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %471 %463)) (cos.f32 (+.f32 %471 %463))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %471 %471)) (cos.f32 (+.f32 %471 %471))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %471 %479)) (cos.f32 (+.f32 %471 %479))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %479 %463)) (cos.f32 (+.f32 %479 %463))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %479 %471)) (cos.f32 (+.f32 %479 %471))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %479 %479)) (cos.f32 (+.f32 %479 %479))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %463 %689)) (sin.f32 (+.f32 %463 %689))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %463 %698)) (sin.f32 (+.f32 %463 %698))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %463 %706)) (sin.f32 (+.f32 %463 %706))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %463 %688)) (sin.f32 (+.f32 %463 %688))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %471 %689)) (sin.f32 (+.f32 %471 %689))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %471 %698)) (sin.f32 (+.f32 %471 %698))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %471 %706)) (sin.f32 (+.f32 %471 %706))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %471 %688)) (sin.f32 (+.f32 %471 %688))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %479 %689)) (sin.f32 (+.f32 %479 %689))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %479 %698)) (sin.f32 (+.f32 %479 %698))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %479 %706)) (sin.f32 (+.f32 %479 %706))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %479 %688)) (sin.f32 (+.f32 %479 %688))) #s(literal 2 binary32))
(sqrt.f32 %1688)
(-.f32 (-.f32 %1690 %197) %273)
(-.f32 (-.f32 %1690 %273) %197)
(-.f32 (-.f32 #s(literal 1 binary32) %201) %193)
(-.f32 (-.f32 #s(literal 1 binary32) %204) %197)
(-.f32 (-.f32 #s(literal 1 binary32) %211) %197)
(-.f32 (-.f32 #s(literal 1 binary32) %214) %215)
(-.f32 (-.f32 #s(literal 1 binary32) %219) %222)
(-.f32 %1690 %219)
(-.f32 %429 #s(literal -1 binary32))
(-.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %463))))
(-.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %471))))
(-.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %479))))
(-.f32 #s(literal 1 binary32) (*.f32 %1719 %1719))
(-.f32 #s(literal 1 binary32) (*.f32 %1722 %1722))
(-.f32 #s(literal 1 binary32) (*.f32 %1725 %1725))
(-.f32 #s(literal 1 binary32) (*.f32 %1728 %1728))
(-.f32 #s(literal 1 binary32) %190)
(fma.f32 %434 %435 #s(literal 0 binary32))
(fma.f32 %438 %439 #s(literal 0 binary32))
(fma.f32 (*.f32 %175 maxCos) ux %1735)
(fma.f32 (*.f32 %175 ux) maxCos %1735)
(fma.f32 %1739 ux %1735)
(fma.f32 %441 %442 #s(literal 0 binary32))
(fma.f32 %183 %182 #s(literal 1 binary32))
(fma.f32 %218 %54 %1735)
(fma.f32 %279 %77 %1735)
(fma.f32 %229 maxCos %1735)
(fma.f32 %77 %279 %1735)
(fma.f32 %82 %175 %1735)
(fma.f32 %433 %444 #s(literal 0 binary32))
(fma.f32 %433 %446 #s(literal 0 binary32))
(fma.f32 %439 %448 #s(literal 0 binary32))
(fma.f32 %437 %450 #s(literal 0 binary32))
(fma.f32 %437 %452 #s(literal 0 binary32))
(fma.f32 %452 %454 #s(literal 0 binary32))
(fma.f32 %452 %456 #s(literal 0 binary32))
(fma.f32 %182 %183 #s(literal 1 binary32))
(fma.f32 %182 %181 #s(literal 1 binary32))
(fma.f32 %460 %460 #s(literal 0 binary32))
(fma.f32 %54 %218 %1735)
(fma.f32 %74 %88 %1759)
(fma.f32 %74 %88 %1762)
(fma.f32 %86 %88 %1735)
(fma.f32 %181 %182 #s(literal 1 binary32))
(fma.f32 %175 %82 %1735)
%458
(fma.f32 %175 %58 %1759)
(fma.f32 %175 %58 %1762)
(fma.f32 %459 %459 #s(literal 0 binary32))
(fma.f32 %88 %74 %1759)
(fma.f32 %88 %74 %1762)
(fma.f32 %88 %86 %1735)
(fma.f32 %88 %175 #s(literal 1 binary32))
(fma.f32 maxCos (*.f32 ux %175) %1735)
(fma.f32 maxCos %229 %1735)
(fma.f32 %58 %175 %1759)
(fma.f32 %58 %175 %1762)
(fma.f32 ux (*.f32 %77 %88) %1735)
(fma.f32 ux (*.f32 maxCos %175) %1735)
(fma.f32 ux %1739 %1735)
(pow.f32 %1688 #s(literal 1/2 binary32))
(pow.f32 %459 #s(literal 2 binary32))
(pow.f32 %458 #s(literal 1 binary32))
(+.f32 (fma.f32 %175 %88 #s(literal 1/2 binary32)) #s(literal 1/2 binary32))
(+.f32 (+.f32 #s(literal 1 binary32) %223) %220)
(+.f32 %1690 %223)
(+.f32 %220 %1759)
(+.f32 %220 %1762)
(+.f32 %223 %1735)
(+.f32 %429 #s(literal 1 binary32))
(+.f32 #s(literal 1/2 binary32) (+.f32 #s(literal 1/2 binary32) %429))
(+.f32 #s(literal 1/2 binary32) (-.f32 #s(literal 1/2 binary32) %190))
(+.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %689))))
(+.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %698))))
(+.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %706))))
(+.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %688))))
(+.f32 %458 #s(literal 0 binary32))
(+.f32 #s(literal 1 binary32) (+.f32 #s(literal 0 binary32) %429))
(+.f32 #s(literal 1 binary32) (-.f32 #s(literal 0 binary32) %190))
(+.f32 #s(literal 1 binary32) %429)
(fabs.f32 (*.f32 %460 %459))
(fabs.f32 (*.f32 %459 %460))
(fabs.f32 %458)
(neg.f32 (*.f32 %439 %437))
(*.f32 %1829 %1829)
%459
(-.f32 %1832 (*.f32 %1833 %1728))
(fma.f32 %1728 %1833 %1837)
(fma.f32 %1833 %1839 %1832)
(pow.f32 %459 #s(literal 1 binary32))
(pow.f32 %458 #s(literal 1/2 binary32))
(+.f32 (/.f32 (+.f32 (sin.f32 (-.f32 %688 %690)) %459) #s(literal 2 binary32)) %1837)
(+.f32 (*.f32 %1833 %1839) %1832)
(sin.f32 (acos.f32 %1719))
(sin.f32 (acos.f32 %1722))
(sin.f32 (acos.f32 %1725))
(sin.f32 (acos.f32 %1728))
(sin.f32 (acos.f32 %183))
(sin.f32 %691)
(sin.f32 %699)
(sin.f32 %707)
(sin.f32 %714)
(sin.f32 %463)
(sin.f32 %471)
(sin.f32 %479)
(fabs.f32 (neg.f32 %460))
(fabs.f32 %460)
(fabs.f32 %459)
(cos.f32 (asin.f32 %1719))
(cos.f32 (asin.f32 %1722))
(cos.f32 (asin.f32 %1725))
(cos.f32 (asin.f32 %1728))
(cos.f32 (asin.f32 %183))
(cos.f32 %1196)
(cos.f32 %1217)
(cos.f32 %1203)
(cos.f32 %1210)
(cos.f32 %706)
(cos.f32 %689)
(cos.f32 %698)
(cos.f32 %688)
(*.f32 %1893 #s(literal 1/2 binary32))
(*.f32 %1899 #s(literal 1/2 binary32))
%1901
(*.f32 %51 %459)
(/.f32 (-.f32 (cos.f32 (-.f32 %691 %31)) (cos.f32 (+.f32 %691 %31))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %699 %31)) (cos.f32 (+.f32 %699 %31))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %707 %31)) (cos.f32 (+.f32 %707 %31))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %714 %31)) (cos.f32 (+.f32 %714 %31))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %31 %691)) (cos.f32 (fma.f32 %27 uy %691))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %31 %699)) (cos.f32 (fma.f32 %27 uy %699))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %31 %707)) (cos.f32 (fma.f32 %27 uy %707))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %31 %714)) (cos.f32 (fma.f32 %27 uy %714))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %31 %1196)) (sin.f32 (fma.f32 %27 uy %1196))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %31 %1203)) (sin.f32 (fma.f32 %27 uy %1203))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %31 %1210)) (sin.f32 (fma.f32 %27 uy %1210))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %31 %1217)) (sin.f32 (fma.f32 %27 uy %1217))) #s(literal 2 binary32))
(/.f32 (/.f32 %1893 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (/.f32 %1899 #s(literal 1/2 binary32)) #s(literal 4 binary32))
(/.f32 (neg.f32 %1893) #s(literal -2 binary32))
(/.f32 (neg.f32 %1899) #s(literal -2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %463 %31)) (cos.f32 (+.f32 %463 %31))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %471 %31)) (cos.f32 (+.f32 %471 %31))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %31 %463)) (cos.f32 (fma.f32 %27 uy %463))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %31 %471)) (cos.f32 (fma.f32 %27 uy %471))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %31 %689)) (sin.f32 (fma.f32 %27 uy %689))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %31 %698)) (sin.f32 (fma.f32 %27 uy %698))) #s(literal 2 binary32))
(/.f32 %1893 #s(literal 2 binary32))
(/.f32 %1899 #s(literal 2 binary32))
(/.f32 %1901 #s(literal 1 binary32))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %1893))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %1899))
(-.f32 (/.f32 %1890 #s(literal 2 binary32)) (/.f32 %1892 #s(literal 2 binary32)))
(pow.f32 %1901 #s(literal 1 binary32))
(+.f32 (/.f32 %1898 #s(literal 2 binary32)) (/.f32 %1896 #s(literal 2 binary32)))

reconstruct2.0ms (0.0%)

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

eval85.0ms (2.0%)

Memory
-16.7MiB live, 89.7MiB allocated; 30ms collecting garbage
Compiler

Compiled 28 256 to 4 209 computations (85.1% saved)

prune27.0ms (0.6%)

Memory
-13.6MiB live, 53.7MiB allocated; 6ms collecting garbage
Pruning

26 alts after pruning (26 fresh and 0 done)

PrunedKeptTotal
New72526751
Fresh000
Picked101
Done000
Total72626752
Accuracy
99.1%
Counts
752 → 26
Alt Table
Click to see full alt table
StatusAccuracyProgram
35.1%
%0 = (PI.f32 )
%12 = (+.f32 (asin.f32 (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32)))) (*.f32 %0 #s(literal 1/2 binary32)))
(/.f32 (-.f32 (cos.f32 (-.f32 (*.f32 %0 (+.f32 uy uy)) %12)) (cos.f32 (fma.f32 (+.f32 %0 %0) uy %12))) #s(literal 2 binary32))
34.7%
%0 = (PI.f32 )
%9 = (acos.f32 (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32))))
(/.f32 (-.f32 (cos.f32 (-.f32 (*.f32 %0 (+.f32 uy uy)) %9)) (cos.f32 (fma.f32 (+.f32 %0 %0) uy %9))) #s(literal 2 binary32))
34.8%
%5 = (acos.f32 (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux)))
%6 = (PI.f32 )
(*.f32 (-.f32 (cos.f32 (-.f32 %5 (*.f32 %6 (+.f32 uy uy)))) (cos.f32 (fma.f32 (+.f32 %6 %6) uy %5))) #s(literal 1/2 binary32))
35.0%
%0 = (PI.f32 )
%1 = (+.f32 %0 %0)
(*.f32 (+.f32 (sin.f32 (fma.f32 %1 uy (asin.f32 (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux))))) (sin.f32 (fma.f32 %1 uy (asin.f32 (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32))))))) #s(literal 1/2 binary32))
55.9%
(*.f32 (sqrt.f32 (fma.f32 (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32))) (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux)) #s(literal 1 binary32))) (sin.f32 (*.f32 (PI.f32 ) (+.f32 uy uy))))
55.9%
%3 = (PI.f32 )
%10 = (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux))
%19 = (sqrt.f32 (fma.f32 (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32))) %10 #s(literal 1 binary32)))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (+.f32 (/.f32 (+.f32 (sin.f32 (-.f32 (asin.f32 %10) (*.f32 %3 #s(literal 1/2 binary32)))) %19) #s(literal 2 binary32)) (/.f32 (-.f32 %19 (neg.f32 %19)) #s(literal 2 binary32))))
55.7%
%3 = (PI.f32 )
%12 = (+.f32 (acos.f32 (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32)))) %3)
%16 = (neg.f32 (acos.f32 (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux))))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %3)) (sqrt.f32 (/.f32 (-.f32 (cos.f32 (-.f32 %12 %16)) (cos.f32 (+.f32 %12 %16))) #s(literal 2 binary32))))
56.7%
%10 = (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (+.f32 %10 (*.f32 %10 (-.f32 (*.f32 maxCos ux) ux))))))
54.5%
%14 = (approx (+ (- 1 ux) (* ux maxCos)) (-.f32 #s(literal 1 binary32) ux))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %14 %14))))
55.1%
%17 = (approx (+ (- 1 ux) (* ux maxCos)) (*.f32 ux (-.f32 (+.f32 maxCos (/.f32 #s(literal 1 binary32) ux)) #s(literal 1 binary32))))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %17 %17))))
54.3%
%18 = (approx (+ (- 1 ux) (* ux maxCos)) (*.f32 maxCos (-.f32 (+.f32 ux (/.f32 #s(literal 1 binary32) maxCos)) (/.f32 ux maxCos))))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %18 %18))))
59.0%
%12 = (+ (- 1 ux) (* ux maxCos))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (approx (* %12 %12) (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 (fma.f32 #s(literal 2 binary32) maxCos (*.f32 ux (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32)))) #s(literal 2 binary32))))))))
44.3%
%12 = (+ (- 1 ux) (* ux maxCos))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (approx (* %12 %12) (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 (*.f32 #s(literal 2 binary32) maxCos) #s(literal 2 binary32))))))))
55.9%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (+.f32 (fma.f32 (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32))) (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux)) #s(literal 1/2 binary32)) #s(literal 1/2 binary32))))
98.3%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 (-.f32 (-.f32 ux (*.f32 maxCos ux)) #s(literal 0 binary32)) (-.f32 (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux)) #s(literal -1 binary32)))))
98.4%
%9 = (-.f32 ux (*.f32 maxCos ux))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 (-.f32 %9 #s(literal 0 binary32)) (neg.f32 (-.f32 %9 #s(literal 2 binary32))))))
98.2%
%11 = (+ (- 1 ux) (* ux maxCos))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (approx (- 1 (* %11 %11)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (-.f32 (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1 binary32) ux)) (fma.f32 #s(literal 2 binary32) (/.f32 maxCos ux) (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32))))))))
77.3%
%11 = (+ (- 1 ux) (* ux maxCos))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (approx (- 1 (* %11 %11)) (*.f32 ux (-.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) maxCos))))))
55.2%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (cos.f32 (asin.f32 (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux)))))
93.7%
%11 = (+ (- 1 ux) (* ux maxCos))
%18 = (sqrt.f32 (*.f32 ux (-.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) maxCos))))
%19 = (pow.f32 ux #s(literal 2 binary32))
%22 = (-.f32 maxCos #s(literal 1 binary32))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (approx (sqrt (- 1 (* %11 %11))) (+.f32 %18 (*.f32 %19 (fma.f32 #s(literal -1/2 binary32) (/.f32 (pow.f32 %22 #s(literal 2 binary32)) %18) (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %19 (pow.f32 %22 #s(literal 4 binary32))) (pow.f32 %18 #s(literal 3 binary32)))))))))
90.1%
%11 = (+ (- 1 ux) (* ux maxCos))
%18 = (sqrt.f32 (*.f32 ux (-.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) maxCos))))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (approx (sqrt (- 1 (* %11 %11))) (+.f32 %18 (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32))) %18)))))
52.0%
%9 = (PI.f32 )
%22 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.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 %9 #s(literal 3 binary32))) (*.f32 #s(literal 2 binary32) %9)))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %22 %22))))
95.6%
%11 = (+ (- 1 ux) (* ux maxCos))
%20 = (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 ))))
%24 = (sqrt.f32 (*.f32 ux (-.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) maxCos))))
%25 = (pow.f32 ux #s(literal 2 binary32))
%28 = (-.f32 maxCos #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (fma.f32 %20 %24 (*.f32 %25 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 %20 (pow.f32 %28 #s(literal 2 binary32))) %24) (*.f32 %25 (fma.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %20 (pow.f32 %28 #s(literal 4 binary32))) (pow.f32 %24 #s(literal 3 binary32))) (*.f32 #s(literal -1/16 binary32) (/.f32 (*.f32 %25 (*.f32 %20 (pow.f32 %28 #s(literal 6 binary32)))) (pow.f32 %24 #s(literal 5 binary32))))))))))
93.9%
%11 = (+ (- 1 ux) (* ux maxCos))
%20 = (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 ))))
%24 = (sqrt.f32 (*.f32 ux (-.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) maxCos))))
%25 = (pow.f32 ux #s(literal 2 binary32))
%28 = (-.f32 maxCos #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (fma.f32 %20 %24 (*.f32 %25 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 %20 (pow.f32 %28 #s(literal 2 binary32))) %24) (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %25 (*.f32 %20 (pow.f32 %28 #s(literal 4 binary32)))) (pow.f32 %24 #s(literal 3 binary32))))))))
90.1%
%11 = (+ (- 1 ux) (* ux maxCos))
%22 = (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 ))))
%31 = (sqrt.f32 (*.f32 ux (-.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) maxCos))))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (*.f32 %22 (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32)))) %31) (*.f32 %22 %31)))
49.3%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (-.f32 (+.f32 #s(literal 1 binary32) (*.f32 maxCos ux)) ux) #s(literal 2 binary32))))))))
Compiler

Compiled 1 822 to 434 computations (76.2% saved)

sample1.0ms (0.0%)

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

Compiled 13 to 8 computations (38.5% saved)

series121.0ms (2.8%)

Memory
-1.8MiB live, 182.4MiB allocated; 21ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0239723574
Stop Event
iter-limit
Counts
51 → 392
Calls
Call 1
Inputs
%2 = (*.f32 uy #s(literal 2 binary32))
%3 = (PI.f32 )
%4 = (*.f32 %2 %3)
%5 = (sin.f32 %4)
%8 = (-.f32 #s(literal 1 binary32) ux)
%11 = (*.f32 maxCos ux)
%13 = (+.f32 #s(literal 1 binary32) %11)
%14 = (-.f32 %13 ux)
%15 = (pow.f32 %14 #s(literal 2 binary32))
%16 = (-.f32 #s(literal 1 binary32) %15)
%17 = (sqrt.f32 %16)
%18 = (*.f32 %3 %17)
%19 = (*.f32 uy %18)
%20 = (*.f32 #s(literal 2 binary32) %19)
%29 = (+ (- 1 ux) (* ux maxCos))
%35 = (+.f32 uy uy)
%36 = (+.f32 %3 %3)
%37 = (*.f32 %3 %35)
%38 = (fma.f32 maxCos ux %8)
%39 = (fma.f32 maxCos ux #s(literal 1 binary32))
%40 = (-.f32 ux %11)
%41 = (-.f32 ux %39)
%42 = (-.f32 %40 #s(literal 0 binary32))
%43 = (-.f32 %40 #s(literal 2 binary32))
%44 = (neg.f32 %43)
%45 = (*.f32 %42 %44)
%46 = (asin.f32 %38)
%47 = (*.f32 %3 #s(literal 1/2 binary32))
%48 = (asin.f32 %41)
%49 = (+.f32 %48 %47)
%50 = (fma.f32 %41 %38 #s(literal 1/2 binary32))
%51 = (+.f32 %50 #s(literal 1/2 binary32))
%52 = (cos.f32 %46)
%53 = (-.f32 %37 %49)
%54 = (cos.f32 %53)
%55 = (fma.f32 %36 uy %49)
%56 = (cos.f32 %55)
%57 = (-.f32 %54 %56)
%59 = (sqrt.f32 %45)
%61 = (sqrt.f32 %51)
uy
#s(literal 2 binary32)
%2
%3
%4
%5
#s(literal 1 binary32)
ux
%8
maxCos
#s(literal 0 binary32)
%11
#s(literal 1/2 binary32)
%13
%14
%15
%16
%17
%18
%19
%20
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %29 %29)))) %20)
%35
%36
%37
%38
%39
%40
%41
%42
%43
%44
%45
%46
%47
%48
%49
%50
%51
%52
%53
%54
%55
%56
%57
(/.f32 %57 #s(literal 2 binary32))
%59
(*.f32 %5 %59)
%61
(*.f32 %5 %61)
(*.f32 %5 %52)
Outputs
%6 = (- 1 ux)
%10 = (*.f32 #s(literal -1 binary32) ux)
%14 = (* maxCos ux)
%15 = (*.f32 maxCos ux)
%17 = (+ 1 %14)
%18 = (+.f32 #s(literal 1 binary32) %15)
%20 = (- %17 ux)
%21 = (-.f32 maxCos #s(literal 1 binary32))
%22 = (*.f32 ux %21)
%26 = (pow %20 2)
%28 = (*.f32 #s(literal 2 binary32) maxCos)
%33 = (pow.f32 %21 #s(literal 2 binary32))
%34 = (*.f32 ux %33)
%40 = (- 1 %26)
%41 = (-.f32 #s(literal 2 binary32) %28)
%42 = (*.f32 ux %41)
%49 = (sqrt %40)
%50 = (sqrt.f32 %42)
%53 = (pow.f32 ux #s(literal 2 binary32))
%54 = (*.f32 %53 %33)
%59 = (/.f32 %33 %50)
%62 = (pow.f32 %21 #s(literal 4 binary32))
%65 = (pow.f32 %50 #s(literal 3 binary32))
%75 = (pow.f32 %21 #s(literal 6 binary32))
%78 = (pow.f32 %50 #s(literal 5 binary32))
%87 = (PI )
%88 = (* %87 %49)
%89 = (PI.f32 )
%90 = (*.f32 %89 %50)
%92 = (*.f32 %89 %33)
%97 = (/.f32 %92 %50)
%98 = (*.f32 %89 %62)
%107 = (*.f32 %89 %75)
%117 = (* uy %88)
%118 = (*.f32 uy %90)
%120 = (*.f32 uy %92)
%122 = (/.f32 (*.f32 %53 %120) %50)
%125 = (/.f32 %120 %50)
%126 = (*.f32 uy %98)
%128 = (/.f32 (*.f32 %53 %126) %65)
%134 = (/.f32 %126 %65)
%137 = (/.f32 (*.f32 %53 (*.f32 uy %107)) %78)
%145 = (* 2 %117)
%146 = (*.f32 #s(literal 2 binary32) %118)
%163 = (* uy 2)
%164 = (* %163 %87)
%165 = (sin %164)
%167 = (+ %6 (* ux maxCos))
%171 = (* %165 (sqrt (- 1 (* %167 %167))))
%173 = (*.f32 #s(literal 2 binary32) (*.f32 uy %89))
%174 = (sin.f32 %173)
%175 = (*.f32 %174 %50)
%177 = (*.f32 %174 %33)
%182 = (/.f32 %177 %50)
%183 = (*.f32 %174 %62)
%202 = (- ux %14)
%203 = (-.f32 #s(literal 1 binary32) maxCos)
%204 = (*.f32 ux %203)
%207 = (- ux (+ %14 1))
%211 = (- %202 2)
%216 = (neg %211)
%222 = (* (- %202 0) %216)
%223 = (*.f32 #s(literal 2 binary32) %204)
%225 = (*.f32 %203 %21)
%226 = (*.f32 ux %225)
%230 = (+ %14 %6)
%231 = (asin %230)
%232 = (-.f32 %18 ux)
%233 = (asin.f32 %232)
%235 = (asin %207)
%236 = (-.f32 ux %18)
%237 = (asin.f32 %236)
%241 = (+ %235 (* %87 1/2))
%243 = (*.f32 #s(literal 1/2 binary32) %89)
%244 = (+.f32 %237 %243)
%247 = (+ (* %207 %230) 1/2)
%251 = (-.f32 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) %21)) maxCos)
%252 = (*.f32 ux %251)
%258 = (*.f32 ux (-.f32 (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -1 binary32) %21 %226)) maxCos))
%261 = (+ %247 1/2)
%264 = (cos %231)
%265 = (cos.f32 %233)
%269 = (- (* %87 (+ uy uy)) %241)
%270 = (-.f32 %173 %244)
%272 = (cos %269)
%273 = (cos.f32 %270)
%277 = (+ (* (+ %87 %87) uy) %241)
%278 = (fma.f32 #s(literal 1/2 binary32) %89 %173)
%279 = (+.f32 %237 %278)
%281 = (cos %277)
%282 = (cos.f32 %279)
%284 = (- %272 %281)
%285 = (-.f32 %273 %282)
%287 = (/ %284 2)
%290 = (sqrt %222)
%291 = (sqrt.f32 %223)
%293 = (*.f32 %53 %225)
%298 = (pow.f32 %203 #s(literal 2 binary32))
%299 = (*.f32 %298 %33)
%300 = (*.f32 %53 %299)
%301 = (pow.f32 %291 #s(literal 3 binary32))
%303 = (/.f32 %225 %291)
%311 = (pow.f32 %203 #s(literal 3 binary32))
%313 = (*.f32 %311 (pow.f32 %21 #s(literal 3 binary32)))
%314 = (*.f32 %53 %313)
%315 = (pow.f32 %291 #s(literal 5 binary32))
%324 = (* %165 %290)
%325 = (*.f32 %174 %291)
%327 = (*.f32 %174 %225)
%328 = (*.f32 %53 %327)
%332 = (*.f32 %174 %299)
%333 = (*.f32 %53 %332)
%335 = (/.f32 %327 %291)
%343 = (*.f32 %53 (*.f32 %174 %313))
%352 = (sqrt %261)
%353 = (sqrt.f32 %252)
%359 = (pow.f32 %353 #s(literal 3 binary32))
%361 = (/.f32 %225 %353)
%368 = (pow.f32 %353 #s(literal 5 binary32))
%377 = (* %165 %352)
%378 = (*.f32 %174 %353)
%384 = (/.f32 %327 %353)
%399 = (* %165 %264)
%403 = (/.f32 #s(literal 1 binary32) ux)
%407 = (+.f32 maxCos %403)
%415 = (/.f32 maxCos ux)
%416 = (fma.f32 #s(literal 2 binary32) %415 %33)
%417 = (*.f32 #s(literal 2 binary32) %403)
%433 = (sqrt.f32 (neg.f32 %33))
%434 = (*.f32 ux %433)
%437 = (*.f32 #s(literal 1/2 binary32) (/.f32 %41 %434))
%441 = (pow.f32 %41 #s(literal 2 binary32))
%443 = (*.f32 %53 (pow.f32 %433 #s(literal 3 binary32)))
%444 = (/.f32 %441 %443)
%449 = (pow.f32 %41 #s(literal 3 binary32))
%450 = (pow.f32 ux #s(literal 3 binary32))
%452 = (*.f32 %450 (pow.f32 %433 #s(literal 5 binary32)))
%459 = (*.f32 %89 %433)
%462 = (*.f32 %89 %41)
%464 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %462 %434) %459)
%467 = (*.f32 %89 %441)
%468 = (/.f32 %467 %443)
%472 = (*.f32 %89 %449)
%478 = (*.f32 uy %459)
%479 = (*.f32 ux %478)
%482 = (/.f32 (*.f32 uy %462) %434)
%483 = (fma.f32 #s(literal 1/2 binary32) %482 %478)
%487 = (/.f32 (*.f32 uy %467) %443)
%492 = (/.f32 (*.f32 uy %472) %452)
%499 = (fma.f32 #s(literal 2 binary32) %478 %482)
%510 = (*.f32 %174 %433)
%515 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %174 %41) %434) %510)
%519 = (/.f32 (*.f32 %174 %441) %443)
%532 = (+.f32 maxCos %417)
%546 = (fma.f32 #s(literal -1 binary32) (/.f32 %21 ux) (fma.f32 %203 %21 %403))
%555 = (sqrt.f32 %225)
%556 = (*.f32 ux %555)
%558 = (/.f32 #s(literal 1 binary32) %556)
%560 = (/.f32 maxCos %556)
%565 = (*.f32 %53 (pow.f32 %555 #s(literal 3 binary32)))
%566 = (/.f32 %298 %565)
%573 = (*.f32 %450 (pow.f32 %555 #s(literal 5 binary32)))
%581 = (*.f32 %174 %555)
%586 = (fma.f32 %174 %555 (/.f32 (*.f32 %174 %203) %556))
%590 = (/.f32 (*.f32 %174 %298) %565)
%601 = (*.f32 #s(literal 1/2 binary32) (/.f32 %251 %556))
%605 = (pow.f32 %251 #s(literal 2 binary32))
%606 = (/.f32 %605 %565)
%611 = (pow.f32 %251 #s(literal 3 binary32))
%620 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %174 %251) %556) %581)
%624 = (/.f32 (*.f32 %174 %605) %565)
%638 = (*.f32 #s(literal -1 binary32) maxCos)
%643 = (+.f32 #s(literal 1 binary32) %638)
%644 = (*.f32 ux %643)
%651 = (pow.f32 %643 #s(literal 2 binary32))
%652 = (*.f32 %53 %651)
%655 = (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -2 binary32) maxCos))
%672 = (sqrt.f32 (neg.f32 %651))
%673 = (*.f32 ux %672)
%682 = (/.f32 %655 %672)
%683 = (pow.f32 %655 #s(literal 2 binary32))
%684 = (pow.f32 %672 #s(literal 3 binary32))
%685 = (*.f32 ux %684)
%696 = (pow.f32 %655 #s(literal 3 binary32))
%698 = (*.f32 ux (pow.f32 %672 #s(literal 5 binary32)))
%711 = (*.f32 %89 %672)
%715 = (*.f32 %89 %655)
%721 = (/.f32 %715 %672)
%722 = (*.f32 %89 %683)
%732 = (*.f32 %89 %696)
%744 = (*.f32 uy %711)
%745 = (*.f32 ux %744)
%748 = (*.f32 uy %715)
%749 = (/.f32 %748 %673)
%754 = (/.f32 %748 %672)
%755 = (*.f32 uy %722)
%756 = (/.f32 %755 %685)
%764 = (/.f32 %755 %684)
%766 = (/.f32 (*.f32 uy %732) %698)
%787 = (*.f32 #s(literal 2 binary32) %744)
%802 = (*.f32 %174 %672)
%806 = (*.f32 %174 %655)
%812 = (/.f32 %806 %672)
%813 = (*.f32 %174 %683)
%823 = (*.f32 %174 %696)
%854 = (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -1 binary32) ux %15))
%855 = (asin.f32 %854)
%858 = (asin.f32 (neg.f32 %854))
%860 = (+.f32 %858 %243)
%869 = (*.f32 #s(literal -1 binary32) %651)
%873 = (cos.f32 %855)
%875 = (-.f32 %173 %860)
%877 = (cos.f32 %875)
%879 = (+.f32 %858 %278)
%881 = (cos.f32 %879)
%883 = (-.f32 %877 %881)
%887 = (sqrt.f32 %869)
%888 = (*.f32 ux %887)
%898 = (/.f32 %643 %887)
%899 = (pow.f32 %887 #s(literal 3 binary32))
%900 = (*.f32 ux %899)
%911 = (pow.f32 %643 #s(literal 3 binary32))
%913 = (*.f32 ux (pow.f32 %887 #s(literal 5 binary32)))
%926 = (*.f32 %174 %887)
%930 = (*.f32 %174 %643)
%936 = (/.f32 %930 %887)
%937 = (*.f32 %174 %651)
%965 = (/.f32 %655 %887)
%993 = (/.f32 %806 %887)
%1021 = (pow.f32 uy #s(literal 2 binary32))
%1022 = (pow.f32 %89 #s(literal 3 binary32))
%1024 = (*.f32 #s(literal 2 binary32) %89)
%1029 = (pow.f32 %89 #s(literal 5 binary32))
%1039 = (pow.f32 %89 #s(literal 7 binary32))
%1051 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 %232 #s(literal 2 binary32))))
%1052 = (*.f32 %89 %1051)
%1053 = (*.f32 uy %1052)
%1057 = (*.f32 %1022 %1051)
%1063 = (*.f32 %1029 %1051)
%1083 = (neg.f32 %244)
%1084 = (cos.f32 %1083)
%1086 = (sin.f32 %1083)
%1087 = (*.f32 %89 %1086)
%1092 = (pow.f32 %89 #s(literal 2 binary32))
%1093 = (*.f32 %1092 %1084)
%1096 = (*.f32 #s(literal 2 binary32) %1087)
%1102 = (*.f32 %1022 %1086)
%1111 = (cos.f32 %244)
%1113 = (sin.f32 %244)
%1114 = (*.f32 %89 %1113)
%1119 = (*.f32 %1092 %1111)
%1122 = (*.f32 #s(literal 2 binary32) %1114)
%1127 = (*.f32 %1022 %1113)
%1136 = (-.f32 %1084 %1111)
%1138 = (-.f32 %1122 %1096)
%1139 = (*.f32 uy %1138)
%1144 = (*.f32 #s(literal -2 binary32) %1119)
%1145 = (-.f32 (*.f32 #s(literal -2 binary32) %1093) %1144)
%1146 = (*.f32 uy %1145)
%1156 = (*.f32 uy (-.f32 (*.f32 #s(literal -4/3 binary32) %1127) (*.f32 #s(literal -4/3 binary32) %1102)))
%1166 = (*.f32 #s(literal 1/2 binary32) %1136)
%1184 = (-.f32 (+.f32 #s(literal 2 binary32) %15) ux)
%1186 = (sqrt.f32 (*.f32 (-.f32 ux %15) %1184))
%1187 = (*.f32 %89 %1186)
%1191 = (*.f32 %1022 %1186)
%1197 = (*.f32 %1029 %1186)
%1217 = (sqrt.f32 (+.f32 #s(literal 1 binary32) (*.f32 %236 %232)))
%1218 = (*.f32 %89 %1217)
%1222 = (*.f32 %1022 %1217)
%1228 = (*.f32 %1029 %1217)
%1246 = (*.f32 %89 %265)
%1250 = (*.f32 %1022 %265)
%1256 = (*.f32 %1029 %265)
%1277 = (/.f32 %244 uy)
%1281 = (/.f32 %89 uy)
%1282 = (/.f32 %237 uy)
%1302 = (-.f32 #s(literal 1 binary32) ux)
%1305 = (pow.f32 %1302 #s(literal 2 binary32))
%1307 = (*.f32 ux %1302)
%1308 = (*.f32 maxCos %1307)
%1311 = (*.f32 maxCos %53)
%1315 = (-.f32 #s(literal 1 binary32) %1305)
%1328 = (sqrt.f32 %1315)
%1334 = (/.f32 %1307 %1328)
%1335 = (*.f32 %53 %1305)
%1338 = (+.f32 (/.f32 %1335 (pow.f32 %1328 #s(literal 2 binary32))) %53)
%1346 = (*.f32 %1338 %1302)
%1349 = (pow.f32 %1328 #s(literal 3 binary32))
%1359 = (*.f32 %89 %1328)
%1361 = (*.f32 %89 %1302)
%1362 = (*.f32 ux %1361)
%1367 = (/.f32 %1362 %1328)
%1368 = (*.f32 %89 %1338)
%1375 = (*.f32 %89 %1346)
%1386 = (*.f32 uy %1359)
%1389 = (*.f32 ux (*.f32 uy %1361))
%1391 = (/.f32 (*.f32 maxCos %1389) %1328)
%1394 = (/.f32 %1389 %1328)
%1395 = (*.f32 uy %1368)
%1397 = (/.f32 (*.f32 maxCos %1395) %1328)
%1405 = (/.f32 (*.f32 maxCos (*.f32 ux (*.f32 uy %1375))) %1349)
%1406 = (/.f32 %1395 %1328)
%1413 = (*.f32 #s(literal 2 binary32) %1386)
%1429 = (*.f32 %174 %1328)
%1432 = (*.f32 ux (*.f32 %174 %1302))
%1437 = (/.f32 %1432 %1328)
%1438 = (*.f32 %174 %1338)
%1456 = (*.f32 #s(literal -1 binary32) %15)
%1457 = (+.f32 ux %1456)
%1459 = (-.f32 ux #s(literal 1 binary32))
%1463 = (-.f32 ux #s(literal 2 binary32))
%1467 = (-.f32 #s(literal 2 binary32) ux)
%1470 = (*.f32 ux %1467)
%1472 = (fma.f32 #s(literal -1 binary32) %1470 %53)
%1478 = (*.f32 %1302 %1459)
%1479 = (+.f32 #s(literal 1/2 binary32) %1478)
%1481 = (*.f32 ux %1459)
%1482 = (fma.f32 #s(literal -1 binary32) %1307 %1481)
%1483 = (fma.f32 maxCos %1482 %1478)
%1487 = (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1311 %1482) %1478)
%1490 = (+.f32 #s(literal 1 binary32) %1478)
%1496 = (sqrt.f32 %1470)
%1503 = (*.f32 #s(literal -1 binary32) %53)
%1504 = (pow.f32 %1472 #s(literal 2 binary32))
%1508 = (-.f32 %1503 (*.f32 #s(literal 1/4 binary32) (/.f32 %1504 (pow.f32 %1496 #s(literal 2 binary32)))))
%1511 = (/.f32 %1472 %1496)
%1517 = (*.f32 %1472 %1508)
%1519 = (pow.f32 %1496 #s(literal 3 binary32))
%1529 = (*.f32 %174 %1496)
%1531 = (*.f32 %174 %1472)
%1536 = (*.f32 %174 %1508)
%1539 = (/.f32 %1531 %1496)
%1554 = (sqrt.f32 %1490)
%1561 = (pow.f32 %1482 #s(literal 2 binary32))
%1565 = (-.f32 %1503 (*.f32 #s(literal 1/4 binary32) (/.f32 %1561 (pow.f32 %1554 #s(literal 2 binary32)))))
%1568 = (/.f32 %1482 %1554)
%1574 = (*.f32 %1482 %1565)
%1576 = (pow.f32 %1554 #s(literal 3 binary32))
%1586 = (*.f32 %174 %1554)
%1588 = (*.f32 %174 %1482)
%1593 = (*.f32 %174 %1565)
%1596 = (/.f32 %1588 %1554)
%1611 = (/.f32 #s(literal 1 binary32) maxCos)
%1612 = (+.f32 ux %1611)
%1615 = (/.f32 ux maxCos)
%1619 = (pow.f32 maxCos #s(literal 2 binary32))
%1620 = (*.f32 %1619 %53)
%1622 = (/.f32 %1307 maxCos)
%1628 = (fma.f32 #s(literal 2 binary32) %1622 (+.f32 (/.f32 %1305 %1619) %53))
%1637 = (/.f32 #s(literal 1 binary32) %1619)
%1642 = (sqrt.f32 (neg.f32 %53))
%1643 = (*.f32 maxCos %1642)
%1645 = (/.f32 %1307 %1643)
%1648 = (*.f32 maxCos (+.f32 %1642 (*.f32 #s(literal -1 binary32) %1645)))
%1653 = (-.f32 #s(literal 1 binary32) (+.f32 (/.f32 %1335 (pow.f32 %1642 #s(literal 2 binary32))) %1305))
%1654 = (*.f32 %1619 %1642)
%1656 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1653 %1654))
%1661 = (*.f32 %1302 %1653)
%1662 = (*.f32 ux %1661)
%1663 = (pow.f32 maxCos #s(literal 3 binary32))
%1664 = (pow.f32 %1642 #s(literal 3 binary32))
%1665 = (*.f32 %1663 %1664)
%1672 = (*.f32 %89 %1642)
%1673 = (*.f32 maxCos %1672)
%1675 = (/.f32 %1362 %1643)
%1677 = (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1675 %1672))
%1679 = (*.f32 %89 %1653)
%1681 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1679 %1654) %1672)
%1685 = (*.f32 %89 %1661)
%1686 = (*.f32 ux %1685)
%1692 = (*.f32 uy %1672)
%1693 = (*.f32 maxCos %1692)
%1695 = (/.f32 %1389 %1643)
%1697 = (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1695 %1692))
%1699 = (*.f32 uy %1679)
%1700 = (/.f32 %1699 %1654)
%1701 = (fma.f32 #s(literal 1/2 binary32) %1700 %1692)
%1706 = (*.f32 ux (*.f32 uy %1685))
%1707 = (/.f32 %1706 %1665)
%1714 = (*.f32 #s(literal 2 binary32) %1692)
%1716 = (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1695 %1714))
%1727 = (*.f32 %174 %1642)
%1728 = (*.f32 maxCos %1727)
%1730 = (/.f32 %1432 %1643)
%1732 = (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1730 %1727))
%1734 = (*.f32 %174 %1653)
%1736 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1734 %1654) %1727)
%1741 = (*.f32 ux (*.f32 %174 %1661))
%1755 = (+.f32 ux (*.f32 #s(literal 2 binary32) %1611))
%1762 = (/.f32 %1470 maxCos)
%1763 = (/.f32 %53 maxCos)
%1774 = (/.f32 %1481 maxCos)
%1781 = (+.f32 %1774 (/.f32 %1478 %1619))
%1792 = (sqrt.f32 %1503)
%1793 = (*.f32 maxCos %1792)
%1795 = (/.f32 %1472 %1793)
%1800 = (pow.f32 %1792 #s(literal 2 binary32))
%1803 = (-.f32 %1470 (*.f32 #s(literal 1/4 binary32) (/.f32 %1504 %1800)))
%1804 = (*.f32 %1619 %1792)
%1807 = (fma.f32 #s(literal 1/2 binary32) %1795 (*.f32 #s(literal 1/2 binary32) (/.f32 %1803 %1804)))
%1811 = (*.f32 %1472 %1803)
%1812 = (pow.f32 %1792 #s(literal 3 binary32))
%1813 = (*.f32 %1663 %1812)
%1819 = (*.f32 %174 %1792)
%1820 = (*.f32 maxCos %1819)
%1822 = (/.f32 %1531 %1793)
%1829 = (fma.f32 #s(literal 1/2 binary32) %1822 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %174 %1803) %1804) %1819))
%1837 = (/.f32 %1482 %1793)
%1844 = (-.f32 %1490 (*.f32 #s(literal 1/4 binary32) (/.f32 %1561 %1800)))
%1847 = (fma.f32 #s(literal 1/2 binary32) %1837 (*.f32 #s(literal 1/2 binary32) (/.f32 %1844 %1804)))
%1851 = (*.f32 %1482 %1844)
%1857 = (/.f32 %1588 %1793)
%1864 = (fma.f32 #s(literal 1/2 binary32) %1857 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %174 %1844) %1804) %1819))
%1903 = (/.f32 %1307 %1642)
%1911 = (*.f32 maxCos %1664)
%1929 = (/.f32 %1362 %1642)
%1951 = (/.f32 %1699 %1643)
%1952 = (/.f32 %1389 %1642)
%1959 = (/.f32 %1706 %1911)
%1960 = (/.f32 %1699 %1642)
%1974 = (*.f32 #s(literal 2 binary32) %1952)
%1994 = (/.f32 %1432 %1642)
%2035 = (fma.f32 #s(literal -1 binary32) %53 %1470)
%2045 = (fma.f32 #s(literal -1 binary32) %1481 %1307)
%2075 = (-.f32 %1470 (*.f32 #s(literal 1/4 binary32) (/.f32 (pow.f32 %2035 #s(literal 2 binary32)) %1800)))
%2078 = (*.f32 #s(literal 1/2 binary32) (/.f32 %2035 %1792))
%2086 = (*.f32 %2035 %2075)
%2087 = (*.f32 maxCos %1812)
%2102 = (*.f32 %174 %2035)
%2108 = (*.f32 %174 %2075)
%2111 = (*.f32 #s(literal 1/2 binary32) (/.f32 %2102 %1792))
%2139 = (-.f32 %1490 (*.f32 #s(literal 1/4 binary32) (/.f32 (pow.f32 %2045 #s(literal 2 binary32)) %1800)))
%2142 = (*.f32 #s(literal 1/2 binary32) (/.f32 %2045 %1792))
%2150 = (*.f32 %2045 %2139)
%2163 = (*.f32 %174 %2045)
%2169 = (*.f32 %174 %2139)
%2172 = (*.f32 #s(literal 1/2 binary32) (/.f32 %2163 %1792))
(approx uy #s(literal 0 binary32))
(approx ux ux)
(approx %6 #s(literal 1 binary32))
(approx %6 (+.f32 #s(literal 1 binary32) %10))
(approx %14 %15)
(approx %17 %18)
(approx %20 (+.f32 #s(literal 1 binary32) %22))
(approx %26 (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 %28 #s(literal 2 binary32)))))
(approx %26 (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 (fma.f32 #s(literal 2 binary32) maxCos %34) #s(literal 2 binary32)))))
(approx %40 %42)
(approx %40 (*.f32 ux (-.f32 (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -1 binary32) %34)) %28)))
(approx %49 %50)
(approx %49 (+.f32 %50 (*.f32 #s(literal -1/2 binary32) (/.f32 %54 %50))))
(approx %49 (+.f32 %50 (*.f32 %53 (fma.f32 #s(literal -1/2 binary32) %59 (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %53 %62) %65))))))
(approx %49 (+.f32 %50 (*.f32 %53 (fma.f32 #s(literal -1/2 binary32) %59 (*.f32 %53 (fma.f32 #s(literal -1/8 binary32) (/.f32 %62 %65) (*.f32 #s(literal -1/16 binary32) (/.f32 (*.f32 %53 %75) %78))))))))
(approx %88 %90)
(approx %88 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 %53 %92) %50) %90))
(approx %88 (fma.f32 %89 %50 (*.f32 %53 (fma.f32 #s(literal -1/2 binary32) %97 (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %53 %98) %65))))))
(approx %88 (fma.f32 %89 %50 (*.f32 %53 (fma.f32 #s(literal -1/2 binary32) %97 (*.f32 %53 (fma.f32 #s(literal -1/8 binary32) (/.f32 %98 %65) (*.f32 #s(literal -1/16 binary32) (/.f32 (*.f32 %53 %107) %78))))))))
(approx %117 %118)
(approx %117 (fma.f32 #s(literal -1/2 binary32) %122 %118))
(approx %117 (fma.f32 uy %90 (*.f32 %53 (fma.f32 #s(literal -1/2 binary32) %125 (*.f32 #s(literal -1/8 binary32) %128)))))
(approx %117 (fma.f32 uy %90 (*.f32 %53 (fma.f32 #s(literal -1/2 binary32) %125 (*.f32 %53 (fma.f32 #s(literal -1/8 binary32) %134 (*.f32 #s(literal -1/16 binary32) %137)))))))
(approx %145 %146)
(approx %145 (fma.f32 #s(literal -1 binary32) %122 %146))
(approx %145 (fma.f32 #s(literal 2 binary32) %118 (*.f32 %53 (fma.f32 #s(literal -1 binary32) %125 (*.f32 #s(literal -1/4 binary32) %128)))))
(approx %145 (fma.f32 #s(literal 2 binary32) %118 (*.f32 %53 (fma.f32 #s(literal -1 binary32) %125 (*.f32 %53 (fma.f32 #s(literal -1/4 binary32) %134 (*.f32 #s(literal -1/8 binary32) %137)))))))
(approx %171 %175)
(approx %171 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 %53 %177) %50) %175))
(approx %171 (fma.f32 %174 %50 (*.f32 %53 (fma.f32 #s(literal -1/2 binary32) %182 (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %53 %183) %65))))))
(approx %171 (fma.f32 %174 %50 (*.f32 %53 (fma.f32 #s(literal -1/2 binary32) %182 (*.f32 %53 (fma.f32 #s(literal -1/8 binary32) (/.f32 %183 %65) (*.f32 #s(literal -1/16 binary32) (/.f32 (*.f32 %53 (*.f32 %174 %75)) %78))))))))
(approx %202 %204)
(approx %207 #s(literal -1 binary32))
(approx %207 (-.f32 %204 #s(literal 1 binary32)))
(approx %211 #s(literal -2 binary32))
(approx %211 (-.f32 %204 #s(literal 2 binary32)))
(approx %216 #s(literal 2 binary32))
(approx %216 (+.f32 #s(literal 2 binary32) %22))
(approx %222 %223)
(approx %222 (*.f32 ux (fma.f32 #s(literal 2 binary32) %203 %226)))
(approx %231 %233)
(approx %235 %237)
(approx %241 %244)
(approx %247 #s(literal -1/2 binary32))
(approx %247 (-.f32 %252 #s(literal 1/2 binary32)))
(approx %247 (-.f32 %258 #s(literal 1/2 binary32)))
(approx %261 %252)
(approx %261 %258)
(approx %264 %265)
(approx %269 %270)
(approx %272 %273)
(approx %277 %279)
(approx %281 %282)
(approx %284 %285)
(approx %287 (*.f32 #s(literal 1/2 binary32) %285))
(approx %290 %291)
(approx %290 (+.f32 %291 (*.f32 #s(literal 1/2 binary32) (/.f32 %293 %291))))
(approx %290 (+.f32 %291 (*.f32 %53 (fma.f32 #s(literal -1/8 binary32) (/.f32 %300 %301) (*.f32 #s(literal 1/2 binary32) %303)))))
(approx %290 (+.f32 %291 (*.f32 %53 (fma.f32 #s(literal 1/2 binary32) %303 (*.f32 %53 (fma.f32 #s(literal -1/8 binary32) (/.f32 %299 %301) (*.f32 #s(literal 1/16 binary32) (/.f32 %314 %315))))))))
(approx %324 %325)
(approx %324 (fma.f32 #s(literal 1/2 binary32) (/.f32 %328 %291) %325))
(approx %324 (fma.f32 %174 %291 (*.f32 %53 (fma.f32 #s(literal -1/8 binary32) (/.f32 %333 %301) (*.f32 #s(literal 1/2 binary32) %335)))))
(approx %324 (fma.f32 %174 %291 (*.f32 %53 (fma.f32 #s(literal 1/2 binary32) %335 (*.f32 %53 (fma.f32 #s(literal -1/8 binary32) (/.f32 %332 %301) (*.f32 #s(literal 1/16 binary32) (/.f32 %343 %315))))))))
(approx %352 %353)
(approx %352 (+.f32 %353 (*.f32 #s(literal 1/2 binary32) (/.f32 %293 %353))))
(approx %352 (+.f32 %353 (*.f32 %53 (fma.f32 #s(literal -1/8 binary32) (/.f32 %300 %359) (*.f32 #s(literal 1/2 binary32) %361)))))
(approx %352 (+.f32 %353 (*.f32 %53 (fma.f32 #s(literal 1/2 binary32) %361 (*.f32 %53 (fma.f32 #s(literal -1/8 binary32) (/.f32 %299 %359) (*.f32 #s(literal 1/16 binary32) (/.f32 %314 %368))))))))
(approx %377 %378)
(approx %377 (fma.f32 #s(literal 1/2 binary32) (/.f32 %328 %353) %378))
(approx %377 (fma.f32 %174 %353 (*.f32 %53 (fma.f32 #s(literal -1/8 binary32) (/.f32 %333 %359) (*.f32 #s(literal 1/2 binary32) %384)))))
(approx %377 (fma.f32 %174 %353 (*.f32 %53 (fma.f32 #s(literal 1/2 binary32) %384 (*.f32 %53 (fma.f32 #s(literal -1/8 binary32) (/.f32 %332 %359) (*.f32 #s(literal 1/16 binary32) (/.f32 %343 %368))))))))
(approx %399 (*.f32 %265 %174))
(approx %6 %10)
(approx %6 (*.f32 ux (-.f32 %403 #s(literal 1 binary32))))
(approx %17 (*.f32 ux %407))
(approx %20 %22)
(approx %20 (*.f32 ux (-.f32 %407 #s(literal 1 binary32))))
(approx %26 %54)
(approx %26 (*.f32 %53 (-.f32 %416 %417)))
(approx %26 (*.f32 %53 (-.f32 (fma.f32 #s(literal 2 binary32) %415 (+.f32 (/.f32 #s(literal 1 binary32) %53) %33)) %417)))
(approx %40 (*.f32 #s(literal -1 binary32) %54))
(approx %40 (*.f32 %53 (-.f32 %417 %416)))
(approx %49 %434)
(approx %49 (*.f32 ux (+.f32 %433 %437)))
(approx %49 (*.f32 ux (+.f32 %433 (fma.f32 #s(literal -1/8 binary32) %444 %437))))
(approx %49 (*.f32 ux (+.f32 %433 (fma.f32 #s(literal -1/8 binary32) %444 (fma.f32 #s(literal 1/16 binary32) (/.f32 %449 %452) %437)))))
(approx %88 (*.f32 ux %459))
(approx %88 (*.f32 ux %464))
(approx %88 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %468 %464)))
(approx %88 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %468 (fma.f32 #s(literal 1/16 binary32) (/.f32 %472 %452) %464))))
(approx %117 %479)
(approx %117 (*.f32 ux %483))
(approx %117 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %487 %483)))
(approx %117 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %487 (fma.f32 #s(literal 1/16 binary32) %492 %483))))
(approx %145 (*.f32 #s(literal 2 binary32) %479))
(approx %145 (*.f32 ux %499))
(approx %145 (*.f32 ux (fma.f32 #s(literal -1/4 binary32) %487 %499)))
(approx %145 (*.f32 ux (fma.f32 #s(literal -1/4 binary32) %487 (fma.f32 #s(literal 1/8 binary32) %492 %499))))
(approx %171 (*.f32 ux %510))
(approx %171 (*.f32 ux %515))
(approx %171 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %519 %515)))
(approx %171 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %519 (fma.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %174 %449) %452) %515))))
(approx %207 (*.f32 ux (-.f32 #s(literal 1 binary32) %407)))
(approx %211 (*.f32 ux (-.f32 #s(literal 1 binary32) %532)))
(approx %216 (*.f32 ux (-.f32 %532 #s(literal 1 binary32))))
(approx %222 %293)
(approx %222 (*.f32 %53 (fma.f32 #s(literal 2 binary32) (/.f32 %203 ux) %225)))
(approx %247 (*.f32 %53 (-.f32 %546 %415)))
(approx %247 (*.f32 %53 (-.f32 %546 (+.f32 (/.f32 #s(literal 1/2 binary32) %53) %415))))
(approx %290 %556)
(approx %290 (*.f32 ux (-.f32 (+.f32 %555 %558) %560)))
(approx %290 (*.f32 ux (-.f32 (+.f32 %555 (fma.f32 #s(literal -1/2 binary32) %566 %558)) %560)))
(approx %290 (*.f32 ux (-.f32 (+.f32 %555 (fma.f32 #s(literal -1/2 binary32) %566 (fma.f32 #s(literal 1/2 binary32) (/.f32 %311 %573) %558))) %560)))
(approx %324 (*.f32 ux %581))
(approx %324 (*.f32 ux %586))
(approx %324 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) %590 %586)))
(approx %324 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) %590 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %174 %311) %573) %586))))
(approx %352 (*.f32 ux (+.f32 %555 %601)))
(approx %352 (*.f32 ux (+.f32 %555 (fma.f32 #s(literal -1/8 binary32) %606 %601))))
(approx %352 (*.f32 ux (+.f32 %555 (fma.f32 #s(literal -1/8 binary32) %606 (fma.f32 #s(literal 1/16 binary32) (/.f32 %611 %573) %601)))))
(approx %377 (*.f32 ux %620))
(approx %377 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %624 %620)))
(approx %377 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %624 (fma.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %174 %611) %573) %620))))
(approx %6 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 #s(literal 1 binary32) %403))))
(approx %17 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 %638 %403))))
(approx %20 (*.f32 #s(literal -1 binary32) %644))
(approx %20 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 %643 %403))))
(approx %26 %652)
(approx %26 (*.f32 %53 (fma.f32 #s(literal -1 binary32) (/.f32 %655 ux) %651)))
(approx %26 (*.f32 %53 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 %655 %403) ux) %651)))
(approx %40 (*.f32 #s(literal -1 binary32) %652))
(approx %40 (*.f32 %53 (-.f32 (fma.f32 #s(literal -2 binary32) %415 %417) %651)))
(approx %49 (*.f32 #s(literal -1 binary32) %673))
(approx %49 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %672 (*.f32 #s(literal 1/2 binary32) (/.f32 %655 %673))))))
(approx %49 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %672 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %682 (*.f32 #s(literal 1/8 binary32) (/.f32 %683 %685))) ux))))))
(approx %49 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %672 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/8 binary32) (/.f32 %683 %684) (*.f32 #s(literal 1/16 binary32) (/.f32 %696 %698))) ux) (*.f32 #s(literal -1/2 binary32) %682)) ux))))))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 ux %711)))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal 1/2 binary32) (/.f32 %715 %673) %711))))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %721 (*.f32 #s(literal 1/8 binary32) (/.f32 %722 %685))) ux) %711))))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/8 binary32) (/.f32 %722 %684) (*.f32 #s(literal 1/16 binary32) (/.f32 %732 %698))) ux) (*.f32 #s(literal -1/2 binary32) %721)) ux) %711))))
(approx %117 (*.f32 #s(literal -1 binary32) %745))
(approx %117 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal 1/2 binary32) %749 %744))))
(approx %117 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %754 (*.f32 #s(literal 1/8 binary32) %756)) ux) %744))))
(approx %117 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/8 binary32) %764 (*.f32 #s(literal 1/16 binary32) %766)) ux) (*.f32 #s(literal -1/2 binary32) %754)) ux) %744))))
(approx %145 (*.f32 #s(literal -2 binary32) %745))
(approx %145 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal 2 binary32) %744 %749))))
(approx %145 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %754 (*.f32 #s(literal 1/4 binary32) %756)) ux) %787))))
(approx %145 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %754 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/4 binary32) %764 (*.f32 #s(literal 1/8 binary32) %766)) ux))) ux) %787))))
(approx %171 (*.f32 #s(literal -1 binary32) (*.f32 ux %802)))
(approx %171 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal 1/2 binary32) (/.f32 %806 %673) %802))))
(approx %171 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %812 (*.f32 #s(literal 1/8 binary32) (/.f32 %813 %685))) ux) %802))))
(approx %171 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/8 binary32) (/.f32 %813 %684) (*.f32 #s(literal 1/16 binary32) (/.f32 %823 %698))) ux) (*.f32 #s(literal -1/2 binary32) %812)) ux) %802))))
(approx %202 %644)
(approx %207 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 %403 %643))))
(approx %211 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 %417 %643))))
(approx %216 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 %643 %417))))
(approx %222 (*.f32 %53 (fma.f32 #s(literal -1 binary32) %651 (*.f32 #s(literal 2 binary32) (/.f32 %643 ux)))))
(approx %231 %855)
(approx %235 %858)
(approx %241 %860)
(approx %247 (*.f32 %53 (fma.f32 #s(literal -2 binary32) %415 (fma.f32 #s(literal -1 binary32) %651 %417))))
(approx %247 (*.f32 %53 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %655 (*.f32 #s(literal 1/2 binary32) %403)) ux) %869)))
(approx %264 %873)
(approx %269 %875)
(approx %272 %877)
(approx %277 %879)
(approx %281 %881)
(approx %284 %883)
(approx %287 (*.f32 #s(literal 1/2 binary32) %883))
(approx %290 (*.f32 #s(literal -1 binary32) %888))
(approx %290 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %887 (fma.f32 #s(literal -1 binary32) (/.f32 maxCos %888) (/.f32 #s(literal 1 binary32) %888))))))
(approx %290 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %887 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %898 (*.f32 #s(literal 1/2 binary32) (/.f32 %651 %900))) ux))))))
(approx %290 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %887 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %898 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %651 %899) (*.f32 #s(literal 1/2 binary32) (/.f32 %911 %913))) ux))) ux))))))
(approx %324 (*.f32 #s(literal -1 binary32) (*.f32 ux %926)))
(approx %324 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 %174 %887 (/.f32 %930 %888)))))
(approx %324 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %936 (*.f32 #s(literal 1/2 binary32) (/.f32 %937 %900))) ux) %926))))
(approx %324 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %936 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %937 %899) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %174 %911) %913))) ux))) ux) %926))))
(approx %352 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %887 (*.f32 #s(literal 1/2 binary32) (/.f32 %655 %888))))))
(approx %352 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %887 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %965 (*.f32 #s(literal 1/8 binary32) (/.f32 %683 %900))) ux))))))
(approx %352 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %887 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/8 binary32) (/.f32 %683 %899) (*.f32 #s(literal 1/16 binary32) (/.f32 %696 %913))) ux) (*.f32 #s(literal -1/2 binary32) %965)) ux))))))
(approx %377 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal 1/2 binary32) (/.f32 %806 %888) %926))))
(approx %377 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %993 (*.f32 #s(literal 1/8 binary32) (/.f32 %813 %900))) ux) %926))))
(approx %377 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/8 binary32) (/.f32 %813 %899) (*.f32 #s(literal 1/16 binary32) (/.f32 %823 %913))) ux) (*.f32 #s(literal -1/2 binary32) %993)) ux) %926))))
(approx %399 (*.f32 %873 %174))
(approx uy uy)
(approx %163 (*.f32 #s(literal 2 binary32) uy))
(approx %164 %173)
(approx %165 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %1021 %1022) %1024)))
(approx %165 (*.f32 uy (fma.f32 #s(literal 2 binary32) %89 (*.f32 %1021 (fma.f32 #s(literal -4/3 binary32) %1022 (*.f32 #s(literal 4/15 binary32) (*.f32 %1021 %1029)))))))
(approx %165 (*.f32 uy (fma.f32 #s(literal 2 binary32) %89 (*.f32 %1021 (fma.f32 #s(literal -4/3 binary32) %1022 (*.f32 %1021 (fma.f32 #s(literal -8/315 binary32) (*.f32 %1021 %1039) (*.f32 #s(literal 4/15 binary32) %1029))))))))
(approx %117 %1053)
(approx %145 (*.f32 #s(literal 2 binary32) %1053))
(approx %171 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %1021 %1057) (*.f32 #s(literal 2 binary32) %1052))))
(approx %171 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1052 (*.f32 %1021 (fma.f32 #s(literal -4/3 binary32) %1057 (*.f32 #s(literal 4/15 binary32) (*.f32 %1021 %1063)))))))
(approx %171 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1052 (*.f32 %1021 (fma.f32 #s(literal -4/3 binary32) %1057 (*.f32 %1021 (fma.f32 #s(literal -8/315 binary32) (*.f32 %1021 (*.f32 %1039 %1051)) (*.f32 #s(literal 4/15 binary32) %1063))))))))
(approx %269 (*.f32 #s(literal -1 binary32) %244))
(approx %272 %1084)
(approx %272 (+.f32 %1084 (*.f32 #s(literal -2 binary32) (*.f32 uy %1087))))
(approx %272 (+.f32 %1084 (*.f32 uy (-.f32 (*.f32 #s(literal -2 binary32) (*.f32 uy %1093)) %1096))))
(approx %272 (+.f32 %1084 (*.f32 uy (-.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) %1093 (*.f32 #s(literal 4/3 binary32) (*.f32 uy %1102)))) %1096))))
(approx %281 %1111)
(approx %281 (+.f32 %1111 (*.f32 #s(literal -2 binary32) (*.f32 uy %1114))))
(approx %281 (+.f32 %1111 (*.f32 uy (-.f32 (*.f32 #s(literal -2 binary32) (*.f32 uy %1119)) %1122))))
(approx %281 (+.f32 %1111 (*.f32 uy (-.f32 (*.f32 uy (fma.f32 #s(literal -2 binary32) %1119 (*.f32 #s(literal 4/3 binary32) (*.f32 uy %1127)))) %1122))))
(approx %284 %1136)
(approx %284 (-.f32 (+.f32 %1084 %1139) %1111))
(approx %284 (-.f32 (+.f32 %1084 (*.f32 uy (-.f32 (fma.f32 #s(literal 2 binary32) %1114 %1146) %1096))) %1111))
(approx %284 (-.f32 (+.f32 %1084 (*.f32 uy (-.f32 (fma.f32 #s(literal 2 binary32) %1114 (*.f32 uy (-.f32 (fma.f32 #s(literal -2 binary32) %1093 %1156) %1144))) %1096))) %1111))
(approx %287 %1166)
(approx %287 (fma.f32 #s(literal 1/2 binary32) %1139 %1166))
(approx %287 (fma.f32 #s(literal 1/2 binary32) %1136 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %1146 (*.f32 #s(literal 1/2 binary32) %1138)))))
(approx %287 (fma.f32 #s(literal 1/2 binary32) %1136 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %1138 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %1156 (*.f32 #s(literal 1/2 binary32) %1145)))))))
(approx %324 (*.f32 #s(literal 2 binary32) (*.f32 uy %1187)))
(approx %324 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %1021 %1191) (*.f32 #s(literal 2 binary32) %1187))))
(approx %324 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1187 (*.f32 %1021 (fma.f32 #s(literal -4/3 binary32) %1191 (*.f32 #s(literal 4/15 binary32) (*.f32 %1021 %1197)))))))
(approx %324 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1187 (*.f32 %1021 (fma.f32 #s(literal -4/3 binary32) %1191 (*.f32 %1021 (fma.f32 #s(literal -8/315 binary32) (*.f32 %1021 (*.f32 %1039 %1186)) (*.f32 #s(literal 4/15 binary32) %1197))))))))
(approx %377 (*.f32 #s(literal 2 binary32) (*.f32 uy %1218)))
(approx %377 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %1021 %1222) (*.f32 #s(literal 2 binary32) %1218))))
(approx %377 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1218 (*.f32 %1021 (fma.f32 #s(literal -4/3 binary32) %1222 (*.f32 #s(literal 4/15 binary32) (*.f32 %1021 %1228)))))))
(approx %377 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1218 (*.f32 %1021 (fma.f32 #s(literal -4/3 binary32) %1222 (*.f32 %1021 (fma.f32 #s(literal -8/315 binary32) (*.f32 %1021 (*.f32 %1039 %1217)) (*.f32 #s(literal 4/15 binary32) %1228))))))))
(approx %399 (*.f32 #s(literal 2 binary32) (*.f32 uy %1246)))
(approx %399 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %1021 %1250) (*.f32 #s(literal 2 binary32) %1246))))
(approx %399 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1246 (*.f32 %1021 (fma.f32 #s(literal -4/3 binary32) %1250 (*.f32 #s(literal 4/15 binary32) (*.f32 %1021 %1256)))))))
(approx %399 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1246 (*.f32 %1021 (fma.f32 #s(literal -4/3 binary32) %1250 (*.f32 %1021 (fma.f32 #s(literal -8/315 binary32) (*.f32 %1021 (*.f32 %1039 %265)) (*.f32 #s(literal 4/15 binary32) %1256))))))))
(approx %165 %174)
(approx %171 (*.f32 %174 %1051))
(approx %269 (*.f32 uy (fma.f32 #s(literal -1 binary32) %1277 %1024)))
(approx %277 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %1281 (fma.f32 #s(literal 2 binary32) %89 %1282))))
(approx %324 (*.f32 %174 %1186))
(approx %377 (*.f32 %174 %1217))
(approx %269 (*.f32 #s(literal -1 binary32) (*.f32 uy (fma.f32 #s(literal -2 binary32) %89 (fma.f32 #s(literal 1/2 binary32) %1281 %1282)))))
(approx %277 (*.f32 #s(literal -1 binary32) (*.f32 uy (fma.f32 #s(literal -2 binary32) %89 (*.f32 #s(literal -1 binary32) %1277)))))
(approx maxCos maxCos)
(approx %20 %1302)
(approx %20 %232)
(approx %26 %1305)
(approx %26 (fma.f32 #s(literal 2 binary32) %1308 %1305))
(approx %26 (fma.f32 maxCos (fma.f32 #s(literal 2 binary32) %1307 %1311) %1305))
(approx %40 %1315)
(approx %40 (-.f32 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -2 binary32) %1308)) %1305))
(approx %40 (-.f32 (+.f32 #s(literal 1 binary32) (*.f32 maxCos (-.f32 (*.f32 #s(literal -1 binary32) %1311) (*.f32 #s(literal 2 binary32) %1307)))) %1305))
(approx %49 %1328)
(approx %49 (+.f32 %1328 (*.f32 #s(literal -1 binary32) (/.f32 %1308 %1328))))
(approx %49 (+.f32 %1328 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1334 (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos %1338) %1328))))))
(approx %49 (+.f32 %1328 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1334 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos (*.f32 ux %1346)) %1349) (*.f32 #s(literal -1/2 binary32) (/.f32 %1338 %1328))))))))
(approx %88 %1359)
(approx %88 (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 maxCos %1362) %1328) %1359))
(approx %88 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1367 (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos %1368) %1328))) %1359))
(approx %88 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1367 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos (*.f32 ux %1375)) %1349) (*.f32 #s(literal -1/2 binary32) (/.f32 %1368 %1328))))) %1359))
(approx %117 %1386)
(approx %117 (fma.f32 #s(literal -1 binary32) %1391 %1386))
(approx %117 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1394 (*.f32 #s(literal -1/2 binary32) %1397)) %1386))
(approx %117 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1394 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) %1405 (*.f32 #s(literal -1/2 binary32) %1406)))) %1386))
(approx %145 %1413)
(approx %145 (fma.f32 #s(literal -2 binary32) %1391 %1413))
(approx %145 (fma.f32 #s(literal 2 binary32) %1386 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1394 (*.f32 #s(literal -1 binary32) %1397)))))
(approx %145 (fma.f32 #s(literal 2 binary32) %1386 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1394 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1405 (*.f32 #s(literal -1 binary32) %1406)))))))
(approx %171 %1429)
(approx %171 (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 maxCos %1432) %1328) %1429))
(approx %171 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1437 (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos %1438) %1328))) %1429))
(approx %171 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1437 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos (*.f32 ux (*.f32 %174 %1346))) %1349) (*.f32 #s(literal -1/2 binary32) (/.f32 %1438 %1328))))) %1429))
(approx %202 %1457)
(approx %207 %1459)
(approx %207 (-.f32 %1457 #s(literal 1 binary32)))
(approx %211 %1463)
(approx %211 (-.f32 %1457 #s(literal 2 binary32)))
(approx %216 %1467)
(approx %216 %1184)
(approx %222 %1470)
(approx %222 (fma.f32 maxCos %1472 %1470))
(approx %222 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1311 %1472) %1470))
(approx %247 %1479)
(approx %247 (+.f32 #s(literal 1/2 binary32) %1483))
(approx %247 (+.f32 #s(literal 1/2 binary32) %1487))
(approx %261 %1490)
(approx %261 (+.f32 #s(literal 1 binary32) %1483))
(approx %261 (+.f32 #s(literal 1 binary32) %1487))
(approx %290 %1496)
(approx %290 (+.f32 %1496 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1472) %1496))))
(approx %290 (+.f32 %1496 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1508) %1496) (*.f32 #s(literal 1/2 binary32) %1511)))))
(approx %290 (+.f32 %1496 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) %1511 (*.f32 maxCos (fma.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 maxCos %1517) %1519) (*.f32 #s(literal 1/2 binary32) (/.f32 %1508 %1496))))))))
(approx %324 %1529)
(approx %324 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1531) %1496) %1529))
(approx %324 (fma.f32 maxCos (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1536) %1496) (*.f32 #s(literal 1/2 binary32) %1539)) %1529))
(approx %324 (fma.f32 maxCos (fma.f32 #s(literal 1/2 binary32) %1539 (*.f32 maxCos (fma.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 maxCos (*.f32 %174 %1517)) %1519) (*.f32 #s(literal 1/2 binary32) (/.f32 %1536 %1496))))) %1529))
(approx %352 %1554)
(approx %352 (+.f32 %1554 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1482) %1554))))
(approx %352 (+.f32 %1554 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1565) %1554) (*.f32 #s(literal 1/2 binary32) %1568)))))
(approx %352 (+.f32 %1554 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) %1568 (*.f32 maxCos (fma.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 maxCos %1574) %1576) (*.f32 #s(literal 1/2 binary32) (/.f32 %1565 %1554))))))))
(approx %377 %1586)
(approx %377 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1588) %1554) %1586))
(approx %377 (fma.f32 maxCos (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1593) %1554) (*.f32 #s(literal 1/2 binary32) %1596)) %1586))
(approx %377 (fma.f32 maxCos (fma.f32 #s(literal 1/2 binary32) %1596 (*.f32 maxCos (fma.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 maxCos (*.f32 %174 %1574)) %1576) (*.f32 #s(literal 1/2 binary32) (/.f32 %1593 %1554))))) %1586))
(approx %17 (*.f32 maxCos %1612))
(approx %20 (*.f32 maxCos (-.f32 %1612 %1615)))
(approx %26 %1620)
(approx %26 (*.f32 %1619 (fma.f32 #s(literal 2 binary32) %1622 %53)))
(approx %26 (*.f32 %1619 %1628))
(approx %40 (*.f32 #s(literal -1 binary32) %1620))
(approx %40 (*.f32 %1619 (-.f32 (*.f32 #s(literal -2 binary32) %1622) %53)))
(approx %40 (*.f32 %1619 (-.f32 %1637 %1628)))
(approx %49 %1643)
(approx %49 %1648)
(approx %49 (*.f32 maxCos (+.f32 %1642 (fma.f32 #s(literal -1 binary32) %1645 %1656))))
(approx %49 (*.f32 maxCos (+.f32 %1642 (fma.f32 #s(literal -1 binary32) %1645 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1662 %1665) %1656)))))
(approx %88 %1673)
(approx %88 %1677)
(approx %88 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1675 %1681)))
(approx %88 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1675 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1686 %1665) %1681))))
(approx %117 %1693)
(approx %117 %1697)
(approx %117 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1695 %1701)))
(approx %117 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1695 (fma.f32 #s(literal 1/2 binary32) %1707 %1701))))
(approx %145 (*.f32 #s(literal 2 binary32) %1693))
(approx %145 %1716)
(approx %145 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1695 (fma.f32 #s(literal 2 binary32) %1692 %1700))))
(approx %145 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1695 (fma.f32 #s(literal 2 binary32) %1692 (+.f32 %1707 %1700)))))
(approx %171 %1728)
(approx %171 %1732)
(approx %171 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1730 %1736)))
(approx %171 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1730 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1741 %1665) %1736))))
(approx %202 %1456)
(approx %202 (*.f32 maxCos (-.f32 %1615 ux)))
(approx %207 (*.f32 maxCos (-.f32 %1615 %1612)))
(approx %211 (*.f32 maxCos (-.f32 %1615 %1755)))
(approx %216 (*.f32 maxCos (-.f32 %1755 %1615)))
(approx %222 (*.f32 %1619 (fma.f32 #s(literal -1 binary32) %1762 (fma.f32 #s(literal -1 binary32) %53 %1763))))
(approx %222 (*.f32 %1619 (fma.f32 #s(literal -1 binary32) %1762 (fma.f32 #s(literal -1 binary32) %53 (+.f32 (/.f32 %1470 %1619) %1763)))))
(approx %247 (*.f32 %1619 (fma.f32 #s(literal -1 binary32) %1622 (fma.f32 #s(literal -1 binary32) %53 %1774))))
(approx %247 (*.f32 %1619 (fma.f32 #s(literal -1 binary32) %1622 (fma.f32 #s(literal -1 binary32) %53 (+.f32 (/.f32 #s(literal 1/2 binary32) %1619) %1781)))))
(approx %261 (*.f32 %1619 (fma.f32 #s(literal -1 binary32) %1622 (fma.f32 #s(literal -1 binary32) %53 (+.f32 %1637 %1781)))))
(approx %290 %1793)
(approx %290 (*.f32 maxCos (+.f32 %1792 (*.f32 #s(literal 1/2 binary32) %1795))))
(approx %290 (*.f32 maxCos (+.f32 %1792 %1807)))
(approx %290 (*.f32 maxCos (+.f32 %1792 (fma.f32 #s(literal -1/4 binary32) (/.f32 %1811 %1813) %1807))))
(approx %324 %1820)
(approx %324 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) %1822 %1819)))
(approx %324 (*.f32 maxCos %1829))
(approx %324 (*.f32 maxCos (fma.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 %174 %1811) %1813) %1829)))
(approx %352 (*.f32 maxCos (+.f32 %1792 (*.f32 #s(literal 1/2 binary32) %1837))))
(approx %352 (*.f32 maxCos (+.f32 %1792 %1847)))
(approx %352 (*.f32 maxCos (+.f32 %1792 (fma.f32 #s(literal -1/4 binary32) (/.f32 %1851 %1813) %1847))))
(approx %377 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) %1857 %1819)))
(approx %377 (*.f32 maxCos %1864))
(approx %377 (*.f32 maxCos (fma.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 %174 %1851) %1813) %1864)))
(approx %17 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (-.f32 %10 %1611))))
(approx %20 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) ux (*.f32 #s(literal -1 binary32) (/.f32 %1302 maxCos))))))
(approx %26 (*.f32 %1619 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %1307 (*.f32 #s(literal -1 binary32) (/.f32 %1305 maxCos))) maxCos) %53)))
(approx %40 (*.f32 %1619 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1315 maxCos)) (*.f32 #s(literal -2 binary32) %1307)) maxCos)) %53)))
(approx %49 (*.f32 #s(literal -1 binary32) %1643))
(approx %49 (*.f32 #s(literal -1 binary32) %1648))
(approx %49 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1642 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1653 %1643) %1903) maxCos))))))
(approx %49 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1642 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1662 %1911) (*.f32 #s(literal 1/2 binary32) (/.f32 %1653 %1642))) maxCos) %1903) maxCos))))))
(approx %88 (*.f32 #s(literal -1 binary32) %1673))
(approx %88 (*.f32 #s(literal -1 binary32) %1677))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1679 %1643) %1929) maxCos) %1672))))
(approx %88 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1686 %1911) (*.f32 #s(literal 1/2 binary32) (/.f32 %1679 %1642))) maxCos) %1929) maxCos) %1672))))
(approx %117 (*.f32 #s(literal -1 binary32) %1693))
(approx %117 (*.f32 #s(literal -1 binary32) %1697))
(approx %117 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1951 %1952) maxCos) %1692))))
(approx %117 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/2 binary32) %1959 (*.f32 #s(literal 1/2 binary32) %1960)) maxCos) %1952) maxCos) %1692))))
(approx %145 (*.f32 #s(literal -2 binary32) %1693))
(approx %145 (*.f32 #s(literal -1 binary32) %1716))
(approx %145 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1951 %1974) maxCos) %1714))))
(approx %145 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (+.f32 %1959 %1960) maxCos) %1974) maxCos) %1714))))
(approx %171 (*.f32 #s(literal -1 binary32) %1728))
(approx %171 (*.f32 #s(literal -1 binary32) %1732))
(approx %171 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1734 %1643) %1994) maxCos) %1727))))
(approx %171 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1741 %1911) (*.f32 #s(literal 1/2 binary32) (/.f32 %1734 %1642))) maxCos) %1994) maxCos) %1727))))
(approx %202 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (-.f32 (*.f32 #s(literal -1 binary32) %1615) %10))))
(approx %207 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1459 maxCos)) %10))))
(approx %211 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1463 maxCos)) %10))))
(approx %216 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) ux (*.f32 #s(literal -1 binary32) (/.f32 %1467 maxCos))))))
(approx %222 (*.f32 %1619 (fma.f32 #s(literal -1 binary32) (/.f32 %2035 maxCos) %1503)))
(approx %222 (*.f32 %1619 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1762 %2035) maxCos) %1503)))
(approx %247 (*.f32 %1619 (fma.f32 #s(literal -1 binary32) (/.f32 %2045 maxCos) %1503)))
(approx %247 (*.f32 %1619 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1481 (fma.f32 #s(literal -1 binary32) (/.f32 %1479 maxCos) %1307)) maxCos) %1503)))
(approx %261 (*.f32 %1619 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1481 (fma.f32 #s(literal -1 binary32) (/.f32 %1490 maxCos) %1307)) maxCos) %1503)))
(approx %290 (*.f32 #s(literal -1 binary32) %1793))
(approx %290 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1792 (*.f32 #s(literal -1/2 binary32) (/.f32 %2035 %1793))))))
(approx %290 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1792 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %2075 %1793) %2078) maxCos))))))
(approx %290 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1792 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/4 binary32) (/.f32 %2086 %2087) (*.f32 #s(literal 1/2 binary32) (/.f32 %2075 %1792))) maxCos) %2078) maxCos))))))
(approx %324 (*.f32 #s(literal -1 binary32) %1820))
(approx %324 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (/.f32 %2102 %1793) %1819))))
(approx %324 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %2108 %1793) %2111) maxCos) %1819))))
(approx %324 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %174 %2086) %2087) (*.f32 #s(literal 1/2 binary32) (/.f32 %2108 %1792))) maxCos) %2111) maxCos) %1819))))
(approx %352 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1792 (*.f32 #s(literal -1/2 binary32) (/.f32 %2045 %1793))))))
(approx %352 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1792 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %2139 %1793) %2142) maxCos))))))
(approx %352 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1792 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/4 binary32) (/.f32 %2150 %2087) (*.f32 #s(literal 1/2 binary32) (/.f32 %2139 %1792))) maxCos) %2142) maxCos))))))
(approx %377 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (/.f32 %2163 %1793) %1819))))
(approx %377 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %2169 %1793) %2172) maxCos) %1819))))
(approx %377 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %174 %2150) %2087) (*.f32 #s(literal 1/2 binary32) (/.f32 %2169 %1792))) maxCos) %2172) maxCos) %1819))))
Calls

9 calls:

TimeVariablePoint
7.0ms
ux
0
6.0ms
maxCos
inf
6.0ms
maxCos
0
4.0ms
ux
inf
4.0ms
ux
-inf

rewrite121.0ms (2.9%)

Memory
20.5MiB live, 113.4MiB allocated; 13ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
062539
0106515
1423414
21867414
04150414
04168407
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
51 → 882
Calls
Call 1
Inputs
%2 = (*.f32 uy #s(literal 2 binary32))
%3 = (PI.f32 )
%4 = (*.f32 %2 %3)
%5 = (sin.f32 %4)
%8 = (-.f32 #s(literal 1 binary32) ux)
%11 = (*.f32 maxCos ux)
%13 = (+.f32 #s(literal 1 binary32) %11)
%14 = (-.f32 %13 ux)
%15 = (pow.f32 %14 #s(literal 2 binary32))
%16 = (-.f32 #s(literal 1 binary32) %15)
%17 = (sqrt.f32 %16)
%18 = (*.f32 %3 %17)
%19 = (*.f32 uy %18)
%20 = (*.f32 #s(literal 2 binary32) %19)
%29 = (+ (- 1 ux) (* ux maxCos))
%35 = (+.f32 uy uy)
%36 = (+.f32 %3 %3)
%37 = (*.f32 %3 %35)
%38 = (fma.f32 maxCos ux %8)
%39 = (fma.f32 maxCos ux #s(literal 1 binary32))
%40 = (-.f32 ux %11)
%41 = (-.f32 ux %39)
%42 = (-.f32 %40 #s(literal 0 binary32))
%43 = (-.f32 %40 #s(literal 2 binary32))
%44 = (neg.f32 %43)
%45 = (*.f32 %42 %44)
%46 = (asin.f32 %38)
%47 = (*.f32 %3 #s(literal 1/2 binary32))
%48 = (asin.f32 %41)
%49 = (+.f32 %48 %47)
%50 = (fma.f32 %41 %38 #s(literal 1/2 binary32))
%51 = (+.f32 %50 #s(literal 1/2 binary32))
%52 = (cos.f32 %46)
%53 = (-.f32 %37 %49)
%54 = (cos.f32 %53)
%55 = (fma.f32 %36 uy %49)
%56 = (cos.f32 %55)
%57 = (-.f32 %54 %56)
%59 = (sqrt.f32 %45)
%61 = (sqrt.f32 %51)
uy
#s(literal 2 binary32)
%2
%3
%4
%5
#s(literal 1 binary32)
ux
%8
maxCos
#s(literal 0 binary32)
%11
#s(literal 1/2 binary32)
%13
%14
%15
%16
%17
%18
%19
%20
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %29 %29)))) %20)
%35
%36
%37
%38
%39
%40
%41
%42
%43
%44
%45
%46
%47
%48
%49
%50
%51
%52
%53
%54
%55
%56
%57
(/.f32 %57 #s(literal 2 binary32))
%59
(*.f32 %5 %59)
%61
(*.f32 %5 %61)
(*.f32 %5 %52)
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))
%33 = (neg.f32 %20)
%34 = (-.f32 %20 %33)
%35 = (fma.f32 %19 uy %20)
%36 = (fma.f32 uy %19 %20)
%37 = (pow.f32 %23 #s(literal 1 binary32))
%38 = (+.f32 %20 %20)
%39 = (sin.f32 %20)
%40 = (cos.f32 %20)
%41 = (*.f32 %40 %39)
%43 = (sin.f32 %23)
%48 = (neg.f32 ux)
%49 = (neg.f32 %48)
%51 = (-.f32 #s(literal 1 binary32) ux)
%60 = (-.f32 ux #s(literal 1 binary32))
%64 = (*.f32 maxCos ux)
%73 = (-.f32 %64 #s(literal -1 binary32))
%74 = (neg.f32 maxCos)
%75 = (*.f32 %74 ux)
%76 = (-.f32 #s(literal 1 binary32) %75)
%77 = (fma.f32 maxCos ux #s(literal 1 binary32))
%78 = (fma.f32 ux maxCos #s(literal 1 binary32))
%79 = (pow.f32 %77 #s(literal 1 binary32))
%81 = (+.f32 (fma.f32 maxCos ux #s(literal 1/2 binary32)) #s(literal 1/2 binary32))
%83 = (+.f32 #s(literal 1/2 binary32) (+.f32 #s(literal 1/2 binary32) %64))
%85 = (+.f32 #s(literal 1/2 binary32) (-.f32 #s(literal 1/2 binary32) %75))
%86 = (+.f32 %64 #s(literal 1 binary32))
%88 = (*.f32 (neg.f32 %74) ux)
%89 = (+.f32 #s(literal 1 binary32) %88)
%90 = (neg.f32 %75)
%91 = (+.f32 #s(literal 1 binary32) %90)
%92 = (+.f32 #s(literal 1 binary32) %64)
%93 = (-.f32 #s(literal -1 binary32) %64)
%94 = (neg.f32 %93)
%95 = (-.f32 %77 ux)
%96 = (-.f32 %95 #s(literal 0 binary32))
%97 = (-.f32 %77 %49)
%99 = (-.f32 %64 (-.f32 #s(literal -1 binary32) %48))
%101 = (-.f32 %64 (+.f32 #s(literal -1 binary32) ux))
%102 = (-.f32 %64 %60)
%103 = (-.f32 %51 %75)
%105 = (-.f32 #s(literal 1 binary32) (-.f32 %75 %48))
%106 = (-.f32 ux %64)
%107 = (-.f32 #s(literal 1 binary32) %106)
%108 = (fma.f32 maxCos ux %51)
%109 = (fma.f32 ux maxCos %51)
%110 = (pow.f32 %95 #s(literal 1 binary32))
%111 = (+.f32 %48 %77)
%112 = (-.f32 %64 ux)
%113 = (+.f32 %112 #s(literal 1 binary32))
%114 = (+.f32 %95 #s(literal 0 binary32))
%115 = (+.f32 %77 %48)
%117 = (+.f32 #s(literal 1/2 binary32) (+.f32 #s(literal 1/2 binary32) %112))
%119 = (+.f32 #s(literal 1/2 binary32) (-.f32 #s(literal 1/2 binary32) %106))
%120 = (+.f32 %64 %51)
%122 = (+.f32 %51 (*.f32 %49 maxCos))
%123 = (+.f32 %51 %90)
%124 = (+.f32 %51 %64)
%126 = (+.f32 #s(literal 1 binary32) (+.f32 %48 %64))
%128 = (+.f32 #s(literal 1 binary32) (-.f32 %48 %75))
%129 = (+.f32 #s(literal 1 binary32) %112)
%130 = (-.f32 ux %77)
%131 = (neg.f32 %130)
%132 = (fabs.f32 %130)
%133 = (fabs.f32 %132)
%135 = (neg.f32 %132)
%138 = (*.f32 %130 %130)
%140 = (*.f32 %95 %51)
%143 = (*.f32 %130 maxCos)
%144 = (*.f32 %143 ux)
%147 = (*.f32 %77 ux)
%149 = (fma.f32 %77 %77 (*.f32 #s(literal -2 binary32) %147))
%150 = (*.f32 ux ux)
%157 = (*.f32 %95 maxCos)
%161 = (*.f32 %130 %93)
%163 = (*.f32 %95 %48)
%166 = (*.f32 %157 ux)
%168 = (*.f32 %95 %112)
%170 = (*.f32 %48 %95)
%178 = (*.f32 %93 %130)
%181 = (*.f32 %112 %95)
%187 = (*.f32 %130 ux)
%193 = (*.f32 ux %130)
%204 = (pow.f32 %64 #s(literal 2 binary32))
%208 = (pow.f32 %51 #s(literal 2 binary32))
%239 = (*.f32 %130 %95)
%241 = (fma.f32 %130 %95 #s(literal 1/2 binary32))
%243 = (/.f32 (fma.f32 %241 #s(literal 2 binary32) #s(literal 1 binary32)) #s(literal 2 binary32))
%245 = (-.f32 (-.f32 #s(literal 1 binary32) %140) %166)
%247 = (-.f32 (-.f32 #s(literal 1 binary32) %149) %150)
%248 = (-.f32 %239 #s(literal -1 binary32))
%250 = (-.f32 %241 #s(literal -1/2 binary32))
%252 = (-.f32 #s(literal 1/2 binary32) (neg.f32 %241))
%253 = (-.f32 #s(literal 1 binary32) %138)
%254 = (fma.f32 %130 %51 #s(literal 1 binary32))
%255 = (fma.f32 %143 ux %254)
%256 = (fma.f32 %187 maxCos %254)
%257 = (fma.f32 %135 %132 #s(literal 1 binary32))
%258 = (fma.f32 %132 %135 #s(literal 1 binary32))
%259 = (fma.f32 %130 %95 #s(literal 1 binary32))
%260 = (fma.f32 %130 %64 %254)
%261 = (fma.f32 %95 %130 #s(literal 1 binary32))
%262 = (fma.f32 %64 %130 %254)
%263 = (fma.f32 maxCos %193 %254)
%264 = (*.f32 maxCos %130)
%265 = (fma.f32 ux %264 %254)
%266 = (pow.f32 %259 #s(literal 1 binary32))
%268 = (*.f32 %130 %51)
%269 = (+.f32 (+.f32 #s(literal 1 binary32) %144) %268)
%270 = (+.f32 %144 %254)
%271 = (+.f32 %239 #s(literal 1 binary32))
%272 = (+.f32 %241 #s(literal 1/2 binary32))
%273 = (+.f32 #s(literal 1/2 binary32) %241)
%274 = (+.f32 #s(literal 1 binary32) %239)
%276 = (neg.f32 (-.f32 #s(literal -1/2 binary32) %241))
%278 = (neg.f32 (fma.f32 %130 %130 #s(literal -1 binary32)))
%279 = (sqrt.f32 %259)
%281 = (sqrt.f32 (*.f32 %279 %279))
%282 = (asin.f32 %130)
%283 = (*.f32 #s(literal -1/2 binary32) %19)
%290 = (-.f32 (/.f32 (+.f32 %279 (sin.f32 (+.f32 %282 %283))) #s(literal 2 binary32)) (*.f32 %279 (sin.f32 %283)))
%291 = (asin.f32 %95)
%292 = (sin.f32 %291)
%293 = (*.f32 #s(literal 1/2 binary32) %19)
%294 = (cos.f32 %293)
%295 = (sin.f32 %293)
%296 = (*.f32 %279 %295)
%297 = (fma.f32 %292 %294 %296)
%298 = (sin.f32 %282)
%299 = (fma.f32 %298 %294 %296)
%300 = (*.f32 %294 %298)
%301 = (fma.f32 %295 %279 %300)
%302 = (acos.f32 %95)
%303 = (cos.f32 %302)
%304 = (+.f32 %279 %279)
%305 = (/.f32 %304 #s(literal 2 binary32))
%306 = (fma.f32 %294 %303 %305)
%307 = (pow.f32 %279 #s(literal 1 binary32))
%308 = (pow.f32 %259 #s(literal 1/2 binary32))
%313 = (+.f32 (/.f32 (+.f32 (sin.f32 (-.f32 %291 %293)) %279) #s(literal 2 binary32)) %296)
%318 = (+.f32 (/.f32 (+.f32 (sin.f32 (-.f32 %282 %293)) %279) #s(literal 2 binary32)) %296)
%319 = (+.f32 %305 %300)
%324 = (+.f32 (/.f32 (+.f32 (cos.f32 (fma.f32 #s(literal 1/2 binary32) %19 %302)) %279) #s(literal 2 binary32)) %305)
%326 = (sin.f32 (acos.f32 %133))
%328 = (sin.f32 (acos.f32 %135))
%329 = (fabs.f32 %282)
%330 = (+.f32 %329 %293)
%331 = (sin.f32 %330)
%332 = (acos.f32 %132)
%333 = (sin.f32 %332)
%334 = (acos.f32 %130)
%335 = (sin.f32 %334)
%336 = (sin.f32 %302)
%338 = (fabs.f32 (neg.f32 %279))
%339 = (fabs.f32 %279)
%341 = (cos.f32 (asin.f32 %133))
%343 = (cos.f32 (asin.f32 %135))
%344 = (neg.f32 %329)
%345 = (cos.f32 %344)
%346 = (fabs.f32 %329)
%347 = (cos.f32 %346)
%348 = (asin.f32 %132)
%349 = (cos.f32 %348)
%350 = (cos.f32 %329)
%351 = (cos.f32 %282)
%352 = (cos.f32 %291)
%353 = (*.f32 %279 %19)
%356 = (*.f32 uy %279)
%358 = (*.f32 %20 %279)
%361 = (*.f32 %279 uy)
%367 = (*.f32 #s(literal 2 binary32) %353)
%372 = (*.f32 %23 %279)
%394 = (*.f32 %358 #s(literal 1 binary32))
%398 = (*.f32 #s(literal 1 binary32) %358)
%418 = (approx (* (sin (acos (- (- ux (* maxCos ux)) 1))) (sin (* (* (PI ) 2) uy))) %372)
%424 = (neg.f32 %28)
%428 = (+.f32 %74 #s(literal 1 binary32))
%429 = (*.f32 %428 ux)
%430 = (-.f32 %106 #s(literal 0 binary32))
%431 = (-.f32 ux %88)
%432 = (-.f32 ux %90)
%433 = (fma.f32 %428 ux #s(literal 0 binary32))
%434 = (fma.f32 %74 ux ux)
%435 = (fma.f32 %48 maxCos ux)
%436 = (fma.f32 maxCos %48 ux)
%437 = (fma.f32 ux %74 ux)
%438 = (pow.f32 %106 #s(literal 1 binary32))
%439 = (+.f32 %75 ux)
%440 = (+.f32 %106 #s(literal 0 binary32))
%441 = (+.f32 #s(literal 0 binary32) %106)
%443 = (+.f32 ux (fma.f32 %74 ux #s(literal 0 binary32)))
%445 = (+.f32 ux (-.f32 %75 #s(literal 0 binary32)))
%446 = (+.f32 ux %75)
%447 = (neg.f32 %112)
%469 = (fma.f32 maxCos ux #s(literal 2 binary32))
%470 = (-.f32 ux %469)
%481 = (-.f32 %469 ux)
%483 = (-.f32 #s(literal 2 binary32) ux)
%494 = (*.f32 %112 %470)
%497 = (*.f32 %481 #s(literal 0 binary32))
%499 = (*.f32 #s(literal 0 binary32) %481)
%503 = (*.f32 %481 %75)
%507 = (*.f32 %75 %481)
%523 = (neg.f32 %302)
%541 = (neg.f32 %334)
%546 = (-.f32 %334 %293)
%571 = (fma.f32 %130 %51 #s(literal 1/2 binary32))
%573 = (-.f32 %268 #s(literal -1/2 binary32))
%599 = (fma.f32 %22 uy %291)
%601 = (-.f32 %23 %302)
%605 = (fma.f32 %19 uy %523)
%607 = (-.f32 %20 %302)
%620 = (-.f32 %302 %23)
%622 = (cos.f32 %23)
%623 = (*.f32 %622 %303)
%625 = (*.f32 (neg.f32 %43) %279)
%627 = (*.f32 %279 %43)
%628 = (neg.f32 %627)
%630 = (*.f32 %28 %11)
%632 = (*.f32 %279 (sin.f32 %630))
%634 = (sin.f32 %601)
%635 = (sin.f32 %599)
%636 = (*.f32 %635 %295)
%638 = (cos.f32 %599)
%640 = (fma.f32 %22 uy %302)
%641 = (cos.f32 %640)
%642 = (-.f32 %641 %635)
%643 = (*.f32 %622 %292)
%650 = (sin.f32 (*.f32 (+.f32 %640 %601) #s(literal 1/2 binary32)))
%653 = (sin.f32 (*.f32 (-.f32 %601 %640) #s(literal 1/2 binary32)))
%654 = (*.f32 %650 %653)
%655 = (*.f32 %654 #s(literal 1/2 binary32))
%658 = (/.f32 %654 #s(literal 2 binary32))
%661 = (fma.f32 %22 uy %282)
%662 = (sin.f32 %661)
%663 = (+.f32 %662 %635)
%666 = (-.f32 %635 %641)
%683 = (+.f32 %620 %293)
%685 = (fabs.f32 %620)
%686 = (+.f32 %685 %293)
%688 = (neg.f32 %685)
%690 = (fabs.f32 %685)
%714 = (fma.f32 %19 uy %302)
%716 = (-.f32 %20 %523)
%736 = (neg.f32 %640)
%743 = (sin.f32 %640)
%744 = (*.f32 %641 %295)
%760 = (fabs.f32 %640)
%763 = (fma.f32 #s(literal 1/2 binary32) %19 %640)
%765 = (neg.f32 %760)
%767 = (fabs.f32 %760)
%771 = (neg.f32 %641)
%961 = (neg.f32 %763)
%986 = (+.f32 %763 %19)
%1059 = (+.f32 %763 %293)
%1100 = (+.f32 %736 %19)
%1141 = (+.f32 %760 %19)
%1182 = (+.f32 %640 %19)
%1388 = (fma.f32 %279 %43 %771)
%1390 = (-.f32 %627 %641)
%1402 = (*.f32 %642 #s(literal -1/2 binary32))
%1403 = (*.f32 #s(literal -2 binary32) %655)
%1404 = (*.f32 #s(literal -2 binary32) %658)
%1405 = (*.f32 %663 #s(literal 1/2 binary32))
%1406 = (*.f32 %666 #s(literal 1/2 binary32))
%1407 = (*.f32 #s(literal 1/2 binary32) %666)
%1408 = (*.f32 %43 %279)
%1414 = (/.f32 (-.f32 (cos.f32 (-.f32 %330 %23)) (cos.f32 (+.f32 %330 %23))) #s(literal 2 binary32))
%1420 = (/.f32 (-.f32 (cos.f32 (-.f32 %332 %23)) (cos.f32 (+.f32 %332 %23))) #s(literal 2 binary32))
%1426 = (/.f32 (-.f32 (cos.f32 (-.f32 %23 %330)) (cos.f32 (fma.f32 %22 uy %330))) #s(literal 2 binary32))
%1432 = (/.f32 (-.f32 (cos.f32 (-.f32 %23 %332)) (cos.f32 (fma.f32 %22 uy %332))) #s(literal 2 binary32))
%1438 = (/.f32 (+.f32 (sin.f32 (-.f32 %23 %344)) (sin.f32 (fma.f32 %22 uy %344))) #s(literal 2 binary32))
%1444 = (/.f32 (+.f32 (sin.f32 (-.f32 %23 %346)) (sin.f32 (fma.f32 %22 uy %346))) #s(literal 2 binary32))
%1450 = (/.f32 (+.f32 (sin.f32 (-.f32 %23 %348)) (sin.f32 (fma.f32 %22 uy %348))) #s(literal 2 binary32))
%1452 = (/.f32 (*.f32 %666 #s(literal 1 binary32)) #s(literal 2 binary32))
%1453 = (*.f32 %635 #s(literal 1/2 binary32))
%1456 = (/.f32 (-.f32 (*.f32 %1453 #s(literal 2 binary32)) %641) #s(literal 2 binary32))
%1461 = (/.f32 (-.f32 (*.f32 %635 #s(literal 2 binary32)) (*.f32 #s(literal 2 binary32) %641)) #s(literal 4 binary32))
%1463 = (/.f32 (neg.f32 %663) #s(literal -2 binary32))
%1469 = (/.f32 (-.f32 (cos.f32 (-.f32 %334 %23)) (cos.f32 (+.f32 %334 %23))) #s(literal 2 binary32))
%1475 = (/.f32 (-.f32 (cos.f32 (-.f32 %23 %334)) (cos.f32 (fma.f32 %22 uy %334))) #s(literal 2 binary32))
%1481 = (/.f32 (+.f32 (sin.f32 (-.f32 %23 %329)) (sin.f32 (fma.f32 %22 uy %329))) #s(literal 2 binary32))
%1482 = (/.f32 %642 #s(literal -2 binary32))
%1483 = (/.f32 %663 #s(literal 2 binary32))
%1484 = (/.f32 %666 #s(literal 2 binary32))
%1486 = (/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %663))
%1488 = (/.f32 #s(literal 1 binary32) (/.f32 #s(literal -2 binary32) %642))
%1490 = (/.f32 #s(literal 1 binary32) (/.f32 #s(literal 2 binary32) %666))
%1491 = (*.f32 %641 #s(literal 1/2 binary32))
%1492 = (-.f32 %1453 %1491)
%1493 = (neg.f32 %1491)
%1494 = (fma.f32 %635 #s(literal 1/2 binary32) %1493)
%1495 = (/.f32 %771 #s(literal 2 binary32))
%1496 = (fma.f32 %635 #s(literal 1/2 binary32) %1495)
%1497 = (pow.f32 %627 #s(literal 1 binary32))
%1499 = (+.f32 (/.f32 %662 #s(literal 2 binary32)) %1453)
%1500 = (+.f32 %1453 %1493)
%1501 = (+.f32 %1453 %1495)
%1503 = (neg.f32 (*.f32 %642 #s(literal 1/2 binary32)))
%1505 = (neg.f32 (/.f32 %666 #s(literal -2 binary32)))
%1507 = (neg.f32 (-.f32 %1491 %1453))
%1508 = (neg.f32 %632)
%1509 = (fabs.f32 %481)
%1510 = (sqrt.f32 %1509)
%1511 = (fabs.f32 %112)
%1512 = (sqrt.f32 %1511)
%1515 = (sqrt.f32 %494)
%1529 = (*.f32 %1515 %43)
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
(fma.f32 %39 %40 %41)
(pow.f32 %43 #s(literal 1 binary32))
(+.f32 (*.f32 %39 %40) %41)
%43
#s(literal 1 binary32)
ux
(-.f32 #s(literal 1 binary32) %49)
%51
(pow.f32 %51 #s(literal 1 binary32))
(+.f32 %48 #s(literal 1 binary32))
(+.f32 #s(literal 1/2 binary32) (+.f32 #s(literal 1/2 binary32) %48))
(+.f32 #s(literal 1/2 binary32) (-.f32 #s(literal 1/2 binary32) ux))
(+.f32 #s(literal 1 binary32) %48)
(neg.f32 %60)
maxCos
#s(literal 0 binary32)
%64
(*.f32 ux maxCos)
(-.f32 %64 #s(literal 0 binary32))
(fma.f32 maxCos ux #s(literal 0 binary32))
(fma.f32 ux maxCos #s(literal 0 binary32))
(pow.f32 %64 #s(literal 1 binary32))
(+.f32 %64 #s(literal 0 binary32))
(+.f32 #s(literal 0 binary32) %64)
#s(literal 1/2 binary32)
%73
%76
%77
%78
%79
%81
%83
%85
%86
%89
%91
%92
%94
%96
%97
%95
%99
%101
%102
%103
%105
%107
%108
%109
%110
%111
%113
%114
%115
%117
%119
%120
%122
%123
%124
%126
%128
%129
%131
(*.f32 %133 %133)
(*.f32 %135 %135)
(*.f32 %132 %132)
%138
(*.f32 %95 %95)
(-.f32 %140 (*.f32 %75 %95))
(-.f32 %140 %144)
(-.f32 %149 (neg.f32 %150))
(-.f32 (*.f32 %77 %77) (-.f32 (*.f32 %147 #s(literal 2 binary32)) %150))
(fma.f32 %157 ux %140)
(fma.f32 (*.f32 %95 ux) maxCos %140)
(fma.f32 %130 ux %161)
(fma.f32 %95 %77 %163)
(fma.f32 %95 %64 %140)
(fma.f32 %95 %51 %166)
(fma.f32 %95 #s(literal 1 binary32) %168)
(fma.f32 %77 %95 %170)
(fma.f32 %64 %95 %140)
(fma.f32 maxCos (*.f32 ux %95) %140)
(fma.f32 %51 %95 %166)
(fma.f32 ux (*.f32 maxCos %95) %140)
(fma.f32 ux %130 %178)
(fma.f32 ux ux %149)
(fma.f32 #s(literal 1 binary32) %95 %181)
(pow.f32 %132 #s(literal 2 binary32))
(pow.f32 %130 #s(literal 2 binary32))
(pow.f32 %95 #s(literal 2 binary32))
(pow.f32 %138 #s(literal 1 binary32))
(+.f32 %187 %161)
(+.f32 (*.f32 %95 %77) %163)
(+.f32 (*.f32 %95 #s(literal 1 binary32)) %168)
(+.f32 %193 %178)
(+.f32 (*.f32 %77 %95) %170)
(+.f32 (*.f32 #s(literal 1 binary32) %95) %181)
(+.f32 (fma.f32 %77 %77 (*.f32 #s(literal 2 binary32) (*.f32 %77 %48))) (pow.f32 %48 #s(literal 2 binary32)))
(+.f32 (+.f32 %204 (*.f32 #s(literal 2 binary32) (*.f32 %64 %51))) %208)
(+.f32 (+.f32 %208 (*.f32 #s(literal 2 binary32) (*.f32 %51 %64))) %204)
(+.f32 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) (*.f32 #s(literal 1 binary32) %112))) (pow.f32 %112 #s(literal 2 binary32)))
(+.f32 (-.f32 %204 (*.f32 #s(literal 2 binary32) (*.f32 %64 %60))) (pow.f32 %60 #s(literal 2 binary32)))
(+.f32 (-.f32 %208 (*.f32 #s(literal 2 binary32) (*.f32 %51 %75))) (pow.f32 %75 #s(literal 2 binary32)))
(+.f32 (-.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) (*.f32 #s(literal 1 binary32) %106))) (pow.f32 %106 #s(literal 2 binary32)))
(+.f32 %166 %140)
(+.f32 %140 %166)
(+.f32 %150 %149)
(+.f32 %149 %150)
(fabs.f32 %138)
(neg.f32 %239)
%243
%245
%247
%248
%250
%252
%253
%255
%256
%257
%258
%259
%260
%261
%262
%263
%265
%266
%269
%270
%271
%272
%273
%274
%276
%278
%281
%279
%290
%297
%299
%301
%306
%307
%308
%313
%318
%319
%324
%326
%328
%331
%333
%335
%336
%338
%339
%341
%343
%345
%347
%349
%350
%351
%352
%353
(*.f32 %19 %279)
(pow.f32 %353 #s(literal 1 binary32))
(*.f32 %356 %19)
%358
(*.f32 %353 uy)
(*.f32 %279 %20)
(*.f32 %19 %361)
(*.f32 uy %353)
(pow.f32 %358 #s(literal 1 binary32))
(*.f32 (*.f32 %11 %279) %19)
(*.f32 %367 uy)
(*.f32 %20 (*.f32 %279 #s(literal 2 binary32)))
(*.f32 %20 %304)
%372
(*.f32 %358 #s(literal 2 binary32))
(*.f32 %353 %11)
(*.f32 %279 %23)
(*.f32 %11 %353)
(*.f32 #s(literal 2 binary32) %358)
(*.f32 uy (*.f32 %353 #s(literal 2 binary32)))
(*.f32 uy %367)
(*.f32 uy (fma.f32 %279 %19 %353))
(-.f32 %358 (*.f32 %33 %279))
(-.f32 %358 (*.f32 (neg.f32 %353) uy))
(-.f32 %358 (*.f32 %4 %353))
(-.f32 %358 (neg.f32 %358))
(fma.f32 %356 %19 %358)
(fma.f32 %20 %279 %358)
(fma.f32 %358 #s(literal 1 binary32) %394)
(fma.f32 %353 uy %358)
(fma.f32 %279 %20 %358)
(fma.f32 #s(literal 1 binary32) %358 %398)
(fma.f32 %19 %361 %358)
(fma.f32 uy %353 %358)
(pow.f32 %372 #s(literal 1 binary32))
(+.f32 %394 %394)
(+.f32 %398 %398)
(+.f32 %358 %358)
%418
(pow.f32 %418 #s(literal 1 binary32))
%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 %424)
%22
(neg.f32 (-.f32 %28 %19))
%21
%23
%24
%25
%26
%27
%30
%32
%34
%35
%36
%37
%38
%96
%97
%95
%99
%101
%102
%103
%105
%107
%108
%109
%110
%111
%113
%114
%115
%117
%119
%120
%122
%123
%124
%126
%128
%129
%131
%73
%76
%77
%78
%79
%81
%83
%85
%86
%89
%91
%92
%94
%429
%430
%431
%432
%106
%433
%434
%435
%436
%437
%438
%439
%440
%441
%443
%445
%446
%447
(-.f32 (-.f32 %106 #s(literal 1/2 binary32)) #s(literal 1/2 binary32))
(-.f32 %60 %64)
(-.f32 %75 %51)
(-.f32 %106 #s(literal 1 binary32))
%130
(fma.f32 %428 ux #s(literal -1 binary32))
(fma.f32 %74 ux %60)
(fma.f32 %48 maxCos %60)
(fma.f32 maxCos %48 %60)
(fma.f32 ux %74 %60)
(pow.f32 %130 #s(literal 1 binary32))
(+.f32 %93 %49)
(+.f32 %93 ux)
(+.f32 #s(literal -1 binary32) %106)
(+.f32 %60 %75)
(+.f32 %75 %60)
(+.f32 %106 #s(literal -1 binary32))
(+.f32 ux %93)
(neg.f32 %95)
%429
%430
%431
%432
%106
%433
%434
%435
%436
%437
%438
%439
%440
%441
%443
%445
%446
%447
(-.f32 %130 #s(literal 1 binary32))
(-.f32 %106 #s(literal 2 binary32))
%470
(fma.f32 %428 ux #s(literal -2 binary32))
(pow.f32 %470 #s(literal 1 binary32))
(+.f32 #s(literal -2 binary32) %106)
(+.f32 %106 #s(literal -2 binary32))
(+.f32 ux (fma.f32 %74 ux #s(literal -2 binary32)))
(+.f32 ux (-.f32 %75 #s(literal 2 binary32)))
(+.f32 ux (neg.f32 %469))
(neg.f32 %481)
(-.f32 %483 %75)
%481
(-.f32 %481 #s(literal 0 binary32))
(-.f32 #s(literal 2 binary32) %106)
(pow.f32 %481 #s(literal 1 binary32))
(+.f32 %483 %64)
(+.f32 %112 #s(literal 2 binary32))
(+.f32 %481 #s(literal 0 binary32))
(+.f32 #s(literal 1 binary32) %95)
(+.f32 #s(literal 2 binary32) %112)
(neg.f32 %470)
%494
(*.f32 %481 %106)
(*.f32 %106 %481)
(fma.f32 %112 %470 %497)
(fma.f32 %112 %470 %499)
(fma.f32 %481 %106 %497)
(fma.f32 %481 %106 %499)
(fma.f32 %481 ux %503)
(fma.f32 %106 %481 %497)
(fma.f32 %106 %481 %499)
(fma.f32 ux %481 %507)
(pow.f32 %494 #s(literal 1 binary32))
(+.f32 (*.f32 %481 ux) %503)
(+.f32 (*.f32 ux %481) %507)
(+.f32 %494 %497)
(+.f32 %494 %499)
(neg.f32 (*.f32 %112 %481))
(neg.f32 (*.f32 %481 %112))
(neg.f32 (*.f32 %470 %106))
(-.f32 %293 %302)
(fma.f32 #s(literal 1/2 binary32) %19 %523)
(fma.f32 %19 #s(literal 1/2 binary32) %523)
(pow.f32 %291 #s(literal 1 binary32))
%291
(+.f32 %293 %523)
(neg.f32 %282)
%293
(*.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 %293 #s(literal 1 binary32))
(-.f32 %293 %334)
(-.f32 %302 %293)
(fma.f32 #s(literal 1/2 binary32) %19 %541)
(fma.f32 %19 #s(literal 1/2 binary32) %541)
(pow.f32 %282 #s(literal 1 binary32))
%282
(+.f32 %293 %541)
(neg.f32 %546)
(neg.f32 %291)
(-.f32 (fma.f32 #s(literal 1/2 binary32) %19 %293) %334)
(-.f32 %293 (+.f32 %334 %283))
(-.f32 %293 %546)
(-.f32 %293 %291)
(-.f32 %282 %283)
(-.f32 %19 %334)
(fma.f32 #s(literal 1/2 binary32) %19 %282)
(fma.f32 %19 #s(literal 1/2 binary32) %282)
(pow.f32 %302 #s(literal 1 binary32))
(+.f32 %293 %282)
(+.f32 %282 (*.f32 %424 #s(literal 1/2 binary32)))
(+.f32 %282 (neg.f32 %283))
(+.f32 %282 %293)
%302
(neg.f32 %523)
(/.f32 (fma.f32 %239 #s(literal 2 binary32) #s(literal 1 binary32)) #s(literal 2 binary32))
(-.f32 %239 #s(literal -1/2 binary32))
(-.f32 #s(literal 1/2 binary32) %138)
(fma.f32 %143 ux %571)
(fma.f32 %143 ux %573)
(fma.f32 %187 maxCos %571)
(fma.f32 %187 maxCos %573)
(fma.f32 %135 %132 #s(literal 1/2 binary32))
(fma.f32 %132 %135 #s(literal 1/2 binary32))
%241
(fma.f32 %130 %64 %571)
(fma.f32 %130 %64 %573)
(fma.f32 %95 %130 #s(literal 1/2 binary32))
(fma.f32 %64 %130 %571)
(fma.f32 %64 %130 %573)
(fma.f32 maxCos %193 %571)
(fma.f32 maxCos %193 %573)
(fma.f32 ux %264 %571)
(fma.f32 ux %264 %573)
(pow.f32 %241 #s(literal 1 binary32))
(+.f32 (+.f32 #s(literal 1/2 binary32) %144) %268)
(+.f32 %144 %571)
(+.f32 %144 %573)
(+.f32 %239 #s(literal 1/2 binary32))
(+.f32 #s(literal 1/2 binary32) %239)
(neg.f32 (-.f32 #s(literal -1/2 binary32) %239))
%243
%245
%247
%248
%250
%252
%253
%255
%256
%257
%258
%259
%260
%261
%262
%263
%265
%266
%269
%270
%271
%272
%273
%274
%276
%278
%281
%279
%290
%297
%299
%301
%306
%307
%308
%313
%318
%319
%324
%326
%328
%331
%333
%335
%336
%338
%339
%341
%343
%345
%347
%349
%350
%351
%352
(-.f32 (-.f32 %23 %293) %282)
(-.f32 %599 %293)
%601
(fma.f32 %20 #s(literal 2 binary32) %523)
(fma.f32 %22 uy %523)
(fma.f32 %19 %11 %523)
(fma.f32 %19 uy %605)
(fma.f32 %19 uy %607)
(fma.f32 %11 %19 %523)
(fma.f32 #s(literal 2 binary32) %20 %523)
(fma.f32 uy %22 %523)
(fma.f32 uy %19 %605)
(fma.f32 uy %19 %607)
(pow.f32 %601 #s(literal 1 binary32))
(+.f32 %599 %283)
(+.f32 %20 %605)
(+.f32 %20 %607)
(+.f32 %523 %23)
(+.f32 %23 %523)
(neg.f32 %620)
(-.f32 %623 %625)
(-.f32 %623 %628)
(-.f32 %623 %632)
(fma.f32 %634 %294 %636)
(fma.f32 %638 %294 %636)
(fma.f32 %642 #s(literal -1/2 binary32) %643)
(fma.f32 %642 #s(literal -1/2 binary32) %623)
(fma.f32 %622 %303 %627)
(fma.f32 %303 %622 %627)
(fma.f32 #s(literal -2 binary32) %655 %643)
(fma.f32 #s(literal -2 binary32) %655 %623)
(fma.f32 #s(literal -2 binary32) %658 %643)
(fma.f32 #s(literal -2 binary32) %658 %623)
(fma.f32 %663 #s(literal 1/2 binary32) %643)
(fma.f32 %663 #s(literal 1/2 binary32) %623)
(fma.f32 %666 #s(literal 1/2 binary32) %643)
(fma.f32 %666 #s(literal 1/2 binary32) %623)
(fma.f32 %279 %43 %643)
(fma.f32 %279 %43 %623)
(fma.f32 #s(literal 1/2 binary32) %666 %643)
(fma.f32 #s(literal 1/2 binary32) %666 %623)
(fma.f32 %43 %279 %643)
(fma.f32 %43 %279 %623)
(pow.f32 %635 #s(literal 1 binary32))
(+.f32 (*.f32 %634 %294) %636)
(+.f32 (*.f32 %638 %294) %636)
(+.f32 %623 %627)
(+.f32 %627 %643)
(+.f32 %627 %623)
(sin.f32 %683)
(sin.f32 %686)
%635
(cos.f32 %688)
(cos.f32 %690)
(cos.f32 %620)
(cos.f32 %685)
(cos.f32 %601)
(-.f32 %661 %283)
(-.f32 %23 %523)
(-.f32 %302 (*.f32 (neg.f32 %22) uy))
(-.f32 %302 %630)
(-.f32 %302 (*.f32 (neg.f32 %11) %19))
(-.f32 %302 (*.f32 %4 %22))
(-.f32 %302 (neg.f32 %23))
(-.f32 %282 (-.f32 %283 %23))
(fma.f32 %20 #s(literal 2 binary32) %302)
%640
(fma.f32 #s(literal 1/2 binary32) %19 %661)
(fma.f32 %19 #s(literal 1/2 binary32) %661)
(fma.f32 %19 %11 %302)
(fma.f32 %19 uy %714)
(fma.f32 %19 uy %716)
(fma.f32 %11 %19 %302)
(fma.f32 #s(literal 2 binary32) %20 %302)
(fma.f32 uy %22 %302)
(fma.f32 uy %19 %714)
(fma.f32 uy %19 %716)
(pow.f32 %640 #s(literal 1 binary32))
(+.f32 (+.f32 %302 %20) %20)
(+.f32 (fma.f32 %22 uy %293) %282)
(+.f32 %661 %293)
(+.f32 %20 %714)
(+.f32 %20 %716)
(+.f32 %293 %661)
(+.f32 %23 %302)
(+.f32 %302 %23)
(+.f32 %282 (fma.f32 #s(literal 1/2 binary32) %19 %23))
(neg.f32 %736)
(-.f32 (*.f32 (cos.f32 %661) %294) (*.f32 %662 %295))
(-.f32 %623 %627)
(fma.f32 %743 %294 %744)
(fma.f32 %622 %303 %625)
(fma.f32 %622 %303 %628)
(fma.f32 %622 %303 %632)
(fma.f32 %303 %622 %625)
(fma.f32 %303 %622 %628)
(fma.f32 %303 %622 %632)
(pow.f32 %641 #s(literal 1 binary32))
(+.f32 (*.f32 %743 %294) %744)
(+.f32 %623 %625)
(+.f32 %623 %628)
(+.f32 %623 %632)
(sin.f32 (+.f32 %736 %293))
(sin.f32 (+.f32 %760 %293))
(sin.f32 %763)
(cos.f32 %765)
(cos.f32 %767)
(cos.f32 %736)
(cos.f32 %760)
%641
(neg.f32 %771)
(*.f32 (*.f32 #s(literal -2 binary32) %653) %650)
(*.f32 %654 #s(literal -2 binary32))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %688 %765) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %688 %765) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %688 %767) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %688 %767) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %688 %736) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %688 %736) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %688 %760) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %688 %760) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %688 %640) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %688 %640) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %690 %765) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %690 %765) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %690 %767) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %690 %767) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %690 %736) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %690 %736) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %690 %760) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %690 %760) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %690 %640) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %690 %640) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %620 %765) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %620 %765) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %620 %767) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %620 %767) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %685 %765) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %685 %765) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %685 %767) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %685 %767) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %601 %765) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %601 %765) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %601 %767) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %601 %767) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %620 %736) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %620 %736) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %620 %760) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %620 %760) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %620 %640) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %620 %640) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %685 %736) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %685 %736) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %685 %760) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %685 %760) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %685 %640) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %685 %640) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %601 %760) #s(literal 2 binary32))) (sin.f32 (/.f32 (+.f32 %601 %760) #s(literal 2 binary32)))))
(*.f32 #s(literal -2 binary32) %654)
(*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (/.f32 (+.f32 %961 %683) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %961 %683) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (/.f32 (+.f32 %961 %686) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %961 %686) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (/.f32 (+.f32 %961 %599) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %961 %599) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (/.f32 (+.f32 %986 %683) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %986 %683) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (/.f32 (+.f32 %986 %686) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %986 %686) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (/.f32 (+.f32 %986 %599) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %986 %599) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (/.f32 (+.f32 %683 %961) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %683 %961) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (/.f32 (+.f32 %683 %986) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %683 %986) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (/.f32 (+.f32 %686 %961) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %686 %961) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (/.f32 (+.f32 %686 %986) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %686 %986) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (/.f32 (+.f32 %599 %961) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %599 %961) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (/.f32 (+.f32 %599 %986) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %599 %986) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1059 %688) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1059 %688) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1059 %690) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1059 %690) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1059 %620) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1059 %620) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1059 %685) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1059 %685) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1059 %601) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1059 %601) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1100 %688) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1100 %688) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1100 %690) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1100 %690) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1100 %620) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1100 %620) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1100 %685) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1100 %685) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1100 %601) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1100 %601) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1141 %688) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1141 %688) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1141 %690) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1141 %690) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1141 %620) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1141 %620) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1141 %685) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1141 %685) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1141 %601) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1141 %601) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1182 %688) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1182 %688) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1182 %690) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1182 %690) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1182 %620) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1182 %620) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1182 %685) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1182 %685) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %1182 %601) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %1182 %601) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %688 %1059) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %688 %1059) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %688 %1100) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %688 %1100) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %688 %1141) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %688 %1141) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %688 %1182) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %688 %1182) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %690 %1059) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %690 %1059) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %690 %1100) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %690 %1100) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %690 %1141) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %690 %1141) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %690 %1182) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %690 %1182) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %620 %1059) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %620 %1059) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %620 %1100) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %620 %1100) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %620 %1141) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %620 %1141) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %620 %1182) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %620 %1182) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %685 %1059) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %685 %1059) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %685 %1100) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %685 %1100) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %685 %1141) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %685 %1141) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %685 %1182) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %685 %1182) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %601 %1059) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %601 %1059) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %601 %1100) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %601 %1100) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %601 %1141) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %601 %1141) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 (cos.f32 (/.f32 (+.f32 %601 %1182) #s(literal 2 binary32))) (cos.f32 (/.f32 (-.f32 %601 %1182) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) (*.f32 %653 (cos.f32 (/.f32 (+.f32 %599 %763) #s(literal 2 binary32)))))
%666
(fma.f32 %622 %303 %1388)
(fma.f32 %622 %303 %1390)
(fma.f32 %303 %622 %1388)
(fma.f32 %303 %622 %1390)
(pow.f32 %666 #s(literal 1 binary32))
(+.f32 (-.f32 %635 %623) %627)
(+.f32 %771 %635)
(+.f32 %623 %1388)
(+.f32 %623 %1390)
(+.f32 %635 %771)
(neg.f32 %642)
%1402
%1403
%1404
%1405
%1406
%627
%1407
%1408
%1414
%1420
%1426
%1432
%1438
%1444
%1450
%1452
%1456
%1461
%1463
%1469
%1475
%1481
%1482
%1483
%1484
%1486
%1488
%1490
%1492
%1494
%1496
%1497
%1499
%1500
%1501
%1503
%1505
%1507
%1508
(*.f32 %1510 %1512)
(*.f32 %1512 %1510)
(sqrt.f32 (*.f32 %1515 %1515))
(sqrt.f32 (*.f32 %1511 %1509))
%1515
(pow.f32 %1515 #s(literal 1 binary32))
(pow.f32 %494 #s(literal 1/2 binary32))
(fabs.f32 (neg.f32 %1515))
(fabs.f32 %1515)
(*.f32 (*.f32 %43 %1512) %1510)
(*.f32 %1512 (*.f32 %1510 %43))
%1529
(*.f32 %43 %1515)
(pow.f32 %1529 #s(literal 1 binary32))
%281
%279
%290
%297
%299
%301
%306
%307
%308
%313
%318
%319
%324
%326
%328
%331
%333
%335
%336
%338
%339
%341
%343
%345
%347
%349
%350
%351
%352
%1402
%1403
%1404
%1405
%1406
%627
%1407
%1408
%1414
%1420
%1426
%1432
%1438
%1444
%1450
%1452
%1456
%1461
%1463
%1469
%1475
%1481
%1482
%1483
%1484
%1486
%1488
%1490
%1492
%1494
%1496
%1497
%1499
%1500
%1501
%1503
%1505
%1507
%1508
%1402
%1403
%1404
%1405
%1406
%627
%1407
%1408
%1414
%1420
%1426
%1432
%1438
%1444
%1450
%1452
%1456
%1461
%1463
%1469
%1475
%1481
%1482
%1483
%1484
%1486
%1488
%1490
%1492
%1494
%1496
%1497
%1499
%1500
%1501
%1503
%1505
%1507
%1508

reconstruct18.0ms (0.4%)

Memory
5.6MiB live, 35.0MiB allocated; 6ms collecting garbage

eval200.0ms (4.7%)

Memory
5.4MiB live, 272.2MiB allocated; 70ms collecting garbage
Compiler

Compiled 50 237 to 6 567 computations (86.9% saved)

prune86.0ms (2.0%)

Memory
-12.6MiB live, 127.1MiB allocated; 29ms collecting garbage
Pruning

54 alts after pruning (54 fresh and 0 done)

PrunedKeptTotal
New1 249481 297
Fresh15621
Picked505
Done000
Total1 269541 323
Accuracy
99.7%
Counts
1 323 → 54
Alt Table
Click to see full alt table
StatusAccuracyProgram
35.3%
%0 = (PI.f32 )
%1 = (+.f32 %0 %0)
%6 = (fma.f32 maxCos ux #s(literal 1 binary32))
(/.f32 (-.f32 (cos.f32 (fma.f32 %1 uy (neg.f32 (acos.f32 (-.f32 %6 ux))))) (cos.f32 (fma.f32 %1 uy (+.f32 (asin.f32 (-.f32 ux %6)) (*.f32 %0 #s(literal 1/2 binary32)))))) #s(literal 2 binary32))
34.7%
%0 = (PI.f32 )
%1 = (+.f32 %0 %0)
%9 = (acos.f32 (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32))))
(/.f32 (-.f32 (cos.f32 (-.f32 (*.f32 %1 uy) %9)) (cos.f32 (fma.f32 %1 uy %9))) #s(literal 2 binary32))
34.8%
%0 = (PI.f32 )
%16 = (+.f32 (asin.f32 (approx (- ux (+ (* maxCos ux) 1)) (-.f32 ux #s(literal 1 binary32)))) (*.f32 %0 #s(literal 1/2 binary32)))
(/.f32 (-.f32 (cos.f32 (-.f32 (*.f32 %0 (+.f32 uy uy)) %16)) (cos.f32 (fma.f32 (+.f32 %0 %0) uy %16))) #s(literal 2 binary32))
41.7%
%1 = (PI.f32 )
%2 = (+.f32 %1 %1)
%9 = (-.f32 (fma.f32 maxCos ux #s(literal 1 binary32)) ux)
%10 = (acos.f32 %9)
%12 = (fma.f32 %2 uy %10)
(/.f32 (*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (*.f32 (-.f32 (-.f32 (*.f32 %2 uy) %10) %12) #s(literal 1/2 binary32))) (cos.f32 (/.f32 (+.f32 (fma.f32 %2 uy (asin.f32 %9)) (fma.f32 #s(literal 1/2 binary32) %1 %12)) #s(literal 2 binary32))))) #s(literal 2 binary32))
98.3%
%2 = (*.f32 (PI.f32 ) uy)
%3 = (sin.f32 %2)
%4 = (cos.f32 %2)
%10 = (-.f32 ux (*.f32 maxCos ux))
(*.f32 (fma.f32 %3 %4 (*.f32 %4 %3)) (sqrt.f32 (*.f32 (-.f32 %10 #s(literal 0 binary32)) (neg.f32 (-.f32 %10 #s(literal 2 binary32))))))
34.8%
%5 = (acos.f32 (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux)))
%6 = (PI.f32 )
(*.f32 (-.f32 (cos.f32 (-.f32 %5 (*.f32 %6 (+.f32 uy uy)))) (cos.f32 (fma.f32 (+.f32 %6 %6) uy %5))) #s(literal 1/2 binary32))
35.0%
%0 = (PI.f32 )
%1 = (+.f32 %0 %0)
(*.f32 (+.f32 (sin.f32 (fma.f32 %1 uy (asin.f32 (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux))))) (sin.f32 (fma.f32 %1 uy (asin.f32 (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32))))))) #s(literal 1/2 binary32))
98.1%
%0 = (PI.f32 )
(*.f32 (*.f32 (sin.f32 (*.f32 (+.f32 %0 %0) uy)) (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux)))) (sqrt.f32 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux))))
98.4%
%9 = (PI.f32 )
(*.f32 (sqrt.f32 (*.f32 (-.f32 (*.f32 maxCos ux) ux) (-.f32 ux (fma.f32 maxCos ux #s(literal 2 binary32))))) (sin.f32 (*.f32 (+.f32 %9 %9) uy)))
98.2%
%11 = (PI.f32 )
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (*.f32 (sqrt.f32 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux))) (sin.f32 (*.f32 (+.f32 %11 %11) uy))))
98.2%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (*.f32 (sqrt.f32 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux))) (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux)))))
54.5%
%14 = (approx (+ (- 1 ux) (* ux maxCos)) (-.f32 #s(literal 1 binary32) ux))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %14 %14))))
54.3%
%18 = (approx (+ (- 1 ux) (* ux maxCos)) (*.f32 maxCos (-.f32 (+.f32 ux (/.f32 #s(literal 1 binary32) maxCos)) (/.f32 ux maxCos))))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %18 %18))))
54.8%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (+.f32 (fma.f32 (approx (- ux (+ (* maxCos ux) 1)) (-.f32 ux #s(literal 1 binary32))) (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux)) #s(literal 1/2 binary32)) #s(literal 1/2 binary32))))
56.5%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (+.f32 (fma.f32 (approx (- ux (+ (* maxCos ux) 1)) (*.f32 maxCos (-.f32 (/.f32 ux maxCos) (+.f32 ux (/.f32 #s(literal 1 binary32) maxCos))))) (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux)) #s(literal 1/2 binary32)) #s(literal 1/2 binary32))))
98.4%
%9 = (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux)
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (+.f32 (*.f32 %9 ux) (*.f32 %9 (*.f32 (neg.f32 maxCos) ux)))))
97.6%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 (-.f32 (-.f32 ux (*.f32 maxCos ux)) #s(literal 0 binary32)) (approx (neg (- (- ux (* maxCos ux)) 2)) (-.f32 #s(literal 2 binary32) ux)))))
98.3%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 (-.f32 (-.f32 ux (*.f32 maxCos ux)) #s(literal 0 binary32)) (approx (neg (- (- ux (* maxCos ux)) 2)) (*.f32 ux (-.f32 (+.f32 maxCos (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1 binary32) ux))) #s(literal 1 binary32)))))))
98.4%
%9 = (-.f32 ux (*.f32 maxCos ux))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 %9 (neg.f32 (-.f32 %9 #s(literal 2 binary32))))))
77.3%
%11 = (+ (- 1 ux) (* ux maxCos))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (approx (- 1 (* %11 %11)) (*.f32 ux (-.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) maxCos))))))
56.7%
%9 = (- ux (* maxCos ux))
%19 = (*.f32 ux (-.f32 #s(literal 2 binary32) ux))
%21 = (pow.f32 ux #s(literal 2 binary32))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (approx (* (- %9 0) (neg (- %9 2))) (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %19 maxCos) (fma.f32 #s(literal -1 binary32) %21 %19)) maxCos) (*.f32 #s(literal -1 binary32) %21))))))
93.4%
%9 = (- ux (* maxCos ux))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (approx (* (- %9 0) (neg (- %9 2))) (*.f32 ux (-.f32 #s(literal 2 binary32) ux)))))
90.1%
%9 = (- ux (* maxCos ux))
%18 = (-.f32 #s(literal 1 binary32) maxCos)
%21 = (sqrt.f32 (*.f32 #s(literal 2 binary32) (*.f32 ux %18)))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (approx (sqrt (* (- %9 0) (neg (- %9 2)))) (+.f32 %21 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (*.f32 %18 (-.f32 maxCos #s(literal 1 binary32)))) %21)))))
90.2%
%9 = (PI.f32 )
%20 = (-.f32 ux (*.f32 maxCos ux))
(*.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 %9 #s(literal 3 binary32))) (*.f32 #s(literal 2 binary32) %9)))) (sqrt.f32 (*.f32 (-.f32 %20 #s(literal 0 binary32)) (neg.f32 (-.f32 %20 #s(literal 2 binary32))))))
93.9%
%11 = (+ (- 1 ux) (* ux maxCos))
%20 = (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 ))))
%24 = (sqrt.f32 (*.f32 ux (-.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) maxCos))))
%25 = (pow.f32 ux #s(literal 2 binary32))
%28 = (-.f32 maxCos #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (fma.f32 %20 %24 (*.f32 %25 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 %20 (pow.f32 %28 #s(literal 2 binary32))) %24) (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %25 (*.f32 %20 (pow.f32 %28 #s(literal 4 binary32)))) (pow.f32 %24 #s(literal 3 binary32))))))))
49.4%
%11 = (+ (- 1 ux) (* ux maxCos))
%18 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (+.f32 uy uy) (*.f32 (sqrt.f32 (fma.f32 (-.f32 ux %18) (-.f32 %18 ux) #s(literal 1 binary32))) (PI.f32 ))))
49.4%
%11 = (+ (- 1 ux) (* ux maxCos))
%16 = (PI.f32 )
%20 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 %16 %16) uy) (sqrt.f32 (fma.f32 (-.f32 ux %20) (-.f32 %20 ux) #s(literal 1 binary32)))))
49.4%
%11 = (+ (- 1 ux) (* ux maxCos))
%18 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 uy uy) (sqrt.f32 (fma.f32 (-.f32 ux %18) (-.f32 %18 ux) #s(literal 1 binary32)))) (PI.f32 )))
7.1%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 (approx uy #s(literal 0 binary32)) (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (-.f32 (+.f32 #s(literal 1 binary32) (*.f32 maxCos ux)) ux) #s(literal 2 binary32))))))))
49.5%
%11 = (+ (- 1 ux) (* ux maxCos))
%17 = (PI.f32 )
%19 = (fma.f32 maxCos ux #s(literal 1 binary32))
%20 = (-.f32 %19 ux)
%23 = (*.f32 #s(literal 1/2 binary32) %17)
%28 = (sqrt.f32 (fma.f32 (-.f32 ux %19) %20 #s(literal 1 binary32)))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %17 (+.f32 (/.f32 (+.f32 (sin.f32 (-.f32 (asin.f32 %20) %23)) %28) #s(literal 2 binary32)) (*.f32 %28 (sin.f32 %23)))))))
47.7%
%11 = (+ (- 1 ux) (* ux maxCos))
%20 = (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32)))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (fma.f32 %20 (*.f32 maxCos ux) (fma.f32 %20 (-.f32 #s(literal 1 binary32) ux) #s(literal 1 binary32))))))))
49.5%
%11 = (+ (- 1 ux) (* ux maxCos))
%19 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 (fma.f32 (-.f32 ux %19) (-.f32 %19 ux) #s(literal 1/2 binary32)) #s(literal -1/2 binary32)))))))
50.5%
%11 = (+ (- 1 ux) (* ux maxCos))
%19 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) (fma.f32 %19 %19 (*.f32 #s(literal -2 binary32) (*.f32 %19 ux)))) (*.f32 ux ux)))))))
47.7%
%11 = (+ (- 1 ux) (* ux maxCos))
%20 = (-.f32 (fma.f32 maxCos ux #s(literal 1 binary32)) ux)
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) (*.f32 %20 (-.f32 #s(literal 1 binary32) ux))) (*.f32 (*.f32 %20 maxCos) ux)))))))
49.3%
%11 = (+ (- 1 ux) (* ux maxCos))
%19 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 (*.f32 (-.f32 ux %19) (-.f32 %19 ux)) #s(literal -1 binary32)))))))
50.1%
%11 = (+ (- 1 ux) (* ux maxCos))
%20 = (-.f32 (fma.f32 maxCos ux #s(literal 1 binary32)) ux)
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 %20 #s(literal 1 binary32) (*.f32 %20 (-.f32 (*.f32 maxCos ux) ux)))))))))
51.7%
%11 = (+ (- 1 ux) (* ux maxCos))
%19 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 ux ux (fma.f32 %19 %19 (*.f32 #s(literal -2 binary32) (*.f32 %19 ux))))))))))
49.5%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (fma.f32 ux maxCos (-.f32 #s(literal 1 binary32) ux)) #s(literal 2 binary32))))))))
48.8%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (+.f32 #s(literal 1/2 binary32) (-.f32 #s(literal 1/2 binary32) (-.f32 ux (*.f32 maxCos ux)))) #s(literal 2 binary32))))))))
49.1%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx (- (+ 1 (* maxCos ux)) ux) (*.f32 ux (-.f32 (+.f32 maxCos (/.f32 #s(literal 1 binary32) ux)) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
48.4%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx (- (+ 1 (* maxCos ux)) ux) (*.f32 maxCos (-.f32 (+.f32 ux (/.f32 #s(literal 1 binary32) maxCos)) (/.f32 ux maxCos)))) #s(literal 2 binary32))))))))
41.6%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (approx (pow (- (+ 1 (* maxCos ux)) ux) 2) (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 (*.f32 #s(literal 2 binary32) maxCos) #s(literal 2 binary32)))))))))))
81.9%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (*.f32 (pow.f32 ux #s(literal 2 binary32)) (-.f32 (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1 binary32) ux)) (fma.f32 #s(literal 2 binary32) (/.f32 maxCos ux) (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32)))))))))))
82.0%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (*.f32 ux (-.f32 (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -1 binary32) (*.f32 ux (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32))))) (*.f32 #s(literal 2 binary32) maxCos)))))))))
66.9%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (*.f32 ux (-.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) maxCos)))))))))
48.8%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (cos.f32 (asin.f32 (-.f32 (fma.f32 maxCos ux #s(literal 1 binary32)) ux)))))))
79.0%
%3 = (PI )
%11 = (+ (- 1 ux) (* ux maxCos))
%24 = (PI.f32 )
%28 = (sqrt.f32 (*.f32 ux (-.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) maxCos))))
%29 = (pow.f32 ux #s(literal 2 binary32))
%32 = (-.f32 maxCos #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) %3)) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (approx (* %3 (sqrt (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)))) (fma.f32 %24 %28 (*.f32 %29 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 %24 (pow.f32 %32 #s(literal 2 binary32))) %28) (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %29 (*.f32 %24 (pow.f32 %32 #s(literal 4 binary32)))) (pow.f32 %28 #s(literal 3 binary32)))))))))))
76.5%
%3 = (PI )
%11 = (+ (- 1 ux) (* ux maxCos))
%26 = (PI.f32 )
%35 = (sqrt.f32 (*.f32 ux (-.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) maxCos))))
(approx (* (sin (* (* uy 2) %3)) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (approx (* %3 (sqrt (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)))) (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (*.f32 %26 (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32)))) %35) (*.f32 %26 %35))))))
76.5%
%3 = (PI )
%11 = (+ (- 1 ux) (* ux maxCos))
%27 = (PI.f32 )
%37 = (sqrt.f32 (*.f32 ux (-.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) maxCos))))
(approx (* (sin (* (* uy 2) %3)) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (approx (* uy (* %3 (sqrt (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2))))) (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (*.f32 uy (*.f32 %27 (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32))))) %37) (*.f32 uy (*.f32 %27 %37))))))
90.1%
%9 = (- ux (* maxCos ux))
%23 = (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 ))))
%25 = (-.f32 #s(literal 1 binary32) maxCos)
%32 = (sqrt.f32 (*.f32 #s(literal 2 binary32) (*.f32 ux %25)))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (* (- %9 0) (neg (- %9 2))))) (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (*.f32 %23 (*.f32 %25 (-.f32 maxCos #s(literal 1 binary32))))) %32) (*.f32 %23 %32)))
96.7%
%9 = (- ux (* maxCos ux))
%22 = (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 ))))
%25 = (*.f32 ux (-.f32 #s(literal 2 binary32) ux))
%30 = (sqrt.f32 %25)
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (* (- %9 0) (neg (- %9 2))))) (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos (*.f32 %22 (fma.f32 #s(literal -1 binary32) %25 (pow.f32 ux #s(literal 2 binary32))))) %30) (*.f32 %22 %30)))
92.5%
%9 = (- ux (* maxCos ux))
%18 = (PI.f32 )
%19 = (*.f32 maxCos ux)
%24 = (sqrt.f32 (*.f32 (-.f32 ux %19) (-.f32 (+.f32 #s(literal 2 binary32) %19) ux)))
%26 = (pow.f32 uy #s(literal 2 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (* (- %9 0) (neg (- %9 2))))) (*.f32 uy (fma.f32 #s(literal 2 binary32) (*.f32 %18 %24) (*.f32 %26 (fma.f32 #s(literal -4/3 binary32) (*.f32 (pow.f32 %18 #s(literal 3 binary32)) %24) (*.f32 #s(literal 4/15 binary32) (*.f32 %26 (*.f32 (pow.f32 %18 #s(literal 5 binary32)) %24))))))))
90.0%
%9 = (- ux (* maxCos ux))
%20 = (PI.f32 )
%23 = (*.f32 maxCos ux)
%28 = (sqrt.f32 (*.f32 (-.f32 ux %23) (-.f32 (+.f32 #s(literal 2 binary32) %23) ux)))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (* (- %9 0) (neg (- %9 2))))) (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (*.f32 (pow.f32 %20 #s(literal 3 binary32)) %28)) (*.f32 #s(literal 2 binary32) (*.f32 %20 %28)))))
81.9%
%9 = (- ux (* maxCos ux))
%19 = (*.f32 maxCos ux)
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (* (- %9 0) (neg (- %9 2))))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (*.f32 (-.f32 ux %19) (-.f32 (+.f32 #s(literal 2 binary32) %19) ux)))))))
Compiler

Compiled 3 212 to 804 computations (75.0% saved)

sample1.0ms (0.0%)

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

Compiled 9 to 6 computations (33.3% saved)

series96.0ms (2.3%)

Memory
11.4MiB live, 137.9MiB allocated; 10ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0216219222
Stop Event
iter-limit
Counts
62 → 378
Calls
Call 1
Inputs
%2 = (*.f32 uy #s(literal 2 binary32))
%3 = (PI.f32 )
%4 = (*.f32 %2 %3)
%5 = (sin.f32 %4)
%8 = (-.f32 #s(literal 1 binary32) ux)
%10 = (*.f32 maxCos ux)
%11 = (*.f32 #s(literal 2 binary32) maxCos)
%12 = (-.f32 #s(literal 2 binary32) %11)
%13 = (*.f32 ux %12)
%14 = (/.f32 #s(literal 1 binary32) ux)
%15 = (+.f32 maxCos %14)
%16 = (-.f32 %15 #s(literal 1 binary32))
%17 = (*.f32 ux %16)
%19 = (+.f32 %3 %3)
%20 = (*.f32 %19 uy)
%21 = (fma.f32 maxCos ux %8)
%22 = (fma.f32 maxCos ux #s(literal 1 binary32))
%23 = (-.f32 %10 ux)
%24 = (-.f32 ux %10)
%25 = (-.f32 ux %22)
%26 = (-.f32 %24 #s(literal 2 binary32))
%27 = (neg.f32 %26)
%28 = (asin.f32 %21)
%29 = (asin.f32 %25)
%30 = (fma.f32 %19 uy %28)
%31 = (sin.f32 %30)
%32 = (fma.f32 %19 uy %29)
%33 = (sin.f32 %32)
%34 = (+.f32 %31 %33)
%36 = (sin.f32 %20)
%40 = (- (+ 1 (* maxCos ux)) ux)
%44 = (approx (- 1 (pow %40 2)) %13)
%45 = (approx %40 %17)
%46 = (fma.f32 maxCos ux #s(literal 2 binary32))
%47 = (-.f32 %46 ux)
%48 = (fabs.f32 %47)
%49 = (sqrt.f32 %48)
%50 = (fabs.f32 %23)
%51 = (sqrt.f32 %50)
%52 = (*.f32 %49 %36)
%54 = (*.f32 %24 %27)
%55 = (sqrt.f32 %54)
%57 = (sqrt.f32 %44)
%58 = (*.f32 %3 %57)
%59 = (*.f32 uy %58)
%60 = (*.f32 #s(literal 2 binary32) %59)
%67 = (+ (- 1 ux) (* ux maxCos))
%71 = (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %67 %67))))
%73 = (pow.f32 %45 #s(literal 2 binary32))
%74 = (-.f32 #s(literal 1 binary32) %73)
%75 = (sqrt.f32 %74)
%76 = (*.f32 %3 %75)
%77 = (*.f32 uy %76)
%78 = (*.f32 #s(literal 2 binary32) %77)
uy
#s(literal 2 binary32)
%2
%3
%4
%5
#s(literal 1 binary32)
ux
%8
maxCos
%10
%11
%12
%13
%14
%15
%16
%17
#s(literal 1/2 binary32)
%19
%20
%21
%22
%23
%24
%25
%26
%27
%28
%29
%30
%31
%32
%33
%34
(*.f32 %34 #s(literal 1/2 binary32))
%36
%44
%45
%46
%47
%48
%49
%50
%51
%52
(*.f32 %51 %52)
%54
%55
(*.f32 %5 %55)
%57
%58
%59
%60
(approx %71 %60)
%73
%74
%75
%76
%77
%78
(approx %71 %78)
Outputs
%6 = (- 1 ux)
%10 = (*.f32 #s(literal -1 binary32) ux)
%14 = (* maxCos ux)
%15 = (*.f32 maxCos ux)
%18 = (* 2 maxCos)
%19 = (- 2 %18)
%20 = (* ux %19)
%22 = (*.f32 #s(literal 2 binary32) maxCos)
%23 = (-.f32 #s(literal 2 binary32) %22)
%24 = (*.f32 ux %23)
%26 = (/ 1 ux)
%27 = (/.f32 #s(literal 1 binary32) ux)
%29 = (+ maxCos %26)
%30 = (+.f32 #s(literal 1 binary32) %15)
%33 = (- %29 1)
%34 = (-.f32 maxCos #s(literal 1 binary32))
%35 = (*.f32 ux %34)
%36 = (+.f32 #s(literal 1 binary32) %35)
%39 = (* ux %33)
%41 = (+ %14 1)
%43 = (- %14 ux)
%45 = (- ux %14)
%46 = (-.f32 #s(literal 1 binary32) maxCos)
%47 = (*.f32 ux %46)
%49 = (- ux %41)
%53 = (- %45 2)
%58 = (neg %53)
%62 = (+ %14 %6)
%63 = (asin %62)
%64 = (-.f32 %30 ux)
%65 = (asin.f32 %64)
%67 = (asin %49)
%68 = (-.f32 ux %30)
%69 = (asin.f32 %68)
%71 = (PI )
%73 = (* (+ %71 %71) uy)
%74 = (+ %73 %63)
%75 = (PI.f32 )
%77 = (*.f32 #s(literal 2 binary32) (*.f32 uy %75))
%78 = (+.f32 %65 %77)
%80 = (sin %74)
%81 = (sin.f32 %78)
%83 = (+ %73 %67)
%84 = (+.f32 %69 %77)
%86 = (sin %83)
%87 = (sin.f32 %84)
%89 = (+ %80 %86)
%90 = (+.f32 %87 %81)
%93 = (* %89 1/2)
%99 = (pow (- (+ 1 %14) ux) 2)
%100 = (- 1 %99)
%101 = (pow.f32 %34 #s(literal 2 binary32))
%102 = (*.f32 ux %101)
%108 = (+ %14 2)
%109 = (+.f32 #s(literal 2 binary32) %15)
%112 = (fabs (- %108 ux))
%113 = (sqrt %112)
%114 = (sqrt.f32 #s(literal 2 binary32))
%122 = (pow.f32 %114 #s(literal 3 binary32))
%124 = (/.f32 %34 %114)
%132 = (pow.f32 %34 #s(literal 3 binary32))
%135 = (pow.f32 %114 #s(literal 5 binary32))
%144 = (fabs %43)
%145 = (-.f32 %15 ux)
%146 = (fabs.f32 %145)
%148 = (sqrt %144)
%149 = (sqrt.f32 %146)
%152 = (* %113 (sin %73))
%153 = (sin.f32 %77)
%154 = (*.f32 %153 %114)
%156 = (*.f32 %153 %34)
%161 = (*.f32 %153 %101)
%164 = (/.f32 %156 %114)
%179 = (* %148 %152)
%181 = (*.f32 %153 (*.f32 %114 %149))
%184 = (*.f32 %153 (*.f32 %149 %34))
%190 = (*.f32 %153 (*.f32 %149 %101))
%193 = (/.f32 %184 %114)
%209 = (* %45 %58)
%210 = (*.f32 #s(literal 2 binary32) %47)
%212 = (*.f32 %46 %34)
%217 = (sqrt %209)
%218 = (sqrt.f32 %210)
%220 = (pow.f32 ux #s(literal 2 binary32))
%221 = (*.f32 %220 %212)
%226 = (pow.f32 %46 #s(literal 2 binary32))
%227 = (*.f32 %226 %101)
%229 = (pow.f32 %218 #s(literal 3 binary32))
%231 = (/.f32 %212 %218)
%238 = (pow.f32 %46 #s(literal 3 binary32))
%239 = (*.f32 %238 %132)
%241 = (pow.f32 %218 #s(literal 5 binary32))
%250 = (* uy 2)
%251 = (* %250 %71)
%252 = (sin %251)
%253 = (* %252 %217)
%254 = (*.f32 %153 %218)
%256 = (*.f32 %153 %212)
%261 = (*.f32 %153 %227)
%264 = (/.f32 %256 %218)
%281 = (sqrt %100)
%282 = (sqrt.f32 %24)
%285 = (*.f32 %220 %101)
%290 = (/.f32 %101 %282)
%292 = (pow.f32 %34 #s(literal 4 binary32))
%294 = (pow.f32 %282 #s(literal 3 binary32))
%304 = (pow.f32 %34 #s(literal 6 binary32))
%306 = (pow.f32 %282 #s(literal 5 binary32))
%315 = (* %71 %281)
%316 = (*.f32 %75 %282)
%318 = (*.f32 %75 %101)
%323 = (/.f32 %318 %282)
%324 = (*.f32 %75 %292)
%333 = (*.f32 %75 %304)
%343 = (* uy %315)
%344 = (*.f32 uy %316)
%346 = (*.f32 uy %318)
%348 = (/.f32 (*.f32 %220 %346) %282)
%351 = (/.f32 %346 %282)
%352 = (*.f32 uy %324)
%354 = (/.f32 (*.f32 %220 %352) %294)
%360 = (/.f32 %352 %294)
%363 = (/.f32 (*.f32 %220 (*.f32 uy %333)) %306)
%371 = (* 2 %343)
%372 = (*.f32 #s(literal 2 binary32) %344)
%390 = (+ %6 (* ux maxCos))
%394 = (* %252 (sqrt (- 1 (* %390 %390))))
%395 = (*.f32 %153 %282)
%401 = (/.f32 %161 %282)
%402 = (*.f32 %153 %292)
%431 = (-.f32 %27 #s(literal 1 binary32))
%432 = (*.f32 ux %431)
%435 = (+.f32 maxCos %27)
%438 = (-.f32 %435 #s(literal 1 binary32))
%447 = (*.f32 #s(literal 2 binary32) %27)
%448 = (+.f32 maxCos %447)
%457 = (/.f32 maxCos ux)
%458 = (fma.f32 #s(literal 2 binary32) %457 %101)
%464 = (-.f32 %109 ux)
%465 = (fabs.f32 %464)
%467 = (sqrt.f32 %465)
%471 = (*.f32 %149 %467)
%479 = (sqrt.f32 %212)
%480 = (*.f32 ux %479)
%482 = (/.f32 #s(literal 1 binary32) %480)
%484 = (/.f32 maxCos %480)
%489 = (*.f32 %220 (pow.f32 %479 #s(literal 3 binary32)))
%490 = (/.f32 %226 %489)
%496 = (pow.f32 ux #s(literal 3 binary32))
%498 = (*.f32 %496 (pow.f32 %479 #s(literal 5 binary32)))
%511 = (fma.f32 %153 %479 (/.f32 (*.f32 %153 %46) %480))
%515 = (/.f32 (*.f32 %153 %226) %489)
%526 = (sqrt.f32 (neg.f32 %101))
%527 = (*.f32 ux %526)
%530 = (*.f32 #s(literal 1/2 binary32) (/.f32 %23 %527))
%534 = (pow.f32 %23 #s(literal 2 binary32))
%536 = (*.f32 %220 (pow.f32 %526 #s(literal 3 binary32)))
%537 = (/.f32 %534 %536)
%542 = (pow.f32 %23 #s(literal 3 binary32))
%544 = (*.f32 %496 (pow.f32 %526 #s(literal 5 binary32)))
%551 = (*.f32 %75 %526)
%554 = (*.f32 %75 %23)
%556 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %554 %527) %551)
%559 = (*.f32 %75 %534)
%560 = (/.f32 %559 %536)
%564 = (*.f32 %75 %542)
%570 = (*.f32 uy %551)
%571 = (*.f32 ux %570)
%574 = (/.f32 (*.f32 uy %554) %527)
%575 = (fma.f32 #s(literal 1/2 binary32) %574 %570)
%579 = (/.f32 (*.f32 uy %559) %536)
%584 = (/.f32 (*.f32 uy %564) %544)
%591 = (fma.f32 #s(literal 2 binary32) %570 %574)
%602 = (*.f32 %153 %526)
%607 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %153 %23) %527) %602)
%611 = (/.f32 (*.f32 %153 %534) %536)
%640 = (*.f32 #s(literal -1 binary32) maxCos)
%641 = (+.f32 #s(literal 1 binary32) %640)
%642 = (*.f32 ux %641)
%666 = (fma.f32 #s(literal -1 binary32) ux %15)
%667 = (+.f32 #s(literal 1 binary32) %666)
%668 = (asin.f32 %667)
%671 = (asin.f32 (neg.f32 %667))
%673 = (+.f32 %668 %77)
%675 = (sin.f32 %673)
%677 = (+.f32 %671 %77)
%679 = (sin.f32 %677)
%681 = (+.f32 %679 %675)
%685 = (pow.f32 %641 #s(literal 2 binary32))
%686 = (*.f32 %220 %685)
%698 = (fabs.f32 (+.f32 #s(literal 2 binary32) %666))
%700 = (sqrt.f32 %698)
%702 = (fabs.f32 %666)
%704 = (sqrt.f32 %702)
%717 = (sqrt.f32 (*.f32 #s(literal -1 binary32) %685))
%718 = (*.f32 ux %717)
%728 = (/.f32 %641 %717)
%729 = (pow.f32 %717 #s(literal 3 binary32))
%730 = (*.f32 ux %729)
%741 = (pow.f32 %641 #s(literal 3 binary32))
%743 = (*.f32 ux (pow.f32 %717 #s(literal 5 binary32)))
%756 = (*.f32 %153 %717)
%760 = (*.f32 %153 %641)
%766 = (/.f32 %760 %717)
%767 = (*.f32 %153 %685)
%790 = (sqrt.f32 (neg.f32 %685))
%791 = (*.f32 ux %790)
%794 = (*.f32 #s(literal -2 binary32) maxCos)
%795 = (+.f32 #s(literal 2 binary32) %794)
%802 = (/.f32 %795 %790)
%803 = (pow.f32 %795 #s(literal 2 binary32))
%804 = (pow.f32 %790 #s(literal 3 binary32))
%805 = (*.f32 ux %804)
%816 = (pow.f32 %795 #s(literal 3 binary32))
%818 = (*.f32 ux (pow.f32 %790 #s(literal 5 binary32)))
%831 = (*.f32 %75 %790)
%835 = (*.f32 %75 %795)
%841 = (/.f32 %835 %790)
%842 = (*.f32 %75 %803)
%852 = (*.f32 %75 %816)
%864 = (*.f32 uy %831)
%865 = (*.f32 ux %864)
%868 = (*.f32 uy %835)
%869 = (/.f32 %868 %791)
%874 = (/.f32 %868 %790)
%875 = (*.f32 uy %842)
%876 = (/.f32 %875 %805)
%884 = (/.f32 %875 %804)
%886 = (/.f32 (*.f32 uy %852) %818)
%907 = (*.f32 #s(literal 2 binary32) %864)
%922 = (*.f32 %153 %790)
%926 = (*.f32 %153 %795)
%932 = (/.f32 %926 %790)
%933 = (*.f32 %153 %803)
%970 = (pow.f32 uy #s(literal 2 binary32))
%971 = (pow.f32 %75 #s(literal 3 binary32))
%978 = (pow.f32 %75 #s(literal 5 binary32))
%988 = (pow.f32 %75 #s(literal 7 binary32))
%999 = (cos.f32 %65)
%1000 = (*.f32 %75 %999)
%1006 = (pow.f32 %75 #s(literal 2 binary32))
%1007 = (*.f32 %1006 %64)
%1009 = (*.f32 #s(literal 2 binary32) %1000)
%1016 = (*.f32 %971 %999)
%1028 = (cos.f32 %69)
%1029 = (*.f32 %75 %1028)
%1035 = (*.f32 %1006 %68)
%1043 = (*.f32 %971 %1028)
%1053 = (fma.f32 #s(literal 2 binary32) %1029 %1009)
%1054 = (*.f32 uy %1053)
%1057 = (fma.f32 #s(literal -2 binary32) %1035 (*.f32 #s(literal -2 binary32) %1007))
%1058 = (*.f32 uy %1057)
%1064 = (fma.f32 #s(literal -4/3 binary32) %1043 (*.f32 #s(literal -4/3 binary32) %1016))
%1065 = (*.f32 uy %1064)
%1074 = (pow.f32 %75 #s(literal 4 binary32))
%1079 = (*.f32 uy (fma.f32 #s(literal 2/3 binary32) (*.f32 %1074 %68) (*.f32 #s(literal 2/3 binary32) (*.f32 %1074 %64))))
%1110 = (*.f32 %75 %467)
%1114 = (*.f32 %971 %467)
%1120 = (*.f32 %978 %467)
%1138 = (*.f32 %75 %471)
%1142 = (*.f32 %971 %471)
%1148 = (*.f32 %978 %471)
%1168 = (sqrt.f32 (*.f32 (-.f32 ux %15) %464))
%1169 = (*.f32 %75 %1168)
%1173 = (*.f32 %971 %1168)
%1179 = (*.f32 %978 %1168)
%1199 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 %64 #s(literal 2 binary32))))
%1200 = (*.f32 %75 %1199)
%1201 = (*.f32 uy %1200)
%1205 = (*.f32 %971 %1199)
%1211 = (*.f32 %978 %1199)
%1230 = (/.f32 %65 uy)
%1234 = (/.f32 %69 uy)
%1254 = (*.f32 #s(literal 2 binary32) ux)
%1261 = (-.f32 #s(literal 1 binary32) ux)
%1264 = (*.f32 #s(literal -1 binary32) %15)
%1265 = (+.f32 ux %1264)
%1267 = (-.f32 ux #s(literal 1 binary32))
%1271 = (-.f32 ux #s(literal 2 binary32))
%1275 = (-.f32 #s(literal 2 binary32) ux)
%1278 = (pow.f32 %1261 #s(literal 2 binary32))
%1279 = (-.f32 #s(literal 1 binary32) %1278)
%1281 = (*.f32 ux %1261)
%1282 = (*.f32 maxCos %1281)
%1287 = (*.f32 maxCos %220)
%1295 = (*.f32 ux %1275)
%1297 = (fma.f32 #s(literal -1 binary32) %1295 %220)
%1303 = (sqrt.f32 %1295)
%1310 = (*.f32 #s(literal -1 binary32) %220)
%1311 = (pow.f32 %1297 #s(literal 2 binary32))
%1315 = (-.f32 %1310 (*.f32 #s(literal 1/4 binary32) (/.f32 %1311 (pow.f32 %1303 #s(literal 2 binary32)))))
%1318 = (/.f32 %1297 %1303)
%1324 = (*.f32 %1297 %1315)
%1326 = (pow.f32 %1303 #s(literal 3 binary32))
%1336 = (*.f32 %153 %1303)
%1338 = (*.f32 %153 %1297)
%1343 = (*.f32 %153 %1315)
%1346 = (/.f32 %1338 %1303)
%1361 = (sqrt.f32 %1279)
%1367 = (/.f32 %1281 %1361)
%1368 = (*.f32 %220 %1278)
%1371 = (+.f32 (/.f32 %1368 (pow.f32 %1361 #s(literal 2 binary32))) %220)
%1379 = (*.f32 %1371 %1261)
%1382 = (pow.f32 %1361 #s(literal 3 binary32))
%1392 = (*.f32 %75 %1361)
%1394 = (*.f32 %75 %1261)
%1395 = (*.f32 ux %1394)
%1400 = (/.f32 %1395 %1361)
%1401 = (*.f32 %75 %1371)
%1408 = (*.f32 %75 %1379)
%1419 = (*.f32 uy %1392)
%1422 = (*.f32 ux (*.f32 uy %1394))
%1424 = (/.f32 (*.f32 maxCos %1422) %1361)
%1427 = (/.f32 %1422 %1361)
%1428 = (*.f32 uy %1401)
%1430 = (/.f32 (*.f32 maxCos %1428) %1361)
%1438 = (/.f32 (*.f32 maxCos (*.f32 ux (*.f32 uy %1408))) %1382)
%1439 = (/.f32 %1428 %1361)
%1446 = (*.f32 #s(literal 2 binary32) %1419)
%1462 = (*.f32 %153 %1361)
%1465 = (*.f32 ux (*.f32 %153 %1261))
%1470 = (/.f32 %1465 %1361)
%1471 = (*.f32 %153 %1371)
%1496 = (/.f32 #s(literal 1 binary32) maxCos)
%1497 = (*.f32 #s(literal 2 binary32) %1496)
%1503 = (/.f32 ux maxCos)
%1509 = (+.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) %15))
%1515 = (/.f32 %432 maxCos)
%1519 = (+.f32 ux %1496)
%1525 = (*.f32 #s(literal -1 binary32) %1503)
%1536 = (+.f32 ux %1497)
%1543 = (pow.f32 maxCos #s(literal 2 binary32))
%1544 = (*.f32 %1543 %220)
%1547 = (/.f32 %1281 maxCos)
%1555 = (fma.f32 #s(literal 2 binary32) %1547 (+.f32 (/.f32 %1278 %1543) %220))
%1561 = (/.f32 %1295 maxCos)
%1562 = (/.f32 %220 maxCos)
%1573 = (sqrt.f32 %1310)
%1574 = (*.f32 maxCos %1573)
%1576 = (/.f32 %1297 %1574)
%1581 = (pow.f32 %1573 #s(literal 2 binary32))
%1584 = (-.f32 %1295 (*.f32 #s(literal 1/4 binary32) (/.f32 %1311 %1581)))
%1585 = (*.f32 %1543 %1573)
%1588 = (fma.f32 #s(literal 1/2 binary32) %1576 (*.f32 #s(literal 1/2 binary32) (/.f32 %1584 %1585)))
%1592 = (*.f32 %1297 %1584)
%1593 = (pow.f32 maxCos #s(literal 3 binary32))
%1594 = (pow.f32 %1573 #s(literal 3 binary32))
%1595 = (*.f32 %1593 %1594)
%1601 = (*.f32 %153 %1573)
%1602 = (*.f32 maxCos %1601)
%1604 = (/.f32 %1338 %1574)
%1611 = (fma.f32 #s(literal 1/2 binary32) %1604 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %153 %1584) %1585) %1601))
%1620 = (sqrt.f32 (neg.f32 %220))
%1621 = (*.f32 maxCos %1620)
%1623 = (/.f32 %1281 %1621)
%1626 = (*.f32 maxCos (+.f32 %1620 (*.f32 #s(literal -1 binary32) %1623)))
%1631 = (-.f32 #s(literal 1 binary32) (+.f32 (/.f32 %1368 (pow.f32 %1620 #s(literal 2 binary32))) %1278))
%1632 = (*.f32 %1543 %1620)
%1634 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1631 %1632))
%1639 = (*.f32 %1261 %1631)
%1640 = (*.f32 ux %1639)
%1641 = (pow.f32 %1620 #s(literal 3 binary32))
%1642 = (*.f32 %1593 %1641)
%1649 = (*.f32 %75 %1620)
%1650 = (*.f32 maxCos %1649)
%1652 = (/.f32 %1395 %1621)
%1654 = (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1652 %1649))
%1656 = (*.f32 %75 %1631)
%1658 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1656 %1632) %1649)
%1662 = (*.f32 %75 %1639)
%1663 = (*.f32 ux %1662)
%1669 = (*.f32 uy %1649)
%1670 = (*.f32 maxCos %1669)
%1672 = (/.f32 %1422 %1621)
%1674 = (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1672 %1669))
%1676 = (*.f32 uy %1656)
%1677 = (/.f32 %1676 %1632)
%1678 = (fma.f32 #s(literal 1/2 binary32) %1677 %1669)
%1683 = (*.f32 ux (*.f32 uy %1662))
%1684 = (/.f32 %1683 %1642)
%1691 = (*.f32 #s(literal 2 binary32) %1669)
%1693 = (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1672 %1691))
%1704 = (*.f32 %153 %1620)
%1705 = (*.f32 maxCos %1704)
%1707 = (/.f32 %1465 %1621)
%1709 = (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1707 %1704))
%1711 = (*.f32 %153 %1631)
%1713 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1711 %1632) %1704)
%1718 = (*.f32 ux (*.f32 %153 %1639))
%1798 = (fma.f32 #s(literal -1 binary32) %220 %1295)
%1819 = (-.f32 %1295 (*.f32 #s(literal 1/4 binary32) (/.f32 (pow.f32 %1798 #s(literal 2 binary32)) %1581)))
%1822 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1798 %1573))
%1830 = (*.f32 %1798 %1819)
%1831 = (*.f32 maxCos %1594)
%1846 = (*.f32 %153 %1798)
%1852 = (*.f32 %153 %1819)
%1855 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1846 %1573))
%1879 = (/.f32 %1281 %1620)
%1887 = (*.f32 maxCos %1641)
%1905 = (/.f32 %1395 %1620)
%1927 = (/.f32 %1676 %1621)
%1928 = (/.f32 %1422 %1620)
%1935 = (/.f32 %1683 %1887)
%1936 = (/.f32 %1676 %1620)
%1950 = (*.f32 #s(literal 2 binary32) %1928)
%1970 = (/.f32 %1465 %1620)
(approx uy #s(literal 0 binary32))
(approx ux ux)
(approx %6 #s(literal 1 binary32))
(approx %6 (+.f32 #s(literal 1 binary32) %10))
(approx %14 %15)
(approx %20 %24)
(approx %26 %27)
(approx %29 (/.f32 %30 ux))
(approx %33 (/.f32 %36 ux))
(approx %39 %36)
(approx %41 %30)
(approx %43 %35)
(approx %45 %47)
(approx %49 #s(literal -1 binary32))
(approx %49 (-.f32 %47 #s(literal 1 binary32)))
(approx %53 #s(literal -2 binary32))
(approx %53 (-.f32 %47 #s(literal 2 binary32)))
(approx %58 #s(literal 2 binary32))
(approx %58 (+.f32 #s(literal 2 binary32) %35))
(approx %63 %65)
(approx %67 %69)
(approx %74 %78)
(approx %80 %81)
(approx %83 %84)
(approx %86 %87)
(approx %89 %90)
(approx %93 (*.f32 #s(literal 1/2 binary32) %90))
(approx %100 (*.f32 ux (-.f32 (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -1 binary32) %102)) %22)))
(approx %108 %109)
(approx %113 %114)
(approx %113 (+.f32 %114 (*.f32 #s(literal 1/2 binary32) (/.f32 %35 %114))))
(approx %113 (+.f32 %114 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) (/.f32 %102 %122) (*.f32 #s(literal 1/2 binary32) %124)))))
(approx %113 (+.f32 %114 (*.f32 ux (fma.f32 #s(literal 1/2 binary32) %124 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) (/.f32 %101 %122) (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 ux %132) %135))))))))
(approx %144 %146)
(approx %148 %149)
(approx %152 %154)
(approx %152 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 ux %156) %114) %154))
(approx %152 (fma.f32 ux (fma.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 ux %161) %122) (*.f32 #s(literal 1/2 binary32) %164)) %154))
(approx %152 (fma.f32 ux (fma.f32 #s(literal 1/2 binary32) %164 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) (/.f32 %161 %122) (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 ux (*.f32 %153 %132)) %135))))) %154))
(approx %179 %181)
(approx %179 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 ux %184) %114) %181))
(approx %179 (fma.f32 ux (fma.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 ux %190) %122) (*.f32 #s(literal 1/2 binary32) %193)) %181))
(approx %179 (fma.f32 ux (fma.f32 #s(literal 1/2 binary32) %193 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) (/.f32 %190 %122) (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 ux (*.f32 %153 (*.f32 %149 %132))) %135))))) %181))
(approx %209 %210)
(approx %209 (*.f32 ux (fma.f32 #s(literal 2 binary32) %46 (*.f32 ux %212))))
(approx %217 %218)
(approx %217 (+.f32 %218 (*.f32 #s(literal 1/2 binary32) (/.f32 %221 %218))))
(approx %217 (+.f32 %218 (*.f32 %220 (fma.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %220 %227) %229) (*.f32 #s(literal 1/2 binary32) %231)))))
(approx %217 (+.f32 %218 (*.f32 %220 (fma.f32 #s(literal 1/2 binary32) %231 (*.f32 %220 (fma.f32 #s(literal -1/8 binary32) (/.f32 %227 %229) (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %220 %239) %241))))))))
(approx %253 %254)
(approx %253 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %220 %256) %218) %254))
(approx %253 (fma.f32 %153 %218 (*.f32 %220 (fma.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %220 %261) %229) (*.f32 #s(literal 1/2 binary32) %264)))))
(approx %253 (fma.f32 %153 %218 (*.f32 %220 (fma.f32 #s(literal 1/2 binary32) %264 (*.f32 %220 (fma.f32 #s(literal -1/8 binary32) (/.f32 %261 %229) (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %220 (*.f32 %153 %239)) %241))))))))
(approx %281 %282)
(approx %281 (+.f32 %282 (*.f32 #s(literal -1/2 binary32) (/.f32 %285 %282))))
(approx %281 (+.f32 %282 (*.f32 %220 (fma.f32 #s(literal -1/2 binary32) %290 (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %220 %292) %294))))))
(approx %281 (+.f32 %282 (*.f32 %220 (fma.f32 #s(literal -1/2 binary32) %290 (*.f32 %220 (fma.f32 #s(literal -1/8 binary32) (/.f32 %292 %294) (*.f32 #s(literal -1/16 binary32) (/.f32 (*.f32 %220 %304) %306))))))))
(approx %315 %316)
(approx %315 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 %220 %318) %282) %316))
(approx %315 (fma.f32 %75 %282 (*.f32 %220 (fma.f32 #s(literal -1/2 binary32) %323 (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %220 %324) %294))))))
(approx %315 (fma.f32 %75 %282 (*.f32 %220 (fma.f32 #s(literal -1/2 binary32) %323 (*.f32 %220 (fma.f32 #s(literal -1/8 binary32) (/.f32 %324 %294) (*.f32 #s(literal -1/16 binary32) (/.f32 (*.f32 %220 %333) %306))))))))
(approx %343 %344)
(approx %343 (fma.f32 #s(literal -1/2 binary32) %348 %344))
(approx %343 (fma.f32 uy %316 (*.f32 %220 (fma.f32 #s(literal -1/2 binary32) %351 (*.f32 #s(literal -1/8 binary32) %354)))))
(approx %343 (fma.f32 uy %316 (*.f32 %220 (fma.f32 #s(literal -1/2 binary32) %351 (*.f32 %220 (fma.f32 #s(literal -1/8 binary32) %360 (*.f32 #s(literal -1/16 binary32) %363)))))))
(approx %371 %372)
(approx %371 (fma.f32 #s(literal -1 binary32) %348 %372))
(approx %371 (fma.f32 #s(literal 2 binary32) %344 (*.f32 %220 (fma.f32 #s(literal -1 binary32) %351 (*.f32 #s(literal -1/4 binary32) %354)))))
(approx %371 (fma.f32 #s(literal 2 binary32) %344 (*.f32 %220 (fma.f32 #s(literal -1 binary32) %351 (*.f32 %220 (fma.f32 #s(literal -1/4 binary32) %360 (*.f32 #s(literal -1/8 binary32) %363)))))))
(approx %394 %395)
(approx %394 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 %220 %161) %282) %395))
(approx %394 (fma.f32 %153 %282 (*.f32 %220 (fma.f32 #s(literal -1/2 binary32) %401 (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %220 %402) %294))))))
(approx %394 (fma.f32 %153 %282 (*.f32 %220 (fma.f32 #s(literal -1/2 binary32) %401 (*.f32 %220 (fma.f32 #s(literal -1/8 binary32) (/.f32 %402 %294) (*.f32 #s(literal -1/16 binary32) (/.f32 (*.f32 %220 (*.f32 %153 %304)) %306))))))))
(approx %99 (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 %22 #s(literal 2 binary32)))))
(approx %99 (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 (fma.f32 #s(literal 2 binary32) maxCos %102) #s(literal 2 binary32)))))
(approx %6 %10)
(approx %6 %432)
(approx %29 maxCos)
(approx %29 %435)
(approx %33 %34)
(approx %33 %438)
(approx %39 (*.f32 ux %438))
(approx %41 (*.f32 ux %435))
(approx %49 (*.f32 ux (-.f32 #s(literal 1 binary32) %435)))
(approx %53 (*.f32 ux (-.f32 #s(literal 1 binary32) %448)))
(approx %58 (*.f32 ux (-.f32 %448 #s(literal 1 binary32))))
(approx %100 (*.f32 #s(literal -1 binary32) %285))
(approx %100 (*.f32 %220 (-.f32 %447 %458)))
(approx %108 (*.f32 ux %448))
(approx %112 %465)
(approx %113 %467)
(approx %152 (*.f32 %153 %467))
(approx %179 (*.f32 %153 %471))
(approx %209 %221)
(approx %209 (*.f32 %220 (fma.f32 #s(literal 2 binary32) (/.f32 %46 ux) %212)))
(approx %217 %480)
(approx %217 (*.f32 ux (-.f32 (+.f32 %479 %482) %484)))
(approx %217 (*.f32 ux (-.f32 (+.f32 %479 (fma.f32 #s(literal -1/2 binary32) %490 %482)) %484)))
(approx %217 (*.f32 ux (-.f32 (+.f32 %479 (fma.f32 #s(literal -1/2 binary32) %490 (fma.f32 #s(literal 1/2 binary32) (/.f32 %238 %498) %482))) %484)))
(approx %253 (*.f32 ux (*.f32 %153 %479)))
(approx %253 (*.f32 ux %511))
(approx %253 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) %515 %511)))
(approx %253 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) %515 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %153 %238) %498) %511))))
(approx %281 %527)
(approx %281 (*.f32 ux (+.f32 %526 %530)))
(approx %281 (*.f32 ux (+.f32 %526 (fma.f32 #s(literal -1/8 binary32) %537 %530))))
(approx %281 (*.f32 ux (+.f32 %526 (fma.f32 #s(literal -1/8 binary32) %537 (fma.f32 #s(literal 1/16 binary32) (/.f32 %542 %544) %530)))))
(approx %315 (*.f32 ux %551))
(approx %315 (*.f32 ux %556))
(approx %315 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %560 %556)))
(approx %315 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %560 (fma.f32 #s(literal 1/16 binary32) (/.f32 %564 %544) %556))))
(approx %343 %571)
(approx %343 (*.f32 ux %575))
(approx %343 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %579 %575)))
(approx %343 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %579 (fma.f32 #s(literal 1/16 binary32) %584 %575))))
(approx %371 (*.f32 #s(literal 2 binary32) %571))
(approx %371 (*.f32 ux %591))
(approx %371 (*.f32 ux (fma.f32 #s(literal -1/4 binary32) %579 %591)))
(approx %371 (*.f32 ux (fma.f32 #s(literal -1/4 binary32) %579 (fma.f32 #s(literal 1/8 binary32) %584 %591))))
(approx %394 (*.f32 ux %602))
(approx %394 (*.f32 ux %607))
(approx %394 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %611 %607)))
(approx %394 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %611 (fma.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %153 %542) %544) %607))))
(approx %99 %285)
(approx %99 (*.f32 %220 (-.f32 %458 %447)))
(approx %99 (*.f32 %220 (-.f32 (fma.f32 #s(literal 2 binary32) %457 (+.f32 (/.f32 #s(literal 1 binary32) %220) %101)) %447)))
(approx %6 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 #s(literal 1 binary32) %27))))
(approx %39 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 (*.f32 #s(literal -1 binary32) %34) %27))))
(approx %62 (*.f32 #s(literal -1 binary32) %642))
(approx %62 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 %641 %27))))
(approx %41 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 %640 %27))))
(approx %45 %642)
(approx %49 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 %27 %641))))
(approx %53 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 %447 %641))))
(approx %58 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 %641 %447))))
(approx %63 %668)
(approx %67 %671)
(approx %74 %673)
(approx %80 %675)
(approx %83 %677)
(approx %86 %679)
(approx %89 %681)
(approx %93 (*.f32 #s(literal 1/2 binary32) %681))
(approx %100 (*.f32 #s(literal -1 binary32) %686))
(approx %100 (*.f32 %220 (-.f32 (fma.f32 #s(literal -2 binary32) %457 %447) %685)))
(approx %108 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 %640 %447))))
(approx %112 %698)
(approx %113 %700)
(approx %144 %702)
(approx %148 %704)
(approx %152 (*.f32 %153 %700))
(approx %179 (*.f32 %153 (*.f32 %700 %704)))
(approx %209 (*.f32 %220 (fma.f32 #s(literal -1 binary32) %685 (*.f32 #s(literal 2 binary32) (/.f32 %641 ux)))))
(approx %217 (*.f32 #s(literal -1 binary32) %718))
(approx %217 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %717 (fma.f32 #s(literal -1 binary32) (/.f32 maxCos %718) (/.f32 #s(literal 1 binary32) %718))))))
(approx %217 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %717 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %728 (*.f32 #s(literal 1/2 binary32) (/.f32 %685 %730))) ux))))))
(approx %217 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %717 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %728 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %685 %729) (*.f32 #s(literal 1/2 binary32) (/.f32 %741 %743))) ux))) ux))))))
(approx %253 (*.f32 #s(literal -1 binary32) (*.f32 ux %756)))
(approx %253 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 %153 %717 (/.f32 %760 %718)))))
(approx %253 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %766 (*.f32 #s(literal 1/2 binary32) (/.f32 %767 %730))) ux) %756))))
(approx %253 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %766 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %767 %729) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %153 %741) %743))) ux))) ux) %756))))
(approx %281 (*.f32 #s(literal -1 binary32) %791))
(approx %281 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %790 (*.f32 #s(literal 1/2 binary32) (/.f32 %795 %791))))))
(approx %281 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %790 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %802 (*.f32 #s(literal 1/8 binary32) (/.f32 %803 %805))) ux))))))
(approx %281 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %790 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/8 binary32) (/.f32 %803 %804) (*.f32 #s(literal 1/16 binary32) (/.f32 %816 %818))) ux) (*.f32 #s(literal -1/2 binary32) %802)) ux))))))
(approx %315 (*.f32 #s(literal -1 binary32) (*.f32 ux %831)))
(approx %315 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal 1/2 binary32) (/.f32 %835 %791) %831))))
(approx %315 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %841 (*.f32 #s(literal 1/8 binary32) (/.f32 %842 %805))) ux) %831))))
(approx %315 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/8 binary32) (/.f32 %842 %804) (*.f32 #s(literal 1/16 binary32) (/.f32 %852 %818))) ux) (*.f32 #s(literal -1/2 binary32) %841)) ux) %831))))
(approx %343 (*.f32 #s(literal -1 binary32) %865))
(approx %343 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal 1/2 binary32) %869 %864))))
(approx %343 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %874 (*.f32 #s(literal 1/8 binary32) %876)) ux) %864))))
(approx %343 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/8 binary32) %884 (*.f32 #s(literal 1/16 binary32) %886)) ux) (*.f32 #s(literal -1/2 binary32) %874)) ux) %864))))
(approx %371 (*.f32 #s(literal -2 binary32) %865))
(approx %371 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal 2 binary32) %864 %869))))
(approx %371 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %874 (*.f32 #s(literal 1/4 binary32) %876)) ux) %907))))
(approx %371 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %874 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/4 binary32) %884 (*.f32 #s(literal 1/8 binary32) %886)) ux))) ux) %907))))
(approx %394 (*.f32 #s(literal -1 binary32) (*.f32 ux %922)))
(approx %394 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal 1/2 binary32) (/.f32 %926 %791) %922))))
(approx %394 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %932 (*.f32 #s(literal 1/8 binary32) (/.f32 %933 %805))) ux) %922))))
(approx %394 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/8 binary32) (/.f32 %933 %804) (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %153 %816) %818))) ux) (*.f32 #s(literal -1/2 binary32) %932)) ux) %922))))
(approx %99 %686)
(approx %99 (*.f32 %220 (fma.f32 #s(literal -1 binary32) (/.f32 %795 ux) %685)))
(approx %99 (*.f32 %220 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 %795 %27) ux) %685)))
(approx uy uy)
(approx %250 (*.f32 #s(literal 2 binary32) uy))
(approx %251 %77)
(approx %252 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %970 %971) (*.f32 #s(literal 2 binary32) %75))))
(approx %252 (*.f32 uy (fma.f32 #s(literal 2 binary32) %75 (*.f32 %970 (fma.f32 #s(literal -4/3 binary32) %971 (*.f32 #s(literal 4/15 binary32) (*.f32 %970 %978)))))))
(approx %252 (*.f32 uy (fma.f32 #s(literal 2 binary32) %75 (*.f32 %970 (fma.f32 #s(literal -4/3 binary32) %971 (*.f32 %970 (fma.f32 #s(literal -8/315 binary32) (*.f32 %970 %988) (*.f32 #s(literal 4/15 binary32) %978))))))))
(approx %80 %64)
(approx %80 (-.f32 (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal 2 binary32) (*.f32 uy %1000) %15)) ux))
(approx %80 (-.f32 (+.f32 #s(literal 1 binary32) (fma.f32 maxCos ux (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy %1007) %1009)))) ux))
(approx %80 (-.f32 (+.f32 #s(literal 1 binary32) (fma.f32 maxCos ux (*.f32 uy (fma.f32 #s(literal 2 binary32) %1000 (*.f32 uy (fma.f32 #s(literal -2 binary32) %1007 (*.f32 #s(literal -4/3 binary32) (*.f32 uy %1016)))))))) ux))
(approx %86 %68)
(approx %86 (-.f32 (+.f32 ux (*.f32 #s(literal 2 binary32) (*.f32 uy %1029))) %30))
(approx %86 (-.f32 (+.f32 ux (*.f32 uy (fma.f32 #s(literal -2 binary32) (*.f32 uy %1035) (*.f32 #s(literal 2 binary32) %1029)))) %30))
(approx %86 (-.f32 (+.f32 ux (*.f32 uy (fma.f32 #s(literal 2 binary32) %1029 (*.f32 uy (fma.f32 #s(literal -2 binary32) %1035 (*.f32 #s(literal -4/3 binary32) (*.f32 uy %1043))))))) %30))
(approx %89 %1054)
(approx %89 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1029 (fma.f32 #s(literal 2 binary32) %1000 %1058))))
(approx %89 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1029 (fma.f32 #s(literal 2 binary32) %1000 (*.f32 uy (fma.f32 #s(literal -2 binary32) %1035 (fma.f32 #s(literal -2 binary32) %1007 %1065)))))))
(approx %89 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1029 (fma.f32 #s(literal 2 binary32) %1000 (*.f32 uy (fma.f32 #s(literal -2 binary32) %1035 (fma.f32 #s(literal -2 binary32) %1007 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) %1043 (fma.f32 #s(literal -4/3 binary32) %1016 %1079))))))))))
(approx %93 (*.f32 #s(literal 1/2 binary32) %1054))
(approx %93 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %1058 (*.f32 #s(literal 1/2 binary32) %1053))))
(approx %93 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %1053 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %1065 (*.f32 #s(literal 1/2 binary32) %1057))))))
(approx %93 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %1053 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %1057 (*.f32 uy (fma.f32 #s(literal 1/2 binary32) %1079 (*.f32 #s(literal 1/2 binary32) %1064))))))))
(approx %152 (*.f32 #s(literal 2 binary32) (*.f32 uy %1110)))
(approx %152 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %970 %1114) (*.f32 #s(literal 2 binary32) %1110))))
(approx %152 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1110 (*.f32 %970 (fma.f32 #s(literal -4/3 binary32) %1114 (*.f32 #s(literal 4/15 binary32) (*.f32 %970 %1120)))))))
(approx %152 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1110 (*.f32 %970 (fma.f32 #s(literal -4/3 binary32) %1114 (*.f32 %970 (fma.f32 #s(literal -8/315 binary32) (*.f32 %970 (*.f32 %988 %467)) (*.f32 #s(literal 4/15 binary32) %1120))))))))
(approx %179 (*.f32 #s(literal 2 binary32) (*.f32 uy %1138)))
(approx %179 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %970 %1142) (*.f32 #s(literal 2 binary32) %1138))))
(approx %179 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1138 (*.f32 %970 (fma.f32 #s(literal -4/3 binary32) %1142 (*.f32 #s(literal 4/15 binary32) (*.f32 %970 %1148)))))))
(approx %179 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1138 (*.f32 %970 (fma.f32 #s(literal -4/3 binary32) %1142 (*.f32 %970 (fma.f32 #s(literal -8/315 binary32) (*.f32 %970 (*.f32 %988 %471)) (*.f32 #s(literal 4/15 binary32) %1148))))))))
(approx %253 (*.f32 #s(literal 2 binary32) (*.f32 uy %1169)))
(approx %253 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %970 %1173) (*.f32 #s(literal 2 binary32) %1169))))
(approx %253 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1169 (*.f32 %970 (fma.f32 #s(literal -4/3 binary32) %1173 (*.f32 #s(literal 4/15 binary32) (*.f32 %970 %1179)))))))
(approx %253 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1169 (*.f32 %970 (fma.f32 #s(literal -4/3 binary32) %1173 (*.f32 %970 (fma.f32 #s(literal -8/315 binary32) (*.f32 %970 (*.f32 %988 %1168)) (*.f32 #s(literal 4/15 binary32) %1179))))))))
(approx %343 %1201)
(approx %371 (*.f32 #s(literal 2 binary32) %1201))
(approx %394 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %970 %1205) (*.f32 #s(literal 2 binary32) %1200))))
(approx %394 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1200 (*.f32 %970 (fma.f32 #s(literal -4/3 binary32) %1205 (*.f32 #s(literal 4/15 binary32) (*.f32 %970 %1211)))))))
(approx %394 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1200 (*.f32 %970 (fma.f32 #s(literal -4/3 binary32) %1205 (*.f32 %970 (fma.f32 #s(literal -8/315 binary32) (*.f32 %970 (*.f32 %988 %1199)) (*.f32 #s(literal 4/15 binary32) %1211))))))))
(approx %252 %153)
(approx %74 (*.f32 uy (fma.f32 #s(literal 2 binary32) %75 %1230)))
(approx %83 (*.f32 uy (fma.f32 #s(literal 2 binary32) %75 %1234)))
(approx %253 (*.f32 %153 %1168))
(approx %394 (*.f32 %153 %1199))
(approx %74 (*.f32 #s(literal -1 binary32) (*.f32 uy (fma.f32 #s(literal -2 binary32) %75 (*.f32 #s(literal -1 binary32) %1230)))))
(approx %83 (*.f32 #s(literal -1 binary32) (*.f32 uy (fma.f32 #s(literal -2 binary32) %75 (*.f32 #s(literal -1 binary32) %1234)))))
(approx %18 %22)
(approx %19 %795)
(approx %20 %1254)
(approx %20 (fma.f32 #s(literal -2 binary32) %15 %1254))
(approx %33 %431)
(approx %39 (fma.f32 maxCos ux %432))
(approx %62 %1261)
(approx %43 %145)
(approx %45 %1265)
(approx %49 %1267)
(approx %49 (-.f32 %1265 #s(literal 1 binary32)))
(approx %53 %1271)
(approx %53 (-.f32 %1265 #s(literal 2 binary32)))
(approx %58 %1275)
(approx %58 %464)
(approx %100 %1279)
(approx %100 (-.f32 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -2 binary32) %1282)) %1278))
(approx %100 (-.f32 (+.f32 #s(literal 1 binary32) (*.f32 maxCos (-.f32 (*.f32 #s(literal -1 binary32) %1287) (*.f32 #s(literal 2 binary32) %1281)))) %1278))
(approx %209 %1295)
(approx %209 (fma.f32 maxCos %1297 %1295))
(approx %209 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1287 %1297) %1295))
(approx %217 %1303)
(approx %217 (+.f32 %1303 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1297) %1303))))
(approx %217 (+.f32 %1303 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1315) %1303) (*.f32 #s(literal 1/2 binary32) %1318)))))
(approx %217 (+.f32 %1303 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) %1318 (*.f32 maxCos (fma.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 maxCos %1324) %1326) (*.f32 #s(literal 1/2 binary32) (/.f32 %1315 %1303))))))))
(approx %253 %1336)
(approx %253 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1338) %1303) %1336))
(approx %253 (fma.f32 maxCos (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1343) %1303) (*.f32 #s(literal 1/2 binary32) %1346)) %1336))
(approx %253 (fma.f32 maxCos (fma.f32 #s(literal 1/2 binary32) %1346 (*.f32 maxCos (fma.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 maxCos (*.f32 %153 %1324)) %1326) (*.f32 #s(literal 1/2 binary32) (/.f32 %1343 %1303))))) %1336))
(approx %281 %1361)
(approx %281 (+.f32 %1361 (*.f32 #s(literal -1 binary32) (/.f32 %1282 %1361))))
(approx %281 (+.f32 %1361 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1367 (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos %1371) %1361))))))
(approx %281 (+.f32 %1361 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1367 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos (*.f32 ux %1379)) %1382) (*.f32 #s(literal -1/2 binary32) (/.f32 %1371 %1361))))))))
(approx %315 %1392)
(approx %315 (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 maxCos %1395) %1361) %1392))
(approx %315 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1400 (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos %1401) %1361))) %1392))
(approx %315 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1400 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos (*.f32 ux %1408)) %1382) (*.f32 #s(literal -1/2 binary32) (/.f32 %1401 %1361))))) %1392))
(approx %343 %1419)
(approx %343 (fma.f32 #s(literal -1 binary32) %1424 %1419))
(approx %343 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1427 (*.f32 #s(literal -1/2 binary32) %1430)) %1419))
(approx %343 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1427 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) %1438 (*.f32 #s(literal -1/2 binary32) %1439)))) %1419))
(approx %371 %1446)
(approx %371 (fma.f32 #s(literal -2 binary32) %1424 %1446))
(approx %371 (fma.f32 #s(literal 2 binary32) %1419 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1427 (*.f32 #s(literal -1 binary32) %1430)))))
(approx %371 (fma.f32 #s(literal 2 binary32) %1419 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1427 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1438 (*.f32 #s(literal -1 binary32) %1439)))))))
(approx %394 %1462)
(approx %394 (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 maxCos %1465) %1361) %1462))
(approx %394 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1470 (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos %1471) %1361))) %1462))
(approx %394 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1470 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos (*.f32 ux (*.f32 %153 %1379))) %1382) (*.f32 #s(literal -1/2 binary32) (/.f32 %1471 %1361))))) %1462))
(approx %99 %1278)
(approx %99 (fma.f32 #s(literal 2 binary32) %1282 %1278))
(approx %99 (fma.f32 maxCos (fma.f32 #s(literal 2 binary32) %1281 %1287) %1278))
(approx %19 %794)
(approx %19 (*.f32 maxCos (-.f32 %1497 #s(literal 2 binary32))))
(approx %20 (*.f32 #s(literal -2 binary32) %15))
(approx %20 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) ux (*.f32 #s(literal 2 binary32) %1503))))
(approx %29 (*.f32 maxCos %1509))
(approx %33 (*.f32 maxCos (-.f32 %1509 %1496)))
(approx %39 (*.f32 maxCos (+.f32 ux %1515)))
(approx %62 (*.f32 maxCos (-.f32 %1519 %1503)))
(approx %41 (*.f32 maxCos %1519))
(approx %43 (*.f32 maxCos (+.f32 ux %1525)))
(approx %45 %1264)
(approx %45 (*.f32 maxCos (-.f32 %1503 ux)))
(approx %49 (*.f32 maxCos (-.f32 %1503 %1519)))
(approx %53 (*.f32 maxCos (-.f32 %1503 %1536)))
(approx %58 (*.f32 maxCos (-.f32 %1536 %1503)))
(approx %100 (*.f32 #s(literal -1 binary32) %1544))
(approx %100 (*.f32 %1543 (-.f32 (*.f32 #s(literal -2 binary32) %1547) %220)))
(approx %100 (*.f32 %1543 (-.f32 (/.f32 #s(literal 1 binary32) %1543) %1555)))
(approx %108 (*.f32 maxCos %1536))
(approx %209 (*.f32 %1543 (fma.f32 #s(literal -1 binary32) %1561 (fma.f32 #s(literal -1 binary32) %220 %1562))))
(approx %209 (*.f32 %1543 (fma.f32 #s(literal -1 binary32) %1561 (fma.f32 #s(literal -1 binary32) %220 (+.f32 (/.f32 %1295 %1543) %1562)))))
(approx %217 %1574)
(approx %217 (*.f32 maxCos (+.f32 %1573 (*.f32 #s(literal 1/2 binary32) %1576))))
(approx %217 (*.f32 maxCos (+.f32 %1573 %1588)))
(approx %217 (*.f32 maxCos (+.f32 %1573 (fma.f32 #s(literal -1/4 binary32) (/.f32 %1592 %1595) %1588))))
(approx %253 %1602)
(approx %253 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) %1604 %1601)))
(approx %253 (*.f32 maxCos %1611))
(approx %253 (*.f32 maxCos (fma.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 %153 %1592) %1595) %1611)))
(approx %281 %1621)
(approx %281 %1626)
(approx %281 (*.f32 maxCos (+.f32 %1620 (fma.f32 #s(literal -1 binary32) %1623 %1634))))
(approx %281 (*.f32 maxCos (+.f32 %1620 (fma.f32 #s(literal -1 binary32) %1623 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1640 %1642) %1634)))))
(approx %315 %1650)
(approx %315 %1654)
(approx %315 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1652 %1658)))
(approx %315 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1652 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1663 %1642) %1658))))
(approx %343 %1670)
(approx %343 %1674)
(approx %343 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1672 %1678)))
(approx %343 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1672 (fma.f32 #s(literal 1/2 binary32) %1684 %1678))))
(approx %371 (*.f32 #s(literal 2 binary32) %1670))
(approx %371 %1693)
(approx %371 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1672 (fma.f32 #s(literal 2 binary32) %1669 %1677))))
(approx %371 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1672 (fma.f32 #s(literal 2 binary32) %1669 (+.f32 %1684 %1677)))))
(approx %394 %1705)
(approx %394 %1709)
(approx %394 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1707 %1713)))
(approx %394 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1707 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1718 %1642) %1713))))
(approx %99 %1544)
(approx %99 (*.f32 %1543 (fma.f32 #s(literal 2 binary32) %1547 %220)))
(approx %99 (*.f32 %1543 %1555))
(approx %19 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (-.f32 #s(literal 2 binary32) %1497))))
(approx %20 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1503 %1254))))
(approx %33 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %431 maxCos)) #s(literal 1 binary32)))))
(approx %39 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) ux (*.f32 #s(literal -1 binary32) %1515)))))
(approx %62 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) ux (*.f32 #s(literal -1 binary32) (/.f32 %1261 maxCos))))))
(approx %41 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (-.f32 %10 %1496))))
(approx %43 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) ux %1503))))
(approx %45 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (-.f32 %1525 %10))))
(approx %49 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1267 maxCos)) %10))))
(approx %53 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1271 maxCos)) %10))))
(approx %58 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) ux (*.f32 #s(literal -1 binary32) (/.f32 %1275 maxCos))))))
(approx %100 (*.f32 %1543 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1279 maxCos)) (*.f32 #s(literal -2 binary32) %1281)) maxCos)) %220)))
(approx %108 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (-.f32 %10 %1497))))
(approx %209 (*.f32 %1543 (fma.f32 #s(literal -1 binary32) (/.f32 %1798 maxCos) %1310)))
(approx %209 (*.f32 %1543 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1561 %1798) maxCos) %1310)))
(approx %217 (*.f32 #s(literal -1 binary32) %1574))
(approx %217 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1573 (*.f32 #s(literal -1/2 binary32) (/.f32 %1798 %1574))))))
(approx %217 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1573 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1819 %1574) %1822) maxCos))))))
(approx %217 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1573 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/4 binary32) (/.f32 %1830 %1831) (*.f32 #s(literal 1/2 binary32) (/.f32 %1819 %1573))) maxCos) %1822) maxCos))))))
(approx %253 (*.f32 #s(literal -1 binary32) %1602))
(approx %253 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (/.f32 %1846 %1574) %1601))))
(approx %253 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1852 %1574) %1855) maxCos) %1601))))
(approx %253 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %153 %1830) %1831) (*.f32 #s(literal 1/2 binary32) (/.f32 %1852 %1573))) maxCos) %1855) maxCos) %1601))))
(approx %281 (*.f32 #s(literal -1 binary32) %1621))
(approx %281 (*.f32 #s(literal -1 binary32) %1626))
(approx %281 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1620 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1631 %1621) %1879) maxCos))))))
(approx %281 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1620 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1640 %1887) (*.f32 #s(literal 1/2 binary32) (/.f32 %1631 %1620))) maxCos) %1879) maxCos))))))
(approx %315 (*.f32 #s(literal -1 binary32) %1650))
(approx %315 (*.f32 #s(literal -1 binary32) %1654))
(approx %315 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1656 %1621) %1905) maxCos) %1649))))
(approx %315 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1663 %1887) (*.f32 #s(literal 1/2 binary32) (/.f32 %1656 %1620))) maxCos) %1905) maxCos) %1649))))
(approx %343 (*.f32 #s(literal -1 binary32) %1670))
(approx %343 (*.f32 #s(literal -1 binary32) %1674))
(approx %343 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1927 %1928) maxCos) %1669))))
(approx %343 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/2 binary32) %1935 (*.f32 #s(literal 1/2 binary32) %1936)) maxCos) %1928) maxCos) %1669))))
(approx %371 (*.f32 #s(literal -2 binary32) %1670))
(approx %371 (*.f32 #s(literal -1 binary32) %1693))
(approx %371 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1927 %1950) maxCos) %1691))))
(approx %371 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (+.f32 %1935 %1936) maxCos) %1950) maxCos) %1691))))
(approx %394 (*.f32 #s(literal -1 binary32) %1705))
(approx %394 (*.f32 #s(literal -1 binary32) %1709))
(approx %394 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1711 %1621) %1970) maxCos) %1704))))
(approx %394 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1718 %1887) (*.f32 #s(literal 1/2 binary32) (/.f32 %1711 %1620))) maxCos) %1970) maxCos) %1704))))
(approx %99 (*.f32 %1543 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) %1281 (*.f32 #s(literal -1 binary32) (/.f32 %1278 maxCos))) maxCos) %220)))
Calls

9 calls:

TimeVariablePoint
5.0ms
ux
-inf
4.0ms
ux
0
3.0ms
maxCos
-inf
3.0ms
uy
0
3.0ms
maxCos
inf

rewrite219.0ms (5.2%)

Memory
0.9MiB live, 107.5MiB allocated; 187ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
078742
0129696
1431681
21420681
04197681
04454673
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
62 → 924
Calls
Call 1
Inputs
%2 = (*.f32 uy #s(literal 2 binary32))
%3 = (PI.f32 )
%4 = (*.f32 %2 %3)
%5 = (sin.f32 %4)
%8 = (-.f32 #s(literal 1 binary32) ux)
%10 = (*.f32 maxCos ux)
%11 = (*.f32 #s(literal 2 binary32) maxCos)
%12 = (-.f32 #s(literal 2 binary32) %11)
%13 = (*.f32 ux %12)
%14 = (/.f32 #s(literal 1 binary32) ux)
%15 = (+.f32 maxCos %14)
%16 = (-.f32 %15 #s(literal 1 binary32))
%17 = (*.f32 ux %16)
%19 = (+.f32 %3 %3)
%20 = (*.f32 %19 uy)
%21 = (fma.f32 maxCos ux %8)
%22 = (fma.f32 maxCos ux #s(literal 1 binary32))
%23 = (-.f32 %10 ux)
%24 = (-.f32 ux %10)
%25 = (-.f32 ux %22)
%26 = (-.f32 %24 #s(literal 2 binary32))
%27 = (neg.f32 %26)
%28 = (asin.f32 %21)
%29 = (asin.f32 %25)
%30 = (fma.f32 %19 uy %28)
%31 = (sin.f32 %30)
%32 = (fma.f32 %19 uy %29)
%33 = (sin.f32 %32)
%34 = (+.f32 %31 %33)
%36 = (sin.f32 %20)
%40 = (- (+ 1 (* maxCos ux)) ux)
%44 = (approx (- 1 (pow %40 2)) %13)
%45 = (approx %40 %17)
%46 = (fma.f32 maxCos ux #s(literal 2 binary32))
%47 = (-.f32 %46 ux)
%48 = (fabs.f32 %47)
%49 = (sqrt.f32 %48)
%50 = (fabs.f32 %23)
%51 = (sqrt.f32 %50)
%52 = (*.f32 %49 %36)
%54 = (*.f32 %24 %27)
%55 = (sqrt.f32 %54)
%57 = (sqrt.f32 %44)
%58 = (*.f32 %3 %57)
%59 = (*.f32 uy %58)
%60 = (*.f32 #s(literal 2 binary32) %59)
%67 = (+ (- 1 ux) (* ux maxCos))
%71 = (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %67 %67))))
%73 = (pow.f32 %45 #s(literal 2 binary32))
%74 = (-.f32 #s(literal 1 binary32) %73)
%75 = (sqrt.f32 %74)
%76 = (*.f32 %3 %75)
%77 = (*.f32 uy %76)
%78 = (*.f32 #s(literal 2 binary32) %77)
uy
#s(literal 2 binary32)
%2
%3
%4
%5
#s(literal 1 binary32)
ux
%8
maxCos
%10
%11
%12
%13
%14
%15
%16
%17
#s(literal 1/2 binary32)
%19
%20
%21
%22
%23
%24
%25
%26
%27
%28
%29
%30
%31
%32
%33
%34
(*.f32 %34 #s(literal 1/2 binary32))
%36
%44
%45
%46
%47
%48
%49
%50
%51
%52
(*.f32 %51 %52)
%54
%55
(*.f32 %5 %55)
%57
%58
%59
%60
(approx %71 %60)
%73
%74
%75
%76
%77
%78
(approx %71 %78)
Outputs
%5 = (+.f32 uy uy)
%9 = (*.f32 #s(literal 1 binary32) uy)
%11 = (*.f32 uy #s(literal 1 binary32))
%16 = (PI.f32 )
%17 = (*.f32 %16 uy)
%18 = (*.f32 %17 #s(literal 2 binary32))
%19 = (+.f32 %16 %16)
%20 = (*.f32 %19 uy)
%21 = (*.f32 %16 %5)
%22 = (*.f32 %5 %16)
%23 = (*.f32 #s(literal 2 binary32) %17)
%24 = (*.f32 uy %19)
%26 = (/.f32 #s(literal 1 binary32) (pow.f32 %20 #s(literal -1 binary32)))
%27 = (fma.f32 %16 uy %17)
%28 = (fma.f32 uy %16 %17)
%29 = (pow.f32 %20 #s(literal 1 binary32))
%30 = (+.f32 %17 %17)
%31 = (sin.f32 %17)
%32 = (cos.f32 %17)
%33 = (*.f32 %31 %32)
%34 = (*.f32 #s(literal 2 binary32) %33)
%35 = (sin.f32 %20)
%37 = (/.f32 #s(literal 1 binary32) (pow.f32 %35 #s(literal -1 binary32)))
%38 = (*.f32 %32 %31)
%39 = (fma.f32 %31 %32 %38)
%40 = (pow.f32 %35 #s(literal 1 binary32))
%41 = (+.f32 %33 %38)
%43 = (neg.f32 ux)
%46 = (-.f32 #s(literal 1 binary32) ux)
%49 = (neg.f32 %43)
%54 = (-.f32 ux #s(literal 1 binary32))
%57 = (*.f32 maxCos ux)
%64 = (+.f32 maxCos maxCos)
%67 = (neg.f32 maxCos)
%69 = (*.f32 maxCos #s(literal 1 binary32))
%71 = (*.f32 #s(literal 1 binary32) maxCos)
%77 = (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32))
%82 = (*.f32 #s(literal -2 binary32) maxCos)
%96 = (fma.f32 maxCos #s(literal 2 binary32) #s(literal -2 binary32))
%98 = (*.f32 %77 ux)
%102 = (*.f32 ux %82)
%104 = (*.f32 %82 ux)
%107 = (*.f32 ux #s(literal 2 binary32))
%109 = (*.f32 #s(literal 2 binary32) ux)
%115 = (/.f32 #s(literal -1 binary32) ux)
%117 = (/.f32 #s(literal 1 binary32) ux)
%121 = (*.f32 #s(literal 1/2 binary32) %117)
%123 = (/.f32 #s(literal 1/2 binary32) ux)
%125 = (*.f32 %43 #s(literal 2 binary32))
%146 = (/.f32 #s(literal 0 binary32) %49)
%148 = (/.f32 #s(literal 0 binary32) ux)
%161 = (/.f32 #s(literal 1/2 binary32) %49)
%167 = (fma.f32 maxCos ux #s(literal 1 binary32))
%169 = (/.f32 %57 ux)
%190 = (*.f32 %43 maxCos)
%196 = (*.f32 #s(literal -1 binary32) ux)
%198 = (*.f32 ux %43)
%200 = (*.f32 #s(literal 1 binary32) ux)
%202 = (*.f32 ux %49)
%205 = (*.f32 ux ux)
%207 = (*.f32 %57 %43)
%209 = (*.f32 %43 ux)
%211 = (*.f32 %57 %49)
%213 = (*.f32 %49 ux)
%215 = (*.f32 %57 ux)
%218 = (*.f32 ux #s(literal -1 binary32))
%221 = (*.f32 ux #s(literal 1 binary32))
%250 = (-.f32 #s(literal -1 binary32) %57)
%254 = (+.f32 %117 maxCos)
%267 = (*.f32 (neg.f32 %67) ux)
%268 = (/.f32 %267 ux)
%270 = (neg.f32 %190)
%271 = (/.f32 %270 ux)
%312 = (-.f32 %254 #s(literal 1 binary32))
%319 = (-.f32 %117 #s(literal 1 binary32))
%322 = (+.f32 maxCos #s(literal -1 binary32))
%324 = (-.f32 maxCos #s(literal 1 binary32))
%342 = (-.f32 #s(literal 1 binary32) %254)
%344 = (*.f32 %312 ux)
%349 = (*.f32 ux %319)
%351 = (*.f32 %319 ux)
%371 = (neg.f32 %16)
%378 = (-.f32 %57 ux)
%381 = (-.f32 %167 ux)
%384 = (-.f32 ux %167)
%386 = (sqrt.f32 (fma.f32 %381 %384 #s(literal 1 binary32)))
%387 = (*.f32 %386 #s(literal 0 binary32))
%390 = (*.f32 #s(literal 1 binary32) %381)
%391 = (*.f32 #s(literal 0 binary32) %386)
%402 = (-.f32 ux %57)
%404 = (cos.f32 %16)
%406 = (*.f32 (sin.f32 %16) %386)
%412 = (*.f32 #s(literal 0 binary32) (neg.f32 %386))
%430 = (acos.f32 %381)
%431 = (*.f32 %16 #s(literal 1/2 binary32))
%434 = (asin.f32 %384)
%437 = (asin.f32 %381)
%441 = (neg.f32 %430)
%443 = (+.f32 %434 %431)
%470 = (+.f32 %67 #s(literal 1 binary32))
%496 = (*.f32 #s(literal 1 binary32) %384)
%521 = (acos.f32 %384)
%529 = (neg.f32 %521)
%531 = (+.f32 %437 %431)
%538 = (fma.f32 maxCos ux #s(literal 2 binary32))
%539 = (-.f32 ux %538)
%542 = (-.f32 ux #s(literal 2 binary32))
%547 = (-.f32 #s(literal 2 binary32) ux)
%548 = (neg.f32 %547)
%554 = (neg.f32 %538)
%564 = (-.f32 %538 ux)
%567 = (/.f32 #s(literal 1 binary32) (pow.f32 %564 #s(literal -1 binary32)))
%568 = (-.f32 %547 %190)
%569 = (-.f32 %538 %49)
%570 = (-.f32 #s(literal -2 binary32) %43)
%571 = (-.f32 %57 %570)
%572 = (+.f32 #s(literal -2 binary32) ux)
%573 = (-.f32 %57 %572)
%574 = (-.f32 %57 %548)
%575 = (-.f32 #s(literal 2 binary32) %402)
%576 = (fma.f32 maxCos ux %547)
%577 = (fma.f32 ux maxCos %547)
%578 = (pow.f32 %564 #s(literal 1 binary32))
%579 = (+.f32 %547 %57)
%580 = (+.f32 %43 %538)
%581 = (+.f32 %538 %43)
%582 = (+.f32 %378 #s(literal 2 binary32))
%583 = (+.f32 %57 %547)
%584 = (+.f32 #s(literal 1 binary32) %381)
%585 = (+.f32 #s(literal 2 binary32) %378)
%586 = (neg.f32 %539)
%621 = (fma.f32 %19 uy %437)
%624 = (fma.f32 %19 uy %431)
%626 = (-.f32 %430 %20)
%629 = (*.f32 (neg.f32 %19) uy)
%631 = (*.f32 %371 %5)
%634 = (*.f32 (neg.f32 %5) %16)
%636 = (neg.f32 uy)
%637 = (*.f32 %636 %19)
%639 = (neg.f32 %20)
%650 = (-.f32 %434 %20)
%652 = (cos.f32 %20)
%653 = (*.f32 %652 %381)
%654 = (sin.f32 %621)
%657 = (-.f32 %654 (cos.f32 (fma.f32 %19 uy %430)))
%660 = (fma.f32 %19 uy %434)
%661 = (sin.f32 %660)
%662 = (+.f32 %661 %654)
%671 = (cos.f32 %629)
%674 = (*.f32 %386 (sin.f32 %629))
%676 = (cos.f32 %631)
%679 = (*.f32 %386 (sin.f32 %631))
%681 = (cos.f32 %634)
%684 = (*.f32 %386 (sin.f32 %634))
%686 = (cos.f32 %637)
%689 = (*.f32 %386 (sin.f32 %637))
%692 = (*.f32 (cos.f32 %624) %386)
%695 = (*.f32 %386 (sin.f32 %639))
%697 = (*.f32 %386 %35)
%698 = (neg.f32 %652)
%703 = (*.f32 %652 %384)
%707 = (fma.f32 %16 uy (/.f32 (+.f32 %437 %660) #s(literal 2 binary32)))
%708 = (sin.f32 %707)
%709 = (*.f32 #s(literal 2 binary32) %708)
%710 = (/.f32 %709 #s(literal 1/2 binary32))
%713 = (fma.f32 %16 uy (/.f32 (-.f32 %437 %660) #s(literal 2 binary32)))
%714 = (cos.f32 %713)
%716 = (/.f32 %714 #s(literal 4 binary32))
%718 = (/.f32 %709 #s(literal 2 binary32))
%719 = (/.f32 %714 #s(literal 1 binary32))
%721 = (*.f32 %714 %708)
%722 = (/.f32 %721 #s(literal 1/2 binary32))
%724 = (/.f32 %721 #s(literal 2 binary32))
%726 = (/.f32 %721 #s(literal 4 binary32))
%732 = (/.f32 %721 #s(literal 1 binary32))
%739 = (-.f32 %20 %430)
%757 = (-.f32 %521 %20)
%773 = (-.f32 %437 %20)
%818 = (+.f32 %660 %16)
%832 = (+.f32 (sin.f32 (-.f32 %707 %713)) (sin.f32 (+.f32 %707 %713)))
%840 = (*.f32 #s(literal 2 binary32) %832)
%849 = (sin.f32 (neg.f32 %660))
%851 = (fma.f32 %652 %384 %654)
%853 = (fma.f32 %652 %381 %661)
%855 = (-.f32 %653 %849)
%894 = (*.f32 %662 #s(literal 1/2 binary32))
%902 = (*.f32 %654 #s(literal 1/2 binary32))
%904 = (*.f32 %661 #s(literal 1/2 binary32))
%906 = (*.f32 #s(literal 1/2 binary32) %654)
%908 = (*.f32 #s(literal 1/2 binary32) %661)
%916 = (* maxCos ux)
%919 = (- (- %916 -1) ux)
%923 = (approx (- 1 (pow %919 2)) %98)
%924 = (sqrt.f32 %923)
%925 = (neg.f32 %924)
%930 = (*.f32 %923 %923)
%940 = (approx %919 %344)
%958 = (fabs.f32 %564)
%959 = (sqrt.f32 %958)
%960 = (neg.f32 %959)
%965 = (*.f32 %564 %564)
%995 = (sqrt.f32 %959)
%1009 = (fabs.f32 %402)
%1010 = (sqrt.f32 %1009)
%1011 = (neg.f32 %1010)
%1016 = (*.f32 %402 %402)
%1037 = (sqrt.f32 %1010)
%1048 = (*.f32 %959 %35)
%1054 = (*.f32 (*.f32 %1010 %35) %959)
%1055 = (*.f32 %35 %1010)
%1056 = (*.f32 %1055 %959)
%1057 = (*.f32 %564 %402)
%1058 = (sqrt.f32 %1057)
%1059 = (*.f32 %1058 %35)
%1060 = (*.f32 %1048 %1010)
%1061 = (*.f32 %1010 %1048)
%1062 = (*.f32 %959 %1055)
%1063 = (*.f32 %35 %1058)
%1065 = (/.f32 #s(literal 1 binary32) (pow.f32 %1059 #s(literal -1 binary32)))
%1066 = (pow.f32 %1059 #s(literal 1 binary32))
%1067 = (neg.f32 %1058)
%1075 = (*.f32 %1057 %1057)
%1077 = (*.f32 %1016 %965)
%1079 = (*.f32 %43 %402)
%1081 = (*.f32 %564 %190)
%1083 = (*.f32 %402 %43)
%1085 = (*.f32 %402 %547)
%1087 = (*.f32 %547 %402)
%1089 = (*.f32 %190 %564)
%1119 = (*.f32 %378 %564)
%1121 = (*.f32 %539 %402)
%1128 = (sqrt.f32 %1058)
%1134 = (*.f32 %958 %1009)
%1158 = (sqrt.f32 %924)
%1168 = (*.f32 %924 %16)
%1173 = (*.f32 uy %924)
%1175 = (*.f32 %17 %924)
%1178 = (*.f32 %924 uy)
%1186 = (*.f32 #s(literal 2 binary32) %1168)
%1194 = (*.f32 %924 %20)
%1205 = (neg.f32 %17)
%1217 = (*.f32 %1175 #s(literal 1 binary32))
%1221 = (*.f32 #s(literal 1 binary32) %1175)
%1237 = (* (sin (acos (- (- ux %916) 1))) (sin (* (* (PI ) 2) uy)))
%1238 = (approx %1237 %1194)
%1242 = (fabs.f32 %940)
%1243 = (fabs.f32 %1242)
%1245 = (neg.f32 %1242)
%1247 = (neg.f32 %940)
%1248 = (neg.f32 %1247)
%1252 = (*.f32 %940 %940)
%1262 = (-.f32 #s(literal 1 binary32) %1252)
%1263 = (sqrt.f32 %1262)
%1264 = (neg.f32 %1263)
%1267 = (*.f32 %1247 %940)
%1270 = (asin.f32 %940)
%1277 = (acos.f32 %940)
%1292 = (*.f32 %1262 %1262)
%1298 = (sin.f32 %1270)
%1321 = (sqrt.f32 %1263)
%1347 = (*.f32 %1263 %16)
%1352 = (*.f32 uy %1263)
%1354 = (*.f32 %17 %1263)
%1357 = (*.f32 %1263 uy)
%1365 = (*.f32 #s(literal 2 binary32) %1347)
%1373 = (*.f32 %1263 %20)
%1395 = (*.f32 %1354 #s(literal 1 binary32))
%1399 = (*.f32 #s(literal 1 binary32) %1354)
%1407 = (approx %1237 %1373)
uy
#s(literal 2 binary32)
(*.f32 #s(literal 2 binary32) uy)
(*.f32 uy #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %5 #s(literal -1 binary32)))
(fma.f32 #s(literal 1 binary32) uy %9)
(fma.f32 uy #s(literal 1 binary32) %11)
(pow.f32 %5 #s(literal 1 binary32))
(+.f32 %11 %11)
(+.f32 %9 %9)
%5
%16
%18
%20
%21
%22
%23
%24
%26
%27
%28
%29
%30
%34
%37
%39
%40
%41
%35
#s(literal 1 binary32)
ux
(/.f32 (fma.f32 %43 #s(literal 2 binary32) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %46 #s(literal -1 binary32)))
(-.f32 #s(literal 1 binary32) %49)
%46
(pow.f32 %46 #s(literal 1 binary32))
(+.f32 %43 #s(literal 1 binary32))
(+.f32 #s(literal 1 binary32) %43)
(neg.f32 %54)
maxCos
%57
(*.f32 ux maxCos)
(/.f32 #s(literal 1 binary32) (pow.f32 %57 #s(literal -1 binary32)))
(pow.f32 %57 #s(literal 1 binary32))
(*.f32 maxCos #s(literal 2 binary32))
(*.f32 #s(literal 2 binary32) maxCos)
(/.f32 #s(literal 1 binary32) (pow.f32 %64 #s(literal -1 binary32)))
(-.f32 maxCos %67)
(fma.f32 maxCos #s(literal 1 binary32) %69)
(fma.f32 #s(literal 1 binary32) maxCos %71)
(pow.f32 %64 #s(literal 1 binary32))
(+.f32 %69 %69)
(+.f32 %71 %71)
%64
(/.f32 #s(literal 1 binary32) (pow.f32 %77 #s(literal -1 binary32)))
(-.f32 (-.f32 #s(literal 2 binary32) maxCos) maxCos)
(-.f32 #s(literal 2 binary32) (neg.f32 %82))
(-.f32 #s(literal 2 binary32) %64)
(fma.f32 %67 #s(literal 2 binary32) #s(literal 2 binary32))
%77
(fma.f32 maxCos #s(literal -2 binary32) #s(literal 2 binary32))
(fma.f32 #s(literal 2 binary32) %67 #s(literal 2 binary32))
(pow.f32 %77 #s(literal 1 binary32))
(+.f32 %82 #s(literal 2 binary32))
(+.f32 #s(literal 1 binary32) (+.f32 #s(literal 1 binary32) %82))
(+.f32 #s(literal 1 binary32) (-.f32 #s(literal 1 binary32) %64))
(+.f32 #s(literal 2 binary32) %82)
(neg.f32 %96)
%98
(*.f32 ux %77)
(/.f32 #s(literal 1 binary32) (pow.f32 %98 #s(literal -1 binary32)))
(fma.f32 ux #s(literal 2 binary32) %102)
(fma.f32 #s(literal 2 binary32) ux %104)
(pow.f32 %98 #s(literal 1 binary32))
(+.f32 %107 %102)
(+.f32 %109 %104)
(neg.f32 (*.f32 %96 ux))
(neg.f32 (*.f32 ux %96))
(*.f32 #s(literal -1 binary32) %115)
(*.f32 %117 #s(literal 1 binary32))
(*.f32 #s(literal 1 binary32) %117)
(*.f32 #s(literal 2 binary32) %121)
(*.f32 #s(literal 2 binary32) %123)
(/.f32 #s(literal -2 binary32) %125)
(/.f32 #s(literal -2 binary32) (*.f32 #s(literal 2 binary32) %43))
(/.f32 #s(literal -1 binary32) (neg.f32 %49))
(/.f32 #s(literal -1 binary32) %43)
(/.f32 #s(literal 1 binary32) (pow.f32 %117 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %43 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) %49)
(/.f32 #s(literal 1 binary32) (/.f32 ux #s(literal 1 binary32)))
%117
(/.f32 #s(literal 2 binary32) (*.f32 %49 #s(literal 2 binary32)))
(/.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %49))
(/.f32 #s(literal 2 binary32) %107)
(/.f32 #s(literal 2 binary32) %109)
(fma.f32 #s(literal -1 binary32) %115 %146)
(fma.f32 #s(literal -1 binary32) %115 %148)
(fma.f32 %117 #s(literal 1 binary32) %146)
(fma.f32 %117 #s(literal 1 binary32) %148)
(fma.f32 #s(literal 1 binary32) %117 %146)
(fma.f32 #s(literal 1 binary32) %117 %148)
(fma.f32 #s(literal 2 binary32) %121 %146)
(fma.f32 #s(literal 2 binary32) %121 %148)
(fma.f32 #s(literal 2 binary32) %123 %146)
(fma.f32 #s(literal 2 binary32) %123 %148)
(pow.f32 %49 #s(literal -1 binary32))
(pow.f32 %117 #s(literal 1 binary32))
(pow.f32 ux #s(literal -1 binary32))
(+.f32 %161 %161)
(+.f32 %123 %123)
(+.f32 %117 %146)
(+.f32 %117 %148)
(neg.f32 %115)
(*.f32 %167 %117)
(/.f32 (fma.f32 %169 %43 #s(literal -1 binary32)) %43)
(/.f32 (fma.f32 %169 %49 #s(literal 1 binary32)) %49)
(/.f32 (fma.f32 %169 ux #s(literal 1 binary32)) ux)
(/.f32 (fma.f32 %117 ux %57) ux)
(/.f32 (fma.f32 maxCos %49 #s(literal 1 binary32)) %49)
(/.f32 (-.f32 (*.f32 %169 %49) #s(literal -1 binary32)) %49)
(/.f32 (-.f32 (*.f32 %169 ux) #s(literal -1 binary32)) ux)
(/.f32 (-.f32 (*.f32 %169 %43) #s(literal 1 binary32)) %43)
(/.f32 (-.f32 (*.f32 %117 ux) %190) ux)
(/.f32 (-.f32 (*.f32 maxCos %49) #s(literal -1 binary32)) %49)
(/.f32 (fma.f32 %57 %43 %196) %198)
(/.f32 (fma.f32 %57 %49 %200) %202)
(/.f32 (fma.f32 %57 ux %200) %205)
(/.f32 (fma.f32 #s(literal -1 binary32) ux %207) %209)
(/.f32 (fma.f32 #s(literal 1 binary32) ux %211) %213)
(/.f32 (fma.f32 #s(literal 1 binary32) ux %215) %205)
(/.f32 (fma.f32 %57 %43 %218) %198)
(/.f32 (fma.f32 %57 %49 %221) %202)
(/.f32 (fma.f32 %57 ux %221) %205)
(/.f32 (fma.f32 #s(literal -1 binary32) ux (*.f32 %43 %57)) %209)
(/.f32 (fma.f32 #s(literal 1 binary32) ux (*.f32 %49 %57)) %213)
(/.f32 (fma.f32 #s(literal 1 binary32) ux (*.f32 ux %57)) %205)
(/.f32 (-.f32 %211 %218) %202)
(/.f32 (-.f32 %215 %218) %205)
(/.f32 (-.f32 %207 %221) %198)
(/.f32 (-.f32 %196 (*.f32 %43 %190)) %209)
(/.f32 (-.f32 %200 (*.f32 %49 %190)) %213)
(/.f32 (-.f32 %200 (*.f32 ux %190)) %205)
(/.f32 %250 %43)
(/.f32 %167 %49)
(/.f32 %167 ux)
(/.f32 #s(literal 1 binary32) (pow.f32 %254 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 ux %167))
(-.f32 %169 %115)
(-.f32 %117 (/.f32 %57 %43))
(-.f32 %117 (/.f32 %190 ux))
(-.f32 %117 %67)
(-.f32 maxCos %115)
(fma.f32 #s(literal -1 binary32) %115 %268)
(fma.f32 #s(literal -1 binary32) %115 %271)
(fma.f32 #s(literal -1 binary32) %115 %169)
(fma.f32 #s(literal -1 binary32) %115 maxCos)
(fma.f32 %117 #s(literal 1 binary32) %268)
(fma.f32 %117 #s(literal 1 binary32) %271)
(fma.f32 %117 #s(literal 1 binary32) %169)
(fma.f32 %117 #s(literal 1 binary32) maxCos)
(fma.f32 #s(literal 1 binary32) %117 %268)
(fma.f32 #s(literal 1 binary32) %117 %271)
(fma.f32 #s(literal 1 binary32) %117 %169)
(fma.f32 #s(literal 1 binary32) %117 maxCos)
(fma.f32 #s(literal 2 binary32) %121 %268)
(fma.f32 #s(literal 2 binary32) %121 %271)
(fma.f32 #s(literal 2 binary32) %121 %169)
(fma.f32 #s(literal 2 binary32) %121 maxCos)
(fma.f32 #s(literal 2 binary32) %123 %268)
(fma.f32 #s(literal 2 binary32) %123 %271)
(fma.f32 #s(literal 2 binary32) %123 %169)
(fma.f32 #s(literal 2 binary32) %123 maxCos)
(pow.f32 %254 #s(literal 1 binary32))
(+.f32 %169 %117)
(+.f32 %117 %268)
(+.f32 %117 %271)
(+.f32 %117 %169)
%254
(+.f32 maxCos %117)
(neg.f32 (-.f32 %115 maxCos))
(/.f32 (fma.f32 #s(literal -1 binary32) %43 %250) %43)
(/.f32 (fma.f32 #s(literal -1 binary32) ux %167) ux)
(/.f32 (-.f32 (*.f32 %254 #s(literal 2 binary32)) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 (-.f32 (*.f32 %250 #s(literal 2 binary32)) %125) %125)
(/.f32 (-.f32 (*.f32 %167 #s(literal 2 binary32)) %107) %107)
(/.f32 #s(literal 1 binary32) (pow.f32 %312 #s(literal -1 binary32)))
%312
(-.f32 maxCos (-.f32 %115 #s(literal -1 binary32)))
(-.f32 maxCos (+.f32 %115 #s(literal 1 binary32)))
(-.f32 maxCos (neg.f32 %319))
(fma.f32 #s(literal -1 binary32) %115 %322)
(fma.f32 #s(literal -1 binary32) %115 %324)
(fma.f32 %167 %117 #s(literal -1 binary32))
(fma.f32 %117 #s(literal 1 binary32) %322)
(fma.f32 %117 #s(literal 1 binary32) %324)
(fma.f32 #s(literal 1 binary32) %117 %322)
(fma.f32 #s(literal 1 binary32) %117 %324)
(fma.f32 #s(literal 2 binary32) %121 %322)
(fma.f32 #s(literal 2 binary32) %121 %324)
(fma.f32 #s(literal 2 binary32) %123 %322)
(fma.f32 #s(literal 2 binary32) %123 %324)
(pow.f32 %312 #s(literal 1 binary32))
(+.f32 %319 maxCos)
(+.f32 #s(literal -1 binary32) %254)
(+.f32 %254 #s(literal -1 binary32))
(+.f32 %117 %322)
(+.f32 %117 %324)
(+.f32 maxCos %319)
(neg.f32 %342)
%344
(*.f32 ux %312)
(/.f32 #s(literal 1 binary32) (pow.f32 %344 #s(literal -1 binary32)))
(fma.f32 %254 ux %196)
(fma.f32 maxCos ux %349)
(fma.f32 maxCos ux %351)
(fma.f32 ux %254 %218)
(fma.f32 ux maxCos %349)
(fma.f32 ux maxCos %351)
(pow.f32 %344 #s(literal 1 binary32))
(+.f32 (*.f32 ux %254) %218)
(+.f32 (*.f32 %254 ux) %196)
(+.f32 %57 %349)
(+.f32 %57 %351)
(neg.f32 (*.f32 %342 ux))
(neg.f32 (*.f32 ux %342))
#s(literal 1/2 binary32)
(*.f32 %16 #s(literal 2 binary32))
(*.f32 #s(literal 2 binary32) %16)
(/.f32 #s(literal 1 binary32) (pow.f32 %19 #s(literal -1 binary32)))
(-.f32 %16 %371)
(pow.f32 %19 #s(literal 1 binary32))
(+.f32 %16 (neg.f32 %371))
%19
(neg.f32 (-.f32 %371 %16))
%18
%20
%21
%22
%23
%24
%26
%27
%28
%29
%30
(/.f32 (fma.f32 %378 #s(literal 2 binary32) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %381 #s(literal -1 binary32)))
(-.f32 %387 (*.f32 %384 #s(literal 1 binary32)))
(-.f32 %390 %391)
(-.f32 %167 %49)
%381
(-.f32 %57 (-.f32 #s(literal -1 binary32) %43))
(-.f32 %57 (+.f32 #s(literal -1 binary32) ux))
(-.f32 %57 %54)
(-.f32 %46 %190)
(-.f32 #s(literal 1 binary32) (-.f32 %190 %43))
(-.f32 #s(literal 1 binary32) %402)
(fma.f32 %404 %384 %406)
(fma.f32 #s(literal 0 binary32) %386 %390)
(fma.f32 maxCos ux %46)
(fma.f32 ux maxCos %46)
(fma.f32 #s(literal 1 binary32) %381 %412)
(pow.f32 %381 #s(literal 1 binary32))
(+.f32 (*.f32 %404 %384) %406)
(+.f32 %390 %412)
(+.f32 %391 %390)
(+.f32 %43 %167)
(+.f32 %378 #s(literal 1 binary32))
(+.f32 %167 %43)
(+.f32 %57 %46)
(+.f32 %46 (*.f32 %49 maxCos))
(+.f32 %46 %270)
(+.f32 %46 %57)
(+.f32 #s(literal 1 binary32) (-.f32 %43 %190))
(+.f32 #s(literal 1 binary32) %378)
(sin.f32 (+.f32 %430 %431))
(sin.f32 (+.f32 %434 %16))
(sin.f32 %437)
(cos.f32 (fabs.f32 %430))
(cos.f32 %441)
(cos.f32 %443)
(cos.f32 %430)
(neg.f32 %384)
(/.f32 (fma.f32 %57 #s(literal 2 binary32) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %167 #s(literal -1 binary32)))
(-.f32 %57 #s(literal -1 binary32))
(-.f32 #s(literal 1 binary32) %190)
%167
(fma.f32 ux maxCos #s(literal 1 binary32))
(pow.f32 %167 #s(literal 1 binary32))
(+.f32 %57 #s(literal 1 binary32))
(+.f32 #s(literal 1 binary32) %267)
(+.f32 #s(literal 1 binary32) %270)
(+.f32 #s(literal 1 binary32) %57)
(neg.f32 %250)
(/.f32 #s(literal 1 binary32) (pow.f32 %378 #s(literal -1 binary32)))
(-.f32 %57 %49)
%378
(fma.f32 maxCos ux %43)
(fma.f32 ux maxCos %43)
(pow.f32 %378 #s(literal 1 binary32))
(+.f32 %43 %270)
(+.f32 %43 %57)
(+.f32 %57 %43)
(neg.f32 %402)
(*.f32 %470 ux)
(/.f32 #s(literal 1 binary32) (pow.f32 %402 #s(literal -1 binary32)))
(-.f32 ux %267)
(-.f32 ux %270)
%402
(fma.f32 %67 ux %49)
(fma.f32 %67 ux ux)
(fma.f32 %43 maxCos %49)
(fma.f32 %43 maxCos ux)
(fma.f32 maxCos %43 %49)
(fma.f32 maxCos %43 ux)
(fma.f32 ux %67 %49)
(fma.f32 ux %67 ux)
(pow.f32 %402 #s(literal 1 binary32))
(+.f32 %190 %49)
(+.f32 %190 ux)
(+.f32 ux %190)
(neg.f32 %378)
(/.f32 (-.f32 (*.f32 %402 #s(literal 2 binary32)) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %384 #s(literal -1 binary32)))
(-.f32 %387 (*.f32 %381 #s(literal 1 binary32)))
(-.f32 %496 %391)
(-.f32 %190 %46)
(-.f32 %54 %57)
(-.f32 %402 #s(literal 1 binary32))
%384
(fma.f32 %404 %381 %406)
(fma.f32 %470 ux #s(literal -1 binary32))
(fma.f32 %67 ux %54)
(fma.f32 %43 maxCos %54)
(fma.f32 #s(literal 0 binary32) %386 %496)
(fma.f32 maxCos %43 %54)
(fma.f32 ux %67 %54)
(fma.f32 #s(literal 1 binary32) %384 %412)
(pow.f32 %384 #s(literal 1 binary32))
(+.f32 (*.f32 %404 %381) %406)
(+.f32 %496 %412)
(+.f32 %391 %496)
(+.f32 %250 %49)
(+.f32 %250 ux)
(+.f32 %190 %54)
(+.f32 %54 %190)
(+.f32 #s(literal -1 binary32) %402)
(+.f32 %402 #s(literal -1 binary32))
(+.f32 ux %250)
(sin.f32 (+.f32 %521 %431))
(sin.f32 (+.f32 %437 %16))
(sin.f32 %434)
(cos.f32 (fabs.f32 %521))
(cos.f32 %529)
(cos.f32 %531)
(cos.f32 %521)
(neg.f32 %381)
(/.f32 (-.f32 (*.f32 %384 #s(literal 2 binary32)) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %539 #s(literal -1 binary32)))
(-.f32 %542 %57)
(-.f32 %384 #s(literal 1 binary32))
(-.f32 %402 #s(literal 2 binary32))
%539
(fma.f32 %470 ux #s(literal -2 binary32))
(fma.f32 %67 ux %548)
(fma.f32 %43 maxCos %548)
(fma.f32 maxCos %43 %548)
(fma.f32 ux %67 %548)
(pow.f32 %539 #s(literal 1 binary32))
(+.f32 %554 %49)
(+.f32 %190 %548)
(+.f32 #s(literal -2 binary32) %402)
(+.f32 %402 #s(literal -2 binary32))
(+.f32 ux (fma.f32 %67 ux #s(literal -2 binary32)))
(+.f32 ux (-.f32 %190 #s(literal 2 binary32)))
(+.f32 ux %554)
(neg.f32 %564)
%567
%568
%569
%564
%571
%573
%574
%575
%576
%577
%578
%579
%580
%581
%582
%583
%584
%585
%586
(/.f32 (-.f32 (*.f32 %521 #s(literal -2 binary32)) %371) #s(literal -2 binary32))
(/.f32 (-.f32 (*.f32 %521 #s(literal 2 binary32)) %16) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %437 #s(literal -1 binary32)))
(-.f32 (fabs.f32 (remainder.f32 %531 %19)) %431)
(-.f32 %521 %431)
(-.f32 %431 %430)
(fma.f32 %16 #s(literal 1/2 binary32) %441)
(pow.f32 %437 #s(literal 1 binary32))
%437
(+.f32 %431 %441)
(neg.f32 %434)
(/.f32 (-.f32 (*.f32 %430 #s(literal -2 binary32)) %371) #s(literal -2 binary32))
(/.f32 (-.f32 (*.f32 %430 #s(literal 2 binary32)) %16) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %434 #s(literal -1 binary32)))
(-.f32 (fabs.f32 (remainder.f32 %443 %19)) %431)
(-.f32 %431 %521)
(-.f32 %430 %431)
(fma.f32 %16 #s(literal 1/2 binary32) %529)
(pow.f32 %434 #s(literal 1 binary32))
%434
(+.f32 %431 %529)
(neg.f32 %437)
(/.f32 #s(literal 1 binary32) (pow.f32 %621 #s(literal -1 binary32)))
(-.f32 %624 %430)
(-.f32 %431 %626)
(-.f32 %437 %629)
(-.f32 %437 %631)
(-.f32 %437 %634)
(-.f32 %437 %637)
(-.f32 %437 %639)
(-.f32 %20 %434)
(fma.f32 %17 #s(literal 2 binary32) %437)
%621
(fma.f32 %16 %5 %437)
(fma.f32 %5 %16 %437)
(fma.f32 #s(literal 2 binary32) %17 %437)
(fma.f32 uy %19 %437)
(pow.f32 %621 #s(literal 1 binary32))
(+.f32 %437 %20)
(+.f32 %20 %437)
(neg.f32 %650)
(/.f32 (fma.f32 %653 #s(literal 2 binary32) %657) #s(literal 2 binary32))
(/.f32 (fma.f32 %653 #s(literal 2 binary32) %662) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %654 #s(literal -1 binary32)))
(-.f32 (*.f32 #s(literal 1 binary32) %654) (*.f32 #s(literal 0 binary32) (sin.f32 %626)))
(-.f32 (*.f32 %381 %671) %674)
(-.f32 (*.f32 %381 %676) %679)
(-.f32 (*.f32 %381 %681) %684)
(-.f32 (*.f32 %381 %686) %689)
(-.f32 %653 %692)
(-.f32 %653 %695)
(-.f32 %697 (*.f32 %698 %381))
(-.f32 %697 (neg.f32 %653))
(-.f32 %697 %703)
(fma.f32 %710 %716 %653)
(fma.f32 %718 %719 %653)
(fma.f32 %722 #s(literal 1/2 binary32) %653)
(fma.f32 %724 #s(literal 2 binary32) %653)
(fma.f32 #s(literal 4 binary32) %726 %653)
(fma.f32 %652 %381 %697)
(fma.f32 %386 %35 %653)
(fma.f32 %381 %652 %697)
(fma.f32 %35 %386 %653)
(fma.f32 #s(literal 1 binary32) %732 %653)
(pow.f32 %654 #s(literal 1 binary32))
(+.f32 %653 %697)
(+.f32 %697 %653)
(sin.f32 (+.f32 %626 %431))
(sin.f32 (+.f32 %739 %431))
%654
(cos.f32 (neg.f32 %626))
(cos.f32 (neg.f32 %739))
(cos.f32 (fabs.f32 %626))
(cos.f32 (fabs.f32 %739))
(cos.f32 %626)
(cos.f32 %739)
(neg.f32 (sin.f32 %650))
(/.f32 #s(literal 1 binary32) (pow.f32 %660 #s(literal -1 binary32)))
(-.f32 %624 %521)
(-.f32 %431 %757)
(-.f32 %434 %629)
(-.f32 %434 %631)
(-.f32 %434 %634)
(-.f32 %434 %637)
(-.f32 %434 %639)
(-.f32 %20 %437)
(fma.f32 %17 #s(literal 2 binary32) %434)
%660
(fma.f32 %16 %5 %434)
(fma.f32 %5 %16 %434)
(fma.f32 #s(literal 2 binary32) %17 %434)
(fma.f32 uy %19 %434)
(pow.f32 %660 #s(literal 1 binary32))
(+.f32 %434 %20)
(+.f32 %20 %434)
(neg.f32 %773)
(/.f32 (fma.f32 %703 #s(literal 2 binary32) %657) #s(literal 2 binary32))
(/.f32 (fma.f32 %703 #s(literal 2 binary32) %662) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %661 #s(literal -1 binary32)))
(-.f32 (*.f32 #s(literal 1 binary32) (cos.f32 %757)) (*.f32 #s(literal 0 binary32) (sin.f32 %757)))
(-.f32 (*.f32 %384 %671) %674)
(-.f32 (*.f32 %384 %676) %679)
(-.f32 (*.f32 %384 %681) %684)
(-.f32 (*.f32 %384 %686) %689)
(-.f32 %703 %692)
(-.f32 %703 %695)
(-.f32 %697 (*.f32 %698 %384))
(-.f32 %697 (neg.f32 %703))
(-.f32 %697 %653)
(fma.f32 %710 %716 %703)
(fma.f32 %718 %719 %703)
(fma.f32 %722 #s(literal 1/2 binary32) %703)
(fma.f32 %724 #s(literal 2 binary32) %703)
(fma.f32 #s(literal 4 binary32) %726 %703)
(fma.f32 %652 %384 %697)
(fma.f32 %386 %35 %703)
(fma.f32 %35 %386 %703)
(fma.f32 %384 %652 %697)
(fma.f32 #s(literal 1 binary32) %732 %703)
(pow.f32 %661 #s(literal 1 binary32))
(+.f32 %703 %697)
(+.f32 %697 %703)
%661
(neg.f32 (sin.f32 %773))
(*.f32 %709 %714)
(*.f32 %721 #s(literal 2 binary32))
(*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (/.f32 (-.f32 %621 %818) #s(literal 2 binary32))) (cos.f32 (/.f32 (+.f32 %621 %818) #s(literal 2 binary32)))))
(*.f32 #s(literal 2 binary32) %721)
(/.f32 (+.f32 %662 %832) #s(literal 2 binary32))
(/.f32 (fma.f32 %832 #s(literal 2 binary32) (*.f32 %832 #s(literal 2 binary32))) #s(literal 4 binary32))
(/.f32 (+.f32 %832 %832) #s(literal 2 binary32))
(/.f32 (fma.f32 %832 #s(literal 2 binary32) %840) #s(literal 4 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %662 #s(literal -1 binary32)))
(-.f32 %661 (sin.f32 (neg.f32 %621)))
(-.f32 %654 %849)
(fma.f32 %710 %716 %851)
(fma.f32 %710 %716 %853)
(fma.f32 %710 %716 %855)
(fma.f32 %718 %719 %851)
(fma.f32 %718 %719 %853)
(fma.f32 %718 %719 %855)
(fma.f32 %722 #s(literal 1/2 binary32) %851)
(fma.f32 %722 #s(literal 1/2 binary32) %853)
(fma.f32 %722 #s(literal 1/2 binary32) %855)
(fma.f32 %724 #s(literal 2 binary32) %851)
(fma.f32 %724 #s(literal 2 binary32) %853)
(fma.f32 %724 #s(literal 2 binary32) %855)
(fma.f32 #s(literal 4 binary32) %726 %851)
(fma.f32 #s(literal 4 binary32) %726 %853)
(fma.f32 #s(literal 4 binary32) %726 %855)
(fma.f32 %714 %708 %721)
(fma.f32 %708 %714 %721)
(fma.f32 %386 %35 %851)
(fma.f32 %386 %35 %853)
(fma.f32 %386 %35 %855)
(fma.f32 %35 %386 %851)
(fma.f32 %35 %386 %853)
(fma.f32 %35 %386 %855)
(fma.f32 #s(literal 1 binary32) %732 %851)
(fma.f32 #s(literal 1 binary32) %732 %853)
(fma.f32 #s(literal 1 binary32) %732 %855)
(pow.f32 %662 #s(literal 1 binary32))
(+.f32 (+.f32 %661 %697) %653)
(+.f32 (+.f32 %654 %697) %703)
(+.f32 %721 %721)
(+.f32 %697 %851)
(+.f32 %697 %853)
(+.f32 %697 %855)
%662
(+.f32 %654 (neg.f32 %849))
(+.f32 %654 %661)
(neg.f32 (-.f32 %849 %654))
%894
(*.f32 #s(literal 1/2 binary32) %662)
(*.f32 #s(literal 1 binary32) %721)
(*.f32 #s(literal 2 binary32) (*.f32 %721 #s(literal 1/2 binary32)))
(/.f32 %840 #s(literal 4 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %894 #s(literal -1 binary32)))
(fma.f32 %661 #s(literal 1/2 binary32) %902)
(fma.f32 %654 #s(literal 1/2 binary32) %904)
(fma.f32 #s(literal 1/2 binary32) %661 %906)
(fma.f32 #s(literal 1/2 binary32) %654 %908)
(pow.f32 %894 #s(literal 1 binary32))
(+.f32 %908 %906)
(+.f32 %906 %908)
(+.f32 %904 %902)
(+.f32 %902 %904)
%34
%37
%39
%40
%41
%35
(*.f32 %925 %925)
(*.f32 %924 %924)
(/.f32 #s(literal 1 binary32) (pow.f32 %923 #s(literal -1 binary32)))
(sqrt.f32 %930)
%923
(pow.f32 %930 #s(literal 1/2 binary32))
(pow.f32 %924 #s(literal 2 binary32))
(pow.f32 %923 #s(literal 1 binary32))
(fabs.f32 (*.f32 %925 %924))
(fabs.f32 (*.f32 %924 %925))
(fabs.f32 %923)
(/.f32 #s(literal 1 binary32) (pow.f32 %940 #s(literal -1 binary32)))
%940
(pow.f32 %940 #s(literal 1 binary32))
(/.f32 (fma.f32 %167 #s(literal 2 binary32) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %538 #s(literal -1 binary32)))
(-.f32 %57 #s(literal -2 binary32))
(-.f32 #s(literal 2 binary32) %190)
%538
(fma.f32 ux maxCos #s(literal 2 binary32))
(pow.f32 %538 #s(literal 1 binary32))
(+.f32 %167 #s(literal 1 binary32))
(+.f32 %57 #s(literal 2 binary32))
(+.f32 #s(literal 1 binary32) %167)
(+.f32 #s(literal 2 binary32) %57)
(neg.f32 (-.f32 #s(literal -2 binary32) %57))
%567
%568
%569
%564
%571
%573
%574
%575
%576
%577
%578
%579
%580
%581
%582
%583
%584
%585
%586
(*.f32 %960 %960)
(*.f32 %959 %959)
(/.f32 #s(literal 1 binary32) (pow.f32 %958 #s(literal -1 binary32)))
(sqrt.f32 %965)
(pow.f32 (*.f32 %965 %965) #s(literal 1/4 binary32))
(pow.f32 %965 #s(literal 1/2 binary32))
(pow.f32 %959 #s(literal 2 binary32))
(pow.f32 %958 #s(literal 1 binary32))
(fabs.f32 (-.f32 %190 %547))
(fabs.f32 (-.f32 %49 %538))
(fabs.f32 (-.f32 %570 %57))
(fabs.f32 (-.f32 %572 %57))
(fabs.f32 (-.f32 %548 %57))
(fabs.f32 (-.f32 %57 %542))
(fabs.f32 (-.f32 #s(literal 1 binary32) %384))
(fabs.f32 (neg.f32 %958))
(fabs.f32 (*.f32 %960 %959))
(fabs.f32 (*.f32 %959 %960))
(fabs.f32 %958)
%958
(fabs.f32 %539)
(*.f32 %995 %995)
(/.f32 #s(literal 1 binary32) (pow.f32 %959 #s(literal -1 binary32)))
%959
(pow.f32 %965 #s(literal 1/4 binary32))
(pow.f32 %959 #s(literal 1 binary32))
(pow.f32 %958 #s(literal 1/2 binary32))
(fabs.f32 (neg.f32 %960))
(fabs.f32 %960)
(fabs.f32 %959)
(*.f32 (fabs.f32 %470) (fabs.f32 ux))
(*.f32 %1011 %1011)
(*.f32 %1010 %1010)
(/.f32 #s(literal 1 binary32) (pow.f32 %1009 #s(literal -1 binary32)))
(sqrt.f32 %1016)
(pow.f32 (*.f32 %1016 %1016) #s(literal 1/4 binary32))
(pow.f32 %1016 #s(literal 1/2 binary32))
(pow.f32 %1010 #s(literal 2 binary32))
(pow.f32 %1009 #s(literal 1 binary32))
(fabs.f32 (-.f32 %267 ux))
(fabs.f32 (-.f32 %270 ux))
(fabs.f32 (-.f32 %49 %57))
(fabs.f32 (neg.f32 %1009))
(fabs.f32 (*.f32 %1011 %1010))
(fabs.f32 (*.f32 %1010 %1011))
(fabs.f32 %1009)
%1009
(fabs.f32 %378)
(*.f32 %1037 %1037)
(/.f32 #s(literal 1 binary32) (pow.f32 %1010 #s(literal -1 binary32)))
%1010
(pow.f32 %1016 #s(literal 1/4 binary32))
(pow.f32 %1010 #s(literal 1 binary32))
(pow.f32 %1009 #s(literal 1/2 binary32))
(fabs.f32 (neg.f32 %1011))
(fabs.f32 %1011)
(fabs.f32 %1010)
%1048
(*.f32 %35 %959)
(/.f32 #s(literal 1 binary32) (pow.f32 %1048 #s(literal -1 binary32)))
(pow.f32 %1048 #s(literal 1 binary32))
%1054
%1056
%1059
%1060
%1061
%1062
%1063
%1065
%1066
(*.f32 %1067 %1067)
(*.f32 %1058 %1058)
(*.f32 %1009 %958)
%1057
(*.f32 %402 %564)
(*.f32 %378 %539)
(/.f32 #s(literal 1 binary32) (pow.f32 %1057 #s(literal -1 binary32)))
(sqrt.f32 %1075)
(sqrt.f32 %1077)
(fma.f32 %538 %402 %1079)
(fma.f32 %564 ux %1081)
(fma.f32 %402 %538 %1083)
(fma.f32 %402 %57 %1085)
(fma.f32 %57 %402 %1087)
(fma.f32 ux %564 %1089)
(pow.f32 %1075 #s(literal 1/2 binary32))
(pow.f32 %1077 #s(literal 1/2 binary32))
(pow.f32 %1058 #s(literal 2 binary32))
(pow.f32 %1057 #s(literal 1 binary32))
(+.f32 (*.f32 %564 ux) %1081)
(+.f32 (*.f32 %402 %538) %1083)
(+.f32 (*.f32 %402 %57) %1085)
(+.f32 (*.f32 ux %564) %1089)
(+.f32 (*.f32 %538 %402) %1079)
(+.f32 (*.f32 %57 %402) %1087)
(fabs.f32 (*.f32 %1009 %564))
(fabs.f32 (*.f32 %1009 %539))
(fabs.f32 (*.f32 %402 %958))
(fabs.f32 (*.f32 %378 %958))
(fabs.f32 (*.f32 %1067 %1058))
(fabs.f32 (*.f32 %1058 %1067))
(fabs.f32 %1119)
(fabs.f32 %1121)
(fabs.f32 %1057)
(neg.f32 %1119)
(neg.f32 (*.f32 %564 %378))
(neg.f32 %1121)
(*.f32 %1128 %1128)
(*.f32 %1010 %959)
(*.f32 %959 %1010)
(/.f32 #s(literal 1 binary32) (pow.f32 %1058 #s(literal -1 binary32)))
(sqrt.f32 %1134)
%1058
(pow.f32 %1077 #s(literal 1/4 binary32))
(pow.f32 (*.f32 %965 %1016) #s(literal 1/4 binary32))
(pow.f32 %1134 #s(literal 1/2 binary32))
(pow.f32 %1058 #s(literal 1 binary32))
(pow.f32 %1057 #s(literal 1/2 binary32))
(fabs.f32 (neg.f32 %1067))
(fabs.f32 (*.f32 %1011 %960))
(fabs.f32 (*.f32 %1011 %959))
(fabs.f32 (*.f32 %1010 %960))
(fabs.f32 (*.f32 %960 %1011))
(fabs.f32 (*.f32 %960 %1010))
(fabs.f32 (*.f32 %959 %1011))
(fabs.f32 %1067)
(fabs.f32 %1058)
%1054
%1056
%1059
%1060
%1061
%1062
%1063
%1065
%1066
(*.f32 %1158 %1158)
(/.f32 #s(literal 1 binary32) (pow.f32 %924 #s(literal -1 binary32)))
%924
(pow.f32 %924 #s(literal 1 binary32))
(pow.f32 %923 #s(literal 1/2 binary32))
(fabs.f32 (neg.f32 %925))
(fabs.f32 %925)
(fabs.f32 %924)
%1168
(*.f32 %16 %924)
(/.f32 #s(literal 1 binary32) (pow.f32 %1168 #s(literal -1 binary32)))
(pow.f32 %1168 #s(literal 1 binary32))
(*.f32 %1173 %16)
%1175
(*.f32 %1168 uy)
(*.f32 %924 %17)
(*.f32 %16 %1178)
(*.f32 uy %1168)
(/.f32 #s(literal 1 binary32) (pow.f32 %1175 #s(literal -1 binary32)))
(pow.f32 %1175 #s(literal 1 binary32))
(*.f32 (*.f32 %5 %924) %16)
(*.f32 %1186 uy)
(*.f32 %17 (*.f32 %924 #s(literal 2 binary32)))
(*.f32 %17 (+.f32 %924 %924))
(*.f32 %1175 #s(literal 2 binary32))
(*.f32 %1168 %5)
%1194
(*.f32 %20 %924)
(*.f32 %5 %1168)
(*.f32 #s(literal 2 binary32) %1175)
(*.f32 uy (*.f32 %1168 #s(literal 2 binary32)))
(*.f32 uy %1186)
(*.f32 uy (fma.f32 %924 %16 %1168))
(/.f32 #s(literal 1 binary32) (pow.f32 %1194 #s(literal -1 binary32)))
(-.f32 %1175 (*.f32 %1205 %924))
(-.f32 %1175 (*.f32 (neg.f32 %1168) uy))
(-.f32 %1175 (*.f32 %636 %1168))
(-.f32 %1175 (neg.f32 %1175))
(fma.f32 %1173 %16 %1175)
(fma.f32 %17 %924 %1175)
(fma.f32 %1175 #s(literal 1 binary32) %1217)
(fma.f32 %1168 uy %1175)
(fma.f32 %924 %17 %1175)
(fma.f32 #s(literal 1 binary32) %1175 %1221)
(fma.f32 %16 %1178 %1175)
(fma.f32 uy %1168 %1175)
(pow.f32 %1194 #s(literal 1 binary32))
(+.f32 %1217 %1217)
(+.f32 %1221 %1221)
(+.f32 %1175 %1175)
(/.f32 #s(literal 1 binary32) (pow.f32 %1238 #s(literal -1 binary32)))
%1238
(pow.f32 %1238 #s(literal 1 binary32))
(*.f32 %1243 %1243)
(*.f32 %1245 %1245)
(*.f32 %1248 %1248)
(*.f32 %1242 %1242)
(*.f32 %1247 %1247)
%1252
(/.f32 #s(literal 1 binary32) (pow.f32 %1252 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (pow.f32 %940 #s(literal -2 binary32)))
(pow.f32 %1242 #s(literal 2 binary32))
(pow.f32 %1247 #s(literal 2 binary32))
(pow.f32 %1252 #s(literal 1 binary32))
(pow.f32 %940 #s(literal 2 binary32))
(fabs.f32 %1252)
(*.f32 %1264 %1264)
(*.f32 %1263 %1263)
(/.f32 (fma.f32 %1267 #s(literal 2 binary32) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 (+.f32 (cos.f32 (+.f32 %1270 %1270)) (cos.f32 (-.f32 %1270 %1270))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %1277 %1277)) (cos.f32 (+.f32 %1277 %1277))) #s(literal 2 binary32))
(/.f32 (+.f32 (sin.f32 (-.f32 %1277 %1270)) (sin.f32 (+.f32 %1277 %1270))) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %1262 #s(literal -1 binary32)))
(sqrt.f32 %1292)
(-.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %1277))))
(-.f32 #s(literal 1 binary32) (*.f32 %1298 %1298))
(-.f32 #s(literal 1 binary32) (neg.f32 %1267))
%1262
(fma.f32 %1247 %940 #s(literal 1 binary32))
(fma.f32 %940 %1247 #s(literal 1 binary32))
(pow.f32 %1292 #s(literal 1/2 binary32))
(pow.f32 %1263 #s(literal 2 binary32))
(pow.f32 %1262 #s(literal 1 binary32))
(+.f32 %1267 #s(literal 1 binary32))
(+.f32 #s(literal 1/2 binary32) (*.f32 #s(literal 1/2 binary32) (cos.f32 (*.f32 #s(literal 2 binary32) %1270))))
(+.f32 #s(literal 1 binary32) %1267)
(fabs.f32 (*.f32 %1264 %1263))
(fabs.f32 (*.f32 %1263 %1264))
(fabs.f32 %1262)
(neg.f32 (fma.f32 %940 %940 #s(literal -1 binary32)))
(*.f32 %1321 %1321)
(/.f32 #s(literal 1 binary32) (pow.f32 %1263 #s(literal -1 binary32)))
%1263
(pow.f32 %1263 #s(literal 1 binary32))
(pow.f32 %1262 #s(literal 1/2 binary32))
(sin.f32 (+.f32 %1270 %431))
(sin.f32 (acos.f32 %1242))
(sin.f32 (acos.f32 %1247))
(sin.f32 %1277)
(fabs.f32 (neg.f32 %1264))
(fabs.f32 %1264)
(fabs.f32 %1263)
(cos.f32 (neg.f32 %1270))
(cos.f32 (fabs.f32 %1270))
(cos.f32 (asin.f32 %1242))
(cos.f32 (asin.f32 %1247))
(cos.f32 %1270)
%1347
(*.f32 %16 %1263)
(/.f32 #s(literal 1 binary32) (pow.f32 %1347 #s(literal -1 binary32)))
(pow.f32 %1347 #s(literal 1 binary32))
(*.f32 %1352 %16)
%1354
(*.f32 %1347 uy)
(*.f32 %1263 %17)
(*.f32 %16 %1357)
(*.f32 uy %1347)
(/.f32 #s(literal 1 binary32) (pow.f32 %1354 #s(literal -1 binary32)))
(pow.f32 %1354 #s(literal 1 binary32))
(*.f32 (*.f32 %5 %1263) %16)
(*.f32 %1365 uy)
(*.f32 %17 (*.f32 %1263 #s(literal 2 binary32)))
(*.f32 %17 (+.f32 %1263 %1263))
(*.f32 %1354 #s(literal 2 binary32))
(*.f32 %1347 %5)
%1373
(*.f32 %20 %1263)
(*.f32 %5 %1347)
(*.f32 #s(literal 2 binary32) %1354)
(*.f32 uy (*.f32 %1347 #s(literal 2 binary32)))
(*.f32 uy %1365)
(*.f32 uy (fma.f32 %1263 %16 %1347))
(/.f32 #s(literal 1 binary32) (pow.f32 %1373 #s(literal -1 binary32)))
(-.f32 %1354 (*.f32 %1205 %1263))
(-.f32 %1354 (*.f32 (neg.f32 %1347) uy))
(-.f32 %1354 (*.f32 %636 %1347))
(-.f32 %1354 (neg.f32 %1354))
(fma.f32 %1352 %16 %1354)
(fma.f32 %17 %1263 %1354)
(fma.f32 %1354 #s(literal 1 binary32) %1395)
(fma.f32 %1347 uy %1354)
(fma.f32 %1263 %17 %1354)
(fma.f32 #s(literal 1 binary32) %1354 %1399)
(fma.f32 %16 %1357 %1354)
(fma.f32 uy %1347 %1354)
(pow.f32 %1373 #s(literal 1 binary32))
(+.f32 %1395 %1395)
(+.f32 %1399 %1399)
(+.f32 %1354 %1354)
(/.f32 #s(literal 1 binary32) (pow.f32 %1407 #s(literal -1 binary32)))
%1407
(pow.f32 %1407 #s(literal 1 binary32))

reconstruct23.0ms (0.6%)

Memory
-30.0MiB live, 33.1MiB allocated; 10ms collecting garbage

eval121.0ms (2.9%)

Memory
21.5MiB live, 141.9MiB allocated; 20ms collecting garbage
Compiler

Compiled 44 897 to 6 781 computations (84.9% saved)

prune70.0ms (1.7%)

Memory
4.2MiB live, 129.5MiB allocated; 9ms collecting garbage
Pruning

75 alts after pruning (75 fresh and 0 done)

PrunedKeptTotal
New1 222491 271
Fresh232649
Picked505
Done000
Total1 250751 325
Accuracy
99.8%
Counts
1 325 → 75
Alt Table
Click to see full alt table
StatusAccuracyProgram
35.3%
%0 = (PI.f32 )
%1 = (+.f32 %0 %0)
%6 = (fma.f32 maxCos ux #s(literal 1 binary32))
(/.f32 (-.f32 (cos.f32 (fma.f32 %1 uy (neg.f32 (acos.f32 (-.f32 %6 ux))))) (cos.f32 (fma.f32 %1 uy (+.f32 (asin.f32 (-.f32 ux %6)) (*.f32 %0 #s(literal 1/2 binary32)))))) #s(literal 2 binary32))
34.7%
%0 = (PI.f32 )
%1 = (+.f32 %0 %0)
%9 = (acos.f32 (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32))))
(/.f32 (-.f32 (cos.f32 (-.f32 (*.f32 %1 uy) %9)) (cos.f32 (fma.f32 %1 uy %9))) #s(literal 2 binary32))
41.7%
%1 = (PI.f32 )
%2 = (+.f32 %1 %1)
%9 = (-.f32 (fma.f32 maxCos ux #s(literal 1 binary32)) ux)
%10 = (acos.f32 %9)
%12 = (fma.f32 %2 uy %10)
(/.f32 (*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (*.f32 (-.f32 (-.f32 (*.f32 %2 uy) %10) %12) #s(literal 1/2 binary32))) (cos.f32 (/.f32 (+.f32 (fma.f32 %2 uy (asin.f32 %9)) (fma.f32 #s(literal 1/2 binary32) %1 %12)) #s(literal 2 binary32))))) #s(literal 2 binary32))
98.1%
%10 = (PI.f32 )
(/.f32 #s(literal 1 binary32) (pow.f32 (*.f32 (sqrt.f32 (*.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux) (-.f32 ux (*.f32 maxCos ux)))) (sin.f32 (*.f32 (+.f32 %10 %10) uy))) #s(literal -1 binary32)))
98.3%
%3 = (-.f32 ux (*.f32 maxCos ux))
%12 = (PI.f32 )
(*.f32 (pow.f32 (*.f32 %3 %3) #s(literal 1/4 binary32)) (*.f32 (sqrt.f32 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux))) (sin.f32 (*.f32 (+.f32 %12 %12) uy))))
98.3%
%1 = (PI.f32 )
%12 = (-.f32 ux (*.f32 maxCos ux))
(*.f32 (/.f32 #s(literal 1 binary32) (pow.f32 (sin.f32 (*.f32 (+.f32 %1 %1) uy)) #s(literal -1 binary32))) (sqrt.f32 (*.f32 %12 (neg.f32 (-.f32 %12 #s(literal 2 binary32))))))
34.8%
%5 = (acos.f32 (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux)))
%6 = (PI.f32 )
(*.f32 (-.f32 (cos.f32 (-.f32 %5 (*.f32 %6 (+.f32 uy uy)))) (cos.f32 (fma.f32 (+.f32 %6 %6) uy %5))) #s(literal 1/2 binary32))
35.0%
(*.f32 (+.f32 (sin.f32 (fma.f32 #s(literal 13176795/2097152 binary32) uy (asin.f32 (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux))))) (sin.f32 (fma.f32 #s(literal 13176795/2097152 binary32) uy (asin.f32 (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32))))))) #s(literal 1/2 binary32))
97.7%
%6 = (sqrt.f32 (sqrt.f32 (fabs.f32 (-.f32 ux (*.f32 maxCos ux)))))
%13 = (PI.f32 )
(*.f32 (*.f32 %6 %6) (*.f32 (sqrt.f32 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux))) (sin.f32 (*.f32 (+.f32 %13 %13) uy))))
98.1%
%6 = (PI.f32 )
(*.f32 (*.f32 (sqrt.f32 (fabs.f32 (-.f32 ux (*.f32 maxCos ux)))) (sin.f32 (*.f32 (+.f32 %6 %6) uy))) (sqrt.f32 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux))))
98.3%
%3 = (*.f32 (PI.f32 ) uy)
%11 = (-.f32 ux (*.f32 maxCos ux))
(*.f32 (*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 %3) (cos.f32 %3))) (sqrt.f32 (*.f32 %11 (neg.f32 (-.f32 %11 #s(literal 2 binary32))))))
98.4%
%9 = (PI.f32 )
(*.f32 (sqrt.f32 (*.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux) (-.f32 ux (*.f32 maxCos ux)))) (sin.f32 (*.f32 (+.f32 %9 %9) uy)))
97.3%
%11 = (sqrt.f32 (sqrt.f32 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux))))
%13 = (PI.f32 )
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (*.f32 (*.f32 %11 %11) (sin.f32 (*.f32 (+.f32 %13 %13) uy))))
98.2%
%15 = (PI.f32 )
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (*.f32 (sqrt.f32 (/.f32 #s(literal 1 binary32) (pow.f32 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux)) #s(literal -1 binary32)))) (sin.f32 (*.f32 (+.f32 %15 %15) uy))))
98.2%
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (*.f32 (sqrt.f32 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux))) (sin.f32 (*.f32 #s(literal 13176795/2097152 binary32) uy))))
98.2%
%19 = (PI.f32 )
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (*.f32 (sqrt.f32 (fabs.f32 (-.f32 (approx (+ (* maxCos ux) 2) (*.f32 maxCos (+.f32 ux (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1 binary32) maxCos))))) ux))) (sin.f32 (*.f32 (+.f32 %19 %19) uy))))
98.2%
%12 = (PI.f32 )
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (*.f32 (sqrt.f32 (fabs.f32 (-.f32 #s(literal 1 binary32) (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32)))))) (sin.f32 (*.f32 (+.f32 %12 %12) uy))))
90.1%
%13 = (sqrt.f32 #s(literal 2 binary32))
%22 = (PI.f32 )
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (*.f32 (approx (sqrt (fabs (- (+ (* maxCos ux) 2) ux))) (+.f32 %13 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 ux (-.f32 maxCos #s(literal 1 binary32))) %13)))) (sin.f32 (*.f32 (+.f32 %22 %22) uy))))
77.5%
%15 = (PI.f32 )
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (*.f32 (approx (sqrt (fabs (- (+ (* maxCos ux) 2) ux))) (sqrt.f32 #s(literal 2 binary32))) (sin.f32 (*.f32 (+.f32 %15 %15) uy))))
90.0%
%2 = (*.f32 maxCos ux)
%12 = (PI )
%21 = (PI.f32 )
%27 = (sqrt.f32 (fabs.f32 (-.f32 (+.f32 #s(literal 2 binary32) %2) ux)))
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 %2 ux))) (approx (* (sqrt (fabs (- (+ (* maxCos ux) 2) ux))) (sin (* (+ %12 %12) uy))) (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (*.f32 (pow.f32 %21 #s(literal 3 binary32)) %27)) (*.f32 #s(literal 2 binary32) (*.f32 %21 %27))))))
81.8%
%2 = (*.f32 maxCos ux)
%12 = (PI )
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 %2 ux))) (approx (* (sqrt (fabs (- (+ (* maxCos ux) 2) ux))) (sin (* (+ %12 %12) uy))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (fabs.f32 (-.f32 (+.f32 #s(literal 2 binary32) %2) ux))))))))
98.3%
%1 = (PI.f32 )
%12 = (-.f32 ux (*.f32 maxCos ux))
(*.f32 (sin.f32 (/.f32 #s(literal 1 binary32) (pow.f32 (*.f32 (+.f32 %1 %1) uy) #s(literal -1 binary32)))) (sqrt.f32 (*.f32 %12 (neg.f32 (-.f32 %12 #s(literal 2 binary32))))))
98.2%
%12 = (-.f32 ux (*.f32 maxCos ux))
(*.f32 (sin.f32 (*.f32 (/.f32 #s(literal 1 binary32) (pow.f32 (+.f32 uy uy) #s(literal -1 binary32))) (PI.f32 ))) (sqrt.f32 (*.f32 %12 (neg.f32 (-.f32 %12 #s(literal 2 binary32))))))
98.4%
%9 = (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux)
%12 = (-.f32 ux (*.f32 maxCos ux))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (pow.f32 (*.f32 (*.f32 %9 %9) (*.f32 %12 %12)) #s(literal 1/4 binary32)))
54.5%
%14 = (approx (+ (- 1 ux) (* ux maxCos)) (-.f32 #s(literal 1 binary32) ux))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %14 %14))))
54.3%
%18 = (approx (+ (- 1 ux) (* ux maxCos)) (*.f32 maxCos (-.f32 (+.f32 ux (/.f32 #s(literal 1 binary32) maxCos)) (/.f32 ux maxCos))))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %18 %18))))
54.8%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (+.f32 (fma.f32 (approx (- ux (+ (* maxCos ux) 1)) (-.f32 ux #s(literal 1 binary32))) (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux)) #s(literal 1/2 binary32)) #s(literal 1/2 binary32))))
56.5%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (+.f32 (fma.f32 (approx (- ux (+ (* maxCos ux) 1)) (*.f32 maxCos (-.f32 (/.f32 ux maxCos) (+.f32 ux (/.f32 #s(literal 1 binary32) maxCos))))) (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux)) #s(literal 1/2 binary32)) #s(literal 1/2 binary32))))
98.4%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 (-.f32 ux (*.f32 maxCos ux)) (fma.f32 ux maxCos (-.f32 #s(literal 2 binary32) ux)))))
98.4%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 (-.f32 ux (*.f32 maxCos ux)) (+.f32 #s(literal 1 binary32) (-.f32 (fma.f32 maxCos ux #s(literal 1 binary32)) ux)))))
97.6%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 (-.f32 ux (*.f32 maxCos ux)) (approx (neg (- (- ux (* maxCos ux)) 2)) (-.f32 #s(literal 2 binary32) ux)))))
98.3%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 (-.f32 ux (*.f32 maxCos ux)) (approx (neg (- (- ux (* maxCos ux)) 2)) (*.f32 ux (-.f32 (+.f32 maxCos (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1 binary32) ux))) #s(literal 1 binary32)))))))
98.3%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 (-.f32 ux (*.f32 maxCos ux)) (approx (neg (- (- ux (* maxCos ux)) 2)) (*.f32 maxCos (-.f32 (+.f32 ux (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1 binary32) maxCos))) (/.f32 ux maxCos)))))))
77.3%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 (-.f32 ux (*.f32 maxCos ux)) (approx (neg (- (- ux (* maxCos ux)) 2)) #s(literal 2 binary32)))))
93.4%
%9 = (- ux (* maxCos ux))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (approx (* (- %9 0) (neg (- %9 2))) (*.f32 ux (-.f32 #s(literal 2 binary32) ux)))))
90.2%
%9 = (PI.f32 )
%20 = (-.f32 ux (*.f32 maxCos ux))
(*.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 %9 #s(literal 3 binary32))) (*.f32 #s(literal 2 binary32) %9)))) (sqrt.f32 (*.f32 %20 (neg.f32 (-.f32 %20 #s(literal 2 binary32))))))
77.5%
%2 = (* maxCos ux)
%11 = (PI )
(approx (* (sqrt (fabs (- %2 ux))) (* (sqrt (fabs (- (+ %2 2) ux))) (sin (* (+ %11 %11) uy)))) (*.f32 (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))) (*.f32 (sqrt.f32 #s(literal 2 binary32)) (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))))))
81.8%
%2 = (* maxCos ux)
%11 = (PI )
%20 = (*.f32 maxCos ux)
(approx (* (sqrt (fabs (- %2 ux))) (* (sqrt (fabs (- (+ %2 2) ux))) (sin (* (+ %11 %11) uy)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (*.f32 (sqrt.f32 (fabs.f32 (-.f32 %20 ux))) (sqrt.f32 (fabs.f32 (-.f32 (+.f32 #s(literal 2 binary32) %20) ux))))))))
49.4%
%11 = (+ (- 1 ux) (* ux maxCos))
%18 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (+.f32 uy uy) (*.f32 (sqrt.f32 (fma.f32 (-.f32 ux %18) (-.f32 %18 ux) #s(literal 1 binary32))) (PI.f32 ))))
66.9%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (+.f32 uy uy) (*.f32 (sqrt.f32 (approx (- 1 (pow (- (- (* maxCos ux) -1) ux) 2)) (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux))) (PI.f32 ))))
49.4%
%11 = (+ (- 1 ux) (* ux maxCos))
%16 = (PI.f32 )
%20 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 %16 %16) uy) (sqrt.f32 (fma.f32 (-.f32 ux %20) (-.f32 %20 ux) #s(literal 1 binary32)))))
49.1%
%11 = (+ (- 1 ux) (* ux maxCos))
%16 = (PI.f32 )
%28 = (approx (- (- (* maxCos ux) -1) ux) (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1 binary32) ux) maxCos) #s(literal 1 binary32)) ux))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 %16 %16) uy) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %28 %28)))))
66.9%
%11 = (+ (- 1 ux) (* ux maxCos))
%16 = (PI.f32 )
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 %16 %16) uy) (sqrt.f32 (approx (- 1 (pow (- (- (* maxCos ux) -1) ux) 2)) (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux)))))
49.4%
%11 = (+ (- 1 ux) (* ux maxCos))
%18 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 uy uy) (sqrt.f32 (fma.f32 (-.f32 ux %18) (-.f32 %18 ux) #s(literal 1 binary32)))) (PI.f32 )))
49.1%
%11 = (+ (- 1 ux) (* ux maxCos))
%26 = (approx (- (- (* maxCos ux) -1) ux) (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1 binary32) ux) maxCos) #s(literal 1 binary32)) ux))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 uy uy) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %26 %26)))) (PI.f32 )))
66.9%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 uy uy) (sqrt.f32 (approx (- 1 (pow (- (- (* maxCos ux) -1) ux) 2)) (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux)))) (PI.f32 )))
7.1%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 (approx uy #s(literal 0 binary32)) (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (*.f32 ux (-.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) maxCos)))))))))
66.8%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (/.f32 #s(literal 1 binary32) (pow.f32 (sqrt.f32 (approx (- 1 (pow (- (- (* maxCos ux) -1) ux) 2)) (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux))) #s(literal -1 binary32)))))))
49.5%
%11 = (+ (- 1 ux) (* ux maxCos))
%17 = (PI.f32 )
%19 = (fma.f32 maxCos ux #s(literal 1 binary32))
%20 = (-.f32 %19 ux)
%23 = (*.f32 #s(literal 1/2 binary32) %17)
%28 = (sqrt.f32 (fma.f32 (-.f32 ux %19) %20 #s(literal 1 binary32)))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %17 (+.f32 (/.f32 (+.f32 (sin.f32 (-.f32 (asin.f32 %20) %23)) %28) #s(literal 2 binary32)) (*.f32 %28 (sin.f32 %23)))))))
66.7%
%11 = (+ (- 1 ux) (* ux maxCos))
%29 = (sqrt.f32 (sqrt.f32 (approx (- 1 (pow (- (- (* maxCos ux) -1) ux) 2)) (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux))))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (*.f32 %29 %29)))))
47.7%
%11 = (+ (- 1 ux) (* ux maxCos))
%20 = (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32)))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (fma.f32 %20 (*.f32 maxCos ux) (fma.f32 %20 (-.f32 #s(literal 1 binary32) ux) #s(literal 1 binary32))))))))
49.2%
%11 = (+ (- 1 ux) (* ux maxCos))
%27 = (approx (- (- (* maxCos ux) -1) ux) (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1 binary32) ux) maxCos) #s(literal 1 binary32)) ux))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (fma.f32 (neg.f32 %27) %27 #s(literal 1 binary32)))))))
49.5%
%11 = (+ (- 1 ux) (* ux maxCos))
%19 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 (fma.f32 (-.f32 ux %19) (-.f32 %19 ux) #s(literal 1/2 binary32)) #s(literal -1/2 binary32)))))))
47.7%
%11 = (+ (- 1 ux) (* ux maxCos))
%20 = (-.f32 (fma.f32 maxCos ux #s(literal 1 binary32)) ux)
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) (*.f32 %20 (-.f32 #s(literal 1 binary32) ux))) (*.f32 (*.f32 %20 maxCos) ux)))))))
49.3%
%11 = (+ (- 1 ux) (* ux maxCos))
%19 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 (*.f32 (-.f32 ux %19) (-.f32 %19 ux)) #s(literal -1 binary32)))))))
51.7%
%11 = (+ (- 1 ux) (* ux maxCos))
%19 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 ux ux (fma.f32 %19 %19 (*.f32 #s(literal -2 binary32) (*.f32 %19 ux))))))))))
49.5%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (fma.f32 ux maxCos (-.f32 #s(literal 1 binary32) ux)) #s(literal 2 binary32))))))))
48.8%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (+.f32 #s(literal 1/2 binary32) (-.f32 #s(literal 1/2 binary32) (-.f32 ux (*.f32 maxCos ux)))) #s(literal 2 binary32))))))))
49.1%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx (- (+ 1 (* maxCos ux)) ux) (fma.f32 ux maxCos (*.f32 (-.f32 (/.f32 #s(literal 1 binary32) ux) #s(literal 1 binary32)) ux))) #s(literal 2 binary32))))))))
49.1%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx (- (+ 1 (* maxCos ux)) ux) (*.f32 ux (-.f32 (/.f32 (fma.f32 maxCos ux #s(literal 1 binary32)) ux) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
45.6%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx (- (+ 1 (* maxCos ux)) ux) (*.f32 ux (-.f32 (approx (+ maxCos (/ 1 ux)) (*.f32 maxCos (+.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) (*.f32 maxCos ux))))) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
48.0%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx (- (+ 1 (* maxCos ux)) ux) (*.f32 ux (approx (- (+ maxCos (/ 1 ux)) 1) (-.f32 (/.f32 #s(literal 1 binary32) ux) #s(literal 1 binary32))))) #s(literal 2 binary32))))))))
48.4%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx (- (+ 1 (* maxCos ux)) ux) (*.f32 maxCos (-.f32 (+.f32 ux (/.f32 #s(literal 1 binary32) maxCos)) (/.f32 ux maxCos)))) #s(literal 2 binary32))))))))
48.7%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx (- (+ 1 (* maxCos ux)) ux) (approx (* ux (- (+ maxCos (/ 1 ux)) 1)) (*.f32 maxCos (+.f32 ux (/.f32 (*.f32 ux (-.f32 (/.f32 #s(literal 1 binary32) ux) #s(literal 1 binary32))) maxCos))))) #s(literal 2 binary32))))))))
49.1%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) (pow.f32 (approx (- (- (* maxCos ux) -1) ux) (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1 binary32) ux) maxCos) #s(literal 1 binary32)) ux)) #s(literal -2 binary32)))))))))
41.6%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (approx (pow (- (+ 1 (* maxCos ux)) ux) 2) (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 (*.f32 #s(literal 2 binary32) maxCos) #s(literal 2 binary32)))))))))))
66.9%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (fma.f32 ux #s(literal 2 binary32) (*.f32 ux (*.f32 #s(literal -2 binary32) maxCos)))))))))
66.9%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (*.f32 ux (-.f32 (-.f32 #s(literal 2 binary32) maxCos) maxCos))))))))
82.0%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (*.f32 ux (-.f32 (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -1 binary32) (*.f32 ux (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32))))) (*.f32 #s(literal 2 binary32) maxCos)))))))))
66.9%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (*.f32 ux (approx (- 2 (* 2 maxCos)) (*.f32 maxCos (-.f32 (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1 binary32) maxCos)) #s(literal 2 binary32)))))))))))
66.9%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (approx (* ux (- 2 (* 2 maxCos))) (*.f32 maxCos (fma.f32 #s(literal -2 binary32) ux (*.f32 #s(literal 2 binary32) (/.f32 ux maxCos)))))))))))
64.7%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (approx (* ux (- 2 (* 2 maxCos))) (*.f32 #s(literal 2 binary32) ux))))))))
76.5%
%3 = (PI )
%11 = (+ (- 1 ux) (* ux maxCos))
%26 = (PI.f32 )
%35 = (sqrt.f32 (*.f32 ux (-.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) maxCos))))
(approx (* (sin (* (* uy 2) %3)) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (approx (* %3 (sqrt (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)))) (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (*.f32 %26 (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32)))) %35) (*.f32 %26 %35))))))
90.0%
%9 = (- ux (* maxCos ux))
%20 = (PI.f32 )
%23 = (*.f32 maxCos ux)
%28 = (sqrt.f32 (*.f32 (-.f32 ux %23) (-.f32 (+.f32 #s(literal 2 binary32) %23) ux)))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (* (- %9 0) (neg (- %9 2))))) (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (*.f32 (pow.f32 %20 #s(literal 3 binary32)) %28)) (*.f32 #s(literal 2 binary32) (*.f32 %20 %28)))))
81.9%
%9 = (- ux (* maxCos ux))
%19 = (*.f32 maxCos ux)
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (* (- %9 0) (neg (- %9 2))))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (*.f32 (-.f32 ux %19) (-.f32 (+.f32 #s(literal 2 binary32) %19) ux)))))))
Compiler

Compiled 3 680 to 962 computations (73.9% saved)

sample1.0ms (0.0%)

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

Compiled 8 to 6 computations (25.0% saved)

series120.0ms (2.8%)

Memory
9.4MiB live, 135.2MiB allocated; 26ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0241227816
Stop Event
iter-limit
Counts
51 → 411
Calls
Call 1
Inputs
%2 = (*.f32 uy #s(literal 2 binary32))
%3 = (PI.f32 )
%4 = (*.f32 %2 %3)
%5 = (sin.f32 %4)
%8 = (*.f32 maxCos ux)
%10 = (+.f32 %3 %3)
%11 = (*.f32 %10 uy)
%12 = (-.f32 ux %8)
%13 = (sin.f32 %11)
%14 = (-.f32 #s(literal 2 binary32) ux)
%15 = (*.f32 ux %14)
%16 = (* maxCos ux)
%17 = (- ux %16)
%24 = (approx (* (- %17 0) (neg (- %17 2))) %15)
%25 = (fma.f32 maxCos ux #s(literal 2 binary32))
%26 = (-.f32 %25 ux)
%27 = (fabs.f32 %26)
%28 = (sqrt.f32 %27)
%29 = (*.f32 %28 %13)
%30 = (sqrt.f32 %24)
%32 = (*.f32 #s(literal 2 binary32) ux)
%36 = (approx (* ux (- 2 (* 2 maxCos))) %32)
%37 = (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32))
%38 = (*.f32 %37 ux)
%39 = (fma.f32 ux maxCos %14)
%46 = (approx (- 1 (pow (- (- %16 -1) ux) 2)) %38)
%47 = (sqrt.f32 %46)
%48 = (fabs.f32 %12)
%49 = (sqrt.f32 %48)
%50 = (sqrt.f32 %49)
%51 = (*.f32 %50 %50)
%52 = (sqrt.f32 %47)
%53 = (*.f32 %52 %52)
%54 = (*.f32 %12 %39)
%55 = (sqrt.f32 %54)
%58 = (*.f32 %3 %53)
%59 = (*.f32 uy %58)
%60 = (*.f32 #s(literal 2 binary32) %59)
%67 = (+ (- 1 ux) (* ux maxCos))
%71 = (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %67 %67))))
%77 = (approx (- 1 (pow (- (+ 1 %16) ux) 2)) %36)
%78 = (sqrt.f32 %77)
%79 = (*.f32 %3 %78)
%80 = (*.f32 uy %79)
%81 = (*.f32 #s(literal 2 binary32) %80)
uy
#s(literal 2 binary32)
%2
%3
%4
%5
ux
maxCos
%8
#s(literal -2 binary32)
%10
%11
%12
%13
%14
%15
%24
%25
%26
%27
%28
%29
%30
(*.f32 %5 %30)
%32
%36
%37
%38
%39
%46
%47
%48
%49
%50
%51
%52
%53
%54
%55
(*.f32 %5 %55)
(*.f32 %51 %29)
%58
%59
%60
(approx %71 %60)
%77
%78
%79
%80
%81
(approx %71 %81)
Outputs
%6 = (* maxCos ux)
%7 = (*.f32 maxCos ux)
%9 = (- ux %6)
%11 = (-.f32 #s(literal 1 binary32) maxCos)
%12 = (*.f32 ux %11)
%15 = (- 2 ux)
%19 = (*.f32 #s(literal -1 binary32) ux)
%20 = (+.f32 #s(literal 2 binary32) %19)
%22 = (* ux %15)
%23 = (*.f32 #s(literal 2 binary32) ux)
%31 = (* (- %9 0) (neg (- %9 2)))
%32 = (*.f32 #s(literal 2 binary32) %12)
%34 = (-.f32 maxCos #s(literal 1 binary32))
%35 = (*.f32 %11 %34)
%40 = (+ %6 2)
%41 = (+.f32 #s(literal 2 binary32) %7)
%43 = (- %40 ux)
%44 = (*.f32 ux %34)
%47 = (fabs %43)
%48 = (sqrt %47)
%49 = (sqrt.f32 #s(literal 2 binary32))
%57 = (pow.f32 %34 #s(literal 2 binary32))
%58 = (*.f32 ux %57)
%60 = (pow.f32 %49 #s(literal 3 binary32))
%62 = (/.f32 %34 %49)
%70 = (pow.f32 %34 #s(literal 3 binary32))
%73 = (pow.f32 %49 #s(literal 5 binary32))
%82 = (PI )
%86 = (* %48 (sin (* (+ %82 %82) uy)))
%87 = (PI.f32 )
%89 = (*.f32 #s(literal 2 binary32) (*.f32 uy %87))
%90 = (sin.f32 %89)
%91 = (*.f32 %90 %49)
%93 = (*.f32 %90 %34)
%98 = (*.f32 %90 %57)
%101 = (/.f32 %93 %49)
%116 = (sqrt %31)
%117 = (sqrt.f32 %32)
%119 = (pow.f32 ux #s(literal 2 binary32))
%120 = (*.f32 %119 %35)
%125 = (pow.f32 %11 #s(literal 2 binary32))
%126 = (*.f32 %125 %57)
%128 = (pow.f32 %117 #s(literal 3 binary32))
%130 = (/.f32 %35 %117)
%137 = (pow.f32 %11 #s(literal 3 binary32))
%138 = (*.f32 %137 %70)
%140 = (pow.f32 %117 #s(literal 5 binary32))
%149 = (* uy 2)
%150 = (* %149 %82)
%151 = (sin %150)
%152 = (* %151 %116)
%153 = (*.f32 %90 %117)
%155 = (*.f32 %90 %35)
%160 = (*.f32 %90 %126)
%163 = (/.f32 %155 %117)
%182 = (* ux (- 2 (* 2 maxCos)))
%183 = (*.f32 #s(literal 2 binary32) maxCos)
%184 = (-.f32 #s(literal 2 binary32) %183)
%185 = (*.f32 ux %184)
%189 = (+ (* -2 maxCos) 2)
%192 = (*.f32 #s(literal -2 binary32) maxCos)
%193 = (+.f32 #s(literal 2 binary32) %192)
%201 = (- 1 (pow (- (- %6 -1) ux) 2))
%207 = (sqrt %201)
%208 = (sqrt.f32 %185)
%211 = (*.f32 %119 %57)
%212 = (/.f32 %211 %208)
%216 = (/.f32 %57 %208)
%218 = (pow.f32 %34 #s(literal 4 binary32))
%220 = (pow.f32 %208 #s(literal 3 binary32))
%223 = (fma.f32 #s(literal -1/2 binary32) %216 (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %119 %218) %220)))
%227 = (/.f32 %218 %220)
%230 = (pow.f32 %34 #s(literal 6 binary32))
%232 = (pow.f32 %208 #s(literal 5 binary32))
%237 = (fma.f32 #s(literal -1/2 binary32) %216 (*.f32 %119 (fma.f32 #s(literal -1/8 binary32) %227 (*.f32 #s(literal -1/16 binary32) (/.f32 (*.f32 %119 %230) %232)))))
%241 = (fabs %9)
%242 = (-.f32 ux %7)
%243 = (fabs.f32 %242)
%245 = (sqrt %241)
%246 = (sqrt.f32 %243)
%248 = (sqrt %245)
%249 = (sqrt.f32 %246)
%251 = (* %248 %248)
%252 = (pow.f32 %249 #s(literal 2 binary32))
%254 = (sqrt %207)
%255 = (sqrt.f32 %208)
%258 = (*.f32 %255 %208)
%263 = (/.f32 %57 %258)
%265 = (pow.f32 %255 #s(literal 2 binary32))
%270 = (-.f32 (*.f32 #s(literal -1/8 binary32) %227) (*.f32 #s(literal 1/16 binary32) (/.f32 %218 (*.f32 %265 (pow.f32 %208 #s(literal 2 binary32))))))
%295 = (* %254 %254)
%303 = (* %251 %86)
%305 = (*.f32 %90 (*.f32 %49 %252))
%308 = (*.f32 %90 (*.f32 %252 %34))
%314 = (*.f32 %90 (*.f32 %252 %57))
%317 = (/.f32 %308 %49)
%333 = (* %82 %295)
%334 = (*.f32 %87 %265)
%336 = (*.f32 %87 %57)
%338 = (/.f32 (*.f32 %119 %336) %208)
%341 = (/.f32 %336 %208)
%342 = (*.f32 %87 %218)
%347 = (*.f32 %119 (fma.f32 #s(literal -1/2 binary32) %341 (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %119 %342) %220))))
%351 = (*.f32 %87 %230)
%358 = (*.f32 %119 (fma.f32 #s(literal -1/2 binary32) %341 (*.f32 %119 (fma.f32 #s(literal -1/8 binary32) (/.f32 %342 %220) (*.f32 #s(literal -1/16 binary32) (/.f32 (*.f32 %119 %351) %232))))))
%361 = (* uy %333)
%362 = (*.f32 uy %334)
%364 = (*.f32 uy %336)
%366 = (/.f32 (*.f32 %119 %364) %208)
%369 = (/.f32 %364 %208)
%370 = (*.f32 uy %342)
%372 = (/.f32 (*.f32 %119 %370) %220)
%375 = (*.f32 %119 (fma.f32 #s(literal -1/2 binary32) %369 (*.f32 #s(literal -1/8 binary32) %372)))
%378 = (/.f32 %370 %220)
%381 = (/.f32 (*.f32 %119 (*.f32 uy %351)) %232)
%386 = (*.f32 %119 (fma.f32 #s(literal -1/2 binary32) %369 (*.f32 %119 (fma.f32 #s(literal -1/8 binary32) %378 (*.f32 #s(literal -1/16 binary32) %381)))))
%389 = (* 2 %361)
%390 = (*.f32 #s(literal 2 binary32) %362)
%396 = (*.f32 %119 (fma.f32 #s(literal -1 binary32) %369 (*.f32 #s(literal -1/4 binary32) %372)))
%403 = (*.f32 %119 (fma.f32 #s(literal -1 binary32) %369 (*.f32 %119 (fma.f32 #s(literal -1/4 binary32) %378 (*.f32 #s(literal -1/8 binary32) %381)))))
%408 = (+ (- 1 ux) (* ux maxCos))
%412 = (* %151 (sqrt (- 1 (* %408 %408))))
%413 = (*.f32 %90 %208)
%419 = (/.f32 %98 %208)
%420 = (*.f32 %90 %218)
%444 = (* %82 (sqrt (- 1 (pow (- (+ 1 %6) ux) 2))))
%445 = (*.f32 %87 %208)
%453 = (* uy %444)
%454 = (*.f32 uy %445)
%462 = (* 2 %453)
%463 = (*.f32 #s(literal 2 binary32) %454)
%473 = (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1 binary32) ux))
%474 = (-.f32 %473 #s(literal 1 binary32))
%477 = (*.f32 #s(literal -1 binary32) %119)
%486 = (+.f32 maxCos %473)
%493 = (-.f32 %41 ux)
%494 = (fabs.f32 %493)
%496 = (sqrt.f32 %494)
%500 = (sqrt.f32 %35)
%501 = (*.f32 ux %500)
%503 = (/.f32 #s(literal 1 binary32) %501)
%505 = (/.f32 maxCos %501)
%510 = (*.f32 %119 (pow.f32 %500 #s(literal 3 binary32)))
%511 = (/.f32 %125 %510)
%517 = (pow.f32 ux #s(literal 3 binary32))
%519 = (*.f32 %517 (pow.f32 %500 #s(literal 5 binary32)))
%532 = (fma.f32 %90 %500 (/.f32 (*.f32 %90 %11) %501))
%536 = (/.f32 (*.f32 %90 %125) %510)
%548 = (/.f32 maxCos ux)
%554 = (sqrt.f32 (neg.f32 %57))
%555 = (*.f32 ux %554)
%558 = (*.f32 #s(literal 1/2 binary32) (/.f32 %184 %555))
%562 = (pow.f32 %184 #s(literal 2 binary32))
%563 = (pow.f32 %554 #s(literal 3 binary32))
%564 = (*.f32 %119 %563)
%565 = (/.f32 %562 %564)
%570 = (pow.f32 %184 #s(literal 3 binary32))
%571 = (pow.f32 %554 #s(literal 5 binary32))
%572 = (*.f32 %517 %571)
%580 = (sqrt.f32 (/.f32 %554 ux))
%586 = (/.f32 %184 (*.f32 %119 (*.f32 %554 %580)))
%587 = (*.f32 #s(literal 1/4 binary32) %586)
%593 = (/.f32 %562 (*.f32 %517 (*.f32 %563 %580)))
%601 = (pow.f32 %580 #s(literal 2 binary32))
%606 = (pow.f32 ux #s(literal 4 binary32))
%617 = (*.f32 %119 %554)
%619 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %184 %617) %601)
%622 = (*.f32 %517 %563)
%623 = (/.f32 %562 %622)
%627 = (*.f32 %606 %571)
%633 = (*.f32 %496 %252)
%636 = (*.f32 %87 %601)
%639 = (*.f32 %87 %184)
%641 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %639 %617) %636)
%644 = (*.f32 %87 %562)
%645 = (/.f32 %644 %622)
%649 = (*.f32 %87 %570)
%655 = (*.f32 uy %636)
%656 = (*.f32 %119 %655)
%658 = (*.f32 uy %639)
%659 = (/.f32 %658 %617)
%660 = (fma.f32 #s(literal 1/2 binary32) %659 %655)
%663 = (*.f32 uy %644)
%664 = (/.f32 %663 %622)
%668 = (*.f32 uy %649)
%669 = (/.f32 %668 %627)
%676 = (fma.f32 #s(literal 2 binary32) %655 %659)
%687 = (*.f32 %90 %554)
%692 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %90 %184) %555) %687)
%696 = (/.f32 (*.f32 %90 %562) %564)
%706 = (*.f32 %87 %554)
%710 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %639 %555) %706)
%713 = (/.f32 %644 %564)
%722 = (*.f32 uy %706)
%723 = (*.f32 ux %722)
%725 = (/.f32 %658 %555)
%726 = (fma.f32 #s(literal 1/2 binary32) %725 %722)
%729 = (/.f32 %663 %564)
%733 = (/.f32 %668 %572)
%740 = (fma.f32 #s(literal 2 binary32) %722 %725)
%750 = (*.f32 #s(literal -1 binary32) maxCos)
%751 = (+.f32 #s(literal 1 binary32) %750)
%752 = (*.f32 ux %751)
%758 = (pow.f32 %751 #s(literal 2 binary32))
%777 = (fma.f32 #s(literal -1 binary32) ux %7)
%779 = (fabs.f32 (+.f32 #s(literal 2 binary32) %777))
%781 = (sqrt.f32 %779)
%786 = (sqrt.f32 (*.f32 #s(literal -1 binary32) %758))
%787 = (*.f32 ux %786)
%797 = (/.f32 %751 %786)
%798 = (pow.f32 %786 #s(literal 3 binary32))
%799 = (*.f32 ux %798)
%810 = (pow.f32 %751 #s(literal 3 binary32))
%812 = (*.f32 ux (pow.f32 %786 #s(literal 5 binary32)))
%825 = (*.f32 %90 %786)
%829 = (*.f32 %90 %751)
%835 = (/.f32 %829 %786)
%836 = (*.f32 %90 %758)
%863 = (sqrt.f32 (neg.f32 %758))
%864 = (*.f32 ux %863)
%873 = (/.f32 %193 %863)
%874 = (pow.f32 %193 #s(literal 2 binary32))
%875 = (pow.f32 %863 #s(literal 3 binary32))
%876 = (*.f32 ux %875)
%887 = (pow.f32 %193 #s(literal 3 binary32))
%888 = (pow.f32 %863 #s(literal 5 binary32))
%889 = (*.f32 ux %888)
%892 = (fma.f32 #s(literal -1/8 binary32) (/.f32 %874 %875) (*.f32 #s(literal 1/16 binary32) (/.f32 %887 %889)))
%903 = (fabs.f32 (neg.f32 %777))
%905 = (sqrt.f32 %903)
%907 = (sqrt.f32 %905)
%909 = (pow.f32 %907 #s(literal 2 binary32))
%913 = (sqrt.f32 (*.f32 #s(literal -1 binary32) (/.f32 %863 ux)))
%914 = (*.f32 ux %913)
%919 = (/.f32 %193 (*.f32 %119 (*.f32 %863 %913)))
%920 = (*.f32 #s(literal -1/4 binary32) %919)
%925 = (*.f32 %875 %913)
%937 = (pow.f32 %913 #s(literal 2 binary32))
%954 = (*.f32 %119 %863)
%955 = (/.f32 %193 %954)
%956 = (fma.f32 #s(literal -1/2 binary32) %955 %937)
%959 = (*.f32 %517 %875)
%972 = (*.f32 %87 %937)
%975 = (*.f32 %87 %193)
%976 = (/.f32 %975 %954)
%977 = (fma.f32 #s(literal -1/2 binary32) %976 %972)
%980 = (*.f32 %87 %874)
%987 = (*.f32 %87 %887)
%990 = (fma.f32 #s(literal -1/8 binary32) (/.f32 %980 %875) (*.f32 #s(literal 1/16 binary32) (/.f32 %987 %889)))
%995 = (*.f32 uy %972)
%996 = (*.f32 %119 %995)
%998 = (*.f32 uy %975)
%999 = (/.f32 %998 %954)
%1000 = (fma.f32 #s(literal -1/2 binary32) %999 %995)
%1003 = (*.f32 uy %980)
%1004 = (/.f32 %1003 %959)
%1009 = (/.f32 %1003 %875)
%1011 = (/.f32 (*.f32 uy %987) %889)
%1013 = (fma.f32 #s(literal -1/8 binary32) %1009 (*.f32 #s(literal 1/16 binary32) %1011))
%1020 = (*.f32 #s(literal 2 binary32) %995)
%1029 = (fma.f32 #s(literal -1/4 binary32) %1009 (*.f32 #s(literal 1/8 binary32) %1011))
%1035 = (*.f32 %90 %863)
%1039 = (*.f32 %90 %193)
%1045 = (/.f32 %1039 %863)
%1046 = (*.f32 %90 %874)
%1068 = (*.f32 %87 %863)
%1077 = (/.f32 %975 %863)
%1094 = (*.f32 uy %1068)
%1095 = (*.f32 ux %1094)
%1098 = (/.f32 %998 %864)
%1103 = (/.f32 %998 %863)
%1104 = (/.f32 %1003 %876)
%1129 = (*.f32 #s(literal 2 binary32) %1094)
%1147 = (pow.f32 uy #s(literal 2 binary32))
%1148 = (pow.f32 %87 #s(literal 3 binary32))
%1155 = (pow.f32 %87 #s(literal 5 binary32))
%1165 = (pow.f32 %87 #s(literal 7 binary32))
%1175 = (*.f32 %87 %496)
%1179 = (*.f32 %1148 %496)
%1185 = (*.f32 %1155 %496)
%1204 = (sqrt.f32 (*.f32 %242 %493))
%1205 = (*.f32 %87 %1204)
%1209 = (*.f32 %1148 %1204)
%1215 = (*.f32 %1155 %1204)
%1233 = (*.f32 %87 %633)
%1237 = (*.f32 %1148 %633)
%1243 = (*.f32 %1155 %633)
%1265 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (-.f32 (+.f32 #s(literal 1 binary32) %7) ux) #s(literal 2 binary32))))
%1269 = (*.f32 uy (*.f32 %87 (pow.f32 (sqrt.f32 %1265) #s(literal 2 binary32))))
%1273 = (*.f32 %87 %1265)
%1274 = (*.f32 uy %1273)
%1277 = (*.f32 %1148 %1265)
%1283 = (*.f32 %1155 %1265)
%1308 = (*.f32 #s(literal -1 binary32) %7)
%1311 = (-.f32 #s(literal 2 binary32) ux)
%1312 = (*.f32 ux %1311)
%1314 = (fma.f32 #s(literal -1 binary32) %1312 %119)
%1317 = (*.f32 maxCos %119)
%1323 = (sqrt.f32 %1312)
%1330 = (pow.f32 %1314 #s(literal 2 binary32))
%1334 = (-.f32 %477 (*.f32 #s(literal 1/4 binary32) (/.f32 %1330 (pow.f32 %1323 #s(literal 2 binary32)))))
%1337 = (/.f32 %1314 %1323)
%1343 = (*.f32 %1314 %1334)
%1345 = (pow.f32 %1323 #s(literal 3 binary32))
%1355 = (*.f32 %90 %1323)
%1357 = (*.f32 %90 %1314)
%1362 = (*.f32 %90 %1334)
%1365 = (/.f32 %1357 %1323)
%1383 = (-.f32 #s(literal 1 binary32) ux)
%1384 = (pow.f32 %1383 #s(literal 2 binary32))
%1385 = (-.f32 #s(literal 1 binary32) %1384)
%1387 = (*.f32 ux %1383)
%1388 = (*.f32 maxCos %1387)
%1400 = (sqrt.f32 %1385)
%1402 = (/.f32 %1388 %1400)
%1406 = (/.f32 %1387 %1400)
%1407 = (*.f32 %119 %1384)
%1408 = (pow.f32 %1400 #s(literal 2 binary32))
%1410 = (+.f32 (/.f32 %1407 %1408) %119)
%1414 = (fma.f32 #s(literal -1 binary32) %1406 (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos %1410) %1400)))
%1418 = (*.f32 %1410 %1383)
%1419 = (*.f32 ux %1418)
%1421 = (pow.f32 %1400 #s(literal 3 binary32))
%1424 = (*.f32 #s(literal -1/2 binary32) (/.f32 %1410 %1400))
%1427 = (fma.f32 #s(literal -1 binary32) %1406 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos %1419) %1421) %1424)))
%1431 = (sqrt.f32 %1400)
%1433 = (*.f32 %1431 %1400)
%1438 = (/.f32 %1387 %1433)
%1439 = (pow.f32 %1431 #s(literal 2 binary32))
%1443 = (-.f32 %1424 (*.f32 #s(literal 1/4 binary32) (/.f32 %1407 (*.f32 %1439 %1408))))
%1476 = (*.f32 %87 %1439)
%1478 = (*.f32 %87 %1383)
%1479 = (*.f32 ux %1478)
%1481 = (/.f32 (*.f32 maxCos %1479) %1400)
%1484 = (/.f32 %1479 %1400)
%1485 = (*.f32 %87 %1410)
%1489 = (fma.f32 #s(literal -1 binary32) %1484 (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos %1485) %1400)))
%1492 = (*.f32 %87 %1418)
%1500 = (fma.f32 #s(literal -1 binary32) %1484 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos (*.f32 ux %1492)) %1421) (*.f32 #s(literal -1/2 binary32) (/.f32 %1485 %1400)))))
%1503 = (*.f32 uy %1476)
%1506 = (*.f32 ux (*.f32 uy %1478))
%1508 = (/.f32 (*.f32 maxCos %1506) %1400)
%1511 = (/.f32 %1506 %1400)
%1512 = (*.f32 uy %1485)
%1514 = (/.f32 (*.f32 maxCos %1512) %1400)
%1516 = (fma.f32 #s(literal -1 binary32) %1511 (*.f32 #s(literal -1/2 binary32) %1514))
%1522 = (/.f32 (*.f32 maxCos (*.f32 ux (*.f32 uy %1492))) %1421)
%1523 = (/.f32 %1512 %1400)
%1527 = (fma.f32 #s(literal -1 binary32) %1511 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) %1522 (*.f32 #s(literal -1/2 binary32) %1523))))
%1530 = (*.f32 #s(literal 2 binary32) %1503)
%1536 = (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1511 (*.f32 #s(literal -1 binary32) %1514)))
%1543 = (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1511 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1522 (*.f32 #s(literal -1 binary32) %1523)))))
%1546 = (*.f32 %90 %1400)
%1549 = (*.f32 ux (*.f32 %90 %1383))
%1554 = (/.f32 %1549 %1400)
%1555 = (*.f32 %90 %1410)
%1573 = (*.f32 %87 %1400)
%1581 = (*.f32 uy %1573)
%1589 = (*.f32 #s(literal 2 binary32) %1581)
%1598 = (/.f32 ux maxCos)
%1602 = (pow.f32 maxCos #s(literal 2 binary32))
%1606 = (/.f32 %1312 maxCos)
%1607 = (/.f32 %119 maxCos)
%1619 = (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1 binary32) maxCos))
%1620 = (+.f32 ux %1619)
%1626 = (sqrt.f32 %477)
%1627 = (*.f32 maxCos %1626)
%1629 = (/.f32 %1314 %1627)
%1634 = (pow.f32 %1626 #s(literal 2 binary32))
%1637 = (-.f32 %1312 (*.f32 #s(literal 1/4 binary32) (/.f32 %1330 %1634)))
%1638 = (*.f32 %1602 %1626)
%1641 = (fma.f32 #s(literal 1/2 binary32) %1629 (*.f32 #s(literal 1/2 binary32) (/.f32 %1637 %1638)))
%1645 = (*.f32 %1314 %1637)
%1646 = (pow.f32 maxCos #s(literal 3 binary32))
%1647 = (pow.f32 %1626 #s(literal 3 binary32))
%1648 = (*.f32 %1646 %1647)
%1654 = (*.f32 %90 %1626)
%1655 = (*.f32 maxCos %1654)
%1657 = (/.f32 %1357 %1627)
%1664 = (fma.f32 #s(literal 1/2 binary32) %1657 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %90 %1637) %1638) %1654))
%1682 = (/.f32 %1387 maxCos)
%1695 = (sqrt.f32 (neg.f32 %119))
%1696 = (*.f32 maxCos %1695)
%1698 = (/.f32 %1387 %1696)
%1701 = (*.f32 maxCos (+.f32 %1695 (*.f32 #s(literal -1 binary32) %1698)))
%1703 = (pow.f32 %1695 #s(literal 2 binary32))
%1706 = (-.f32 #s(literal 1 binary32) (+.f32 (/.f32 %1407 %1703) %1384))
%1707 = (*.f32 %1602 %1695)
%1709 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1706 %1707))
%1714 = (*.f32 %1383 %1706)
%1715 = (*.f32 ux %1714)
%1716 = (pow.f32 %1695 #s(literal 3 binary32))
%1717 = (*.f32 %1646 %1716)
%1724 = (/.f32 %1695 maxCos)
%1725 = (sqrt.f32 %1724)
%1728 = (*.f32 %1695 %1725)
%1730 = (/.f32 %1387 (*.f32 %1602 %1728))
%1736 = (/.f32 %1706 (*.f32 %1646 %1728))
%1742 = (/.f32 %1715 %1716)
%1744 = (pow.f32 %1725 #s(literal 2 binary32))
%1749 = (pow.f32 maxCos #s(literal 4 binary32))
%1760 = (/.f32 %1387 %1707)
%1764 = (*.f32 %1646 %1695)
%1765 = (/.f32 %1706 %1764)
%1766 = (fma.f32 #s(literal 1/2 binary32) %1765 %1744)
%1770 = (*.f32 %1749 %1716)
%1776 = (*.f32 %87 %1744)
%1779 = (/.f32 %1479 %1707)
%1783 = (*.f32 %87 %1706)
%1784 = (/.f32 %1783 %1764)
%1785 = (fma.f32 #s(literal 1/2 binary32) %1784 %1776)
%1789 = (*.f32 %87 %1714)
%1790 = (*.f32 ux %1789)
%1796 = (*.f32 uy %1776)
%1797 = (*.f32 %1602 %1796)
%1799 = (/.f32 %1506 %1707)
%1803 = (*.f32 uy %1783)
%1804 = (/.f32 %1803 %1764)
%1805 = (fma.f32 #s(literal 1/2 binary32) %1804 %1796)
%1810 = (*.f32 ux (*.f32 uy %1789))
%1811 = (/.f32 %1810 %1770)
%1831 = (*.f32 %90 %1695)
%1832 = (*.f32 maxCos %1831)
%1834 = (/.f32 %1549 %1696)
%1836 = (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1834 %1831))
%1838 = (*.f32 %90 %1706)
%1840 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1838 %1707) %1831)
%1845 = (*.f32 ux (*.f32 %90 %1714))
%1851 = (*.f32 %87 %1695)
%1852 = (*.f32 maxCos %1851)
%1854 = (/.f32 %1479 %1696)
%1856 = (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1854 %1851))
%1859 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1783 %1707) %1851)
%1868 = (*.f32 uy %1851)
%1869 = (*.f32 maxCos %1868)
%1871 = (/.f32 %1506 %1696)
%1873 = (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1871 %1868))
%1875 = (/.f32 %1803 %1707)
%1876 = (fma.f32 #s(literal 1/2 binary32) %1875 %1868)
%1880 = (/.f32 %1810 %1717)
%1887 = (*.f32 #s(literal 2 binary32) %1868)
%1889 = (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1871 %1887))
%1905 = (fma.f32 #s(literal -1 binary32) %119 %1312)
%1936 = (-.f32 %1312 (*.f32 #s(literal 1/4 binary32) (/.f32 (pow.f32 %1905 #s(literal 2 binary32)) %1634)))
%1939 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1905 %1626))
%1947 = (*.f32 %1905 %1936)
%1948 = (*.f32 maxCos %1647)
%1963 = (*.f32 %90 %1905)
%1969 = (*.f32 %90 %1936)
%1972 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1963 %1626))
%2013 = (/.f32 %1387 %1695)
%2021 = (*.f32 maxCos %1716)
%2025 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1715 %2021) (*.f32 #s(literal 1/2 binary32) (/.f32 %1706 %1695)))
%2035 = (sqrt.f32 (*.f32 #s(literal -1 binary32) %1724))
%2036 = (*.f32 maxCos %2035)
%2039 = (*.f32 %1695 %2035)
%2042 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1387 (*.f32 %1602 %2039)))
%2055 = (pow.f32 %2035 #s(literal 2 binary32))
%2072 = (+.f32 %1760 %2055)
%2082 = (*.f32 %87 %2055)
%2085 = (fma.f32 %87 %2055 %1779)
%2094 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1790 %2021) (*.f32 #s(literal 1/2 binary32) (/.f32 %1783 %1695)))
%2099 = (*.f32 uy %2082)
%2100 = (*.f32 %1602 %2099)
%2102 = (fma.f32 uy %2082 %1799)
%2108 = (/.f32 %1810 %2021)
%2109 = (/.f32 %1803 %1695)
%2111 = (fma.f32 #s(literal 1/2 binary32) %2108 (*.f32 #s(literal 1/2 binary32) %2109))
%2119 = (fma.f32 #s(literal 2 binary32) %2099 (*.f32 #s(literal 2 binary32) %1799))
%2125 = (+.f32 %2108 %2109)
%2135 = (/.f32 %1549 %1695)
%2158 = (/.f32 %1479 %1695)
%2176 = (/.f32 %1803 %1696)
%2177 = (/.f32 %1506 %1695)
%2195 = (*.f32 #s(literal 2 binary32) %2177)
(approx uy #s(literal 0 binary32))
(approx ux ux)
(approx %6 %7)
(approx %9 %12)
(approx %15 #s(literal 2 binary32))
(approx %15 %20)
(approx %22 %23)
(approx %22 (*.f32 ux %20))
(approx %31 %32)
(approx %31 (*.f32 ux (fma.f32 #s(literal 2 binary32) %11 (*.f32 ux %35))))
(approx %40 %41)
(approx %43 (+.f32 #s(literal 2 binary32) %44))
(approx %48 %49)
(approx %48 (+.f32 %49 (*.f32 #s(literal 1/2 binary32) (/.f32 %44 %49))))
(approx %48 (+.f32 %49 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) (/.f32 %58 %60) (*.f32 #s(literal 1/2 binary32) %62)))))
(approx %48 (+.f32 %49 (*.f32 ux (fma.f32 #s(literal 1/2 binary32) %62 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) (/.f32 %57 %60) (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 ux %70) %73))))))))
(approx %86 %91)
(approx %86 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 ux %93) %49) %91))
(approx %86 (fma.f32 ux (fma.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 ux %98) %60) (*.f32 #s(literal 1/2 binary32) %101)) %91))
(approx %86 (fma.f32 ux (fma.f32 #s(literal 1/2 binary32) %101 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) (/.f32 %98 %60) (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 ux (*.f32 %90 %70)) %73))))) %91))
(approx %116 %117)
(approx %116 (+.f32 %117 (*.f32 #s(literal 1/2 binary32) (/.f32 %120 %117))))
(approx %116 (+.f32 %117 (*.f32 %119 (fma.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %119 %126) %128) (*.f32 #s(literal 1/2 binary32) %130)))))
(approx %116 (+.f32 %117 (*.f32 %119 (fma.f32 #s(literal 1/2 binary32) %130 (*.f32 %119 (fma.f32 #s(literal -1/8 binary32) (/.f32 %126 %128) (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %119 %138) %140))))))))
(approx %152 %153)
(approx %152 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %119 %155) %117) %153))
(approx %152 (fma.f32 %90 %117 (*.f32 %119 (fma.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %119 %160) %128) (*.f32 #s(literal 1/2 binary32) %163)))))
(approx %152 (fma.f32 %90 %117 (*.f32 %119 (fma.f32 #s(literal 1/2 binary32) %163 (*.f32 %119 (fma.f32 #s(literal -1/8 binary32) (/.f32 %160 %128) (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %119 (*.f32 %90 %138)) %140))))))))
(approx %182 %185)
(approx (* %189 ux) (*.f32 ux %193))
(approx %201 (*.f32 ux (-.f32 (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -1 binary32) %58)) %183)))
(approx %207 %208)
(approx %207 (+.f32 %208 (*.f32 #s(literal -1/2 binary32) %212)))
(approx %207 (+.f32 %208 (*.f32 %119 %223)))
(approx %207 (+.f32 %208 (*.f32 %119 %237)))
(approx %241 %243)
(approx %245 %246)
(approx %248 %249)
(approx %251 %252)
(approx %254 %255)
(approx %254 (+.f32 %255 (*.f32 #s(literal -1/4 binary32) (/.f32 %211 %258))))
(approx %254 (+.f32 %255 (*.f32 %119 (fma.f32 #s(literal -1/4 binary32) %263 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %119 %270) %255))))))
(approx %254 (+.f32 %255 (*.f32 %119 (fma.f32 #s(literal -1/4 binary32) %263 (*.f32 %119 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %119 (-.f32 (*.f32 #s(literal -1/16 binary32) (/.f32 %230 %232)) (*.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 %57 %270) (*.f32 %265 %208))))) %255) (*.f32 #s(literal 1/2 binary32) (/.f32 %270 %255))))))))
(approx %295 %265)
(approx %295 (fma.f32 #s(literal -1/2 binary32) %212 %265))
(approx %295 (fma.f32 %119 %223 %265))
(approx %295 (fma.f32 %119 %237 %265))
(approx %303 %305)
(approx %303 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 ux %308) %49) %305))
(approx %303 (fma.f32 ux (fma.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 ux %314) %60) (*.f32 #s(literal 1/2 binary32) %317)) %305))
(approx %303 (fma.f32 ux (fma.f32 #s(literal 1/2 binary32) %317 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) (/.f32 %314 %60) (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 ux (*.f32 %90 (*.f32 %252 %70))) %73))))) %305))
(approx %333 %334)
(approx %333 (fma.f32 #s(literal -1/2 binary32) %338 %334))
(approx %333 (fma.f32 %87 %265 %347))
(approx %333 (fma.f32 %87 %265 %358))
(approx %361 %362)
(approx %361 (fma.f32 #s(literal -1/2 binary32) %366 %362))
(approx %361 (fma.f32 uy %334 %375))
(approx %361 (fma.f32 uy %334 %386))
(approx %389 %390)
(approx %389 (fma.f32 #s(literal -1 binary32) %366 %390))
(approx %389 (fma.f32 #s(literal 2 binary32) %362 %396))
(approx %389 (fma.f32 #s(literal 2 binary32) %362 %403))
(approx %412 %413)
(approx %412 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 %119 %98) %208) %413))
(approx %412 (fma.f32 %90 %208 (*.f32 %119 (fma.f32 #s(literal -1/2 binary32) %419 (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %119 %420) %220))))))
(approx %412 (fma.f32 %90 %208 (*.f32 %119 (fma.f32 #s(literal -1/2 binary32) %419 (*.f32 %119 (fma.f32 #s(literal -1/8 binary32) (/.f32 %420 %220) (*.f32 #s(literal -1/16 binary32) (/.f32 (*.f32 %119 (*.f32 %90 %230)) %232))))))))
(approx %444 %445)
(approx %444 (fma.f32 #s(literal -1/2 binary32) %338 %445))
(approx %444 (fma.f32 %87 %208 %347))
(approx %444 (fma.f32 %87 %208 %358))
(approx %453 %454)
(approx %453 (fma.f32 #s(literal -1/2 binary32) %366 %454))
(approx %453 (fma.f32 uy %445 %375))
(approx %453 (fma.f32 uy %445 %386))
(approx %462 %463)
(approx %462 (fma.f32 #s(literal -1 binary32) %366 %463))
(approx %462 (fma.f32 #s(literal 2 binary32) %454 %396))
(approx %462 (fma.f32 #s(literal 2 binary32) %454 %403))
(approx %15 %19)
(approx %15 (*.f32 ux %474))
(approx %22 %477)
(approx %22 (*.f32 %119 %474))
(approx %31 %120)
(approx %31 (*.f32 %119 (fma.f32 #s(literal 2 binary32) (/.f32 %11 ux) %35)))
(approx %40 (*.f32 ux %486))
(approx %43 %44)
(approx %43 (*.f32 ux (-.f32 %486 #s(literal 1 binary32))))
(approx %47 %494)
(approx %48 %496)
(approx %86 (*.f32 %90 %496))
(approx %116 %501)
(approx %116 (*.f32 ux (-.f32 (+.f32 %500 %503) %505)))
(approx %116 (*.f32 ux (-.f32 (+.f32 %500 (fma.f32 #s(literal -1/2 binary32) %511 %503)) %505)))
(approx %116 (*.f32 ux (-.f32 (+.f32 %500 (fma.f32 #s(literal -1/2 binary32) %511 (fma.f32 #s(literal 1/2 binary32) (/.f32 %137 %519) %503))) %505)))
(approx %152 (*.f32 ux (*.f32 %90 %500)))
(approx %152 (*.f32 ux %532))
(approx %152 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) %536 %532)))
(approx %152 (*.f32 ux (fma.f32 #s(literal -1/2 binary32) %536 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %90 %137) %519) %532))))
(approx %201 (*.f32 #s(literal -1 binary32) %211))
(approx %201 (*.f32 %119 (-.f32 %473 (fma.f32 #s(literal 2 binary32) %548 %57))))
(approx %207 %555)
(approx %207 (*.f32 ux (+.f32 %554 %558)))
(approx %207 (*.f32 ux (+.f32 %554 (fma.f32 #s(literal -1/8 binary32) %565 %558))))
(approx %207 (*.f32 ux (+.f32 %554 (fma.f32 #s(literal -1/8 binary32) %565 (fma.f32 #s(literal 1/16 binary32) (/.f32 %570 %572) %558)))))
(approx %254 (*.f32 ux %580))
(approx %254 (*.f32 ux (+.f32 %580 %587)))
(approx %254 (*.f32 ux (+.f32 %580 (fma.f32 #s(literal -1/16 binary32) %593 %587))))
(approx %254 (*.f32 ux (+.f32 %580 (fma.f32 #s(literal -1/16 binary32) %593 (fma.f32 #s(literal 1/4 binary32) %586 (*.f32 #s(literal 1/2 binary32) (/.f32 (-.f32 (*.f32 #s(literal 1/16 binary32) (/.f32 %570 %571)) (*.f32 #s(literal 1/16 binary32) (/.f32 %562 (*.f32 (pow.f32 %554 #s(literal 2 binary32)) %601)))) (*.f32 %606 %580))))))))
(approx %295 (*.f32 %119 %601))
(approx %295 (*.f32 %119 %619))
(approx %295 (*.f32 %119 (fma.f32 #s(literal -1/8 binary32) %623 %619)))
(approx %295 (*.f32 %119 (fma.f32 #s(literal -1/8 binary32) %623 (fma.f32 #s(literal 1/16 binary32) (/.f32 %570 %627) %619))))
(approx %303 (*.f32 %90 %633))
(approx %333 (*.f32 %119 %636))
(approx %333 (*.f32 %119 %641))
(approx %333 (*.f32 %119 (fma.f32 #s(literal -1/8 binary32) %645 %641)))
(approx %333 (*.f32 %119 (fma.f32 #s(literal -1/8 binary32) %645 (fma.f32 #s(literal 1/16 binary32) (/.f32 %649 %627) %641))))
(approx %361 %656)
(approx %361 (*.f32 %119 %660))
(approx %361 (*.f32 %119 (fma.f32 #s(literal -1/8 binary32) %664 %660)))
(approx %361 (*.f32 %119 (fma.f32 #s(literal -1/8 binary32) %664 (fma.f32 #s(literal 1/16 binary32) %669 %660))))
(approx %389 (*.f32 #s(literal 2 binary32) %656))
(approx %389 (*.f32 %119 %676))
(approx %389 (*.f32 %119 (fma.f32 #s(literal -1/4 binary32) %664 %676)))
(approx %389 (*.f32 %119 (fma.f32 #s(literal -1/4 binary32) %664 (fma.f32 #s(literal 1/8 binary32) %669 %676))))
(approx %412 (*.f32 ux %687))
(approx %412 (*.f32 ux %692))
(approx %412 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %696 %692)))
(approx %412 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %696 (fma.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %90 %570) %572) %692))))
(approx %444 (*.f32 ux %706))
(approx %444 (*.f32 ux %710))
(approx %444 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %713 %710)))
(approx %444 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %713 (fma.f32 #s(literal 1/16 binary32) (/.f32 %649 %572) %710))))
(approx %453 %723)
(approx %453 (*.f32 ux %726))
(approx %453 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %729 %726)))
(approx %453 (*.f32 ux (fma.f32 #s(literal -1/8 binary32) %729 (fma.f32 #s(literal 1/16 binary32) %733 %726))))
(approx %462 (*.f32 #s(literal 2 binary32) %723))
(approx %462 (*.f32 ux %740))
(approx %462 (*.f32 ux (fma.f32 #s(literal -1/4 binary32) %729 %740)))
(approx %462 (*.f32 ux (fma.f32 #s(literal -1/4 binary32) %729 (fma.f32 #s(literal 1/8 binary32) %733 %740))))
(approx %9 %752)
(approx %15 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 #s(literal 1 binary32) %473))))
(approx %31 (*.f32 #s(literal -1 binary32) (*.f32 %119 %758)))
(approx %31 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %758 (*.f32 #s(literal 2 binary32) (/.f32 %751 ux)))))
(approx %40 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 %750 %473))))
(approx %43 (*.f32 #s(literal -1 binary32) %752))
(approx %43 (*.f32 #s(literal -1 binary32) (*.f32 ux (-.f32 %751 %473))))
(approx %47 %779)
(approx %48 %781)
(approx %86 (*.f32 %90 %781))
(approx %116 (*.f32 #s(literal -1 binary32) %787))
(approx %116 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %786 (fma.f32 #s(literal -1 binary32) (/.f32 maxCos %787) (/.f32 #s(literal 1 binary32) %787))))))
(approx %116 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %786 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %797 (*.f32 #s(literal 1/2 binary32) (/.f32 %758 %799))) ux))))))
(approx %116 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %786 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %797 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %758 %798) (*.f32 #s(literal 1/2 binary32) (/.f32 %810 %812))) ux))) ux))))))
(approx %152 (*.f32 #s(literal -1 binary32) (*.f32 ux %825)))
(approx %152 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 %90 %786 (/.f32 %829 %787)))))
(approx %152 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %835 (*.f32 #s(literal 1/2 binary32) (/.f32 %836 %799))) ux) %825))))
(approx %152 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %835 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %836 %798) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %90 %810) %812))) ux))) ux) %825))))
(approx %201 (*.f32 %119 (-.f32 (fma.f32 #s(literal -2 binary32) %548 %473) %758)))
(approx %207 (*.f32 #s(literal -1 binary32) %864))
(approx %207 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %863 (*.f32 #s(literal 1/2 binary32) (/.f32 %193 %864))))))
(approx %207 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %863 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %873 (*.f32 #s(literal 1/8 binary32) (/.f32 %874 %876))) ux))))))
(approx %207 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %863 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %892 ux) (*.f32 #s(literal -1/2 binary32) %873)) ux))))))
(approx %241 %903)
(approx %245 %905)
(approx %248 %907)
(approx %251 %909)
(approx %254 (*.f32 #s(literal -1 binary32) %914))
(approx %254 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %913 %920))))
(approx %254 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %913 (fma.f32 #s(literal -1/4 binary32) %919 (*.f32 #s(literal 1/16 binary32) (/.f32 %874 (*.f32 %517 %925))))))))
(approx %254 (*.f32 #s(literal -1 binary32) (*.f32 ux (+.f32 %913 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 (-.f32 (*.f32 #s(literal -1/16 binary32) (/.f32 %887 %888)) (*.f32 #s(literal 1/16 binary32) (/.f32 %874 (*.f32 (pow.f32 %863 #s(literal 2 binary32)) %937)))) %914) (*.f32 #s(literal -1/16 binary32) (/.f32 %874 %925))) %517) %920)))))
(approx %295 (*.f32 %119 %937))
(approx %295 (*.f32 %119 %956))
(approx %295 (*.f32 %119 (fma.f32 #s(literal -1/2 binary32) %955 (fma.f32 #s(literal 1/8 binary32) (/.f32 %874 %959) %937))))
(approx %295 (*.f32 %119 (fma.f32 #s(literal -1 binary32) (/.f32 %892 %517) %956)))
(approx %303 (*.f32 %90 (*.f32 %781 %909)))
(approx %333 (*.f32 %119 %972))
(approx %333 (*.f32 %119 %977))
(approx %333 (*.f32 %119 (fma.f32 #s(literal -1/2 binary32) %976 (fma.f32 #s(literal 1/8 binary32) (/.f32 %980 %959) %972))))
(approx %333 (*.f32 %119 (fma.f32 #s(literal -1 binary32) (/.f32 %990 %517) %977)))
(approx %361 %996)
(approx %361 (*.f32 %119 %1000))
(approx %361 (*.f32 %119 (fma.f32 #s(literal -1/2 binary32) %999 (fma.f32 #s(literal 1/8 binary32) %1004 %995))))
(approx %361 (*.f32 %119 (fma.f32 #s(literal -1 binary32) (/.f32 %1013 %517) %1000)))
(approx %389 (*.f32 #s(literal 2 binary32) %996))
(approx %389 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %999 %1020)))
(approx %389 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %999 (fma.f32 #s(literal 1/4 binary32) %1004 %1020))))
(approx %389 (*.f32 %119 (fma.f32 #s(literal -1 binary32) %999 (fma.f32 #s(literal -1 binary32) (/.f32 %1029 %517) %1020))))
(approx %412 (*.f32 #s(literal -1 binary32) (*.f32 ux %1035)))
(approx %412 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal 1/2 binary32) (/.f32 %1039 %864) %1035))))
(approx %412 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1045 (*.f32 #s(literal 1/8 binary32) (/.f32 %1046 %876))) ux) %1035))))
(approx %412 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/8 binary32) (/.f32 %1046 %875) (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %90 %887) %889))) ux) (*.f32 #s(literal -1/2 binary32) %1045)) ux) %1035))))
(approx %444 (*.f32 #s(literal -1 binary32) (*.f32 ux %1068)))
(approx %444 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal 1/2 binary32) (/.f32 %975 %864) %1068))))
(approx %444 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1077 (*.f32 #s(literal 1/8 binary32) (/.f32 %980 %876))) ux) %1068))))
(approx %444 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %990 ux) (*.f32 #s(literal -1/2 binary32) %1077)) ux) %1068))))
(approx %453 (*.f32 #s(literal -1 binary32) %1095))
(approx %453 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal 1/2 binary32) %1098 %1094))))
(approx %453 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1103 (*.f32 #s(literal 1/8 binary32) %1104)) ux) %1094))))
(approx %453 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %1013 ux) (*.f32 #s(literal -1/2 binary32) %1103)) ux) %1094))))
(approx %462 (*.f32 #s(literal -2 binary32) %1095))
(approx %462 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal 2 binary32) %1094 %1098))))
(approx %462 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1103 (*.f32 #s(literal 1/4 binary32) %1104)) ux) %1129))))
(approx %462 (*.f32 #s(literal -1 binary32) (*.f32 ux (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1103 (*.f32 #s(literal -1 binary32) (/.f32 %1029 ux))) ux) %1129))))
(approx uy uy)
(approx %149 (*.f32 #s(literal 2 binary32) uy))
(approx %150 %89)
(approx %151 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %1147 %1148) (*.f32 #s(literal 2 binary32) %87))))
(approx %151 (*.f32 uy (fma.f32 #s(literal 2 binary32) %87 (*.f32 %1147 (fma.f32 #s(literal -4/3 binary32) %1148 (*.f32 #s(literal 4/15 binary32) (*.f32 %1147 %1155)))))))
(approx %151 (*.f32 uy (fma.f32 #s(literal 2 binary32) %87 (*.f32 %1147 (fma.f32 #s(literal -4/3 binary32) %1148 (*.f32 %1147 (fma.f32 #s(literal -8/315 binary32) (*.f32 %1147 %1165) (*.f32 #s(literal 4/15 binary32) %1155))))))))
(approx %86 (*.f32 #s(literal 2 binary32) (*.f32 uy %1175)))
(approx %86 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %1147 %1179) (*.f32 #s(literal 2 binary32) %1175))))
(approx %86 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1175 (*.f32 %1147 (fma.f32 #s(literal -4/3 binary32) %1179 (*.f32 #s(literal 4/15 binary32) (*.f32 %1147 %1185)))))))
(approx %86 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1175 (*.f32 %1147 (fma.f32 #s(literal -4/3 binary32) %1179 (*.f32 %1147 (fma.f32 #s(literal -8/315 binary32) (*.f32 %1147 (*.f32 %1165 %496)) (*.f32 #s(literal 4/15 binary32) %1185))))))))
(approx %152 (*.f32 #s(literal 2 binary32) (*.f32 uy %1205)))
(approx %152 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %1147 %1209) (*.f32 #s(literal 2 binary32) %1205))))
(approx %152 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1205 (*.f32 %1147 (fma.f32 #s(literal -4/3 binary32) %1209 (*.f32 #s(literal 4/15 binary32) (*.f32 %1147 %1215)))))))
(approx %152 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1205 (*.f32 %1147 (fma.f32 #s(literal -4/3 binary32) %1209 (*.f32 %1147 (fma.f32 #s(literal -8/315 binary32) (*.f32 %1147 (*.f32 %1165 %1204)) (*.f32 #s(literal 4/15 binary32) %1215))))))))
(approx %303 (*.f32 #s(literal 2 binary32) (*.f32 uy %1233)))
(approx %303 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %1147 %1237) (*.f32 #s(literal 2 binary32) %1233))))
(approx %303 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1233 (*.f32 %1147 (fma.f32 #s(literal -4/3 binary32) %1237 (*.f32 #s(literal 4/15 binary32) (*.f32 %1147 %1243)))))))
(approx %303 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1233 (*.f32 %1147 (fma.f32 #s(literal -4/3 binary32) %1237 (*.f32 %1147 (fma.f32 #s(literal -8/315 binary32) (*.f32 %1147 (*.f32 %1165 %633)) (*.f32 #s(literal 4/15 binary32) %1243))))))))
(approx %361 %1269)
(approx %389 (*.f32 #s(literal 2 binary32) %1269))
(approx %412 (*.f32 #s(literal 2 binary32) %1274))
(approx %412 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %1147 %1277) (*.f32 #s(literal 2 binary32) %1273))))
(approx %412 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1273 (*.f32 %1147 (fma.f32 #s(literal -4/3 binary32) %1277 (*.f32 #s(literal 4/15 binary32) (*.f32 %1147 %1283)))))))
(approx %412 (*.f32 uy (fma.f32 #s(literal 2 binary32) %1273 (*.f32 %1147 (fma.f32 #s(literal -4/3 binary32) %1277 (*.f32 %1147 (fma.f32 #s(literal -8/315 binary32) (*.f32 %1147 (*.f32 %1165 %1265)) (*.f32 #s(literal 4/15 binary32) %1283))))))))
(approx %453 %1274)
(approx %151 %90)
(approx %152 (*.f32 %90 %1204))
(approx %412 (*.f32 %90 %1265))
(approx maxCos maxCos)
(approx %9 (+.f32 ux %1308))
(approx %31 %1312)
(approx %31 (fma.f32 maxCos %1314 %1312))
(approx %31 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1317 %1314) %1312))
(approx %43 %1311)
(approx %43 %493)
(approx %116 %1323)
(approx %116 (+.f32 %1323 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1314) %1323))))
(approx %116 (+.f32 %1323 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1334) %1323) (*.f32 #s(literal 1/2 binary32) %1337)))))
(approx %116 (+.f32 %1323 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) %1337 (*.f32 maxCos (fma.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 maxCos %1343) %1345) (*.f32 #s(literal 1/2 binary32) (/.f32 %1334 %1323))))))))
(approx %152 %1355)
(approx %152 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1357) %1323) %1355))
(approx %152 (fma.f32 maxCos (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1362) %1323) (*.f32 #s(literal 1/2 binary32) %1365)) %1355))
(approx %152 (fma.f32 maxCos (fma.f32 #s(literal 1/2 binary32) %1365 (*.f32 maxCos (fma.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 maxCos (*.f32 %90 %1343)) %1345) (*.f32 #s(literal 1/2 binary32) (/.f32 %1362 %1323))))) %1355))
(approx %182 (fma.f32 #s(literal -2 binary32) %7 %23))
(approx %189 %193)
(approx %201 %1385)
(approx %201 (-.f32 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -2 binary32) %1388)) %1384))
(approx %201 (-.f32 (+.f32 #s(literal 1 binary32) (*.f32 maxCos (-.f32 (*.f32 #s(literal -1 binary32) %1317) (*.f32 #s(literal 2 binary32) %1387)))) %1384))
(approx %207 %1400)
(approx %207 (+.f32 %1400 (*.f32 #s(literal -1 binary32) %1402)))
(approx %207 (+.f32 %1400 (*.f32 maxCos %1414)))
(approx %207 (+.f32 %1400 (*.f32 maxCos %1427)))
(approx %254 %1431)
(approx %254 (+.f32 %1431 (*.f32 #s(literal -1/2 binary32) (/.f32 %1388 %1433))))
(approx %254 (+.f32 %1431 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) %1438 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos %1443) %1431))))))
(approx %254 (+.f32 %1431 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) %1438 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos (-.f32 (*.f32 #s(literal -1/2 binary32) (/.f32 %1419 %1421)) (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 ux (*.f32 %1383 %1443)) (*.f32 %1439 %1400))))) %1431) (*.f32 #s(literal 1/2 binary32) (/.f32 %1443 %1431))))))))
(approx %295 %1439)
(approx %295 (fma.f32 #s(literal -1 binary32) %1402 %1439))
(approx %295 (fma.f32 maxCos %1414 %1439))
(approx %295 (fma.f32 maxCos %1427 %1439))
(approx %333 %1476)
(approx %333 (fma.f32 #s(literal -1 binary32) %1481 %1476))
(approx %333 (fma.f32 maxCos %1489 %1476))
(approx %333 (fma.f32 maxCos %1500 %1476))
(approx %361 %1503)
(approx %361 (fma.f32 #s(literal -1 binary32) %1508 %1503))
(approx %361 (fma.f32 maxCos %1516 %1503))
(approx %361 (fma.f32 maxCos %1527 %1503))
(approx %389 %1530)
(approx %389 (fma.f32 #s(literal -2 binary32) %1508 %1530))
(approx %389 (fma.f32 #s(literal 2 binary32) %1503 %1536))
(approx %389 (fma.f32 #s(literal 2 binary32) %1503 %1543))
(approx %412 %1546)
(approx %412 (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 maxCos %1549) %1400) %1546))
(approx %412 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1554 (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos %1555) %1400))) %1546))
(approx %412 (fma.f32 maxCos (fma.f32 #s(literal -1 binary32) %1554 (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 maxCos (*.f32 ux (*.f32 %90 %1418))) %1421) (*.f32 #s(literal -1/2 binary32) (/.f32 %1555 %1400))))) %1546))
(approx %444 %1573)
(approx %444 (fma.f32 #s(literal -1 binary32) %1481 %1573))
(approx %444 (fma.f32 maxCos %1489 %1573))
(approx %444 (fma.f32 maxCos %1500 %1573))
(approx %453 %1581)
(approx %453 (fma.f32 #s(literal -1 binary32) %1508 %1581))
(approx %453 (fma.f32 maxCos %1516 %1581))
(approx %453 (fma.f32 maxCos %1527 %1581))
(approx %462 %1589)
(approx %462 (fma.f32 #s(literal -2 binary32) %1508 %1589))
(approx %462 (fma.f32 #s(literal 2 binary32) %1581 %1536))
(approx %462 (fma.f32 #s(literal 2 binary32) %1581 %1543))
(approx %9 %1308)
(approx %9 (*.f32 maxCos (-.f32 %1598 ux)))
(approx %31 (*.f32 #s(literal -1 binary32) (*.f32 %1602 %119)))
(approx %31 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) %1606 (fma.f32 #s(literal -1 binary32) %119 %1607))))
(approx %31 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) %1606 (fma.f32 #s(literal -1 binary32) %119 (+.f32 (/.f32 %1312 %1602) %1607)))))
(approx %40 (*.f32 maxCos %1620))
(approx %43 (*.f32 maxCos (-.f32 %1620 %1598)))
(approx %116 %1627)
(approx %116 (*.f32 maxCos (+.f32 %1626 (*.f32 #s(literal 1/2 binary32) %1629))))
(approx %116 (*.f32 maxCos (+.f32 %1626 %1641)))
(approx %116 (*.f32 maxCos (+.f32 %1626 (fma.f32 #s(literal -1/4 binary32) (/.f32 %1645 %1648) %1641))))
(approx %152 %1655)
(approx %152 (*.f32 maxCos (fma.f32 #s(literal 1/2 binary32) %1657 %1654)))
(approx %152 (*.f32 maxCos %1664))
(approx %152 (*.f32 maxCos (fma.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 %90 %1645) %1648) %1664)))
(approx %182 (*.f32 #s(literal -2 binary32) %7))
(approx %182 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) ux (*.f32 #s(literal 2 binary32) %1598))))
(approx %189 %192)
(approx %189 (*.f32 maxCos (-.f32 %1619 #s(literal 2 binary32))))
(approx %201 (*.f32 %1602 (-.f32 (*.f32 #s(literal -2 binary32) %1682) %119)))
(approx %201 (*.f32 %1602 (-.f32 (/.f32 #s(literal 1 binary32) %1602) (fma.f32 #s(literal 2 binary32) %1682 (+.f32 (/.f32 %1384 %1602) %119)))))
(approx %207 %1696)
(approx %207 %1701)
(approx %207 (*.f32 maxCos (+.f32 %1695 (fma.f32 #s(literal -1 binary32) %1698 %1709))))
(approx %207 (*.f32 maxCos (+.f32 %1695 (fma.f32 #s(literal -1 binary32) %1698 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1715 %1717) %1709)))))
(approx %254 (*.f32 maxCos %1725))
(approx %254 (*.f32 maxCos (+.f32 %1725 (*.f32 #s(literal -1/2 binary32) %1730))))
(approx %254 (*.f32 maxCos (+.f32 %1725 (fma.f32 #s(literal -1/2 binary32) %1730 (*.f32 #s(literal 1/4 binary32) %1736)))))
(approx %254 (*.f32 maxCos (+.f32 %1725 (fma.f32 #s(literal -1/2 binary32) %1730 (fma.f32 #s(literal 1/4 binary32) %1736 (*.f32 #s(literal 1/2 binary32) (/.f32 (-.f32 (*.f32 #s(literal 1/2 binary32) %1742) (*.f32 #s(literal 1/4 binary32) (/.f32 %1407 (*.f32 %1703 %1744)))) (*.f32 %1749 %1725))))))))
(approx %295 (*.f32 %1602 %1744))
(approx %295 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) %1760 %1744)))
(approx %295 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) %1760 %1766)))
(approx %295 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) %1760 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1715 %1770) %1766))))
(approx %333 (*.f32 %1602 %1776))
(approx %333 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) %1779 %1776)))
(approx %333 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) %1779 %1785)))
(approx %333 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) %1779 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1790 %1770) %1785))))
(approx %361 %1797)
(approx %361 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) %1799 %1796)))
(approx %361 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) %1799 %1805)))
(approx %361 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) %1799 (fma.f32 #s(literal 1/2 binary32) %1811 %1805))))
(approx %389 (*.f32 #s(literal 2 binary32) %1797))
(approx %389 (*.f32 %1602 (fma.f32 #s(literal -2 binary32) %1799 (*.f32 #s(literal 2 binary32) %1796))))
(approx %389 (*.f32 %1602 (fma.f32 #s(literal -2 binary32) %1799 (fma.f32 #s(literal 2 binary32) %1796 %1804))))
(approx %389 (*.f32 %1602 (fma.f32 #s(literal -2 binary32) %1799 (fma.f32 #s(literal 2 binary32) %1796 (+.f32 %1811 %1804)))))
(approx %412 %1832)
(approx %412 %1836)
(approx %412 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1834 %1840)))
(approx %412 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1834 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1845 %1717) %1840))))
(approx %444 %1852)
(approx %444 %1856)
(approx %444 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1854 %1859)))
(approx %444 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1854 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1790 %1717) %1859))))
(approx %453 %1869)
(approx %453 %1873)
(approx %453 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1871 %1876)))
(approx %453 (*.f32 maxCos (fma.f32 #s(literal -1 binary32) %1871 (fma.f32 #s(literal 1/2 binary32) %1880 %1876))))
(approx %462 (*.f32 #s(literal 2 binary32) %1869))
(approx %462 %1889)
(approx %462 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1871 (fma.f32 #s(literal 2 binary32) %1868 %1875))))
(approx %462 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1871 (fma.f32 #s(literal 2 binary32) %1868 (+.f32 %1880 %1875)))))
(approx %9 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (-.f32 (*.f32 #s(literal -1 binary32) %1598) %19))))
(approx %31 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) (/.f32 %1905 maxCos) %477)))
(approx %31 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1606 %1905) maxCos) %477)))
(approx %40 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (-.f32 %19 %1619))))
(approx %43 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) ux (*.f32 #s(literal -1 binary32) (/.f32 %1311 maxCos))))))
(approx %116 (*.f32 #s(literal -1 binary32) %1627))
(approx %116 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1626 (*.f32 #s(literal -1/2 binary32) (/.f32 %1905 %1627))))))
(approx %116 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1626 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1936 %1627) %1939) maxCos))))))
(approx %116 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1626 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/4 binary32) (/.f32 %1947 %1948) (*.f32 #s(literal 1/2 binary32) (/.f32 %1936 %1626))) maxCos) %1939) maxCos))))))
(approx %152 (*.f32 #s(literal -1 binary32) %1655))
(approx %152 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1/2 binary32) (/.f32 %1963 %1627) %1654))))
(approx %152 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1969 %1627) %1972) maxCos) %1654))))
(approx %152 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %90 %1947) %1948) (*.f32 #s(literal 1/2 binary32) (/.f32 %1969 %1626))) maxCos) %1972) maxCos) %1654))))
(approx %182 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -2 binary32) %1598 %23))))
(approx %189 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (-.f32 #s(literal 2 binary32) %1619))))
(approx %201 (*.f32 %1602 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1385 maxCos)) (*.f32 #s(literal -2 binary32) %1387)) maxCos)) %119)))
(approx %207 (*.f32 #s(literal -1 binary32) %1696))
(approx %207 (*.f32 #s(literal -1 binary32) %1701))
(approx %207 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1695 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1706 %1696) %2013) maxCos))))))
(approx %207 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %1695 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %2025 maxCos) %2013) maxCos))))))
(approx %254 (*.f32 #s(literal -1 binary32) %2036))
(approx %254 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %2035 %2042))))
(approx %254 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %2035 (fma.f32 #s(literal -1/4 binary32) (/.f32 %1706 (*.f32 %1646 %2039)) %2042)))))
(approx %254 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (+.f32 %2035 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 (-.f32 (*.f32 #s(literal -1/2 binary32) %1742) (*.f32 #s(literal 1/4 binary32) (/.f32 %1407 (*.f32 %1703 %2055)))) %2036) (*.f32 #s(literal 1/4 binary32) (/.f32 %1706 %2039))) %1646) %2042)))))
(approx %295 (*.f32 %1602 %2055))
(approx %295 (*.f32 %1602 %2072))
(approx %295 (*.f32 %1602 (fma.f32 #s(literal -1/2 binary32) %1765 %2072)))
(approx %295 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) (/.f32 %2025 %1646) %2072)))
(approx %333 (*.f32 %1602 %2082))
(approx %333 (*.f32 %1602 %2085))
(approx %333 (*.f32 %1602 (fma.f32 #s(literal -1/2 binary32) %1784 %2085)))
(approx %333 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) (/.f32 %2094 %1646) %2085)))
(approx %361 %2100)
(approx %361 (*.f32 %1602 %2102))
(approx %361 (*.f32 %1602 (fma.f32 #s(literal -1/2 binary32) %1804 %2102)))
(approx %361 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) (/.f32 %2111 %1646) %2102)))
(approx %389 (*.f32 #s(literal 2 binary32) %2100))
(approx %389 (*.f32 %1602 %2119))
(approx %389 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) %1804 %2119)))
(approx %389 (*.f32 %1602 (fma.f32 #s(literal -1 binary32) (/.f32 %2125 %1646) %2119)))
(approx %412 (*.f32 #s(literal -1 binary32) %1832))
(approx %412 (*.f32 #s(literal -1 binary32) %1836))
(approx %412 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1838 %1696) %2135) maxCos) %1831))))
(approx %412 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/2 binary32) (/.f32 %1845 %2021) (*.f32 #s(literal 1/2 binary32) (/.f32 %1838 %1695))) maxCos) %2135) maxCos) %1831))))
(approx %444 (*.f32 #s(literal -1 binary32) %1852))
(approx %444 (*.f32 #s(literal -1 binary32) %1856))
(approx %444 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1783 %1696) %2158) maxCos) %1851))))
(approx %444 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %2094 maxCos) %2158) maxCos) %1851))))
(approx %453 (*.f32 #s(literal -1 binary32) %1869))
(approx %453 (*.f32 #s(literal -1 binary32) %1873))
(approx %453 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %2176 %2177) maxCos) %1868))))
(approx %453 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %2111 maxCos) %2177) maxCos) %1868))))
(approx %462 (*.f32 #s(literal -2 binary32) %1869))
(approx %462 (*.f32 #s(literal -1 binary32) %1889))
(approx %462 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %2176 %2195) maxCos) %1887))))
(approx %462 (*.f32 #s(literal -1 binary32) (*.f32 maxCos (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %2125 maxCos) %2195) maxCos) %1887))))
Calls

9 calls:

TimeVariablePoint
9.0ms
maxCos
-inf
5.0ms
ux
inf
4.0ms
ux
-inf
3.0ms
ux
0
3.0ms
maxCos
inf

rewrite112.0ms (2.6%)

Memory
-0.7MiB live, 89.3MiB allocated; 14ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
082804
0123634
1429634
21448634
04138634
04365618
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
51 → 898
Calls
Call 1
Inputs
%2 = (*.f32 uy #s(literal 2 binary32))
%3 = (PI.f32 )
%4 = (*.f32 %2 %3)
%5 = (sin.f32 %4)
%8 = (*.f32 maxCos ux)
%10 = (+.f32 %3 %3)
%11 = (*.f32 %10 uy)
%12 = (-.f32 ux %8)
%13 = (sin.f32 %11)
%14 = (-.f32 #s(literal 2 binary32) ux)
%15 = (*.f32 ux %14)
%16 = (* maxCos ux)
%17 = (- ux %16)
%24 = (approx (* (- %17 0) (neg (- %17 2))) %15)
%25 = (fma.f32 maxCos ux #s(literal 2 binary32))
%26 = (-.f32 %25 ux)
%27 = (fabs.f32 %26)
%28 = (sqrt.f32 %27)
%29 = (*.f32 %28 %13)
%30 = (sqrt.f32 %24)
%32 = (*.f32 #s(literal 2 binary32) ux)
%36 = (approx (* ux (- 2 (* 2 maxCos))) %32)
%37 = (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32))
%38 = (*.f32 %37 ux)
%39 = (fma.f32 ux maxCos %14)
%46 = (approx (- 1 (pow (- (- %16 -1) ux) 2)) %38)
%47 = (sqrt.f32 %46)
%48 = (fabs.f32 %12)
%49 = (sqrt.f32 %48)
%50 = (sqrt.f32 %49)
%51 = (*.f32 %50 %50)
%52 = (sqrt.f32 %47)
%53 = (*.f32 %52 %52)
%54 = (*.f32 %12 %39)
%55 = (sqrt.f32 %54)
%58 = (*.f32 %3 %53)
%59 = (*.f32 uy %58)
%60 = (*.f32 #s(literal 2 binary32) %59)
%67 = (+ (- 1 ux) (* ux maxCos))
%71 = (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %67 %67))))
%77 = (approx (- 1 (pow (- (+ 1 %16) ux) 2)) %36)
%78 = (sqrt.f32 %77)
%79 = (*.f32 %3 %78)
%80 = (*.f32 uy %79)
%81 = (*.f32 #s(literal 2 binary32) %80)
uy
#s(literal 2 binary32)
%2
%3
%4
%5
ux
maxCos
%8
#s(literal -2 binary32)
%10
%11
%12
%13
%14
%15
%24
%25
%26
%27
%28
%29
%30
(*.f32 %5 %30)
%32
%36
%37
%38
%39
%46
%47
%48
%49
%50
%51
%52
%53
%54
%55
(*.f32 %5 %55)
(*.f32 %51 %29)
%58
%59
%60
(approx %71 %60)
%77
%78
%79
%80
%81
(approx %71 %81)
Outputs
%5 = (+.f32 uy uy)
%9 = (*.f32 uy #s(literal 1 binary32))
%12 = (*.f32 #s(literal 1 binary32) uy)
%15 = (neg.f32 uy)
%22 = (PI.f32 )
%23 = (*.f32 %22 uy)
%24 = (*.f32 %23 #s(literal 2 binary32))
%25 = (+.f32 %22 %22)
%26 = (*.f32 %25 uy)
%27 = (*.f32 %22 %5)
%28 = (*.f32 %5 %22)
%29 = (*.f32 #s(literal 2 binary32) %23)
%30 = (*.f32 uy %25)
%32 = (/.f32 #s(literal 1 binary32) (pow.f32 %27 #s(literal -1 binary32)))
%33 = (neg.f32 %23)
%34 = (-.f32 %23 %33)
%35 = (fma.f32 %22 uy %23)
%36 = (fma.f32 uy %22 %23)
%37 = (pow.f32 %27 #s(literal 1 binary32))
%38 = (+.f32 %23 %23)
%39 = (sin.f32 %23)
%40 = (cos.f32 %23)
%41 = (*.f32 %39 %40)
%42 = (*.f32 #s(literal 2 binary32) %41)
%43 = (sin.f32 %27)
%45 = (/.f32 #s(literal 1 binary32) (pow.f32 %43 #s(literal -1 binary32)))
%46 = (*.f32 %40 %39)
%47 = (fma.f32 %39 %40 %46)
%48 = (pow.f32 %43 #s(literal 1 binary32))
%49 = (+.f32 %41 %46)
%52 = (*.f32 maxCos ux)
%62 = (neg.f32 maxCos)
%63 = (*.f32 %62 ux)
%77 = (neg.f32 %22)
%78 = (neg.f32 %77)
%86 = (-.f32 %62 #s(literal -1 binary32))
%88 = (-.f32 ux %52)
%98 = (neg.f32 ux)
%100 = (-.f32 %52 ux)
%103 = (neg.f32 %62)
%104 = (*.f32 %103 ux)
%107 = (neg.f32 %98)
%128 = (-.f32 #s(literal 2 binary32) ux)
%137 = (-.f32 #s(literal 1 binary32) ux)
%139 = (neg.f32 %107)
%142 = (-.f32 ux #s(literal 2 binary32))
%144 = (*.f32 %128 ux)
%148 = (+.f32 ux ux)
%149 = (*.f32 ux %98)
%152 = (*.f32 %98 ux)
%166 = (* maxCos ux)
%172 = (approx (* (- %166 ux) (- (- ux 2) %166)) %144)
%173 = (sqrt.f32 %172)
%174 = (neg.f32 %173)
%179 = (*.f32 %172 %172)
%190 = (fma.f32 maxCos ux #s(literal 1 binary32))
%195 = (fma.f32 maxCos ux #s(literal 2 binary32))
%199 = (-.f32 #s(literal -1 binary32) %52)
%208 = (*.f32 %62 %98)
%210 = (*.f32 %98 %62)
%213 = (*.f32 %107 maxCos)
%216 = (-.f32 #s(literal -2 binary32) %52)
%218 = (-.f32 %195 ux)
%220 = (/.f32 (fma.f32 %218 #s(literal 2 binary32) #s(literal 0 binary32)) #s(literal 2 binary32))
%223 = (/.f32 (-.f32 (*.f32 %218 #s(literal 2 binary32)) #s(literal 0 binary32)) #s(literal 2 binary32))
%225 = (/.f32 #s(literal 1 binary32) (pow.f32 %218 #s(literal -1 binary32)))
%226 = (-.f32 %98 %216)
%227 = (-.f32 %100 #s(literal -2 binary32))
%229 = (-.f32 #s(literal 1 binary32) (+.f32 %199 ux))
%231 = (-.f32 #s(literal 1 binary32) (-.f32 ux %190))
%232 = (-.f32 %218 #s(literal 0 binary32))
%233 = (-.f32 %195 %107)
%234 = (-.f32 %52 %142)
%235 = (-.f32 %128 %63)
%236 = (-.f32 #s(literal 2 binary32) %88)
%237 = (fma.f32 maxCos ux %128)
%238 = (fma.f32 ux maxCos %128)
%239 = (pow.f32 %218 #s(literal 1 binary32))
%240 = (+.f32 %98 %195)
%241 = (+.f32 %100 #s(literal 2 binary32))
%243 = (+.f32 #s(literal 1 binary32) (fma.f32 maxCos ux %137))
%244 = (+.f32 %218 #s(literal 0 binary32))
%245 = (+.f32 %195 %139)
%246 = (+.f32 %195 %98)
%247 = (+.f32 %52 %128)
%248 = (+.f32 %128 %208)
%249 = (+.f32 %128 %210)
%250 = (+.f32 %128 %104)
%251 = (+.f32 %128 %213)
%252 = (+.f32 %128 %52)
%255 = (+.f32 #s(literal 2 binary32) (*.f32 (neg.f32 %86) ux))
%256 = (+.f32 #s(literal 2 binary32) %100)
%257 = (-.f32 ux %195)
%258 = (neg.f32 %257)
%259 = (fabs.f32 %218)
%260 = (sqrt.f32 %259)
%261 = (neg.f32 %260)
%266 = (*.f32 %218 %218)
%282 = (sqrt.f32 %260)
%293 = (*.f32 %260 %43)
%298 = (sqrt.f32 %173)
%308 = (*.f32 %173 %43)
%317 = (*.f32 ux #s(literal 1 binary32))
%320 = (*.f32 #s(literal 1 binary32) ux)
%335 = (approx (* (- 2 (* maxCos 2)) ux) %148)
%339 = (fma.f32 #s(literal -2 binary32) maxCos #s(literal 1 binary32))
%344 = (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32))
%348 = (-.f32 #s(literal 2 binary32) maxCos)
%350 = (*.f32 #s(literal -2 binary32) maxCos)
%354 = (*.f32 %62 #s(literal -2 binary32))
%356 = (+.f32 maxCos maxCos)
%372 = (fma.f32 maxCos #s(literal 2 binary32) #s(literal -2 binary32))
%374 = (*.f32 %344 ux)
%378 = (*.f32 ux %350)
%379 = (neg.f32 %148)
%381 = (*.f32 %350 ux)
%405 = (- ux (- %166 -1))
%407 = (- 1 (pow %405 2))
%408 = (approx %407 %374)
%409 = (sqrt.f32 %408)
%410 = (sqrt.f32 %409)
%411 = (neg.f32 %410)
%412 = (neg.f32 %411)
%413 = (*.f32 %412 %411)
%415 = (*.f32 %412 %410)
%417 = (*.f32 %411 %412)
%419 = (*.f32 %410 %412)
%421 = (neg.f32 %409)
%422 = (neg.f32 %421)
%424 = (*.f32 %411 %409)
%427 = (sqrt.f32 (*.f32 %408 %409))
%429 = (*.f32 %411 %410)
%431 = (*.f32 %410 %411)
%441 = (*.f32 %408 %408)
%459 = (neg.f32 %412)
%460 = (*.f32 %459 %459)
%461 = (sqrt.f32 %427)
%462 = (sqrt.f32 %410)
%463 = (*.f32 %461 %462)
%464 = (*.f32 %412 %412)
%465 = (*.f32 %462 %461)
%466 = (*.f32 %411 %411)
%467 = (*.f32 %410 %410)
%469 = (/.f32 #s(literal 1 binary32) (pow.f32 %411 #s(literal -2 binary32)))
%471 = (/.f32 #s(literal 1 binary32) (pow.f32 %410 #s(literal -2 binary32)))
%473 = (/.f32 #s(literal 1 binary32) (pow.f32 %409 #s(literal -1 binary32)))
%474 = (pow.f32 %412 #s(literal 2 binary32))
%475 = (pow.f32 %441 #s(literal 1/4 binary32))
%476 = (pow.f32 %411 #s(literal 2 binary32))
%477 = (pow.f32 %410 #s(literal 2 binary32))
%478 = (pow.f32 %409 #s(literal 1 binary32))
%479 = (pow.f32 %408 #s(literal 1/2 binary32))
%480 = (fabs.f32 %422)
%481 = (fabs.f32 %429)
%482 = (fabs.f32 %431)
%483 = (fabs.f32 %421)
%484 = (fabs.f32 %409)
%485 = (neg.f32 %429)
%486 = (neg.f32 %431)
%487 = (fabs.f32 %100)
%488 = (sqrt.f32 %487)
%489 = (sqrt.f32 %488)
%490 = (neg.f32 %489)
%491 = (neg.f32 %490)
%492 = (*.f32 %491 %490)
%494 = (*.f32 %491 %489)
%496 = (*.f32 %490 %491)
%498 = (*.f32 %489 %491)
%503 = (neg.f32 %488)
%504 = (neg.f32 %503)
%506 = (*.f32 %490 %488)
%509 = (sqrt.f32 (*.f32 %488 %487))
%511 = (*.f32 %490 %489)
%513 = (*.f32 %489 %490)
%523 = (*.f32 %100 %100)
%543 = (neg.f32 %491)
%544 = (*.f32 %543 %543)
%545 = (sqrt.f32 %509)
%546 = (sqrt.f32 %489)
%547 = (*.f32 %545 %546)
%548 = (*.f32 %491 %491)
%549 = (*.f32 %546 %545)
%550 = (*.f32 %490 %490)
%551 = (*.f32 %489 %489)
%553 = (/.f32 #s(literal 1 binary32) (pow.f32 %490 #s(literal -2 binary32)))
%555 = (/.f32 #s(literal 1 binary32) (pow.f32 %489 #s(literal -2 binary32)))
%557 = (/.f32 #s(literal 1 binary32) (pow.f32 %488 #s(literal -1 binary32)))
%558 = (pow.f32 %491 #s(literal 2 binary32))
%559 = (pow.f32 %523 #s(literal 1/4 binary32))
%560 = (pow.f32 %490 #s(literal 2 binary32))
%561 = (pow.f32 %489 #s(literal 2 binary32))
%562 = (pow.f32 %488 #s(literal 1 binary32))
%563 = (pow.f32 %487 #s(literal 1/2 binary32))
%564 = (fabs.f32 %504)
%565 = (fabs.f32 %511)
%566 = (fabs.f32 %513)
%567 = (fabs.f32 %503)
%568 = (fabs.f32 %488)
%569 = (neg.f32 %511)
%570 = (neg.f32 %513)
%571 = (neg.f32 %546)
%585 = (neg.f32 %462)
%598 = (*.f32 %511 %260)
%600 = (*.f32 %513 %260)
%602 = (*.f32 %503 %260)
%604 = (*.f32 %100 %257)
%605 = (sqrt.f32 %604)
%606 = (neg.f32 %605)
%609 = (*.f32 %490 %260)
%610 = (*.f32 %609 %609)
%613 = (sqrt.f32 (*.f32 %488 %259))
%614 = (*.f32 %613 %613)
%622 = (*.f32 %523 %266)
%624 = (*.f32 %604 %604)
%626 = (*.f32 %218 ux)
%627 = (*.f32 %218 %63)
%630 = (*.f32 %88 %195)
%631 = (*.f32 %88 %98)
%634 = (*.f32 ux %218)
%635 = (*.f32 %63 %218)
%638 = (*.f32 %195 %88)
%639 = (*.f32 %98 %88)
%642 = (*.f32 %128 %88)
%643 = (*.f32 %52 %88)
%658 = (neg.f32 %642)
%660 = (*.f32 %218 #s(literal 0 binary32))
%663 = (*.f32 #s(literal 0 binary32) %218)
%672 = (*.f32 %88 maxCos)
%673 = (neg.f32 %658)
%676 = (*.f32 %88 ux)
%706 = (*.f32 ux %88)
%709 = (*.f32 maxCos %88)
%738 = (*.f32 %100 %218)
%740 = (*.f32 %257 %88)
%747 = (sqrt.f32 %605)
%776 = (*.f32 (*.f32 %488 %43) %260)
%778 = (*.f32 (*.f32 %293 %490) %490)
%779 = (*.f32 %43 %488)
%780 = (*.f32 %779 %260)
%781 = (*.f32 %613 %43)
%782 = (*.f32 %781 %489)
%784 = (*.f32 %490 (*.f32 %490 %293))
%785 = (*.f32 %605 %43)
%786 = (*.f32 %489 %781)
%787 = (*.f32 %488 %293)
%788 = (*.f32 %293 %488)
%789 = (*.f32 %260 %779)
%790 = (*.f32 %43 %605)
%792 = (/.f32 #s(literal 1 binary32) (pow.f32 %785 #s(literal -1 binary32)))
%793 = (pow.f32 %785 #s(literal 1 binary32))
%796 = (*.f32 %410 %22)
%801 = (*.f32 %409 %22)
%806 = (*.f32 %23 %411)
%808 = (*.f32 %23 %410)
%810 = (*.f32 uy %796)
%812 = (*.f32 uy %409)
%814 = (*.f32 %410 uy)
%816 = (*.f32 %23 %409)
%819 = (*.f32 %409 uy)
%829 = (*.f32 #s(literal 2 binary32) %801)
%837 = (*.f32 %409 %27)
%848 = (*.f32 %816 #s(literal 1 binary32))
%851 = (*.f32 #s(literal 1 binary32) %816)
%854 = (*.f32 %33 %409)
%856 = (neg.f32 %801)
%857 = (*.f32 %856 uy)
%859 = (*.f32 %15 %801)
%861 = (neg.f32 %816)
%863 = (neg.f32 %33)
%864 = (*.f32 %863 %409)
%867 = (*.f32 (neg.f32 %856) uy)
%869 = (neg.f32 %15)
%870 = (*.f32 %869 %801)
%872 = (neg.f32 %854)
%874 = (neg.f32 %857)
%876 = (neg.f32 %859)
%878 = (neg.f32 %861)
%980 = (* (sin (acos %405)) (sin (* (PI ) (* 2 uy))))
%981 = (approx %980 %837)
%985 = (approx %407 %335)
%986 = (sqrt.f32 %985)
%987 = (neg.f32 %986)
%992 = (*.f32 %985 %985)
%1002 = (sqrt.f32 %986)
%1012 = (*.f32 %986 %22)
%1017 = (*.f32 uy %986)
%1019 = (*.f32 %23 %986)
%1022 = (*.f32 %986 uy)
%1030 = (*.f32 #s(literal 2 binary32) %1012)
%1038 = (*.f32 %986 %27)
%1049 = (*.f32 %1019 #s(literal 1 binary32))
%1052 = (*.f32 #s(literal 1 binary32) %1019)
%1055 = (*.f32 %33 %986)
%1057 = (neg.f32 %1012)
%1058 = (*.f32 %1057 uy)
%1060 = (*.f32 %15 %1012)
%1062 = (neg.f32 %1019)
%1064 = (*.f32 %863 %986)
%1067 = (*.f32 (neg.f32 %1057) uy)
%1069 = (*.f32 %869 %1012)
%1071 = (neg.f32 %1055)
%1073 = (neg.f32 %1058)
%1075 = (neg.f32 %1060)
%1077 = (neg.f32 %1062)
%1141 = (approx %980 %1038)
uy
#s(literal 2 binary32)
(*.f32 #s(literal 2 binary32) uy)
(*.f32 uy #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %5 #s(literal -1 binary32)))
(-.f32 %9 (neg.f32 %9))
(-.f32 %12 (neg.f32 %12))
(-.f32 uy %15)
(fma.f32 #s(literal 1 binary32) uy %12)
(fma.f32 uy #s(literal 1 binary32) %9)
(pow.f32 %5 #s(literal 1 binary32))
(+.f32 %9 %9)
(+.f32 %12 %12)
%5
%22
%24
%26
%27
%28
%29
%30
%32
%34
%35
%36
%37
%38
%42
%45
%47
%48
%49
%43
ux
maxCos
%52
(*.f32 ux maxCos)
(/.f32 (fma.f32 %52 #s(literal 2 binary32) #s(literal 0 binary32)) #s(literal 2 binary32))
(/.f32 (-.f32 (*.f32 %52 #s(literal 2 binary32)) #s(literal 0 binary32)) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %52 #s(literal -1 binary32)))
(-.f32 #s(literal 0 binary32) %63)
(-.f32 %52 #s(literal 0 binary32))
(fma.f32 maxCos ux #s(literal 0 binary32))
(fma.f32 ux maxCos #s(literal 0 binary32))
(pow.f32 %52 #s(literal 1 binary32))
(+.f32 #s(literal 0 binary32) %52)
(+.f32 %52 #s(literal 0 binary32))
(neg.f32 %63)
#s(literal -2 binary32)
(*.f32 %22 #s(literal 2 binary32))
(*.f32 #s(literal 2 binary32) %22)
(/.f32 #s(literal 1 binary32) (pow.f32 %25 #s(literal -1 binary32)))
(-.f32 %22 (neg.f32 %78))
(-.f32 %22 %77)
(pow.f32 %25 #s(literal 1 binary32))
(+.f32 %22 %78)
%25
(neg.f32 (-.f32 %77 %22))
%24
%26
%27
%28
%29
%30
%32
%34
%35
%36
%37
%38
(*.f32 %86 ux)
(/.f32 (fma.f32 %88 #s(literal 2 binary32) #s(literal 0 binary32)) #s(literal 2 binary32))
(/.f32 (-.f32 (*.f32 %88 #s(literal 2 binary32)) #s(literal 0 binary32)) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %88 #s(literal -1 binary32)))
(-.f32 %63 (-.f32 #s(literal 0 binary32) ux))
(-.f32 %63 %98)
(-.f32 #s(literal 0 binary32) %100)
(-.f32 %88 #s(literal 0 binary32))
(-.f32 ux %104)
%88
(fma.f32 %86 ux #s(literal 0 binary32))
(fma.f32 %62 ux %107)
(fma.f32 %62 ux ux)
(fma.f32 %98 maxCos %107)
(fma.f32 %98 maxCos ux)
(fma.f32 maxCos %98 %107)
(fma.f32 maxCos %98 ux)
(fma.f32 ux %62 %107)
(fma.f32 ux %62 ux)
(pow.f32 %88 #s(literal 1 binary32))
(+.f32 %63 %107)
(+.f32 %63 ux)
(+.f32 #s(literal 0 binary32) %88)
(+.f32 %88 #s(literal 0 binary32))
(+.f32 ux (*.f32 (neg.f32 %103) ux))
(+.f32 ux (neg.f32 %104))
(+.f32 ux %63)
(neg.f32 %100)
%42
%45
%47
%48
%49
%43
(/.f32 #s(literal 1 binary32) (pow.f32 %128 #s(literal -1 binary32)))
(-.f32 %98 #s(literal -2 binary32))
(-.f32 #s(literal 1 binary32) (-.f32 ux #s(literal 1 binary32)))
(-.f32 #s(literal 2 binary32) %107)
%128
(pow.f32 %128 #s(literal 1 binary32))
(+.f32 %98 #s(literal 2 binary32))
(+.f32 #s(literal 1 binary32) %137)
(+.f32 #s(literal 2 binary32) %139)
(+.f32 #s(literal 2 binary32) %98)
(neg.f32 %142)
%144
(*.f32 ux %128)
(/.f32 #s(literal 1 binary32) (pow.f32 %144 #s(literal -1 binary32)))
(-.f32 %148 (neg.f32 %149))
(-.f32 %148 (neg.f32 %152))
(fma.f32 ux #s(literal 2 binary32) %149)
(fma.f32 ux #s(literal 2 binary32) %152)
(fma.f32 #s(literal 2 binary32) ux %149)
(fma.f32 #s(literal 2 binary32) ux %152)
(pow.f32 %144 #s(literal 1 binary32))
(+.f32 %148 %149)
(+.f32 %148 %152)
(neg.f32 (*.f32 %142 ux))
(neg.f32 (*.f32 ux %142))
(*.f32 %174 %174)
(*.f32 %173 %173)
(/.f32 #s(literal 1 binary32) (pow.f32 %172 #s(literal -1 binary32)))
(sqrt.f32 %179)
%172
(pow.f32 %179 #s(literal 1/2 binary32))
(pow.f32 %173 #s(literal 2 binary32))
(pow.f32 %172 #s(literal 1 binary32))
(fabs.f32 (*.f32 %174 %173))
(fabs.f32 (*.f32 %173 %174))
(fabs.f32 %172)
(/.f32 (fma.f32 %190 #s(literal 1 binary32) #s(literal 1 binary32)) #s(literal 1 binary32))
(/.f32 (fma.f32 %190 #s(literal 2 binary32) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %195 #s(literal -1 binary32)))
(-.f32 %190 #s(literal -1 binary32))
(-.f32 #s(literal 1 binary32) %199)
(-.f32 %52 #s(literal -2 binary32))
(-.f32 #s(literal 2 binary32) %63)
%195
(fma.f32 ux maxCos #s(literal 2 binary32))
(pow.f32 %195 #s(literal 1 binary32))
(+.f32 %190 #s(literal 1 binary32))
(+.f32 #s(literal 1 binary32) %190)
(+.f32 %52 #s(literal 2 binary32))
(+.f32 #s(literal 2 binary32) %208)
(+.f32 #s(literal 2 binary32) %210)
(+.f32 #s(literal 2 binary32) %104)
(+.f32 #s(literal 2 binary32) %213)
(+.f32 #s(literal 2 binary32) %52)
(neg.f32 %216)
%220
%223
%225
%226
%227
%229
%231
%232
%233
%218
%234
%235
%236
%237
%238
%239
%240
%241
%243
%244
%245
%246
%247
%248
%249
%250
%251
%252
%255
%256
%258
(*.f32 %261 %261)
(*.f32 %260 %260)
(/.f32 #s(literal 1 binary32) (pow.f32 %259 #s(literal -1 binary32)))
(sqrt.f32 %266)
(pow.f32 (*.f32 %266 %266) #s(literal 1/4 binary32))
(pow.f32 %266 #s(literal 1/2 binary32))
(pow.f32 %260 #s(literal 2 binary32))
(pow.f32 %259 #s(literal 1 binary32))
(fabs.f32 (neg.f32 %259))
(fabs.f32 (*.f32 %261 %260))
(fabs.f32 (*.f32 %260 %261))
(fabs.f32 %259)
%259
(fabs.f32 %257)
(*.f32 %282 %282)
(/.f32 #s(literal 1 binary32) (pow.f32 %260 #s(literal -1 binary32)))
%260
(pow.f32 %266 #s(literal 1/4 binary32))
(pow.f32 %260 #s(literal 1 binary32))
(pow.f32 %259 #s(literal 1/2 binary32))
(fabs.f32 (neg.f32 %261))
(fabs.f32 %261)
(fabs.f32 %260)
%293
(*.f32 %43 %260)
(/.f32 #s(literal 1 binary32) (pow.f32 %293 #s(literal -1 binary32)))
(pow.f32 %293 #s(literal 1 binary32))
(*.f32 %298 %298)
(/.f32 #s(literal 1 binary32) (pow.f32 %173 #s(literal -1 binary32)))
%173
(pow.f32 %173 #s(literal 1 binary32))
(pow.f32 %172 #s(literal 1/2 binary32))
(fabs.f32 (neg.f32 %174))
(fabs.f32 %174)
(fabs.f32 %173)
%308
(*.f32 %43 %173)
(/.f32 #s(literal 1 binary32) (pow.f32 %308 #s(literal -1 binary32)))
(pow.f32 %308 #s(literal 1 binary32))
(*.f32 ux #s(literal 2 binary32))
(*.f32 #s(literal 2 binary32) ux)
(/.f32 #s(literal 1 binary32) (pow.f32 %148 #s(literal -1 binary32)))
(-.f32 %317 (neg.f32 %317))
(-.f32 %320 (neg.f32 %320))
(-.f32 ux %98)
(fma.f32 #s(literal 1 binary32) ux %320)
(fma.f32 ux #s(literal 1 binary32) %317)
(pow.f32 %148 #s(literal 1 binary32))
(+.f32 %317 %317)
(+.f32 %320 %320)
(+.f32 ux %107)
%148
(neg.f32 (-.f32 %98 ux))
(/.f32 #s(literal 1 binary32) (pow.f32 %335 #s(literal -1 binary32)))
%335
(pow.f32 %335 #s(literal 1 binary32))
(/.f32 (fma.f32 %339 #s(literal 1 binary32) #s(literal 1 binary32)) #s(literal 1 binary32))
(/.f32 (fma.f32 %339 #s(literal 2 binary32) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %344 #s(literal -1 binary32)))
(-.f32 %339 #s(literal -1 binary32))
(-.f32 %348 maxCos)
(-.f32 %350 #s(literal -2 binary32))
(-.f32 #s(literal 1 binary32) (fma.f32 maxCos #s(literal 2 binary32) #s(literal -1 binary32)))
(-.f32 #s(literal 2 binary32) %354)
(-.f32 #s(literal 2 binary32) %356)
(fma.f32 %62 #s(literal 2 binary32) #s(literal 2 binary32))
%344
(fma.f32 maxCos #s(literal -2 binary32) #s(literal 2 binary32))
(fma.f32 #s(literal 2 binary32) %62 #s(literal 2 binary32))
(pow.f32 %344 #s(literal 1 binary32))
(+.f32 %339 #s(literal 1 binary32))
(+.f32 %348 %62)
(+.f32 %350 #s(literal 2 binary32))
(+.f32 #s(literal 1 binary32) (-.f32 #s(literal 1 binary32) %356))
(+.f32 #s(literal 2 binary32) (*.f32 %103 #s(literal -2 binary32)))
(+.f32 #s(literal 2 binary32) (neg.f32 %354))
(+.f32 #s(literal 2 binary32) %350)
(neg.f32 %372)
%374
(*.f32 ux %344)
(/.f32 #s(literal 1 binary32) (pow.f32 %374 #s(literal -1 binary32)))
(-.f32 %378 %379)
(-.f32 %381 %379)
(-.f32 %148 (neg.f32 %378))
(-.f32 %148 (neg.f32 %381))
(fma.f32 %350 ux %148)
(fma.f32 ux %350 %148)
(fma.f32 ux #s(literal 2 binary32) %378)
(fma.f32 ux #s(literal 2 binary32) %381)
(fma.f32 #s(literal 2 binary32) ux %378)
(fma.f32 #s(literal 2 binary32) ux %381)
(pow.f32 %374 #s(literal 1 binary32))
(+.f32 %378 %148)
(+.f32 %381 %148)
(+.f32 %148 %378)
(+.f32 %148 %381)
(neg.f32 (*.f32 %372 ux))
(neg.f32 (*.f32 ux %372))
%220
%223
%225
%226
%227
%229
%231
%232
%233
%218
%234
%235
%236
%237
%238
%239
%240
%241
%243
%244
%245
%246
%247
%248
%249
%250
%251
%252
%255
%256
%258
(*.f32 %413 %413)
(*.f32 %415 %415)
(*.f32 %417 %417)
(*.f32 %419 %419)
(*.f32 %422 %422)
(*.f32 %424 %411)
(*.f32 %427 %410)
(*.f32 %429 %429)
(*.f32 %431 %431)
(*.f32 %421 %421)
(*.f32 %411 %424)
(*.f32 %410 %427)
(*.f32 %409 %409)
(/.f32 #s(literal 1 binary32) (pow.f32 %409 #s(literal -2 binary32)))
(/.f32 #s(literal 1 binary32) (pow.f32 %408 #s(literal -1 binary32)))
(sqrt.f32 %441)
%408
(pow.f32 %429 #s(literal 2 binary32))
(pow.f32 %431 #s(literal 2 binary32))
(pow.f32 %421 #s(literal 2 binary32))
(pow.f32 %441 #s(literal 1/2 binary32))
(pow.f32 %411 #s(literal 4 binary32))
(pow.f32 %410 #s(literal 4 binary32))
(pow.f32 %409 #s(literal 2 binary32))
(pow.f32 %408 #s(literal 1 binary32))
(fabs.f32 (neg.f32 %408))
(fabs.f32 (*.f32 %421 %409))
(fabs.f32 (*.f32 %409 %421))
(fabs.f32 %408)
%460
%463
%464
%465
%466
%467
%469
%471
%473
%409
%474
%475
%476
%477
%478
%479
%480
%481
%482
%483
%484
%485
%486
(*.f32 %492 %492)
(*.f32 %494 %494)
(*.f32 %496 %496)
(*.f32 %498 %498)
(*.f32 (fabs.f32 %86) (fabs.f32 ux))
(*.f32 %504 %504)
(*.f32 %506 %490)
(*.f32 %509 %489)
(*.f32 %511 %511)
(*.f32 %513 %513)
(*.f32 %503 %503)
(*.f32 %490 %506)
(*.f32 %489 %509)
(*.f32 %488 %488)
(/.f32 #s(literal 1 binary32) (pow.f32 %488 #s(literal -2 binary32)))
(/.f32 #s(literal 1 binary32) (pow.f32 %487 #s(literal -1 binary32)))
(sqrt.f32 %523)
(pow.f32 (*.f32 %523 %523) #s(literal 1/4 binary32))
(pow.f32 %511 #s(literal 2 binary32))
(pow.f32 %513 #s(literal 2 binary32))
(pow.f32 %503 #s(literal 2 binary32))
(pow.f32 %523 #s(literal 1/2 binary32))
(pow.f32 %490 #s(literal 4 binary32))
(pow.f32 %489 #s(literal 4 binary32))
(pow.f32 %488 #s(literal 2 binary32))
(pow.f32 %487 #s(literal 1 binary32))
(fabs.f32 (neg.f32 %487))
(fabs.f32 (*.f32 %503 %488))
(fabs.f32 (*.f32 %488 %503))
%487
(fabs.f32 %487)
(fabs.f32 %88)
%544
%547
%548
%549
%550
%551
%553
%555
%557
%488
%558
%559
%560
%561
%562
%563
%564
%565
%566
%567
%568
%569
%570
(*.f32 %571 %571)
(*.f32 %546 %546)
(/.f32 #s(literal 1 binary32) (pow.f32 %489 #s(literal -1 binary32)))
%489
(pow.f32 %546 #s(literal 2 binary32))
(pow.f32 %523 #s(literal 1/8 binary32))
(pow.f32 %489 #s(literal 1 binary32))
(pow.f32 %488 #s(literal 1/2 binary32))
(pow.f32 %487 #s(literal 1/4 binary32))
(fabs.f32 %491)
(fabs.f32 %490)
(fabs.f32 %489)
%544
%547
%548
%549
%550
%551
%553
%555
%557
%488
%558
%559
%560
%561
%562
%563
%564
%565
%566
%567
%568
%569
%570
(*.f32 %585 %585)
(*.f32 %462 %462)
(/.f32 #s(literal 1 binary32) (pow.f32 %410 #s(literal -1 binary32)))
%410
(pow.f32 %462 #s(literal 2 binary32))
(pow.f32 %441 #s(literal 1/8 binary32))
(pow.f32 %410 #s(literal 1 binary32))
(pow.f32 %409 #s(literal 1/2 binary32))
(pow.f32 %408 #s(literal 1/4 binary32))
(fabs.f32 %412)
(fabs.f32 %411)
(fabs.f32 %410)
%460
%463
%464
%465
%466
%467
%469
%471
%473
%409
%474
%475
%476
%477
%478
%479
%480
%481
%482
%483
%484
%485
%486
(*.f32 %598 %598)
(*.f32 %600 %600)
(*.f32 %602 %602)
(*.f32 %606 %606)
%604
(*.f32 %605 %605)
(*.f32 %488 %610)
(*.f32 %488 %614)
(*.f32 %487 %259)
(*.f32 %259 %487)
(*.f32 %218 %88)
(*.f32 %88 %218)
(/.f32 #s(literal 1 binary32) (pow.f32 %604 #s(literal -1 binary32)))
(sqrt.f32 %622)
(sqrt.f32 %624)
(-.f32 %626 (neg.f32 %627))
(-.f32 %630 (neg.f32 %631))
(-.f32 %634 (neg.f32 %635))
(-.f32 %638 (neg.f32 %639))
(-.f32 %642 (neg.f32 %643))
(-.f32 %642 (*.f32 %100 %52))
(-.f32 %642 (*.f32 %52 %100))
(-.f32 %643 (*.f32 %128 %100))
(-.f32 %643 (*.f32 %88 %142))
(-.f32 %643 (*.f32 %100 %128))
(-.f32 %643 (*.f32 %142 %88))
(-.f32 %643 %658)
(-.f32 %604 (neg.f32 %660))
(-.f32 %604 (neg.f32 %663))
(fma.f32 %598 %598 %660)
(fma.f32 %598 %598 %663)
(fma.f32 %600 %600 %660)
(fma.f32 %600 %600 %663)
(fma.f32 %602 %602 %660)
(fma.f32 %602 %602 %663)
(fma.f32 %672 ux %673)
(fma.f32 %672 ux %642)
(fma.f32 %676 maxCos %673)
(fma.f32 %676 maxCos %642)
(fma.f32 %606 %606 %660)
(fma.f32 %606 %606 %663)
(fma.f32 %100 %257 %660)
(fma.f32 %100 %257 %663)
(fma.f32 %605 %605 %660)
(fma.f32 %605 %605 %663)
(fma.f32 %488 %610 %660)
(fma.f32 %488 %610 %663)
(fma.f32 %488 %614 %660)
(fma.f32 %488 %614 %663)
(fma.f32 %487 %259 %660)
(fma.f32 %487 %259 %663)
(fma.f32 %259 %487 %660)
(fma.f32 %259 %487 %663)
(fma.f32 %218 %88 %660)
(fma.f32 %218 %88 %663)
(fma.f32 %218 ux %627)
(fma.f32 %195 %88 %639)
(fma.f32 %52 %88 %673)
(fma.f32 %52 %88 %642)
(fma.f32 %128 %88 %643)
(fma.f32 %88 %218 %660)
(fma.f32 %88 %218 %663)
(fma.f32 %88 %195 %631)
(fma.f32 %88 %52 %673)
(fma.f32 %88 %52 %642)
(fma.f32 %88 %128 %643)
(fma.f32 maxCos %706 %673)
(fma.f32 maxCos %706 %642)
(fma.f32 ux %709 %673)
(fma.f32 ux %709 %642)
(fma.f32 ux %218 %635)
(pow.f32 %622 #s(literal 1/2 binary32))
(pow.f32 %624 #s(literal 1/2 binary32))
(pow.f32 %605 #s(literal 2 binary32))
(pow.f32 %604 #s(literal 1 binary32))
(+.f32 %626 %627)
(+.f32 %630 %631)
(+.f32 %634 %635)
(+.f32 %638 %639)
(+.f32 %642 %643)
(+.f32 %643 %673)
(+.f32 %643 %642)
(+.f32 %604 %660)
(+.f32 %604 %663)
(fabs.f32 (*.f32 %100 %259))
(fabs.f32 (*.f32 %487 %218))
(fabs.f32 (*.f32 %487 %257))
(fabs.f32 (*.f32 %88 %259))
(fabs.f32 (*.f32 %606 %605))
(fabs.f32 (*.f32 %605 %606))
(fabs.f32 %738)
(fabs.f32 %740)
(fabs.f32 %604)
(neg.f32 %738)
(neg.f32 (*.f32 %218 %100))
(neg.f32 %740)
(*.f32 %747 %747)
(*.f32 %490 %609)
(*.f32 %489 %613)
(*.f32 %488 %260)
(*.f32 %260 %488)
(/.f32 #s(literal 1 binary32) (pow.f32 %605 #s(literal -1 binary32)))
%605
(pow.f32 %622 #s(literal 1/4 binary32))
(pow.f32 (*.f32 %266 %523) #s(literal 1/4 binary32))
(pow.f32 %605 #s(literal 1 binary32))
(pow.f32 %604 #s(literal 1/2 binary32))
(fabs.f32 (neg.f32 %606))
(fabs.f32 (*.f32 %503 %261))
(fabs.f32 %602)
(fabs.f32 (*.f32 %488 %261))
(fabs.f32 (*.f32 %261 %503))
(fabs.f32 (*.f32 %261 %488))
(fabs.f32 (*.f32 %260 %503))
(fabs.f32 %606)
(fabs.f32 %605)
%776
%778
%780
%782
%784
%785
%786
%787
%788
%789
%790
%792
%793
%776
%778
%780
%782
%784
%785
%786
%787
%788
%789
%790
%792
%793
(*.f32 (*.f32 %22 %411) %411)
(*.f32 %796 %410)
(*.f32 %411 (*.f32 %411 %22))
(*.f32 %410 %796)
%801
(*.f32 %22 %409)
(/.f32 #s(literal 1 binary32) (pow.f32 %801 #s(literal -1 binary32)))
(pow.f32 %801 #s(literal 1 binary32))
(*.f32 %806 %411)
(*.f32 %808 %410)
(*.f32 %810 %410)
(*.f32 %812 %22)
(*.f32 %796 %814)
%816
(*.f32 %801 uy)
(*.f32 %409 %23)
(*.f32 %22 %819)
(*.f32 uy %801)
(/.f32 #s(literal 1 binary32) (pow.f32 %816 #s(literal -1 binary32)))
(pow.f32 %816 #s(literal 1 binary32))
(*.f32 (*.f32 %5 %796) %410)
(*.f32 (*.f32 %5 %409) %22)
(*.f32 %829 uy)
(*.f32 %23 (*.f32 %409 #s(literal 2 binary32)))
(*.f32 %23 (+.f32 %409 %409))
(*.f32 %816 #s(literal 2 binary32))
(*.f32 %801 %5)
%837
(*.f32 %27 %409)
(*.f32 %5 %801)
(*.f32 #s(literal 2 binary32) %816)
(*.f32 uy (*.f32 %801 #s(literal 2 binary32)))
(*.f32 uy %829)
(*.f32 uy (fma.f32 %409 %22 %801))
(/.f32 #s(literal 1 binary32) (pow.f32 %837 #s(literal -1 binary32)))
(-.f32 %848 (neg.f32 %848))
(-.f32 %851 (neg.f32 %851))
(-.f32 %816 %854)
(-.f32 %816 %857)
(-.f32 %816 %859)
(-.f32 %816 %861)
(fma.f32 %806 %411 %864)
(fma.f32 %806 %411 %867)
(fma.f32 %806 %411 %870)
(fma.f32 %806 %411 %872)
(fma.f32 %806 %411 %874)
(fma.f32 %806 %411 %876)
(fma.f32 %806 %411 %878)
(fma.f32 %806 %411 %816)
(fma.f32 %808 %410 %864)
(fma.f32 %808 %410 %867)
(fma.f32 %808 %410 %870)
(fma.f32 %808 %410 %872)
(fma.f32 %808 %410 %874)
(fma.f32 %808 %410 %876)
(fma.f32 %808 %410 %878)
(fma.f32 %808 %410 %816)
(fma.f32 %810 %410 %864)
(fma.f32 %810 %410 %867)
(fma.f32 %810 %410 %870)
(fma.f32 %810 %410 %872)
(fma.f32 %810 %410 %874)
(fma.f32 %810 %410 %876)
(fma.f32 %810 %410 %878)
(fma.f32 %810 %410 %816)
(fma.f32 %812 %22 %864)
(fma.f32 %812 %22 %867)
(fma.f32 %812 %22 %870)
(fma.f32 %812 %22 %872)
(fma.f32 %812 %22 %874)
(fma.f32 %812 %22 %876)
(fma.f32 %812 %22 %878)
(fma.f32 %812 %22 %816)
(fma.f32 %796 %814 %864)
(fma.f32 %796 %814 %867)
(fma.f32 %796 %814 %870)
(fma.f32 %796 %814 %872)
(fma.f32 %796 %814 %874)
(fma.f32 %796 %814 %876)
(fma.f32 %796 %814 %878)
(fma.f32 %796 %814 %816)
(fma.f32 %23 %409 %864)
(fma.f32 %23 %409 %867)
(fma.f32 %23 %409 %870)
(fma.f32 %23 %409 %872)
(fma.f32 %23 %409 %874)
(fma.f32 %23 %409 %876)
(fma.f32 %23 %409 %878)
(fma.f32 %23 %409 %816)
(fma.f32 %816 #s(literal 1 binary32) %848)
(fma.f32 %801 uy %864)
(fma.f32 %801 uy %867)
(fma.f32 %801 uy %870)
(fma.f32 %801 uy %872)
(fma.f32 %801 uy %874)
(fma.f32 %801 uy %876)
(fma.f32 %801 uy %878)
(fma.f32 %801 uy %816)
(fma.f32 %409 %23 %864)
(fma.f32 %409 %23 %867)
(fma.f32 %409 %23 %870)
(fma.f32 %409 %23 %872)
(fma.f32 %409 %23 %874)
(fma.f32 %409 %23 %876)
(fma.f32 %409 %23 %878)
(fma.f32 %409 %23 %816)
(fma.f32 #s(literal 1 binary32) %816 %851)
(fma.f32 %22 %819 %864)
(fma.f32 %22 %819 %867)
(fma.f32 %22 %819 %870)
(fma.f32 %22 %819 %872)
(fma.f32 %22 %819 %874)
(fma.f32 %22 %819 %876)
(fma.f32 %22 %819 %878)
(fma.f32 %22 %819 %816)
(fma.f32 uy %801 %864)
(fma.f32 uy %801 %867)
(fma.f32 uy %801 %870)
(fma.f32 uy %801 %872)
(fma.f32 uy %801 %874)
(fma.f32 uy %801 %876)
(fma.f32 uy %801 %878)
(fma.f32 uy %801 %816)
(pow.f32 %837 #s(literal 1 binary32))
(+.f32 %848 %848)
(+.f32 %851 %851)
(+.f32 %816 %864)
(+.f32 %816 %867)
(+.f32 %816 %870)
(+.f32 %816 %872)
(+.f32 %816 %874)
(+.f32 %816 %876)
(+.f32 %816 %878)
(+.f32 %816 %816)
(neg.f32 (-.f32 %854 %816))
(neg.f32 (-.f32 %857 %816))
(neg.f32 (-.f32 %859 %816))
(neg.f32 (-.f32 %861 %816))
(/.f32 #s(literal 1 binary32) (pow.f32 %981 #s(literal -1 binary32)))
%981
(pow.f32 %981 #s(literal 1 binary32))
(*.f32 %987 %987)
(*.f32 %986 %986)
(/.f32 #s(literal 1 binary32) (pow.f32 %985 #s(literal -1 binary32)))
(sqrt.f32 %992)
%985
(pow.f32 %992 #s(literal 1/2 binary32))
(pow.f32 %986 #s(literal 2 binary32))
(pow.f32 %985 #s(literal 1 binary32))
(fabs.f32 (*.f32 %987 %986))
(fabs.f32 (*.f32 %986 %987))
(fabs.f32 %985)
(*.f32 %1002 %1002)
(/.f32 #s(literal 1 binary32) (pow.f32 %986 #s(literal -1 binary32)))
%986
(pow.f32 %986 #s(literal 1 binary32))
(pow.f32 %985 #s(literal 1/2 binary32))
(fabs.f32 (neg.f32 %987))
(fabs.f32 %987)
(fabs.f32 %986)
%1012
(*.f32 %22 %986)
(/.f32 #s(literal 1 binary32) (pow.f32 %1012 #s(literal -1 binary32)))
(pow.f32 %1012 #s(literal 1 binary32))
(*.f32 %1017 %22)
%1019
(*.f32 %1012 uy)
(*.f32 %986 %23)
(*.f32 %22 %1022)
(*.f32 uy %1012)
(/.f32 #s(literal 1 binary32) (pow.f32 %1019 #s(literal -1 binary32)))
(pow.f32 %1019 #s(literal 1 binary32))
(*.f32 (*.f32 %5 %986) %22)
(*.f32 %1030 uy)
(*.f32 %23 (*.f32 %986 #s(literal 2 binary32)))
(*.f32 %23 (+.f32 %986 %986))
(*.f32 %1019 #s(literal 2 binary32))
(*.f32 %1012 %5)
%1038
(*.f32 %27 %986)
(*.f32 %5 %1012)
(*.f32 #s(literal 2 binary32) %1019)
(*.f32 uy (*.f32 %1012 #s(literal 2 binary32)))
(*.f32 uy %1030)
(*.f32 uy (fma.f32 %986 %22 %1012))
(/.f32 #s(literal 1 binary32) (pow.f32 %1038 #s(literal -1 binary32)))
(-.f32 %1049 (neg.f32 %1049))
(-.f32 %1052 (neg.f32 %1052))
(-.f32 %1019 %1055)
(-.f32 %1019 %1058)
(-.f32 %1019 %1060)
(-.f32 %1019 %1062)
(fma.f32 %1017 %22 %1064)
(fma.f32 %1017 %22 %1067)
(fma.f32 %1017 %22 %1069)
(fma.f32 %1017 %22 %1071)
(fma.f32 %1017 %22 %1073)
(fma.f32 %1017 %22 %1075)
(fma.f32 %1017 %22 %1077)
(fma.f32 %1017 %22 %1019)
(fma.f32 %23 %986 %1064)
(fma.f32 %23 %986 %1067)
(fma.f32 %23 %986 %1069)
(fma.f32 %23 %986 %1071)
(fma.f32 %23 %986 %1073)
(fma.f32 %23 %986 %1075)
(fma.f32 %23 %986 %1077)
(fma.f32 %23 %986 %1019)
(fma.f32 %1019 #s(literal 1 binary32) %1049)
(fma.f32 %1012 uy %1064)
(fma.f32 %1012 uy %1067)
(fma.f32 %1012 uy %1069)
(fma.f32 %1012 uy %1071)
(fma.f32 %1012 uy %1073)
(fma.f32 %1012 uy %1075)
(fma.f32 %1012 uy %1077)
(fma.f32 %1012 uy %1019)
(fma.f32 %986 %23 %1064)
(fma.f32 %986 %23 %1067)
(fma.f32 %986 %23 %1069)
(fma.f32 %986 %23 %1071)
(fma.f32 %986 %23 %1073)
(fma.f32 %986 %23 %1075)
(fma.f32 %986 %23 %1077)
(fma.f32 %986 %23 %1019)
(fma.f32 #s(literal 1 binary32) %1019 %1052)
(fma.f32 %22 %1022 %1064)
(fma.f32 %22 %1022 %1067)
(fma.f32 %22 %1022 %1069)
(fma.f32 %22 %1022 %1071)
(fma.f32 %22 %1022 %1073)
(fma.f32 %22 %1022 %1075)
(fma.f32 %22 %1022 %1077)
(fma.f32 %22 %1022 %1019)
(fma.f32 uy %1012 %1064)
(fma.f32 uy %1012 %1067)
(fma.f32 uy %1012 %1069)
(fma.f32 uy %1012 %1071)
(fma.f32 uy %1012 %1073)
(fma.f32 uy %1012 %1075)
(fma.f32 uy %1012 %1077)
(fma.f32 uy %1012 %1019)
(pow.f32 %1038 #s(literal 1 binary32))
(+.f32 %1049 %1049)
(+.f32 %1052 %1052)
(+.f32 %1019 %1064)
(+.f32 %1019 %1067)
(+.f32 %1019 %1069)
(+.f32 %1019 %1071)
(+.f32 %1019 %1073)
(+.f32 %1019 %1075)
(+.f32 %1019 %1077)
(+.f32 %1019 %1019)
(neg.f32 (-.f32 %1055 %1019))
(neg.f32 (-.f32 %1058 %1019))
(neg.f32 (-.f32 %1060 %1019))
(neg.f32 (-.f32 %1062 %1019))
(/.f32 #s(literal 1 binary32) (pow.f32 %1141 #s(literal -1 binary32)))
%1141
(pow.f32 %1141 #s(literal 1 binary32))

reconstruct17.0ms (0.4%)

Memory
-10.0MiB live, 26.7MiB allocated; 5ms collecting garbage

eval138.0ms (3.3%)

Memory
15.4MiB live, 137.3MiB allocated; 16ms collecting garbage
Compiler

Compiled 52 916 to 5 722 computations (89.2% saved)

prune113.0ms (2.7%)

Memory
11.4MiB live, 167.7MiB allocated; 13ms collecting garbage
Pruning

84 alts after pruning (84 fresh and 0 done)

PrunedKeptTotal
New1 340321 372
Fresh185270
Picked505
Done000
Total1 363841 447
Accuracy
99.8%
Counts
1 447 → 84
Alt Table
Click to see full alt table
StatusAccuracyProgram
35.3%
%0 = (PI.f32 )
%1 = (+.f32 %0 %0)
%6 = (fma.f32 maxCos ux #s(literal 1 binary32))
(/.f32 (-.f32 (cos.f32 (fma.f32 %1 uy (neg.f32 (acos.f32 (-.f32 %6 ux))))) (cos.f32 (fma.f32 %1 uy (+.f32 (asin.f32 (-.f32 ux %6)) (*.f32 %0 #s(literal 1/2 binary32)))))) #s(literal 2 binary32))
34.7%
%0 = (PI.f32 )
%1 = (+.f32 %0 %0)
%9 = (acos.f32 (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32))))
(/.f32 (-.f32 (cos.f32 (-.f32 (*.f32 %1 uy) %9)) (cos.f32 (fma.f32 %1 uy %9))) #s(literal 2 binary32))
41.7%
%1 = (PI.f32 )
%2 = (+.f32 %1 %1)
%9 = (-.f32 (fma.f32 maxCos ux #s(literal 1 binary32)) ux)
%10 = (acos.f32 %9)
%12 = (fma.f32 %2 uy %10)
(/.f32 (*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (*.f32 (-.f32 (-.f32 (*.f32 %2 uy) %10) %12) #s(literal 1/2 binary32))) (cos.f32 (/.f32 (+.f32 (fma.f32 %2 uy (asin.f32 %9)) (fma.f32 #s(literal 1/2 binary32) %1 %12)) #s(literal 2 binary32))))) #s(literal 2 binary32))
93.2%
%3 = (* maxCos ux)
(/.f32 #s(literal 1 binary32) (pow.f32 (*.f32 (sqrt.f32 (approx (* (- %3 ux) (- (- ux 2) %3)) (*.f32 (-.f32 #s(literal 2 binary32) ux) ux))) (sin.f32 (*.f32 (PI.f32 ) (+.f32 uy uy)))) #s(literal -1 binary32)))
98.3%
%3 = (-.f32 (*.f32 maxCos ux) ux)
%12 = (PI.f32 )
(*.f32 (pow.f32 (*.f32 %3 %3) #s(literal 1/4 binary32)) (*.f32 (sqrt.f32 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux))) (sin.f32 (*.f32 (+.f32 %12 %12) uy))))
34.8%
%5 = (acos.f32 (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux)))
%6 = (PI.f32 )
(*.f32 (-.f32 (cos.f32 (-.f32 %5 (*.f32 %6 (+.f32 uy uy)))) (cos.f32 (fma.f32 (+.f32 %6 %6) uy %5))) #s(literal 1/2 binary32))
35.0%
(*.f32 (+.f32 (sin.f32 (fma.f32 #s(literal 13176795/2097152 binary32) uy (asin.f32 (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux))))) (sin.f32 (fma.f32 #s(literal 13176795/2097152 binary32) uy (asin.f32 (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32))))))) #s(literal 1/2 binary32))
97.8%
%18 = (neg.f32 (sqrt.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux)))))
(*.f32 (*.f32 (*.f32 (sqrt.f32 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux))) (sin.f32 (*.f32 (PI.f32 ) (+.f32 uy uy)))) %18) %18)
98.1%
%5 = (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux)))
(*.f32 (*.f32 (sqrt.f32 (*.f32 %5 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux)))) (sin.f32 (*.f32 (PI.f32 ) (+.f32 uy uy)))) (sqrt.f32 %5))
96.9%
%6 = (sqrt.f32 (sqrt.f32 (fabs.f32 (-.f32 ux (*.f32 maxCos ux)))))
%17 = (PI.f32 )
(*.f32 (*.f32 %6 %6) (*.f32 (sqrt.f32 (fabs.f32 (approx (- (+ (* maxCos ux) 2) ux) (-.f32 #s(literal 2 binary32) ux)))) (sin.f32 (*.f32 (+.f32 %17 %17) uy))))
77.2%
%6 = (sqrt.f32 (sqrt.f32 (fabs.f32 (-.f32 ux (*.f32 maxCos ux)))))
%17 = (PI.f32 )
(*.f32 (*.f32 %6 %6) (*.f32 (approx (sqrt (fabs (- (+ (* maxCos ux) 2) ux))) (sqrt.f32 #s(literal 2 binary32))) (sin.f32 (*.f32 (+.f32 %17 %17) uy))))
81.5%
%2 = (*.f32 maxCos ux)
%6 = (sqrt.f32 (sqrt.f32 (fabs.f32 (-.f32 ux %2))))
%14 = (PI )
(*.f32 (*.f32 %6 %6) (approx (* (sqrt (fabs (- (+ (* maxCos ux) 2) ux))) (sin (* (+ %14 %14) uy))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (fabs.f32 (-.f32 (+.f32 #s(literal 2 binary32) %2) ux))))))))
98.1%
(*.f32 (*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (sin.f32 (*.f32 (PI.f32 ) (+.f32 uy uy)))) (sqrt.f32 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux))))
93.3%
%3 = (*.f32 (PI.f32 ) uy)
%11 = (- ux (* maxCos ux))
(*.f32 (*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 %3) (cos.f32 %3))) (sqrt.f32 (approx (* (- %11 0) (neg (- %11 2))) (*.f32 ux (-.f32 #s(literal 2 binary32) ux)))))
97.3%
%11 = (sqrt.f32 (sqrt.f32 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux))))
%13 = (PI.f32 )
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (*.f32 (*.f32 %11 %11) (sin.f32 (*.f32 (+.f32 %13 %13) uy))))
98.2%
%15 = (PI.f32 )
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (*.f32 (sqrt.f32 (/.f32 #s(literal 1 binary32) (pow.f32 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux)) #s(literal -1 binary32)))) (sin.f32 (*.f32 (+.f32 %15 %15) uy))))
98.2%
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (*.f32 (sqrt.f32 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux))) (sin.f32 (*.f32 #s(literal 13176795/2097152 binary32) uy))))
98.2%
%19 = (PI.f32 )
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (*.f32 (sqrt.f32 (fabs.f32 (-.f32 (approx (+ (* maxCos ux) 2) (*.f32 maxCos (+.f32 ux (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1 binary32) maxCos))))) ux))) (sin.f32 (*.f32 (+.f32 %19 %19) uy))))
98.2%
%12 = (PI.f32 )
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (*.f32 (sqrt.f32 (fabs.f32 (-.f32 #s(literal 1 binary32) (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32)))))) (sin.f32 (*.f32 (+.f32 %12 %12) uy))))
90.1%
%13 = (sqrt.f32 #s(literal 2 binary32))
%22 = (PI.f32 )
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (*.f32 (approx (sqrt (fabs (- (+ (* maxCos ux) 2) ux))) (+.f32 %13 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 ux (-.f32 maxCos #s(literal 1 binary32))) %13)))) (sin.f32 (*.f32 (+.f32 %22 %22) uy))))
77.5%
%15 = (PI.f32 )
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))) (*.f32 (approx (sqrt (fabs (- (+ (* maxCos ux) 2) ux))) (sqrt.f32 #s(literal 2 binary32))) (sin.f32 (*.f32 (+.f32 %15 %15) uy))))
90.0%
%2 = (*.f32 maxCos ux)
%12 = (PI )
%21 = (PI.f32 )
%27 = (sqrt.f32 (fabs.f32 (-.f32 (+.f32 #s(literal 2 binary32) %2) ux)))
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 %2 ux))) (approx (* (sqrt (fabs (- (+ (* maxCos ux) 2) ux))) (sin (* (+ %12 %12) uy))) (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (*.f32 (pow.f32 %21 #s(literal 3 binary32)) %27)) (*.f32 #s(literal 2 binary32) (*.f32 %21 %27))))))
81.8%
%2 = (*.f32 maxCos ux)
%12 = (PI )
(*.f32 (sqrt.f32 (fabs.f32 (-.f32 %2 ux))) (approx (* (sqrt (fabs (- (+ (* maxCos ux) 2) ux))) (sin (* (+ %12 %12) uy))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (fabs.f32 (-.f32 (+.f32 #s(literal 2 binary32) %2) ux))))))))
93.4%
%2 = (* maxCos ux)
(*.f32 (sqrt.f32 (approx (* (- %2 ux) (- (- ux 2) %2)) (*.f32 (-.f32 #s(literal 2 binary32) ux) ux))) (sin.f32 (*.f32 (PI.f32 ) (+.f32 uy uy))))
93.3%
%12 = (- ux (* maxCos ux))
(*.f32 (sin.f32 (/.f32 #s(literal 1 binary32) (pow.f32 (*.f32 (PI.f32 ) (+.f32 uy uy)) #s(literal -1 binary32)))) (sqrt.f32 (approx (* (- %12 0) (neg (- %12 2))) (*.f32 ux (-.f32 #s(literal 2 binary32) ux)))))
93.2%
%12 = (- ux (* maxCos ux))
(*.f32 (sin.f32 (*.f32 (/.f32 #s(literal 1 binary32) (pow.f32 (+.f32 uy uy) #s(literal -1 binary32))) (PI.f32 ))) (sqrt.f32 (approx (* (- %12 0) (neg (- %12 2))) (*.f32 ux (-.f32 #s(literal 2 binary32) ux)))))
98.4%
%0 = (PI.f32 )
(*.f32 (sin.f32 (*.f32 (+.f32 %0 %0) uy)) (sqrt.f32 (*.f32 (-.f32 ux (*.f32 maxCos ux)) (fma.f32 ux maxCos (-.f32 #s(literal 2 binary32) ux)))))
93.2%
%9 = (* maxCos ux)
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (/.f32 #s(literal 1 binary32) (pow.f32 (sqrt.f32 (approx (* (- %9 ux) (- (- ux 2) %9)) (*.f32 (-.f32 #s(literal 2 binary32) ux) ux))) #s(literal -1 binary32))))
98.0%
%11 = (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux)))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (*.f32 (sqrt.f32 %11) (sqrt.f32 (*.f32 %11 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux))))))
92.6%
%8 = (* maxCos ux)
%18 = (sqrt.f32 (sqrt.f32 (approx (* (- %8 ux) (- (- ux 2) %8)) (*.f32 (-.f32 #s(literal 2 binary32) ux) ux))))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (*.f32 %18 %18))
54.5%
%14 = (approx (+ (- 1 ux) (* ux maxCos)) (-.f32 #s(literal 1 binary32) ux))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %14 %14))))
54.3%
%18 = (approx (+ (- 1 ux) (* ux maxCos)) (*.f32 maxCos (-.f32 (+.f32 ux (/.f32 #s(literal 1 binary32) maxCos)) (/.f32 ux maxCos))))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %18 %18))))
54.8%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (+.f32 (fma.f32 (approx (- ux (+ (* maxCos ux) 1)) (-.f32 ux #s(literal 1 binary32))) (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux)) #s(literal 1/2 binary32)) #s(literal 1/2 binary32))))
56.5%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (+.f32 (fma.f32 (approx (- ux (+ (* maxCos ux) 1)) (*.f32 maxCos (-.f32 (/.f32 ux maxCos) (+.f32 ux (/.f32 #s(literal 1 binary32) maxCos))))) (fma.f32 maxCos ux (-.f32 #s(literal 1 binary32) ux)) #s(literal 1/2 binary32)) #s(literal 1/2 binary32))))
97.6%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 (-.f32 ux (*.f32 maxCos ux)) (approx (neg (- (- ux (* maxCos ux)) 2)) (-.f32 #s(literal 2 binary32) ux)))))
98.3%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 (-.f32 ux (*.f32 maxCos ux)) (approx (neg (- (- ux (* maxCos ux)) 2)) (*.f32 maxCos (-.f32 (+.f32 ux (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1 binary32) maxCos))) (/.f32 ux maxCos)))))))
77.3%
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 (-.f32 ux (*.f32 maxCos ux)) (approx (neg (- (- ux (* maxCos ux)) 2)) #s(literal 2 binary32)))))
97.9%
%11 = (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux)))
%16 = (sqrt.f32 (*.f32 %11 (fabs.f32 (-.f32 (fma.f32 maxCos ux #s(literal 2 binary32)) ux))))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 %11 (*.f32 %16 %16))))
93.3%
%9 = (- ux (* maxCos ux))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (approx (* (- %9 0) (neg (- %9 2))) (*.f32 ux (-.f32 #s(literal 1 binary32) (-.f32 ux #s(literal 1 binary32)))))))
93.3%
%9 = (- ux (* maxCos ux))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (approx (* (- %9 0) (neg (- %9 2))) (*.f32 ux (approx (- 2 ux) (*.f32 ux (-.f32 (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1 binary32) ux)) #s(literal 1 binary32))))))))
74.2%
%9 = (- ux (* maxCos ux))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (approx (* (- %9 0) (neg (- %9 2))) (*.f32 ux (approx (- 2 ux) #s(literal 2 binary32))))))
90.2%
%9 = (PI.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 %9 #s(literal 3 binary32))) (*.f32 #s(literal 2 binary32) %9)))) (sqrt.f32 (*.f32 (-.f32 ux (*.f32 maxCos ux)) (fma.f32 ux maxCos (-.f32 #s(literal 2 binary32) ux)))))
85.7%
%9 = (PI.f32 )
%20 = (- ux (* maxCos ux))
(*.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 %9 #s(literal 3 binary32))) (*.f32 #s(literal 2 binary32) %9)))) (sqrt.f32 (approx (* (- %20 0) (neg (- %20 2))) (*.f32 ux (-.f32 #s(literal 2 binary32) ux)))))
81.4%
%2 = (* maxCos ux)
%6 = (sqrt (sqrt (fabs (- ux %2))))
%13 = (PI )
%22 = (*.f32 maxCos ux)
(approx (* (* %6 %6) (* (sqrt (fabs (- (+ %2 2) ux))) (sin (* (+ %13 %13) uy)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (*.f32 (sqrt.f32 (fabs.f32 (-.f32 (+.f32 #s(literal 2 binary32) %22) ux))) (pow.f32 (sqrt.f32 (sqrt.f32 (fabs.f32 (-.f32 ux %22)))) #s(literal 2 binary32)))))))
77.5%
%2 = (* maxCos ux)
%11 = (PI )
(approx (* (sqrt (fabs (- %2 ux))) (* (sqrt (fabs (- (+ %2 2) ux))) (sin (* (+ %11 %11) uy)))) (*.f32 (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy (PI.f32 )))) (*.f32 (sqrt.f32 #s(literal 2 binary32)) (sqrt.f32 (fabs.f32 (-.f32 (*.f32 maxCos ux) ux))))))
81.8%
%2 = (* maxCos ux)
%11 = (PI )
%20 = (*.f32 maxCos ux)
(approx (* (sqrt (fabs (- %2 ux))) (* (sqrt (fabs (- (+ %2 2) ux))) (sin (* (+ %11 %11) uy)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (*.f32 (sqrt.f32 (fabs.f32 (-.f32 %20 ux))) (sqrt.f32 (fabs.f32 (-.f32 (+.f32 #s(literal 2 binary32) %20) ux))))))))
49.4%
%11 = (+ (- 1 ux) (* ux maxCos))
%18 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (+.f32 uy uy) (*.f32 (sqrt.f32 (fma.f32 (-.f32 ux %18) (-.f32 %18 ux) #s(literal 1 binary32))) (PI.f32 ))))
66.9%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (+.f32 uy uy) (*.f32 (sqrt.f32 (approx (- 1 (pow (- (- (* maxCos ux) -1) ux) 2)) (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux))) (PI.f32 ))))
64.7%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (+.f32 uy uy) (*.f32 (sqrt.f32 (approx (- 1 (pow (- ux (- (* maxCos ux) -1)) 2)) (approx (* (- 2 (* maxCos 2)) ux) (+.f32 ux ux)))) (PI.f32 ))))
49.4%
%11 = (+ (- 1 ux) (* ux maxCos))
%16 = (PI.f32 )
%20 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 %16 %16) uy) (sqrt.f32 (fma.f32 (-.f32 ux %20) (-.f32 %20 ux) #s(literal 1 binary32)))))
49.1%
%11 = (+ (- 1 ux) (* ux maxCos))
%16 = (PI.f32 )
%28 = (approx (- (- (* maxCos ux) -1) ux) (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1 binary32) ux) maxCos) #s(literal 1 binary32)) ux))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 %16 %16) uy) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %28 %28)))))
66.9%
%11 = (+ (- 1 ux) (* ux maxCos))
%16 = (PI.f32 )
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 %16 %16) uy) (sqrt.f32 (approx (- 1 (pow (- (- (* maxCos ux) -1) ux) 2)) (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux)))))
66.8%
%11 = (+ (- 1 ux) (* ux maxCos))
%29 = (sqrt.f32 (sqrt.f32 (approx (- 1 (pow (- ux (- (* maxCos ux) -1)) 2)) (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux))))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 uy uy) (*.f32 %29 (PI.f32 ))) %29))
49.4%
%11 = (+ (- 1 ux) (* ux maxCos))
%18 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 uy uy) (sqrt.f32 (fma.f32 (-.f32 ux %18) (-.f32 %18 ux) #s(literal 1 binary32)))) (PI.f32 )))
49.1%
%11 = (+ (- 1 ux) (* ux maxCos))
%26 = (approx (- (- (* maxCos ux) -1) ux) (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1 binary32) ux) maxCos) #s(literal 1 binary32)) ux))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 uy uy) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %26 %26)))) (PI.f32 )))
66.9%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 uy uy) (sqrt.f32 (approx (- 1 (pow (- (- (* maxCos ux) -1) ux) 2)) (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux)))) (PI.f32 )))
64.8%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 uy uy) (sqrt.f32 (approx (- 1 (pow (- ux (- (* maxCos ux) -1)) 2)) (approx (* (- 2 (* maxCos 2)) ux) (+.f32 ux ux))))) (PI.f32 )))
64.8%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (PI.f32 ) (+.f32 uy uy)) (sqrt.f32 (approx (- 1 (pow (- ux (- (* maxCos ux) -1)) 2)) (approx (* (- 2 (* maxCos 2)) ux) (+.f32 ux ux))))))
66.8%
%11 = (+ (- 1 ux) (* ux maxCos))
%30 = (sqrt.f32 (sqrt.f32 (approx (- 1 (pow (- ux (- (* maxCos ux) -1)) 2)) (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux))))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 (*.f32 (*.f32 (PI.f32 ) uy) %30) %30)))
7.1%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 (approx uy #s(literal 0 binary32)) (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (approx (* ux (- 2 (* 2 maxCos))) (*.f32 #s(literal 2 binary32) ux))))))))
64.7%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (/.f32 #s(literal 1 binary32) (pow.f32 (sqrt.f32 (approx (- 1 (pow (- ux (- (* maxCos ux) -1)) 2)) (approx (* (- 2 (* maxCos 2)) ux) (+.f32 ux ux)))) #s(literal -1 binary32)))))))
49.5%
%11 = (+ (- 1 ux) (* ux maxCos))
%17 = (PI.f32 )
%19 = (fma.f32 maxCos ux #s(literal 1 binary32))
%20 = (-.f32 %19 ux)
%23 = (*.f32 #s(literal 1/2 binary32) %17)
%28 = (sqrt.f32 (fma.f32 (-.f32 ux %19) %20 #s(literal 1 binary32)))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %17 (+.f32 (/.f32 (+.f32 (sin.f32 (-.f32 (asin.f32 %20) %23)) %28) #s(literal 2 binary32)) (*.f32 %28 (sin.f32 %23)))))))
64.5%
%11 = (+ (- 1 ux) (* ux maxCos))
%31 = (sqrt.f32 (sqrt.f32 (approx (- 1 (pow (- ux (- (* maxCos ux) -1)) 2)) (approx (* (- 2 (* maxCos 2)) ux) (+.f32 ux ux)))))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (*.f32 %31 %31)))))
47.7%
%11 = (+ (- 1 ux) (* ux maxCos))
%20 = (-.f32 ux (fma.f32 maxCos ux #s(literal 1 binary32)))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (fma.f32 %20 (*.f32 maxCos ux) (fma.f32 %20 (-.f32 #s(literal 1 binary32) ux) #s(literal 1 binary32))))))))
49.2%
%11 = (+ (- 1 ux) (* ux maxCos))
%27 = (approx (- (- (* maxCos ux) -1) ux) (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1 binary32) ux) maxCos) #s(literal 1 binary32)) ux))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (fma.f32 (neg.f32 %27) %27 #s(literal 1 binary32)))))))
49.5%
%11 = (+ (- 1 ux) (* ux maxCos))
%19 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 (fma.f32 (-.f32 ux %19) (-.f32 %19 ux) #s(literal 1/2 binary32)) #s(literal -1/2 binary32)))))))
47.7%
%11 = (+ (- 1 ux) (* ux maxCos))
%20 = (-.f32 (fma.f32 maxCos ux #s(literal 1 binary32)) ux)
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) (*.f32 %20 (-.f32 #s(literal 1 binary32) ux))) (*.f32 (*.f32 %20 maxCos) ux)))))))
49.3%
%11 = (+ (- 1 ux) (* ux maxCos))
%19 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 (*.f32 (-.f32 ux %19) (-.f32 %19 ux)) #s(literal -1 binary32)))))))
51.7%
%11 = (+ (- 1 ux) (* ux maxCos))
%19 = (fma.f32 maxCos ux #s(literal 1 binary32))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 ux ux (fma.f32 %19 %19 (*.f32 #s(literal -2 binary32) (*.f32 %19 ux))))))))))
49.5%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (fma.f32 ux maxCos (-.f32 #s(literal 1 binary32) ux)) #s(literal 2 binary32))))))))
48.8%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (+.f32 #s(literal 1/2 binary32) (-.f32 #s(literal 1/2 binary32) (-.f32 ux (*.f32 maxCos ux)))) #s(literal 2 binary32))))))))
49.1%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx (- (+ 1 (* maxCos ux)) ux) (fma.f32 ux maxCos (*.f32 (-.f32 (/.f32 #s(literal 1 binary32) ux) #s(literal 1 binary32)) ux))) #s(literal 2 binary32))))))))
49.1%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx (- (+ 1 (* maxCos ux)) ux) (*.f32 ux (-.f32 (/.f32 (fma.f32 maxCos ux #s(literal 1 binary32)) ux) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
48.0%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx (- (+ 1 (* maxCos ux)) ux) (*.f32 ux (approx (- (+ maxCos (/ 1 ux)) 1) (-.f32 (/.f32 #s(literal 1 binary32) ux) #s(literal 1 binary32))))) #s(literal 2 binary32))))))))
48.4%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx (- (+ 1 (* maxCos ux)) ux) (*.f32 maxCos (-.f32 (+.f32 ux (/.f32 #s(literal 1 binary32) maxCos)) (/.f32 ux maxCos)))) #s(literal 2 binary32))))))))
49.1%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) (pow.f32 (approx (- (- (* maxCos ux) -1) ux) (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1 binary32) ux) maxCos) #s(literal 1 binary32)) ux)) #s(literal -2 binary32)))))))))
41.6%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (-.f32 #s(literal 1 binary32) (approx (pow (- (+ 1 (* maxCos ux)) ux) 2) (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 (*.f32 #s(literal 2 binary32) maxCos) #s(literal 2 binary32)))))))))))
66.9%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (fma.f32 ux #s(literal 2 binary32) (*.f32 ux (*.f32 #s(literal -2 binary32) maxCos)))))))))
66.9%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (*.f32 ux (-.f32 (-.f32 #s(literal 2 binary32) maxCos) maxCos))))))))
82.0%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (*.f32 ux (-.f32 (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -1 binary32) (*.f32 ux (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32))))) (*.f32 #s(literal 2 binary32) maxCos)))))))))
66.9%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (*.f32 ux (approx (- 2 (* 2 maxCos)) (*.f32 maxCos (-.f32 (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1 binary32) maxCos)) #s(literal 2 binary32)))))))))))
66.9%
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (approx (* ux (- 2 (* 2 maxCos))) (*.f32 maxCos (fma.f32 #s(literal -2 binary32) ux (*.f32 #s(literal 2 binary32) (/.f32 ux maxCos)))))))))))
76.5%
%3 = (PI )
%11 = (+ (- 1 ux) (* ux maxCos))
%26 = (PI.f32 )
%35 = (sqrt.f32 (*.f32 ux (-.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) maxCos))))
(approx (* (sin (* (* uy 2) %3)) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (approx (* %3 (sqrt (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)))) (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 (pow.f32 ux #s(literal 2 binary32)) (*.f32 %26 (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32)))) %35) (*.f32 %26 %35))))))
81.9%
%9 = (- ux (* maxCos ux))
%19 = (*.f32 maxCos ux)
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (* (- %9 0) (neg (- %9 2))))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (*.f32 (-.f32 ux %19) (-.f32 (+.f32 #s(literal 2 binary32) %19) ux)))))))
Compiler

Compiled 1 974 to 491 computations (75.1% saved)

regimes1.5s (34.8%)

Memory
-36.1MiB live, 1 444.7MiB allocated; 140ms collecting garbage
Counts
5 → 1
16 → 1
49 → 1
50 → 1
53 → 2
61 → 2
68 → 1
156 → 1
Calls
Call 1
Inputs
%11 = (+ (- 1 ux) (* ux maxCos))
%15 = (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11))))
%16 = (PI.f32 )
%17 = (+.f32 uy uy)
%19 = (* maxCos ux)
%31 = (sqrt.f32 (approx (- 1 (pow (- ux (- %19 -1)) 2)) (approx (* (- 2 (* maxCos 2)) ux) (+.f32 ux ux))))
%52 = (*.f32 %16 (sqrt.f32 (approx (- 1 (pow (- (+ 1 %19) ux) 2)) (approx (* ux (- 2 (* 2 maxCos))) (*.f32 #s(literal 2 binary32) ux)))))
(approx %15 (*.f32 (*.f32 %16 %17) %31))
(approx %15 (*.f32 (*.f32 %17 %31) %16))
(approx %15 (*.f32 %17 (*.f32 %31 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %52)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 (approx uy #s(literal 0 binary32)) %52)))
Outputs
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (PI.f32 ) (+.f32 uy uy)) (sqrt.f32 (approx (- 1 (pow (- ux (- (* maxCos ux) -1)) 2)) (approx (* (- 2 (* maxCos 2)) ux) (+.f32 ux ux))))))
Call 2
Inputs
%11 = (+ (- 1 ux) (* ux maxCos))
%15 = (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11))))
%16 = (PI.f32 )
%17 = (+.f32 uy uy)
%19 = (* maxCos ux)
%21 = (- %19 -1)
%31 = (sqrt.f32 (approx (- 1 (pow (- ux %21) 2)) (approx (* (- 2 (* maxCos 2)) ux) (+.f32 ux ux))))
%43 = (pow (- (+ 1 %19) ux) 2)
%44 = (- 1 %43)
%46 = (- 2 (* 2 maxCos))
%47 = (* ux %46)
%52 = (*.f32 %16 (sqrt.f32 (approx %44 (approx %47 (*.f32 #s(literal 2 binary32) ux)))))
%57 = (approx uy #s(literal 0 binary32))
%68 = (sqrt.f32 (approx (- 1 (pow (- %21 ux) 2)) (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux)))
%88 = (*.f32 #s(literal 2 binary32) maxCos)
%93 = (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 #s(literal 2 binary32) %88)))))
%120 = (sqrt.f32 %31)
(approx %15 (*.f32 (*.f32 %16 %17) %31))
(approx %15 (*.f32 (*.f32 %17 %31) %16))
(approx %15 (*.f32 %17 (*.f32 %31 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %52)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %52)))
(approx %15 (*.f32 (*.f32 %17 %68) %16))
(approx %15 (*.f32 (*.f32 (+.f32 %16 %16) uy) %68))
(approx %15 (*.f32 %17 (*.f32 %68 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 (-.f32 #s(literal 2 binary32) maxCos) maxCos))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %93)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %93)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (fma.f32 ux #s(literal 2 binary32) (*.f32 ux (*.f32 #s(literal -2 binary32) maxCos)))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (approx %43 (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 %88 #s(literal 2 binary32)))))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %120 %120)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (approx %47 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) ux (*.f32 #s(literal 2 binary32) (/.f32 ux maxCos)))))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (approx %46 (*.f32 maxCos (-.f32 (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1 binary32) maxCos)) #s(literal 2 binary32)))))))))))
Outputs
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 (*.f32 (+.f32 uy uy) (sqrt.f32 (approx (- 1 (pow (- (- (* maxCos ux) -1) ux) 2)) (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux)))) (PI.f32 )))
Call 3
Inputs
%3 = (PI )
%5 = (sin (* (* uy 2) %3))
%11 = (+ (- 1 ux) (* ux maxCos))
%15 = (* %5 (sqrt (- 1 (* %11 %11))))
%16 = (PI.f32 )
%17 = (+.f32 uy uy)
%19 = (* maxCos ux)
%21 = (- %19 -1)
%24 = (- 1 (pow (- ux %21) 2))
%31 = (sqrt.f32 (approx %24 (approx (* (- 2 (* maxCos 2)) ux) (+.f32 ux ux))))
%42 = (- (+ 1 %19) ux)
%43 = (pow %42 2)
%44 = (- 1 %43)
%46 = (- 2 (* 2 maxCos))
%47 = (* ux %46)
%52 = (*.f32 %16 (sqrt.f32 (approx %44 (approx %47 (*.f32 #s(literal 2 binary32) ux)))))
%57 = (approx uy #s(literal 0 binary32))
%61 = (- %21 ux)
%66 = (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux)
%68 = (sqrt.f32 (approx (- 1 (pow %61 2)) %66))
%73 = (*.f32 (+.f32 %16 %16) uy)
%88 = (*.f32 #s(literal 2 binary32) maxCos)
%93 = (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 #s(literal 2 binary32) %88)))))
%120 = (sqrt.f32 %31)
%126 = (/.f32 ux maxCos)
%137 = (/.f32 #s(literal 1 binary32) maxCos)
%149 = (- ux %19)
%157 = (*.f32 maxCos ux)
%158 = (-.f32 ux %157)
%160 = (-.f32 (+.f32 #s(literal 2 binary32) %157) ux)
%166 = (approx (* %5 (sqrt (* (- %149 0) (neg (- %149 2))))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (*.f32 %158 %160))))))
%167 = (fma.f32 maxCos ux #s(literal 1 binary32))
%168 = (-.f32 ux %167)
%169 = (-.f32 %167 ux)
%171 = (sqrt.f32 (fma.f32 %168 %169 #s(literal 1 binary32)))
%198 = (* (sqrt (fabs (- (+ %19 2) ux))) (sin (* (+ %3 %3) uy)))
%200 = (-.f32 %157 ux)
%202 = (sqrt.f32 (fabs.f32 %200))
%204 = (sqrt.f32 (fabs.f32 %160))
%213 = (approx %198 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 %204))))
%232 = (sqrt.f32 (sqrt.f32 (approx %24 %66)))
%237 = (sqrt.f32 %68)
%248 = (-.f32 #s(literal 1 binary32) ux)
%262 = (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (-.f32 (+.f32 #s(literal 1 binary32) %157) ux) #s(literal 2 binary32)))))
%278 = (/.f32 #s(literal 1 binary32) ux)
%279 = (-.f32 %278 #s(literal 1 binary32))
%293 = (approx %61 (*.f32 (-.f32 (+.f32 %278 maxCos) #s(literal 1 binary32)) ux))
%296 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %293 %293)))
%356 = (fma.f32 %167 %167 (*.f32 #s(literal -2 binary32) (*.f32 %167 ux)))
%414 = (sqrt.f32 (sqrt.f32 (fabs.f32 %158)))
(approx %15 (*.f32 (*.f32 %16 %17) %31))
(approx %15 (*.f32 (*.f32 %17 %31) %16))
(approx %15 (*.f32 %17 (*.f32 %31 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %52)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %52)))
(approx %15 (*.f32 (*.f32 %17 %68) %16))
(approx %15 (*.f32 %73 %68))
(approx %15 (*.f32 %17 (*.f32 %68 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 (-.f32 #s(literal 2 binary32) maxCos) maxCos))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %93)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %93)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (fma.f32 ux #s(literal 2 binary32) (*.f32 ux (*.f32 #s(literal -2 binary32) maxCos)))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (approx %43 (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 %88 #s(literal 2 binary32)))))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %120 %120)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (approx %47 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) ux (*.f32 #s(literal 2 binary32) %126))))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (approx %46 (*.f32 maxCos (-.f32 (*.f32 #s(literal 2 binary32) %137) #s(literal 2 binary32)))))))))))
%166
%166
(approx %15 (*.f32 %73 %171))
(approx %15 (*.f32 (*.f32 %17 %171) %16))
(approx %15 (*.f32 %17 (*.f32 %171 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (*.f32 %168 %169) #s(literal -1 binary32)))))))
(approx (* (sqrt (fabs (- %19 ux))) %198) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %202 %204)))))
(*.f32 %202 %213)
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (fma.f32 %168 %169 #s(literal 1/2 binary32)) #s(literal -1/2 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (/.f32 #s(literal 1 binary32) (pow.f32 %31 #s(literal -1 binary32)))))))
(approx %15 (*.f32 (*.f32 %17 (*.f32 %232 %16)) %232))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %237 %237)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 (*.f32 (*.f32 %16 uy) %232) %232)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (fma.f32 ux maxCos %248) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %262)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %262)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (/.f32 #s(literal 1 binary32) (pow.f32 %68 #s(literal -1 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (approx (- (+ maxCos (/ 1 ux)) 1) %279))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 (*.f32 %17 %296) %16))
(approx %15 (*.f32 %73 %296))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (fma.f32 (neg.f32 %293) %293 #s(literal 1 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (+.f32 #s(literal 1/2 binary32) (-.f32 #s(literal 1/2 binary32) %158)) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (fma.f32 %168 %157 (fma.f32 %168 %248 #s(literal 1 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 %169 #s(literal 1 binary32) (*.f32 %169 %200))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (-.f32 (+.f32 maxCos %278) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) (*.f32 %169 %248)) (*.f32 (*.f32 %169 maxCos) ux)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 ux ux %356)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (-.f32 (/.f32 %167 ux) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (fma.f32 ux maxCos (*.f32 %279 ux))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) %356) (*.f32 ux ux)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) (pow.f32 %293 #s(literal -2 binary32)))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 maxCos (-.f32 (+.f32 ux %137) %126))) #s(literal 2 binary32))))))))
(*.f32 (*.f32 %414 %414) %213)
Outputs
%9 = (- ux (* maxCos ux))
%19 = (*.f32 maxCos ux)
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (* (- %9 0) (neg (- %9 2))))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (*.f32 (-.f32 ux %19) (-.f32 (+.f32 #s(literal 2 binary32) %19) ux)))))))
Call 4
Inputs
%3 = (PI )
%5 = (sin (* (* uy 2) %3))
%11 = (+ (- 1 ux) (* ux maxCos))
%15 = (* %5 (sqrt (- 1 (* %11 %11))))
%16 = (PI.f32 )
%17 = (+.f32 uy uy)
%19 = (* maxCos ux)
%21 = (- %19 -1)
%24 = (- 1 (pow (- ux %21) 2))
%31 = (sqrt.f32 (approx %24 (approx (* (- 2 (* maxCos 2)) ux) (+.f32 ux ux))))
%42 = (- (+ 1 %19) ux)
%43 = (pow %42 2)
%44 = (- 1 %43)
%46 = (- 2 (* 2 maxCos))
%47 = (* ux %46)
%52 = (*.f32 %16 (sqrt.f32 (approx %44 (approx %47 (*.f32 #s(literal 2 binary32) ux)))))
%57 = (approx uy #s(literal 0 binary32))
%61 = (- %21 ux)
%66 = (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux)
%68 = (sqrt.f32 (approx (- 1 (pow %61 2)) %66))
%73 = (*.f32 (+.f32 %16 %16) uy)
%88 = (*.f32 #s(literal 2 binary32) maxCos)
%93 = (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 #s(literal 2 binary32) %88)))))
%120 = (sqrt.f32 %31)
%126 = (/.f32 ux maxCos)
%137 = (/.f32 #s(literal 1 binary32) maxCos)
%149 = (- ux %19)
%157 = (*.f32 maxCos ux)
%158 = (-.f32 ux %157)
%160 = (-.f32 (+.f32 #s(literal 2 binary32) %157) ux)
%166 = (approx (* %5 (sqrt (* (- %149 0) (neg (- %149 2))))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (*.f32 %158 %160))))))
%167 = (fma.f32 maxCos ux #s(literal 1 binary32))
%168 = (-.f32 ux %167)
%169 = (-.f32 %167 ux)
%171 = (sqrt.f32 (fma.f32 %168 %169 #s(literal 1 binary32)))
%198 = (* (sqrt (fabs (- (+ %19 2) ux))) (sin (* (+ %3 %3) uy)))
%200 = (-.f32 %157 ux)
%202 = (sqrt.f32 (fabs.f32 %200))
%204 = (sqrt.f32 (fabs.f32 %160))
%213 = (approx %198 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 %204))))
%232 = (sqrt.f32 (sqrt.f32 (approx %24 %66)))
%237 = (sqrt.f32 %68)
%248 = (-.f32 #s(literal 1 binary32) ux)
%262 = (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (-.f32 (+.f32 #s(literal 1 binary32) %157) ux) #s(literal 2 binary32)))))
%278 = (/.f32 #s(literal 1 binary32) ux)
%279 = (-.f32 %278 #s(literal 1 binary32))
%293 = (approx %61 (*.f32 (-.f32 (+.f32 %278 maxCos) #s(literal 1 binary32)) ux))
%296 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %293 %293)))
%356 = (fma.f32 %167 %167 (*.f32 #s(literal -2 binary32) (*.f32 %167 ux)))
%414 = (sqrt.f32 (sqrt.f32 (fabs.f32 %158)))
(approx %15 (*.f32 (*.f32 %16 %17) %31))
(approx %15 (*.f32 (*.f32 %17 %31) %16))
(approx %15 (*.f32 %17 (*.f32 %31 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %52)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %52)))
(approx %15 (*.f32 (*.f32 %17 %68) %16))
(approx %15 (*.f32 %73 %68))
(approx %15 (*.f32 %17 (*.f32 %68 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 (-.f32 #s(literal 2 binary32) maxCos) maxCos))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %93)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %93)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (fma.f32 ux #s(literal 2 binary32) (*.f32 ux (*.f32 #s(literal -2 binary32) maxCos)))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (approx %43 (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 %88 #s(literal 2 binary32)))))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %120 %120)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (approx %47 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) ux (*.f32 #s(literal 2 binary32) %126))))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (approx %46 (*.f32 maxCos (-.f32 (*.f32 #s(literal 2 binary32) %137) #s(literal 2 binary32)))))))))))
%166
%166
(approx %15 (*.f32 %73 %171))
(approx %15 (*.f32 (*.f32 %17 %171) %16))
(approx %15 (*.f32 %17 (*.f32 %171 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (*.f32 %168 %169) #s(literal -1 binary32)))))))
(approx (* (sqrt (fabs (- %19 ux))) %198) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %202 %204)))))
(*.f32 %202 %213)
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (fma.f32 %168 %169 #s(literal 1/2 binary32)) #s(literal -1/2 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (/.f32 #s(literal 1 binary32) (pow.f32 %31 #s(literal -1 binary32)))))))
(approx %15 (*.f32 (*.f32 %17 (*.f32 %232 %16)) %232))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %237 %237)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 (*.f32 (*.f32 %16 uy) %232) %232)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (fma.f32 ux maxCos %248) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %262)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %262)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (/.f32 #s(literal 1 binary32) (pow.f32 %68 #s(literal -1 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (approx (- (+ maxCos (/ 1 ux)) 1) %279))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 (*.f32 %17 %296) %16))
(approx %15 (*.f32 %73 %296))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (fma.f32 (neg.f32 %293) %293 #s(literal 1 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (+.f32 #s(literal 1/2 binary32) (-.f32 #s(literal 1/2 binary32) %158)) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (fma.f32 %168 %157 (fma.f32 %168 %248 #s(literal 1 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 %169 #s(literal 1 binary32) (*.f32 %169 %200))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (-.f32 (+.f32 maxCos %278) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) (*.f32 %169 %248)) (*.f32 (*.f32 %169 maxCos) ux)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 ux ux %356)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (-.f32 (/.f32 %167 ux) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (fma.f32 ux maxCos (*.f32 %279 ux))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) %356) (*.f32 ux ux)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) (pow.f32 %293 #s(literal -2 binary32)))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 maxCos (-.f32 (+.f32 ux %137) %126))) #s(literal 2 binary32))))))))
(*.f32 (*.f32 %414 %414) %213)
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -1 binary32) (*.f32 ux (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32))))) %88))))))))
Outputs
%11 = (+ (- 1 ux) (* ux maxCos))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 (PI.f32 ) (sqrt.f32 (approx (- 1 (pow (- (+ 1 (* maxCos ux)) ux) 2)) (*.f32 ux (-.f32 (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -1 binary32) (*.f32 ux (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32))))) (*.f32 #s(literal 2 binary32) maxCos)))))))))
Call 5
Inputs
%3 = (PI )
%5 = (sin (* (* uy 2) %3))
%11 = (+ (- 1 ux) (* ux maxCos))
%15 = (* %5 (sqrt (- 1 (* %11 %11))))
%16 = (PI.f32 )
%17 = (+.f32 uy uy)
%19 = (* maxCos ux)
%21 = (- %19 -1)
%24 = (- 1 (pow (- ux %21) 2))
%31 = (sqrt.f32 (approx %24 (approx (* (- 2 (* maxCos 2)) ux) (+.f32 ux ux))))
%42 = (- (+ 1 %19) ux)
%43 = (pow %42 2)
%44 = (- 1 %43)
%46 = (- 2 (* 2 maxCos))
%47 = (* ux %46)
%52 = (*.f32 %16 (sqrt.f32 (approx %44 (approx %47 (*.f32 #s(literal 2 binary32) ux)))))
%57 = (approx uy #s(literal 0 binary32))
%61 = (- %21 ux)
%66 = (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux)
%68 = (sqrt.f32 (approx (- 1 (pow %61 2)) %66))
%73 = (*.f32 (+.f32 %16 %16) uy)
%88 = (*.f32 #s(literal 2 binary32) maxCos)
%93 = (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 #s(literal 2 binary32) %88)))))
%120 = (sqrt.f32 %31)
%126 = (/.f32 ux maxCos)
%137 = (/.f32 #s(literal 1 binary32) maxCos)
%149 = (- ux %19)
%154 = (* (- %149 0) (neg (- %149 2)))
%157 = (*.f32 maxCos ux)
%158 = (-.f32 ux %157)
%160 = (-.f32 (+.f32 #s(literal 2 binary32) %157) ux)
%166 = (approx (* %5 (sqrt %154)) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (*.f32 %158 %160))))))
%167 = (fma.f32 maxCos ux #s(literal 1 binary32))
%168 = (-.f32 ux %167)
%169 = (-.f32 %167 ux)
%171 = (sqrt.f32 (fma.f32 %168 %169 #s(literal 1 binary32)))
%198 = (* (sqrt (fabs (- (+ %19 2) ux))) (sin (* (+ %3 %3) uy)))
%200 = (-.f32 %157 ux)
%202 = (sqrt.f32 (fabs.f32 %200))
%204 = (sqrt.f32 (fabs.f32 %160))
%213 = (approx %198 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 %204))))
%232 = (sqrt.f32 (sqrt.f32 (approx %24 %66)))
%237 = (sqrt.f32 %68)
%248 = (-.f32 #s(literal 1 binary32) ux)
%262 = (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (-.f32 (+.f32 #s(literal 1 binary32) %157) ux) #s(literal 2 binary32)))))
%276 = (+ maxCos (/ 1 ux))
%277 = (- %276 1)
%278 = (/.f32 #s(literal 1 binary32) ux)
%279 = (-.f32 %278 #s(literal 1 binary32))
%293 = (approx %61 (*.f32 (-.f32 (+.f32 %278 maxCos) #s(literal 1 binary32)) ux))
%296 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %293 %293)))
%356 = (fma.f32 %167 %167 (*.f32 #s(literal -2 binary32) (*.f32 %167 ux)))
%414 = (sqrt.f32 (sqrt.f32 (fabs.f32 %158)))
(approx %15 (*.f32 (*.f32 %16 %17) %31))
(approx %15 (*.f32 (*.f32 %17 %31) %16))
(approx %15 (*.f32 %17 (*.f32 %31 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %52)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %52)))
(approx %15 (*.f32 (*.f32 %17 %68) %16))
(approx %15 (*.f32 %73 %68))
(approx %15 (*.f32 %17 (*.f32 %68 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 (-.f32 #s(literal 2 binary32) maxCos) maxCos))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %93)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %93)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (fma.f32 ux #s(literal 2 binary32) (*.f32 ux (*.f32 #s(literal -2 binary32) maxCos)))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (approx %43 (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 %88 #s(literal 2 binary32)))))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %120 %120)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (approx %47 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) ux (*.f32 #s(literal 2 binary32) %126))))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (approx %46 (*.f32 maxCos (-.f32 (*.f32 #s(literal 2 binary32) %137) #s(literal 2 binary32)))))))))))
%166
%166
(approx %15 (*.f32 %73 %171))
(approx %15 (*.f32 (*.f32 %17 %171) %16))
(approx %15 (*.f32 %17 (*.f32 %171 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (*.f32 %168 %169) #s(literal -1 binary32)))))))
(approx (* (sqrt (fabs (- %19 ux))) %198) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %202 %204)))))
(*.f32 %202 %213)
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (fma.f32 %168 %169 #s(literal 1/2 binary32)) #s(literal -1/2 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (/.f32 #s(literal 1 binary32) (pow.f32 %31 #s(literal -1 binary32)))))))
(approx %15 (*.f32 (*.f32 %17 (*.f32 %232 %16)) %232))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %237 %237)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 (*.f32 (*.f32 %16 uy) %232) %232)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (fma.f32 ux maxCos %248) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %262)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %262)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (/.f32 #s(literal 1 binary32) (pow.f32 %68 #s(literal -1 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (approx %277 %279))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 (*.f32 %17 %296) %16))
(approx %15 (*.f32 %73 %296))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (fma.f32 (neg.f32 %293) %293 #s(literal 1 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (+.f32 #s(literal 1/2 binary32) (-.f32 #s(literal 1/2 binary32) %158)) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (fma.f32 %168 %157 (fma.f32 %168 %248 #s(literal 1 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 %169 #s(literal 1 binary32) (*.f32 %169 %200))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (-.f32 (+.f32 maxCos %278) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) (*.f32 %169 %248)) (*.f32 (*.f32 %169 maxCos) ux)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 ux ux %356)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (-.f32 (/.f32 %167 ux) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (fma.f32 ux maxCos (*.f32 %279 ux))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) %356) (*.f32 ux ux)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) (pow.f32 %293 #s(literal -2 binary32)))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 maxCos (-.f32 (+.f32 ux %137) %126))) #s(literal 2 binary32))))))))
(*.f32 (*.f32 %414 %414) %213)
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -1 binary32) (*.f32 ux (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32))))) %88))))))))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %16)) (sqrt.f32 (approx %154 (*.f32 ux (approx (- 2 ux) #s(literal 2 binary32))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (-.f32 (approx %276 (*.f32 maxCos (+.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) %157)))) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (approx (* ux %277) (*.f32 maxCos (+.f32 ux (/.f32 (*.f32 ux %279) maxCos))))) #s(literal 2 binary32))))))))
Outputs
%11 = (+ (- 1 ux) (* ux maxCos))
%17 = (PI.f32 )
%18 = (* maxCos ux)
%42 = (- ux %18)
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %11 %11)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %17 (sqrt.f32 (approx (- 1 (pow (- (+ 1 %18) ux) 2)) (*.f32 ux (-.f32 (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -1 binary32) (*.f32 ux (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32))))) (*.f32 #s(literal 2 binary32) maxCos)))))))))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %17)) (sqrt.f32 (approx (* (- %42 0) (neg (- %42 2))) (*.f32 ux (approx (- 2 ux) #s(literal 2 binary32))))))
Call 6
Inputs
%3 = (PI )
%5 = (sin (* (* uy 2) %3))
%11 = (+ (- 1 ux) (* ux maxCos))
%13 = (- 1 (* %11 %11))
%15 = (* %5 (sqrt %13))
%16 = (PI.f32 )
%17 = (+.f32 uy uy)
%18 = (*.f32 %16 %17)
%19 = (* maxCos ux)
%21 = (- %19 -1)
%24 = (- 1 (pow (- ux %21) 2))
%31 = (sqrt.f32 (approx %24 (approx (* (- 2 (* maxCos 2)) ux) (+.f32 ux ux))))
%42 = (- (+ 1 %19) ux)
%43 = (pow %42 2)
%44 = (- 1 %43)
%46 = (- 2 (* 2 maxCos))
%47 = (* ux %46)
%52 = (*.f32 %16 (sqrt.f32 (approx %44 (approx %47 (*.f32 #s(literal 2 binary32) ux)))))
%57 = (approx uy #s(literal 0 binary32))
%61 = (- %21 ux)
%66 = (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux)
%68 = (sqrt.f32 (approx (- 1 (pow %61 2)) %66))
%73 = (*.f32 (+.f32 %16 %16) uy)
%88 = (*.f32 #s(literal 2 binary32) maxCos)
%90 = (*.f32 ux (-.f32 #s(literal 2 binary32) %88))
%93 = (*.f32 %16 (sqrt.f32 (approx %44 %90)))
%120 = (sqrt.f32 %31)
%126 = (/.f32 ux maxCos)
%137 = (/.f32 #s(literal 1 binary32) maxCos)
%149 = (- ux %19)
%153 = (neg (- %149 2))
%154 = (* (- %149 0) %153)
%157 = (*.f32 maxCos ux)
%158 = (-.f32 ux %157)
%160 = (-.f32 (+.f32 #s(literal 2 binary32) %157) ux)
%166 = (approx (* %5 (sqrt %154)) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (*.f32 %158 %160))))))
%167 = (fma.f32 maxCos ux #s(literal 1 binary32))
%168 = (-.f32 ux %167)
%169 = (-.f32 %167 ux)
%171 = (sqrt.f32 (fma.f32 %168 %169 #s(literal 1 binary32)))
%188 = (- %19 ux)
%198 = (* (sqrt (fabs (- (+ %19 2) ux))) (sin (* (+ %3 %3) uy)))
%200 = (-.f32 %157 ux)
%202 = (sqrt.f32 (fabs.f32 %200))
%204 = (sqrt.f32 (fabs.f32 %160))
%213 = (approx %198 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 %204))))
%232 = (sqrt.f32 (sqrt.f32 (approx %24 %66)))
%237 = (sqrt.f32 %68)
%248 = (-.f32 #s(literal 1 binary32) ux)
%262 = (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (-.f32 (+.f32 #s(literal 1 binary32) %157) ux) #s(literal 2 binary32)))))
%276 = (+ maxCos (/ 1 ux))
%277 = (- %276 1)
%278 = (/.f32 #s(literal 1 binary32) ux)
%279 = (-.f32 %278 #s(literal 1 binary32))
%293 = (approx %61 (*.f32 (-.f32 (+.f32 %278 maxCos) #s(literal 1 binary32)) ux))
%296 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %293 %293)))
%356 = (fma.f32 %167 %167 (*.f32 #s(literal -2 binary32) (*.f32 %167 ux)))
%414 = (sqrt.f32 (sqrt.f32 (fabs.f32 %158)))
%432 = (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %16))
%470 = (-.f32 #s(literal 2 binary32) ux)
%482 = (sqrt (sqrt (fabs %149)))
%510 = (approx %11 %248)
(approx %15 (*.f32 %18 %31))
(approx %15 (*.f32 (*.f32 %17 %31) %16))
(approx %15 (*.f32 %17 (*.f32 %31 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %52)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %52)))
(approx %15 (*.f32 (*.f32 %17 %68) %16))
(approx %15 (*.f32 %73 %68))
(approx %15 (*.f32 %17 (*.f32 %68 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 (-.f32 #s(literal 2 binary32) maxCos) maxCos))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %93)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %93)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (fma.f32 ux #s(literal 2 binary32) (*.f32 ux (*.f32 #s(literal -2 binary32) maxCos)))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (approx %43 (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 %88 #s(literal 2 binary32)))))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %120 %120)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (approx %47 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) ux (*.f32 #s(literal 2 binary32) %126))))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (approx %46 (*.f32 maxCos (-.f32 (*.f32 #s(literal 2 binary32) %137) #s(literal 2 binary32)))))))))))
%166
%166
(approx %15 (*.f32 %73 %171))
(approx %15 (*.f32 (*.f32 %17 %171) %16))
(approx %15 (*.f32 %17 (*.f32 %171 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (*.f32 %168 %169) #s(literal -1 binary32)))))))
(approx (* (sqrt (fabs %188)) %198) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %202 %204)))))
(*.f32 %202 %213)
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (fma.f32 %168 %169 #s(literal 1/2 binary32)) #s(literal -1/2 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (/.f32 #s(literal 1 binary32) (pow.f32 %31 #s(literal -1 binary32)))))))
(approx %15 (*.f32 (*.f32 %17 (*.f32 %232 %16)) %232))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %237 %237)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 (*.f32 (*.f32 %16 uy) %232) %232)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (fma.f32 ux maxCos %248) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %262)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %262)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (/.f32 #s(literal 1 binary32) (pow.f32 %68 #s(literal -1 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (approx %277 %279))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 (*.f32 %17 %296) %16))
(approx %15 (*.f32 %73 %296))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (fma.f32 (neg.f32 %293) %293 #s(literal 1 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (+.f32 #s(literal 1/2 binary32) (-.f32 #s(literal 1/2 binary32) %158)) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (fma.f32 %168 %157 (fma.f32 %168 %248 #s(literal 1 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 %169 #s(literal 1 binary32) (*.f32 %169 %200))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (-.f32 (+.f32 maxCos %278) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) (*.f32 %169 %248)) (*.f32 (*.f32 %169 maxCos) ux)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 ux ux %356)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (-.f32 (/.f32 %167 ux) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (fma.f32 ux maxCos (*.f32 %279 ux))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) %356) (*.f32 ux ux)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) (pow.f32 %293 #s(literal -2 binary32)))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 maxCos (-.f32 (+.f32 ux %137) %126))) #s(literal 2 binary32))))))))
(*.f32 (*.f32 %414 %414) %213)
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -1 binary32) (*.f32 ux (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32))))) %88))))))))
(*.f32 %432 (sqrt.f32 (approx %154 (*.f32 ux (approx (- 2 ux) #s(literal 2 binary32))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (-.f32 (approx %276 (*.f32 maxCos (+.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) %157)))) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (approx (* ux %277) (*.f32 maxCos (+.f32 ux (/.f32 (*.f32 ux %279) maxCos))))) #s(literal 2 binary32))))))))
(*.f32 (sqrt.f32 (approx (* %188 (- (- ux 2) %19)) (*.f32 %470 ux))) (sin.f32 %18))
(*.f32 %432 (sqrt.f32 (approx %154 (*.f32 ux %470))))
(approx (* (* %482 %482) %198) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %204 (pow.f32 %414 #s(literal 2 binary32)))))))
(*.f32 %432 (sqrt.f32 (approx %154 (*.f32 ux (-.f32 #s(literal 1 binary32) (-.f32 ux #s(literal 1 binary32)))))))
(*.f32 %432 (sqrt.f32 (approx %13 %90)))
(*.f32 %432 (sqrt.f32 (*.f32 %158 (approx %153 #s(literal 2 binary32)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (cos.f32 (asin.f32 %169))))))
(*.f32 %432 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %510 %510))))
Outputs
%2 = (* maxCos ux)
%13 = (PI.f32 )
%26 = (+ (- 1 ux) (* ux maxCos))
(*.f32 (sqrt.f32 (approx (* (- %2 ux) (- (- ux 2) %2)) (*.f32 (-.f32 #s(literal 2 binary32) ux) ux))) (sin.f32 (*.f32 %13 (+.f32 uy uy))))
(approx (* (sin (* (* uy 2) (PI ))) (sqrt (- 1 (* %26 %26)))) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %13 (sqrt.f32 (approx (- 1 (pow (- (+ 1 %2) ux) 2)) (*.f32 ux (-.f32 (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -1 binary32) (*.f32 ux (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32))))) (*.f32 #s(literal 2 binary32) maxCos)))))))))
Call 7
Inputs
%3 = (PI )
%5 = (sin (* (* uy 2) %3))
%11 = (+ (- 1 ux) (* ux maxCos))
%12 = (* %11 %11)
%13 = (- 1 %12)
%15 = (* %5 (sqrt %13))
%16 = (PI.f32 )
%17 = (+.f32 uy uy)
%18 = (*.f32 %16 %17)
%19 = (* maxCos ux)
%21 = (- %19 -1)
%24 = (- 1 (pow (- ux %21) 2))
%31 = (sqrt.f32 (approx %24 (approx (* (- 2 (* maxCos 2)) ux) (+.f32 ux ux))))
%42 = (- (+ 1 %19) ux)
%43 = (pow %42 2)
%44 = (- 1 %43)
%46 = (- 2 (* 2 maxCos))
%47 = (* ux %46)
%52 = (*.f32 %16 (sqrt.f32 (approx %44 (approx %47 (*.f32 #s(literal 2 binary32) ux)))))
%57 = (approx uy #s(literal 0 binary32))
%61 = (- %21 ux)
%66 = (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux)
%68 = (sqrt.f32 (approx (- 1 (pow %61 2)) %66))
%73 = (*.f32 (+.f32 %16 %16) uy)
%88 = (*.f32 #s(literal 2 binary32) maxCos)
%90 = (*.f32 ux (-.f32 #s(literal 2 binary32) %88))
%93 = (*.f32 %16 (sqrt.f32 (approx %44 %90)))
%112 = (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 %88 #s(literal 2 binary32))))
%120 = (sqrt.f32 %31)
%126 = (/.f32 ux maxCos)
%137 = (/.f32 #s(literal 1 binary32) maxCos)
%149 = (- ux %19)
%153 = (neg (- %149 2))
%154 = (* (- %149 0) %153)
%157 = (*.f32 maxCos ux)
%158 = (-.f32 ux %157)
%160 = (-.f32 (+.f32 #s(literal 2 binary32) %157) ux)
%166 = (approx (* %5 (sqrt %154)) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (*.f32 %158 %160))))))
%167 = (fma.f32 maxCos ux #s(literal 1 binary32))
%168 = (-.f32 ux %167)
%169 = (-.f32 %167 ux)
%171 = (sqrt.f32 (fma.f32 %168 %169 #s(literal 1 binary32)))
%188 = (- %19 ux)
%194 = (sqrt (fabs (- (+ %19 2) ux)))
%198 = (* %194 (sin (* (+ %3 %3) uy)))
%199 = (* (sqrt (fabs %188)) %198)
%200 = (-.f32 %157 ux)
%202 = (sqrt.f32 (fabs.f32 %200))
%204 = (sqrt.f32 (fabs.f32 %160))
%213 = (approx %198 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 %204))))
%232 = (sqrt.f32 (sqrt.f32 (approx %24 %66)))
%237 = (sqrt.f32 %68)
%248 = (-.f32 #s(literal 1 binary32) ux)
%262 = (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (-.f32 (+.f32 #s(literal 1 binary32) %157) ux) #s(literal 2 binary32)))))
%276 = (+ maxCos (/ 1 ux))
%277 = (- %276 1)
%278 = (/.f32 #s(literal 1 binary32) ux)
%279 = (-.f32 %278 #s(literal 1 binary32))
%293 = (approx %61 (*.f32 (-.f32 (+.f32 %278 maxCos) #s(literal 1 binary32)) ux))
%296 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %293 %293)))
%356 = (fma.f32 %167 %167 (*.f32 #s(literal -2 binary32) (*.f32 %167 ux)))
%414 = (sqrt.f32 (sqrt.f32 (fabs.f32 %158)))
%432 = (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %16))
%433 = (- 2 ux)
%470 = (-.f32 #s(literal 2 binary32) ux)
%478 = (sqrt.f32 (approx %154 (*.f32 ux %470)))
%482 = (sqrt (sqrt (fabs %149)))
%510 = (approx %11 %248)
%515 = (approx %153 %470)
%519 = (sqrt.f32 #s(literal 2 binary32))
(approx %15 (*.f32 %18 %31))
(approx %15 (*.f32 (*.f32 %17 %31) %16))
(approx %15 (*.f32 %17 (*.f32 %31 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %52)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %52)))
(approx %15 (*.f32 (*.f32 %17 %68) %16))
(approx %15 (*.f32 %73 %68))
(approx %15 (*.f32 %17 (*.f32 %68 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 (-.f32 #s(literal 2 binary32) maxCos) maxCos))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %93)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %93)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (fma.f32 ux #s(literal 2 binary32) (*.f32 ux (*.f32 #s(literal -2 binary32) maxCos)))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (approx %43 %112)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %120 %120)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (approx %47 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) ux (*.f32 #s(literal 2 binary32) %126))))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (approx %46 (*.f32 maxCos (-.f32 (*.f32 #s(literal 2 binary32) %137) #s(literal 2 binary32)))))))))))
%166
%166
(approx %15 (*.f32 %73 %171))
(approx %15 (*.f32 (*.f32 %17 %171) %16))
(approx %15 (*.f32 %17 (*.f32 %171 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (*.f32 %168 %169) #s(literal -1 binary32)))))))
(approx %199 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %202 %204)))))
(*.f32 %202 %213)
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (fma.f32 %168 %169 #s(literal 1/2 binary32)) #s(literal -1/2 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (/.f32 #s(literal 1 binary32) (pow.f32 %31 #s(literal -1 binary32)))))))
(approx %15 (*.f32 (*.f32 %17 (*.f32 %232 %16)) %232))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %237 %237)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 (*.f32 (*.f32 %16 uy) %232) %232)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (fma.f32 ux maxCos %248) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %262)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %262)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (/.f32 #s(literal 1 binary32) (pow.f32 %68 #s(literal -1 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (approx %277 %279))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 (*.f32 %17 %296) %16))
(approx %15 (*.f32 %73 %296))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (fma.f32 (neg.f32 %293) %293 #s(literal 1 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (+.f32 #s(literal 1/2 binary32) (-.f32 #s(literal 1/2 binary32) %158)) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (fma.f32 %168 %157 (fma.f32 %168 %248 #s(literal 1 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 %169 #s(literal 1 binary32) (*.f32 %169 %200))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (-.f32 (+.f32 maxCos %278) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) (*.f32 %169 %248)) (*.f32 (*.f32 %169 maxCos) ux)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 ux ux %356)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (-.f32 (/.f32 %167 ux) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (fma.f32 ux maxCos (*.f32 %279 ux))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) %356) (*.f32 ux ux)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) (pow.f32 %293 #s(literal -2 binary32)))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 maxCos (-.f32 (+.f32 ux %137) %126))) #s(literal 2 binary32))))))))
(*.f32 (*.f32 %414 %414) %213)
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -1 binary32) (*.f32 ux (pow.f32 (-.f32 maxCos #s(literal 1 binary32)) #s(literal 2 binary32))))) %88))))))))
(*.f32 %432 (sqrt.f32 (approx %154 (*.f32 ux (approx %433 #s(literal 2 binary32))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (-.f32 (approx %276 (*.f32 maxCos (+.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) %157)))) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (approx (* ux %277) (*.f32 maxCos (+.f32 ux (/.f32 (*.f32 ux %279) maxCos))))) #s(literal 2 binary32))))))))
(*.f32 (sqrt.f32 (approx (* %188 (- (- ux 2) %19)) (*.f32 %470 ux))) (sin.f32 %18))
(*.f32 %432 %478)
(approx (* (* %482 %482) %198) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %204 (pow.f32 %414 #s(literal 2 binary32)))))))
(*.f32 %432 (sqrt.f32 (approx %154 (*.f32 ux (-.f32 #s(literal 1 binary32) (-.f32 ux #s(literal 1 binary32)))))))
(*.f32 %432 (sqrt.f32 (approx %13 %90)))
(*.f32 %432 (sqrt.f32 (*.f32 %158 (approx %153 #s(literal 2 binary32)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (cos.f32 (asin.f32 %169))))))
(*.f32 %432 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %510 %510))))
(*.f32 %432 (sqrt.f32 (*.f32 %158 %515)))
(*.f32 %202 (*.f32 (approx %194 %519) (sin.f32 %73)))
(approx %199 (*.f32 (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy %16))) (*.f32 %519 %202)))
(*.f32 (approx %5 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 (pow.f32 uy #s(literal 2 binary32)) (pow.f32 %16 #s(literal 3 binary32))) (*.f32 #s(literal 2 binary32) %16)))) %478)
(*.f32 %432 (sqrt.f32 (*.f32 (-.f32 %158 #s(literal 0 binary32)) %515)))
(*.f32 %432 (sqrt.f32 (-.f32 #s(literal 1 binary32) (approx %12 %112))))
(*.f32 %432 (sqrt.f32 (approx %154 (*.f32 ux (approx %433 (*.f32 ux (-.f32 (*.f32 #s(literal 2 binary32) %278) #s(literal 1 binary32))))))))
Outputs
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (*.f32 (-.f32 ux (*.f32 maxCos ux)) (approx (neg (- (- ux (* maxCos ux)) 2)) (-.f32 #s(literal 2 binary32) ux)))))
Call 8
Inputs
%3 = (PI )
%5 = (sin (* (* uy 2) %3))
%11 = (+ (- 1 ux) (* ux maxCos))
%12 = (* %11 %11)
%13 = (- 1 %12)
%14 = (sqrt %13)
%15 = (* %5 %14)
%16 = (PI.f32 )
%17 = (+.f32 uy uy)
%18 = (*.f32 %16 %17)
%19 = (* maxCos ux)
%21 = (- %19 -1)
%24 = (- 1 (pow (- ux %21) 2))
%31 = (sqrt.f32 (approx %24 (approx (* (- 2 (* maxCos 2)) ux) (+.f32 ux ux))))
%42 = (- (+ 1 %19) ux)
%43 = (pow %42 2)
%44 = (- 1 %43)
%46 = (- 2 (* 2 maxCos))
%47 = (* ux %46)
%52 = (*.f32 %16 (sqrt.f32 (approx %44 (approx %47 (*.f32 #s(literal 2 binary32) ux)))))
%57 = (approx uy #s(literal 0 binary32))
%61 = (- %21 ux)
%66 = (*.f32 (fma.f32 #s(literal -2 binary32) maxCos #s(literal 2 binary32)) ux)
%68 = (sqrt.f32 (approx (- 1 (pow %61 2)) %66))
%72 = (+.f32 %16 %16)
%73 = (*.f32 %72 uy)
%88 = (*.f32 #s(literal 2 binary32) maxCos)
%90 = (*.f32 ux (-.f32 #s(literal 2 binary32) %88))
%93 = (*.f32 %16 (sqrt.f32 (approx %44 %90)))
%112 = (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 %88 #s(literal 2 binary32))))
%120 = (sqrt.f32 %31)
%126 = (/.f32 ux maxCos)
%137 = (/.f32 #s(literal 1 binary32) maxCos)
%138 = (*.f32 #s(literal 2 binary32) %137)
%149 = (- ux %19)
%153 = (neg (- %149 2))
%154 = (* (- %149 0) %153)
%155 = (sqrt %154)
%156 = (* %5 %155)
%157 = (*.f32 maxCos ux)
%158 = (-.f32 ux %157)
%160 = (-.f32 (+.f32 #s(literal 2 binary32) %157) ux)
%162 = (sqrt.f32 (*.f32 %158 %160))
%163 = (*.f32 %16 %162)
%166 = (approx %156 (*.f32 #s(literal 2 binary32) (*.f32 uy %163)))
%167 = (fma.f32 maxCos ux #s(literal 1 binary32))
%168 = (-.f32 ux %167)
%169 = (-.f32 %167 ux)
%171 = (sqrt.f32 (fma.f32 %168 %169 #s(literal 1 binary32)))
%188 = (- %19 ux)
%191 = (+ %19 2)
%192 = (- %191 ux)
%194 = (sqrt (fabs %192))
%198 = (* %194 (sin (* (+ %3 %3) uy)))
%199 = (* (sqrt (fabs %188)) %198)
%200 = (-.f32 %157 ux)
%202 = (sqrt.f32 (fabs.f32 %200))
%204 = (sqrt.f32 (fabs.f32 %160))
%210 = (*.f32 %16 %204)
%213 = (approx %198 (*.f32 #s(literal 2 binary32) (*.f32 uy %210)))
%232 = (sqrt.f32 (sqrt.f32 (approx %24 %66)))
%237 = (sqrt.f32 %68)
%243 = (*.f32 %16 uy)
%248 = (-.f32 #s(literal 1 binary32) ux)
%262 = (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (-.f32 (+.f32 #s(literal 1 binary32) %157) ux) #s(literal 2 binary32)))))
%276 = (+ maxCos (/ 1 ux))
%277 = (- %276 1)
%278 = (/.f32 #s(literal 1 binary32) ux)
%279 = (-.f32 %278 #s(literal 1 binary32))
%293 = (approx %61 (*.f32 (-.f32 (+.f32 %278 maxCos) #s(literal 1 binary32)) ux))
%296 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %293 %293)))
%335 = (*.f32 ux (-.f32 (+.f32 maxCos %278) #s(literal 1 binary32)))
%356 = (fma.f32 %167 %167 (*.f32 #s(literal -2 binary32) (*.f32 %167 ux)))
%401 = (+.f32 ux %137)
%403 = (*.f32 maxCos (-.f32 %401 %126))
%413 = (sqrt.f32 (fabs.f32 %158))
%414 = (sqrt.f32 %413)
%415 = (*.f32 %414 %414)
%417 = (-.f32 maxCos #s(literal 1 binary32))
%418 = (pow.f32 %417 #s(literal 2 binary32))
%419 = (*.f32 ux %418)
%432 = (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) %16))
%433 = (- 2 ux)
%470 = (-.f32 #s(literal 2 binary32) ux)
%473 = (sqrt.f32 (approx (* %188 (- (- ux 2) %19)) (*.f32 %470 ux)))
%474 = (sin.f32 %18)
%475 = (*.f32 %473 %474)
%476 = (*.f32 ux %470)
%478 = (sqrt.f32 (approx %154 %476))
%482 = (sqrt (sqrt (fabs %149)))
%491 = (-.f32 ux #s(literal 1 binary32))
%504 = (asin.f32 %169)
%510 = (approx %11 %248)
%515 = (approx %153 %470)
%519 = (sqrt.f32 #s(literal 2 binary32))
%521 = (sin.f32 %73)
%522 = (*.f32 (approx %194 %519) %521)
%526 = (sin.f32 (*.f32 #s(literal 2 binary32) (*.f32 uy %16)))
%531 = (pow.f32 uy #s(literal 2 binary32))
%533 = (pow.f32 %16 #s(literal 3 binary32))
%538 = (approx %5 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %531 %533) (*.f32 #s(literal 2 binary32) %16))))
%540 = (-.f32 %158 #s(literal 0 binary32))
%548 = (*.f32 #s(literal 2 binary32) %278)
%558 = (sqrt.f32 (*.f32 %158 (fma.f32 ux maxCos %470)))
%560 = (fma.f32 maxCos ux #s(literal 2 binary32))
%565 = (-.f32 %560 ux)
%568 = (*.f32 (sqrt.f32 (*.f32 %565 %158)) %521)
%570 = (fabs.f32 %565)
%571 = (sqrt.f32 %570)
%578 = (neg.f32 (-.f32 %158 #s(literal 2 binary32)))
%580 = (sqrt.f32 (*.f32 %158 %578))
%583 = (- ux (+ %19 1))
%584 = (approx %583 %491)
%585 = (fma.f32 maxCos ux %248)
%595 = (sqrt.f32 (fma.f32 %168 %585 #s(literal 1 binary32)))
%597 = (*.f32 %571 %521)
%607 = (sqrt.f32 %473)
%611 = (sqrt.f32 (*.f32 %540 %578))
%618 = (+.f32 %248 (*.f32 ux maxCos))
%621 = (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %618 %618)))
%635 = (approx %153 (*.f32 ux (-.f32 (+.f32 maxCos %548) #s(literal 1 binary32))))
%639 = (pow.f32 ux #s(literal 2 binary32))
%643 = (*.f32 %639 (-.f32 %548 (fma.f32 #s(literal 2 binary32) (/.f32 maxCos ux) %418)))
%655 = (sin.f32 (*.f32 (/.f32 #s(literal 1 binary32) (pow.f32 %17 #s(literal -1 binary32))) %16))
%670 = (+.f32 ux %138)
%704 = (approx %11 %335)
%723 = (sqrt.f32 (*.f32 %202 %570))
%725 = (sqrt.f32 %202)
%731 = (* %3 (sqrt %44))
%732 = (*.f32 %16 %418)
%734 = (sqrt.f32 %90)
%736 = (*.f32 %16 %734)
%744 = (approx %11 %403)
%749 = (sqrt.f32 %571)
%754 = (neg.f32 %725)
%787 = (*.f32 %158 %158)
%801 = (asin.f32 %585)
%804 = (sin.f32 %243)
%805 = (cos.f32 %243)
%807 = (*.f32 #s(literal 2 binary32) (*.f32 %804 %805))
%809 = (*.f32 %533 %162)
%819 = (-.f32 #s(literal 1 binary32) maxCos)
%822 = (sqrt.f32 (*.f32 #s(literal 2 binary32) (*.f32 ux %819)))
%823 = (*.f32 %819 %417)
%840 = (asin.f32 %168)
%851 = (acos.f32 %585)
%864 = (acos.f32 %168)
%868 = (cos.f32 (fma.f32 %72 uy %864))
%876 = (*.f32 %16 #s(literal 1/2 binary32))
%877 = (+.f32 (asin.f32 %584) %876)
%884 = (acos.f32 %169)
%888 = (+.f32 %840 %876)
%890 = (cos.f32 (fma.f32 %72 uy %888))
%911 = (sqrt.f32 %476)
%922 = (*.f32 #s(literal 1/2 binary32) %16)
%945 = (*.f32 %526 %418)
%954 = (pow.f32 %417 #s(literal 4 binary32))
%957 = (pow.f32 %734 #s(literal 3 binary32))
%968 = (fma.f32 %72 uy %884)
%989 = (+.f32 %864 %16)
%990 = (neg.f32 %851)
%1011 = (/.f32 %945 %734)
%1012 = (*.f32 %526 %954)
(approx %15 (*.f32 %18 %31))
(approx %15 (*.f32 (*.f32 %17 %31) %16))
(approx %15 (*.f32 %17 (*.f32 %31 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %52)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %52)))
(approx %15 (*.f32 (*.f32 %17 %68) %16))
(approx %15 (*.f32 %73 %68))
(approx %15 (*.f32 %17 (*.f32 %68 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 (-.f32 #s(literal 2 binary32) maxCos) maxCos))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %93)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %93)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (fma.f32 ux #s(literal 2 binary32) (*.f32 ux (*.f32 #s(literal -2 binary32) maxCos)))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (approx %43 %112)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %120 %120)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (approx %47 (*.f32 maxCos (fma.f32 #s(literal -2 binary32) ux (*.f32 #s(literal 2 binary32) %126))))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (approx %46 (*.f32 maxCos (-.f32 %138 #s(literal 2 binary32)))))))))))
%166
%166
(approx %15 (*.f32 %73 %171))
(approx %15 (*.f32 (*.f32 %17 %171) %16))
(approx %15 (*.f32 %17 (*.f32 %171 %16)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (*.f32 %168 %169) #s(literal -1 binary32)))))))
(approx %199 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %202 %204)))))
(*.f32 %202 %213)
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (fma.f32 %168 %169 #s(literal 1/2 binary32)) #s(literal -1/2 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (/.f32 #s(literal 1 binary32) (pow.f32 %31 #s(literal -1 binary32)))))))
(approx %15 (*.f32 (*.f32 %17 (*.f32 %232 %16)) %232))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %237 %237)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 (*.f32 %243 %232) %232)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (fma.f32 ux maxCos %248) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy %262)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 %57 %262)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (/.f32 #s(literal 1 binary32) (pow.f32 %68 #s(literal -1 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (approx %277 %279))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 (*.f32 %17 %296) %16))
(approx %15 (*.f32 %73 %296))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (fma.f32 (neg.f32 %293) %293 #s(literal 1 binary32)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (+.f32 #s(literal 1/2 binary32) (-.f32 #s(literal 1/2 binary32) %158)) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (fma.f32 %168 %157 (fma.f32 %168 %248 #s(literal 1 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 %169 #s(literal 1 binary32) (*.f32 %169 %200))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 %335) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) (*.f32 %169 %248)) (*.f32 (*.f32 %169 maxCos) ux)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (fma.f32 ux ux %356)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (-.f32 (/.f32 %167 ux) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (fma.f32 ux maxCos (*.f32 %279 ux))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 (-.f32 #s(literal 1 binary32) %356) (*.f32 ux ux)))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) (pow.f32 %293 #s(literal -2 binary32)))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 %403) #s(literal 2 binary32))))))))
(*.f32 %415 %213)
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 (*.f32 ux (-.f32 (+.f32 #s(literal 2 binary32) (*.f32 #s(literal -1 binary32) %419)) %88))))))))
(*.f32 %432 (sqrt.f32 (approx %154 (*.f32 ux (approx %433 #s(literal 2 binary32))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (*.f32 ux (-.f32 (approx %276 (*.f32 maxCos (+.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) %157)))) #s(literal 1 binary32)))) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (-.f32 #s(literal 1 binary32) (pow.f32 (approx %42 (approx (* ux %277) (*.f32 maxCos (+.f32 ux (/.f32 (*.f32 ux %279) maxCos))))) #s(literal 2 binary32))))))))
%475
(*.f32 %432 %478)
(approx (* (* %482 %482) %198) (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (*.f32 %204 (pow.f32 %414 #s(literal 2 binary32)))))))
(*.f32 %432 (sqrt.f32 (approx %154 (*.f32 ux (-.f32 #s(literal 1 binary32) %491)))))
(*.f32 %432 (sqrt.f32 (approx %13 %90)))
(*.f32 %432 (sqrt.f32 (*.f32 %158 (approx %153 #s(literal 2 binary32)))))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (cos.f32 %504)))))
(*.f32 %432 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %510 %510))))
(*.f32 %432 (sqrt.f32 (*.f32 %158 %515)))
(*.f32 %202 %522)
(approx %199 (*.f32 %526 (*.f32 %519 %202)))
(*.f32 %538 %478)
(*.f32 %432 (sqrt.f32 (*.f32 %540 %515)))
(*.f32 %432 (sqrt.f32 (-.f32 #s(literal 1 binary32) (approx %12 %112))))
(*.f32 %432 (sqrt.f32 (approx %154 (*.f32 ux (approx %433 (*.f32 ux (-.f32 %548 #s(literal 1 binary32))))))))
(*.f32 %521 %558)
(*.f32 (sqrt.f32 (*.f32 %200 (-.f32 ux %560))) %521)
%568
(*.f32 %432 %558)
(*.f32 %202 (*.f32 %571 (sin.f32 (*.f32 #s(literal 13176795/2097152 binary32) uy))))
(*.f32 %432 %580)
(*.f32 %432 (sqrt.f32 (+.f32 (fma.f32 %584 %585 #s(literal 1/2 binary32)) #s(literal 1/2 binary32))))
(*.f32 %432 (sqrt.f32 (*.f32 %158 (+.f32 #s(literal 1 binary32) %169))))
(*.f32 %595 %474)
(*.f32 %202 %597)
(*.f32 (*.f32 %521 %202) %571)
(*.f32 (*.f32 %413 %521) %571)
(*.f32 (*.f32 %202 %474) %571)
(*.f32 %432 (*.f32 %571 %202))
(*.f32 %432 (*.f32 %607 %607))
(*.f32 %432 %611)
(*.f32 %432 (sqrt.f32 (*.f32 %540 (-.f32 %585 #s(literal -1 binary32)))))
(*.f32 %432 %621)
(*.f32 %202 (*.f32 (sqrt.f32 (fabs.f32 (-.f32 #s(literal 1 binary32) %168))) %521))
(*.f32 %432 (sqrt.f32 (+.f32 (fma.f32 %168 %585 #s(literal 1/2 binary32)) #s(literal 1/2 binary32))))
(*.f32 %432 (sqrt.f32 (*.f32 %158 %635)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (sqrt.f32 (approx %44 %643))))))
(*.f32 %538 %558)
(*.f32 %538 %580)
(*.f32 %655 %478)
(*.f32 (sin.f32 (/.f32 #s(literal 1 binary32) (pow.f32 %18 #s(literal -1 binary32)))) %478)
(/.f32 #s(literal 1 binary32) (pow.f32 %475 #s(literal -1 binary32)))
(*.f32 %432 (sqrt.f32 (*.f32 %540 %635)))
(*.f32 %432 (/.f32 #s(literal 1 binary32) (pow.f32 %473 #s(literal -1 binary32))))
(*.f32 %415 %522)
(*.f32 %202 (*.f32 (sqrt.f32 (fabs.f32 (-.f32 (approx %191 (*.f32 maxCos %670)) ux))) %521))
(*.f32 %432 (sqrt.f32 (*.f32 %158 (approx %153 (*.f32 maxCos (-.f32 %670 %126))))))
(*.f32 %432 (sqrt.f32 (+.f32 (*.f32 %565 ux) (*.f32 %565 (*.f32 (neg.f32 maxCos) ux)))))
(*.f32 %202 (*.f32 (approx %194 (+.f32 %519 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 ux %417) %519)))) %521))
(*.f32 %538 %611)
(*.f32 %432 (sqrt.f32 (-.f32 #s(literal 1 binary32) (+.f32 %585 (*.f32 %585 %200)))))
(*.f32 %432 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %704 %704))))
(*.f32 %538 %621)
(*.f32 %415 (*.f32 (sqrt.f32 (fabs.f32 (approx %192 %470))) %521))
(*.f32 %432 (sqrt.f32 (+.f32 (fma.f32 (approx %583 (*.f32 maxCos (-.f32 %126 %401))) %585 #s(literal 1/2 binary32)) #s(literal 1/2 binary32))))
(*.f32 (*.f32 %723 %474) %725)
(*.f32 %432 (*.f32 %725 %723))
(*.f32 %415 %597)
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (approx %731 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 %639 %732) %734) %736)))))
(/.f32 #s(literal 1 binary32) (pow.f32 %568 #s(literal -1 binary32)))
(*.f32 %432 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %744 %744))))
(*.f32 %202 (*.f32 (*.f32 %749 %749) %521))
(*.f32 (*.f32 (*.f32 %571 %474) %754) %754)
(*.f32 (/.f32 #s(literal 1 binary32) (pow.f32 %521 #s(literal -1 binary32))) %580)
(*.f32 %655 %580)
(*.f32 (sin.f32 (/.f32 #s(literal 1 binary32) (pow.f32 %73 #s(literal -1 binary32)))) %580)
(*.f32 %432 (sqrt.f32 (-.f32 #s(literal 1 binary32) (approx %12 (+.f32 #s(literal 1 binary32) (*.f32 ux (-.f32 (fma.f32 #s(literal 2 binary32) maxCos %419) #s(literal 2 binary32))))))))
(approx %15 (*.f32 #s(literal 2 binary32) (approx (* uy %731) (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 %639 (*.f32 uy %732)) %734) (*.f32 uy %736)))))
(*.f32 %202 (*.f32 (sqrt.f32 (/.f32 #s(literal 1 binary32) (pow.f32 %570 #s(literal -1 binary32)))) %521))
(*.f32 (pow.f32 %787 #s(literal 1/4 binary32)) %597)
(*.f32 (pow.f32 (*.f32 %200 %200) #s(literal 1/4 binary32)) %597)
(*.f32 %202 (approx %198 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %531 (*.f32 %533 %204)) (*.f32 #s(literal 2 binary32) %210)))))
(*.f32 %432 (cos.f32 %801))
(*.f32 %807 %478)
(approx %156 (*.f32 uy (fma.f32 #s(literal -4/3 binary32) (*.f32 %531 %809) (*.f32 #s(literal 2 binary32) %163))))
(*.f32 %432 (pow.f32 (*.f32 (*.f32 %565 %565) %787) #s(literal 1/4 binary32)))
(*.f32 %432 (approx %155 (+.f32 %822 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %639 %823) %822)))))
(*.f32 %807 %580)
(*.f32 %432 (sqrt.f32 (approx %13 %643)))
(*.f32 %432 (sqrt.f32 (*.f32 %202 (*.f32 %723 %723))))
(*.f32 (+.f32 (sin.f32 (fma.f32 #s(literal 13176795/2097152 binary32) uy %801)) (sin.f32 (fma.f32 #s(literal 13176795/2097152 binary32) uy %840))) #s(literal 1/2 binary32))
(*.f32 (+.f32 (sin.f32 (fma.f32 %72 uy %801)) (sin.f32 (fma.f32 %72 uy %840))) #s(literal 1/2 binary32))
(*.f32 (-.f32 (cos.f32 (-.f32 %851 %18)) (cos.f32 (fma.f32 %72 uy %851))) #s(literal 1/2 binary32))
(*.f32 %432 (approx %14 (+.f32 %734 (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 %639 %418) %734)))))
(/.f32 (-.f32 (cos.f32 (-.f32 %18 %864)) %868) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %73 %864)) %868) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %18 %877)) (cos.f32 (fma.f32 %72 uy %877))) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (fma.f32 %72 uy (neg.f32 %884))) %890) #s(literal 2 binary32))
(/.f32 (-.f32 (cos.f32 (-.f32 %18 %888)) %890) #s(literal 2 binary32))
(*.f32 %432 (sqrt.f32 (approx %154 (*.f32 (pow.f32 maxCos #s(literal 2 binary32)) (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %476 maxCos) (fma.f32 #s(literal -1 binary32) %639 %476)) maxCos) (*.f32 #s(literal -1 binary32) %639))))))
(approx %156 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 maxCos (*.f32 %526 (fma.f32 #s(literal -1 binary32) %476 %639))) %911) (*.f32 %526 %911)))
(approx %156 (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %639 (*.f32 %526 %823)) %822) (*.f32 %526 %822)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (*.f32 %16 (+.f32 (/.f32 (+.f32 (sin.f32 (-.f32 %504 %922)) %171) #s(literal 2 binary32)) (*.f32 %171 (sin.f32 %922)))))))
(approx %156 (*.f32 uy (fma.f32 #s(literal 2 binary32) %163 (*.f32 %531 (fma.f32 #s(literal -4/3 binary32) %809 (*.f32 #s(literal 4/15 binary32) (*.f32 %531 (*.f32 (pow.f32 %16 #s(literal 5 binary32)) %162))))))))
(approx %15 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 %639 %945) %734) (*.f32 %526 %734)))
(approx %15 (*.f32 #s(literal 2 binary32) (*.f32 uy (approx %731 (fma.f32 %16 %734 (*.f32 %639 (fma.f32 #s(literal -1/2 binary32) (/.f32 %732 %734) (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %639 (*.f32 %16 %954)) %957)))))))))
(/.f32 (*.f32 #s(literal 2 binary32) (*.f32 (sin.f32 (*.f32 (-.f32 (-.f32 %73 %884) %968) #s(literal 1/2 binary32))) (cos.f32 (/.f32 (+.f32 (fma.f32 %72 uy %504) (fma.f32 #s(literal 1/2 binary32) %16 %968)) #s(literal 2 binary32))))) #s(literal 2 binary32))
(*.f32 %432 (+.f32 (/.f32 (+.f32 (sin.f32 (-.f32 %801 %876)) %595) #s(literal 2 binary32)) (/.f32 (-.f32 %595 (neg.f32 %595)) #s(literal 2 binary32))))
(*.f32 %432 (sqrt.f32 (/.f32 (-.f32 (cos.f32 (-.f32 %989 %990)) (cos.f32 (+.f32 %989 %990))) #s(literal 2 binary32))))
(*.f32 (fma.f32 %804 %805 (*.f32 %805 %804)) %611)
(*.f32 %432 (approx %14 (+.f32 %734 (*.f32 %639 (fma.f32 #s(literal -1/2 binary32) (/.f32 %418 %734) (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %639 %954) %957)))))))
(approx %15 (fma.f32 %526 %734 (*.f32 %639 (fma.f32 #s(literal -1/2 binary32) %1011 (*.f32 #s(literal -1/8 binary32) (/.f32 (*.f32 %639 %1012) %957))))))
(approx %15 (fma.f32 %526 %734 (*.f32 %639 (fma.f32 #s(literal -1/2 binary32) %1011 (*.f32 %639 (fma.f32 #s(literal -1/8 binary32) (/.f32 %1012 %957) (*.f32 #s(literal -1/16 binary32) (/.f32 (*.f32 %639 (*.f32 %526 (pow.f32 %417 #s(literal 6 binary32)))) (pow.f32 %734 #s(literal 5 binary32))))))))))
Outputs
%0 = (PI.f32 )
(*.f32 (sin.f32 (*.f32 (+.f32 %0 %0) uy)) (sqrt.f32 (*.f32 (-.f32 ux (*.f32 maxCos ux)) (fma.f32 ux maxCos (-.f32 #s(literal 2 binary32) ux)))))
Calls

87 calls:

47.0ms
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 %5 %5)
42.0ms
(sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 )))
41.0ms
maxCos
39.0ms
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
39.0ms
(+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
Results
AccuracySegmentsBranch
64.8%1
%11 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11))))
64.8%1
maxCos
64.8%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(-.f32 #s(literal 1 binary32) (*.f32 %5 %5))
64.8%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %5 %5)))
64.8%1
ux
64.8%1
(+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
64.8%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 %5 %5)
64.8%1
(*.f32 uy #s(literal 2 binary32))
64.8%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
64.8%1
(sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 )))
64.8%1
uy
66.9%1
maxCos
66.9%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(-.f32 #s(literal 1 binary32) (*.f32 %5 %5))
66.9%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %5 %5)))
66.9%1
%11 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11))))
66.9%1
ux
66.9%1
(*.f32 uy #s(literal 2 binary32))
66.9%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
66.9%1
(sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 )))
66.9%1
uy
66.9%1
(+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
66.9%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 %5 %5)
81.9%1
maxCos
81.9%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(-.f32 #s(literal 1 binary32) (*.f32 %5 %5))
81.9%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %5 %5)))
81.9%1
ux
81.9%1
%11 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11))))
81.9%1
(sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 )))
81.9%1
(*.f32 uy #s(literal 2 binary32))
81.9%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
81.9%1
uy
81.9%1
(+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
81.9%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 %5 %5)
82.0%1
%11 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11))))
82.0%1
(+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
82.0%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 %5 %5)
82.0%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(-.f32 #s(literal 1 binary32) (*.f32 %5 %5))
82.0%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %5 %5)))
82.0%1
ux
82.0%1
(sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 )))
82.0%1
(*.f32 uy #s(literal 2 binary32))
82.0%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
82.0%1
uy
87.5%2
(+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
87.5%2
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 %5 %5)
87.5%2
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(-.f32 #s(literal 1 binary32) (*.f32 %5 %5))
87.5%2
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %5 %5)))
90.1%2
(*.f32 uy #s(literal 2 binary32))
90.1%2
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
90.1%2
uy
88.2%2
(sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 )))
86.3%2
%11 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11))))
87.5%2
ux
82.0%1
maxCos
93.4%1
(+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
93.4%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 %5 %5)
93.4%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(-.f32 #s(literal 1 binary32) (*.f32 %5 %5))
93.4%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %5 %5)))
93.4%1
(*.f32 uy #s(literal 2 binary32))
93.4%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
93.4%1
(sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 )))
93.4%1
ux
93.4%1
uy
96.6%2
maxCos
93.4%1
%11 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11))))
97.6%1
(+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
97.6%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 %5 %5)
97.6%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(-.f32 #s(literal 1 binary32) (*.f32 %5 %5))
97.6%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %5 %5)))
97.6%1
(*.f32 uy #s(literal 2 binary32))
97.6%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
97.6%1
(sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 )))
97.6%1
%11 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11))))
97.6%1
ux
97.6%1
uy
97.6%1
maxCos
98.4%1
(+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
98.4%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 %5 %5)
98.4%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(-.f32 #s(literal 1 binary32) (*.f32 %5 %5))
98.4%1
%5 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %5 %5)))
98.4%1
(*.f32 uy #s(literal 2 binary32))
98.4%1
(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))
98.4%1
(sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 )))
98.4%1
%11 = (+.f32 (-.f32 #s(literal 1 binary32) ux) (*.f32 ux maxCos))
(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32 ))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 %11 %11))))
98.4%1
ux
98.4%1
uy
98.4%1
maxCos
Compiler

Compiled 4 249 to 844 computations (80.1% saved)

bsearch7.0ms (0.2%)

Memory
2.9MiB live, 35.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
5.121354661241639e-6
5.63831054023467e-6
Compiler

Compiled 28 to 17 computations (39.3% saved)

bsearch6.0ms (0.1%)

Memory
-0.5MiB live, 31.4MiB allocated; 1ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0008237271104007959
0.0008384376997128129
Compiler

Compiled 28 to 17 computations (39.3% saved)

derivations158.0ms (3.7%)

Memory
29.2MiB live, 60.7MiB allocated; 0ms collecting garbage
Stop Event
fuel
Compiler

Compiled 184 to 66 computations (64.1% saved)

preprocess42.0ms (1.0%)

Memory
-5.9MiB live, 62.8MiB allocated; 9ms collecting garbage
Compiler

Compiled 209 to 82 computations (60.8% saved)

end0.0ms (0.0%)

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

Profiling

Loading profile data...