HairBSDF, Mp, lower

Time bar (total: 4.9s)

start0.0ms (0.0%)

analyze207.0ms (4.3%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0.0%0.0%3.0%97.0%0.0%0.0%0.0%0
0.0%0.0%3.0%97.0%0.0%0.0%0.0%1
0.0%0.0%3.0%97.0%0.0%0.0%0.0%2
0.0%0.0%3.0%97.0%0.0%0.0%0.0%3
0.0%0.0%3.0%97.0%0.0%0.0%0.0%4
0.0%0.0%3.0%97.0%0.0%0.0%0.0%5
0.0%0.0%1.5%97.0%0.0%1.5%0.0%6
0.0%0.0%1.5%97.0%0.0%1.5%0.0%7
0.0%0.0%1.5%97.0%0.0%1.5%0.0%8
0.0%0.0%1.5%97.0%0.0%1.5%0.0%9
0.0%0.0%1.5%97.0%0.0%1.5%0.0%10
0.0%0.0%1.5%97.0%0.0%1.5%0.0%11
0.0%0.0%1.5%97.0%0.0%1.5%0.0%12
Compiler

Compiled 65 to 44 computations (32.3% saved)

sample1.1s (21.8%)

Samples
931.0ms8 255×0valid
12.0ms116×0invalid
0.0ms1valid
Precisions
Click to see histograms. Total time spent on operations: 477.0ms
ival-div!: 146.0ms (30.6% of total, 97.9 MiB)
ival-mult!: 98.0ms (20.5% of total, 70.8 MiB)
ival-log!: 71.0ms (14.9% of total, 44.4 MiB)
ival-exp!: 46.0ms (9.6% of total, 32.5 MiB)
ival-add!: 40.0ms (8.4% of total, 30.7 MiB)
ival-sub!: 38.0ms (8.0% of total, 31.3 MiB)
ival-and: 14.0ms (2.9% of total, 13.8 MiB)
ival-<=: 13.0ms (2.7% of total, 10.4 MiB)
adjust: 8.0ms (1.7% of total, 3.7 MiB)
ival-assert: 4.0ms (0.8% of total, 4.4 MiB)
const: 0.0ms (0.0% of total, 0.0 MiB)
Bogosity

preprocess23.0ms (0.5%)

Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0164460
11209393
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.6%
(exp.f32 (+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v)))))
Symmetry

(sort cosTheta_i cosTheta_O)

(sort sinTheta_i sinTheta_O)

Compiler

Compiled 2 to 42 computations (-2000.0% saved)

sample0.0ms (0.0%)

Calls
Call 1
Inputs
Outputs

series35.0ms (0.7%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04844010
Stop Event
iter-limit
Counts
21 → 93
Calls
Call 1
Inputs
%2 = (*.f32 cosTheta_i cosTheta_O)
%4 = (/.f32 %2 v)
%7 = (*.f32 sinTheta_i sinTheta_O)
%8 = (/.f32 %7 v)
%9 = (-.f32 %4 %8)
%11 = (/.f32 #s(literal 1 binary32) v)
%12 = (-.f32 %9 %11)
%14 = (+.f32 %12 #s(literal 6931/10000 binary32))
%16 = (*.f32 #s(literal 2 binary32) v)
%17 = (/.f32 #s(literal 1 binary32) %16)
%18 = (log.f32 %17)
%19 = (+.f32 %14 %18)
cosTheta_i
cosTheta_O
%2
v
%4
sinTheta_i
sinTheta_O
%7
%8
%9
#s(literal 1 binary32)
%11
%12
#s(literal 6931/10000 binary32)
%14
#s(literal 2 binary32)
%16
%17
%18
%19
(exp.f32 %19)
Outputs
%5 = (* cosTheta_i cosTheta_O)
%6 = (*.f32 cosTheta_O cosTheta_i)
%9 = (/ %5 v)
%10 = (/.f32 %6 v)
%14 = (* sinTheta_i sinTheta_O)
%15 = (/ %14 v)
%16 = (- %9 %15)
%18 = (*.f32 sinTheta_O sinTheta_i)
%19 = (/.f32 %18 v)
%25 = (/ 1 v)
%26 = (- %16 %25)
%28 = (/.f32 #s(literal 1 binary32) v)
%29 = (+.f32 %28 %19)
%35 = (+ %26 6931/10000)
%37 = (-.f32 #s(literal 6931/10000 binary32) %29)
%39 = (+.f32 #s(literal 6931/10000 binary32) %10)
%43 = (* 2 v)
%44 = (/ 1 %43)
%45 = (log %44)
%46 = (+ %35 %45)
%48 = (/.f32 #s(literal 1/2 binary32) v)
%49 = (log.f32 %48)
%51 = (-.f32 (+.f32 #s(literal 6931/10000 binary32) %49) %29)
%54 = (+.f32 #s(literal 6931/10000 binary32) (+.f32 %49 %10))
%55 = (-.f32 %54 %29)
%57 = (exp %46)
%58 = (exp.f32 %51)
%60 = (*.f32 cosTheta_i %58)
%66 = (pow.f32 cosTheta_O #s(literal 2 binary32))
%68 = (pow.f32 v #s(literal 2 binary32))
%71 = (/.f32 (*.f32 cosTheta_O %58) v)
%80 = (pow.f32 v #s(literal 3 binary32))
%90 = (*.f32 cosTheta_i v)
%91 = (/.f32 %18 %90)
%92 = (/.f32 cosTheta_O v)
%100 = (/.f32 #s(literal 1 binary32) cosTheta_i)
%103 = (+.f32 (/.f32 #s(literal 1 binary32) %90) %91)
%137 = (*.f32 (pow.f32 cosTheta_i #s(literal 2 binary32)) %58)
%140 = (/.f32 %60 v)
%156 = (*.f32 cosTheta_O v)
%157 = (/.f32 %18 %156)
%158 = (/.f32 cosTheta_i v)
%166 = (/.f32 #s(literal 1 binary32) cosTheta_O)
%169 = (+.f32 (/.f32 #s(literal 1 binary32) %156) %157)
%202 = (fma.f32 #s(literal -1 binary32) %19 %10)
%204 = (-.f32 %10 %28)
%208 = (-.f32 %39 %28)
%213 = (-.f32 %54 %28)
%219 = (exp.f32 %213)
%221 = (*.f32 sinTheta_i %219)
%228 = (/.f32 (*.f32 sinTheta_O %219) v)
%229 = (pow.f32 sinTheta_O #s(literal 2 binary32))
%250 = (*.f32 sinTheta_i v)
%251 = (/.f32 %6 %250)
%252 = (/.f32 sinTheta_O v)
%257 = (+.f32 (/.f32 #s(literal 1 binary32) %250) %252)
%261 = (/.f32 #s(literal 1 binary32) sinTheta_i)
%273 = (*.f32 #s(literal -1 binary32) %252)
%297 = (/.f32 %221 v)
%299 = (*.f32 (pow.f32 sinTheta_i #s(literal 2 binary32)) %219)
%319 = (*.f32 sinTheta_O v)
%320 = (/.f32 %6 %319)
%321 = (/.f32 sinTheta_i v)
%326 = (+.f32 (/.f32 #s(literal 1 binary32) %319) %321)
%330 = (/.f32 #s(literal 1 binary32) sinTheta_O)
%342 = (*.f32 #s(literal -1 binary32) %321)
%370 = (+.f32 #s(literal 1 binary32) %18)
%371 = (-.f32 %6 %370)
%381 = (log.f32 #s(literal 1/2 binary32))
%384 = (+.f32 %381 (*.f32 #s(literal -1 binary32) (log.f32 v)))
%393 = (log.f32 %28)
%394 = (+.f32 %381 %393)
%396 = (+.f32 #s(literal 6931/10000 binary32) %394)
%403 = (exp.f32 %396)
%406 = (/.f32 (*.f32 %403 %371) v)
%412 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %403 (pow.f32 %371 #s(literal 2 binary32))) %68) %406)
%421 = (*.f32 #s(literal -1 binary32) %6)
%422 = (*.f32 #s(literal -1 binary32) %18)
%428 = (-.f32 (+.f32 #s(literal 1 binary32) %421) %422)
%430 = (*.f32 #s(literal -1 binary32) (/.f32 %428 v))
%438 = (*.f32 %403 %428)
%445 = (*.f32 %403 (pow.f32 %428 #s(literal 2 binary32)))
(approx cosTheta_i #s(literal 0 binary32))
(approx cosTheta_i cosTheta_i)
(approx %5 %6)
(approx %9 %10)
(approx %16 (*.f32 #s(literal -1 binary32) %19))
(approx %16 (-.f32 %10 %19))
(approx %26 (*.f32 #s(literal -1 binary32) %29))
(approx %26 (-.f32 %10 %29))
(approx %35 %37)
(approx %35 (-.f32 %39 %29))
(approx %46 %51)
(approx %46 %55)
(approx %57 %58)
(approx %57 (+.f32 %58 (/.f32 (*.f32 cosTheta_O %60) v)))
(approx %57 (+.f32 %58 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %66 %60) %68) %71))))
(approx %57 (+.f32 %58 (*.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 (pow.f32 cosTheta_O #s(literal 3 binary32)) %60) %80) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %66 %58) %68))) %71))))
(approx %16 (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %91 %92)))
(approx %26 (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) (/.f32 %29 cosTheta_i) %92)))
(approx %35 (*.f32 cosTheta_i (-.f32 (fma.f32 #s(literal 6931/10000 binary32) %100 %92) %103)))
(approx %46 (*.f32 cosTheta_i (-.f32 (fma.f32 #s(literal 6931/10000 binary32) %100 (+.f32 %92 (/.f32 %49 cosTheta_i))) %103)))
(approx %57 (exp.f32 %55))
(approx %16 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %92 %91))))
(approx %26 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %92 %103))))
(approx %35 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %92 (*.f32 #s(literal -1 binary32) (/.f32 %37 cosTheta_i))))))
(approx %46 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %92 (*.f32 #s(literal -1 binary32) (/.f32 %51 cosTheta_i))))))
(approx cosTheta_O cosTheta_O)
(approx %57 (+.f32 %58 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %137) %68) %140))))
(approx %57 (+.f32 %58 (*.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 (pow.f32 cosTheta_i #s(literal 3 binary32)) %58)) %80) (*.f32 #s(literal 1/2 binary32) (/.f32 %137 %68))) %140))))
(approx %16 (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %157 %158)))
(approx %26 (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) (/.f32 %29 cosTheta_O) %158)))
(approx %35 (*.f32 cosTheta_O (-.f32 (fma.f32 #s(literal 6931/10000 binary32) %166 %158) %169)))
(approx %46 (*.f32 cosTheta_O (-.f32 (fma.f32 #s(literal 6931/10000 binary32) %166 (+.f32 %158 (/.f32 %49 cosTheta_O))) %169)))
(approx %16 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %158 %157))))
(approx %26 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %158 %169))))
(approx %35 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %158 (*.f32 #s(literal -1 binary32) (/.f32 %37 cosTheta_O))))))
(approx %46 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %158 (*.f32 #s(literal -1 binary32) (/.f32 %51 cosTheta_O))))))
(approx sinTheta_i sinTheta_i)
(approx %14 %18)
(approx %15 %19)
(approx %16 %202)
(approx %26 %204)
(approx %26 (-.f32 %202 %28))
(approx %35 %208)
(approx %35 (-.f32 (+.f32 #s(literal 6931/10000 binary32) %202) %28))
(approx %46 %213)
(approx %46 (-.f32 (+.f32 #s(literal 6931/10000 binary32) (+.f32 %49 %202)) %28))
(approx %57 %219)
(approx %57 (+.f32 %219 (*.f32 #s(literal -1 binary32) (/.f32 (*.f32 sinTheta_O %221) v))))
(approx %57 (+.f32 %219 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %228 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %229 %221) %68))))))
(approx %57 (+.f32 %219 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %228 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 (pow.f32 sinTheta_O #s(literal 3 binary32)) %221) %80) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %229 %219) %68))))))))
(approx %16 (*.f32 sinTheta_i (-.f32 %251 %252)))
(approx %26 (*.f32 sinTheta_i (-.f32 %251 %257)))
(approx %35 (*.f32 sinTheta_i (-.f32 (fma.f32 #s(literal 6931/10000 binary32) %261 %251) %257)))
(approx %46 (*.f32 sinTheta_i (-.f32 (fma.f32 #s(literal 6931/10000 binary32) %261 (+.f32 (/.f32 %49 sinTheta_i) %251)) %257)))
(approx %16 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) %251) %273))))
(approx %26 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %204 sinTheta_i)) %273))))
(approx %35 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %208 sinTheta_i)) %273))))
(approx %46 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %213 sinTheta_i)) %273))))
(approx sinTheta_O sinTheta_O)
(approx %57 (+.f32 %219 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %297 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %299) %68))))))
(approx %57 (+.f32 %219 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %297 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 (pow.f32 sinTheta_i #s(literal 3 binary32)) %219)) %80) (*.f32 #s(literal 1/2 binary32) (/.f32 %299 %68))))))))
(approx %16 (*.f32 sinTheta_O (-.f32 %320 %321)))
(approx %26 (*.f32 sinTheta_O (-.f32 %320 %326)))
(approx %35 (*.f32 sinTheta_O (-.f32 (fma.f32 #s(literal 6931/10000 binary32) %330 %320) %326)))
(approx %46 (*.f32 sinTheta_O (-.f32 (fma.f32 #s(literal 6931/10000 binary32) %330 (+.f32 (/.f32 %49 sinTheta_O) %320)) %326)))
(approx %16 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) %320) %342))))
(approx %26 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %204 sinTheta_O)) %342))))
(approx %35 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %208 sinTheta_O)) %342))))
(approx %46 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %213 sinTheta_O)) %342))))
(approx v v)
(approx %16 (/.f32 (-.f32 %6 %18) v))
(approx %25 %28)
(approx %26 (/.f32 %371 v))
(approx %35 (/.f32 (-.f32 (fma.f32 #s(literal 6931/10000 binary32) v %6) %370) v))
(approx %43 (*.f32 #s(literal 2 binary32) v))
(approx %44 %48)
(approx %45 %384)
(approx %46 (/.f32 (-.f32 (fma.f32 cosTheta_O cosTheta_i (*.f32 v (+.f32 #s(literal 6931/10000 binary32) %384))) %370) v))
(approx %35 #s(literal 6931/10000 binary32))
(approx %45 %394)
(approx %46 %396)
(approx %46 (-.f32 (+.f32 #s(literal 6931/10000 binary32) (+.f32 %381 (+.f32 %393 %10))) %29))
(approx %57 %403)
(approx %57 (+.f32 %403 %406))
(approx %57 (+.f32 %403 %412))
(approx %57 (+.f32 %403 (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %403 (pow.f32 %371 #s(literal 3 binary32))) %80) %412)))
(approx %16 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 %421 %422) v)))
(approx %26 %430)
(approx %35 (+.f32 #s(literal 6931/10000 binary32) %430))
(approx %46 (+.f32 #s(literal 6931/10000 binary32) (+.f32 %381 (+.f32 %393 %430))))
(approx %57 (+.f32 %403 (*.f32 #s(literal -1 binary32) (/.f32 %438 v))))
(approx %57 (+.f32 %403 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %445 v) %438) v))))
(approx %57 (+.f32 %403 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %403 (pow.f32 %428 #s(literal 3 binary32))) v) (*.f32 #s(literal 1/2 binary32) %445)) v) %438) v))))
Calls

15 calls:

TimeVariablePoint
5.0ms
v
0
3.0ms
cosTheta_O
0
2.0ms
cosTheta_i
0
2.0ms
v
inf
1.0ms
v
-inf

rewrite113.0ms (2.3%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
021133
034115
1143106
2774106
04045106
04195102
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
21 → 898
Calls
Call 1
Inputs
%2 = (*.f32 cosTheta_i cosTheta_O)
%4 = (/.f32 %2 v)
%7 = (*.f32 sinTheta_i sinTheta_O)
%8 = (/.f32 %7 v)
%9 = (-.f32 %4 %8)
%11 = (/.f32 #s(literal 1 binary32) v)
%12 = (-.f32 %9 %11)
%14 = (+.f32 %12 #s(literal 6931/10000 binary32))
%16 = (*.f32 #s(literal 2 binary32) v)
%17 = (/.f32 #s(literal 1 binary32) %16)
%18 = (log.f32 %17)
%19 = (+.f32 %14 %18)
cosTheta_i
cosTheta_O
%2
v
%4
sinTheta_i
sinTheta_O
%7
%8
%9
#s(literal 1 binary32)
%11
%12
#s(literal 6931/10000 binary32)
%14
#s(literal 2 binary32)
%16
%17
%18
%19
(exp.f32 %19)
Outputs
%2 = (*.f32 cosTheta_O cosTheta_i)
%10 = (*.f32 %2 #s(literal 1 binary32))
%11 = (/.f32 #s(literal 1 binary32) v)
%13 = (/.f32 cosTheta_O v)
%15 = (neg.f32 %2)
%16 = (/.f32 #s(literal -1 binary32) v)
%20 = (*.f32 cosTheta_i %11)
%22 = (/.f32 cosTheta_i v)
%25 = (*.f32 %2 #s(literal -1 binary32))
%27 = (neg.f32 v)
%28 = (neg.f32 %27)
%32 = (neg.f32 %15)
%34 = (neg.f32 %28)
%40 = (/.f32 %2 v)
%48 = (/.f32 %2 %27)
%54 = (*.f32 sinTheta_O sinTheta_i)
%59 = (*.f32 %54 #s(literal 1 binary32))
%61 = (/.f32 sinTheta_O v)
%63 = (neg.f32 %54)
%72 = (*.f32 %54 #s(literal -1 binary32))
%77 = (neg.f32 %63)
%84 = (/.f32 %54 v)
%92 = (/.f32 %63 v)
%94 = (-.f32 %10 %54)
%96 = (-.f32 %2 %54)
%98 = (*.f32 v %2)
%99 = (*.f32 %54 v)
%100 = (-.f32 %98 %99)
%101 = (*.f32 v v)
%102 = (/.f32 #s(literal 1 binary32) %101)
%109 = (neg.f32 sinTheta_i)
%122 = (neg.f32 cosTheta_i)
%143 = (*.f32 %27 %25)
%146 = (*.f32 %27 %10)
%148 = (*.f32 %27 v)
%150 = (*.f32 %27 %32)
%152 = (*.f32 %27 %28)
%154 = (*.f32 %27 %15)
%157 = (*.f32 %27 %2)
%162 = (*.f32 %28 %27)
%166 = (*.f32 %28 v)
%179 = (*.f32 v %27)
%186 = (*.f32 v %28)
%195 = (*.f32 v sinTheta_O)
%204 = (*.f32 %27 %77)
%207 = (*.f32 %27 %63)
%212 = (*.f32 %27 %54)
%215 = (*.f32 v %77)
%218 = (*.f32 v %63)
%225 = (*.f32 %28 %77)
%228 = (*.f32 %28 %63)
%233 = (*.f32 %28 %54)
%257 = (*.f32 %25 %27)
%258 = (*.f32 %27 %72)
%261 = (*.f32 %25 v)
%262 = (*.f32 %27 %59)
%272 = (*.f32 %10 %27)
%273 = (*.f32 v %72)
%276 = (*.f32 %10 v)
%277 = (*.f32 v %59)
%287 = (*.f32 %32 %27)
%291 = (*.f32 %32 v)
%302 = (*.f32 %15 %27)
%305 = (*.f32 %15 v)
%311 = (*.f32 %2 %27)
%319 = (/.f32 %100 v)
%322 = (*.f32 %40 %27)
%323 = (-.f32 %322 %63)
%326 = (-.f32 %15 %63)
%329 = (-.f32 %302 %207)
%331 = (neg.f32 %101)
%333 = (-.f32 %305 %212)
%337 = (-.f32 %311 %218)
%339 = (neg.f32 %179)
%341 = (neg.f32 %94)
%344 = (neg.f32 %96)
%347 = (neg.f32 %100)
%361 = (/.f32 %96 v)
%382 = (/.f32 %98 %101)
%386 = (fabs.f32 v)
%387 = (/.f32 v %386)
%388 = (/.f32 %2 %386)
%390 = (/.f32 (neg.f32 %99) %101)
%392 = (/.f32 %212 %101)
%396 = (/.f32 v %27)
%399 = (/.f32 v v)
%402 = (/.f32 cosTheta_O %386)
%403 = (*.f32 cosTheta_i v)
%404 = (/.f32 %403 %386)
%407 = (/.f32 cosTheta_O %27)
%408 = (/.f32 %403 %27)
%411 = (/.f32 cosTheta_i %386)
%412 = (*.f32 cosTheta_O v)
%413 = (/.f32 %412 %386)
%416 = (/.f32 cosTheta_i %27)
%417 = (/.f32 %412 %27)
%421 = (/.f32 %412 v)
%427 = (/.f32 %403 v)
%448 = (-.f32 %54 %2)
%454 = (/.f32 #s(literal 1/2 binary32) v)
%459 = (*.f32 #s(literal -2 binary32) v)
%465 = (*.f32 #s(literal 2 binary32) %28)
%467 = (+.f32 v v)
%476 = (/.f32 %11 #s(literal 1/2 binary32))
%479 = (/.f32 #s(literal -2 binary32) v)
%482 = (/.f32 #s(literal 2 binary32) %27)
%484 = (/.f32 #s(literal 2 binary32) %386)
%486 = (/.f32 #s(literal 1 binary32) %386)
%488 = (/.f32 #s(literal 2 binary32) v)
%489 = (fabs.f32 %488)
%492 = (/.f32 %454 #s(literal 4 binary32))
%498 = (/.f32 %16 #s(literal 1 binary32))
%501 = (/.f32 %16 #s(literal 4 binary32))
%503 = (/.f32 %11 #s(literal 1 binary32))
%508 = (/.f32 #s(literal -1/2 binary32) v)
%510 = (/.f32 #s(literal 1/2 binary32) %27)
%512 = (/.f32 #s(literal -1 binary32) %467)
%515 = (/.f32 #s(literal 0 binary32) %28)
%517 = (/.f32 #s(literal 0 binary32) v)
%520 = (/.f32 #s(literal 1/2 binary32) %467)
%527 = (/.f32 %454 #s(literal 1 binary32))
%540 = (fma.f32 %361 v #s(literal -1 binary32))
%580 = (fma.f32 %84 %27 #s(literal -1 binary32))
%585 = (fma.f32 %84 v #s(literal 1 binary32))
%591 = (fma.f32 (neg.f32 sinTheta_O) sinTheta_i #s(literal -1 binary32))
%596 = (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))
%600 = (/.f32 (-.f32 %2 %596) v)
%612 = (*.f32 %28 %101)
%616 = (*.f32 %28 %148)
%620 = (*.f32 %28 %179)
%652 = (*.f32 %101 v)
%656 = (*.f32 v %148)
%660 = (*.f32 v %179)
%692 = (*.f32 %101 %27)
%696 = (*.f32 %27 %148)
%700 = (*.f32 %27 %179)
%721 = (*.f32 v #s(literal -1 binary32))
%726 = (*.f32 v #s(literal 1 binary32))
%729 = (*.f32 %27 #s(literal -1 binary32))
%734 = (*.f32 %27 #s(literal 1 binary32))
%743 = (*.f32 %101 #s(literal -1 binary32))
%745 = (*.f32 %101 %28)
%749 = (*.f32 %101 #s(literal 1 binary32))
%752 = (*.f32 %148 #s(literal -1 binary32))
%754 = (*.f32 %148 %28)
%757 = (*.f32 %148 v)
%759 = (*.f32 %148 #s(literal 1 binary32))
%761 = (*.f32 %148 %27)
%763 = (*.f32 %179 #s(literal -1 binary32))
%765 = (*.f32 %179 %28)
%768 = (*.f32 %179 v)
%770 = (*.f32 %179 #s(literal 1 binary32))
%772 = (*.f32 %179 %27)
%786 = (*.f32 %331 #s(literal -1 binary32))
%788 = (*.f32 %331 %28)
%791 = (*.f32 %331 v)
%793 = (*.f32 %331 #s(literal 1 binary32))
%795 = (*.f32 %331 %27)
%815 = (*.f32 %361 v)
%915 = (*.f32 %27 %580)
%918 = (*.f32 %27 %585)
%921 = (*.f32 %25 %101)
%923 = (fma.f32 %63 %27 (*.f32 #s(literal -1 binary32) %27))
%924 = (*.f32 %27 %923)
%927 = (*.f32 %25 %148)
%929 = (fma.f32 %63 v (*.f32 #s(literal 1 binary32) %27))
%930 = (*.f32 %27 %929)
%933 = (*.f32 %25 %179)
%935 = (fma.f32 %54 %27 (*.f32 #s(literal -1 binary32) v))
%936 = (*.f32 %27 %935)
%939 = (*.f32 #s(literal 1 binary32) v)
%940 = (fma.f32 %54 v %939)
%941 = (*.f32 %27 %940)
%944 = (*.f32 %27 %591)
%947 = (*.f32 %27 %596)
%950 = (fma.f32 %63 %27 %729)
%951 = (*.f32 %27 %950)
%954 = (fma.f32 %63 v %734)
%955 = (*.f32 %27 %954)
%958 = (fma.f32 %54 %27 %721)
%959 = (*.f32 %27 %958)
%962 = (fma.f32 %54 v %726)
%963 = (*.f32 %27 %962)
%966 = (*.f32 v %580)
%969 = (*.f32 v %585)
%972 = (*.f32 %10 %101)
%973 = (*.f32 v %923)
%976 = (*.f32 %10 %148)
%977 = (*.f32 v %929)
%980 = (*.f32 %10 %179)
%981 = (*.f32 v %935)
%984 = (*.f32 v %940)
%987 = (*.f32 v %591)
%990 = (*.f32 v %596)
%993 = (*.f32 v %950)
%996 = (*.f32 v %954)
%999 = (*.f32 v %958)
%1002 = (*.f32 v %962)
%1011 = (*.f32 %32 %101)
%1015 = (*.f32 %32 %148)
%1019 = (*.f32 %32 %179)
%1048 = (*.f32 %15 %101)
%1051 = (*.f32 %15 %148)
%1054 = (*.f32 %15 %179)
%1075 = (*.f32 %2 %101)
%1078 = (*.f32 %2 %148)
%1081 = (*.f32 %2 %179)
%1098 = (*.f32 %361 %27)
%1099 = (-.f32 %1098 #s(literal -1 binary32))
%1102 = (-.f32 %94 #s(literal 1 binary32))
%1105 = (-.f32 %96 #s(literal 1 binary32))
%1108 = (*.f32 %94 %27)
%1109 = (-.f32 %1108 %721)
%1112 = (*.f32 %94 v)
%1113 = (-.f32 %1112 %726)
%1116 = (*.f32 %96 %27)
%1117 = (-.f32 %1116 %721)
%1120 = (*.f32 %96 v)
%1121 = (-.f32 %1120 %726)
%1124 = (*.f32 %100 %27)
%1125 = (-.f32 %1124 %743)
%1129 = (*.f32 %100 v)
%1130 = (-.f32 %1129 %749)
%1134 = (neg.f32 %540)
%1155 = (/.f32 %721 %179)
%1158 = (/.f32 %726 %101)
%1170 = (/.f32 %815 v)
%1173 = (/.f32 %596 v)
%1175 = (/.f32 %591 v)
%1178 = (/.f32 (-.f32 %54 #s(literal -1 binary32)) %27)
%1180 = (neg.f32 %1173)
%1223 = (/.f32 (+.f32 #s(literal 1 binary32) %448) v)
%1226 = (fma.f32 #s(literal 6931/10000 binary32) v %540)
%1231 = (-.f32 %600 #s(literal -6931/10000 binary32))
%1234 = (+.f32 #s(literal 6931/10000 binary32) %361)
%1239 = (-.f32 %11 #s(literal 6931/10000 binary32))
%1247 = (-.f32 %92 %1239)
%1250 = (+.f32 %16 #s(literal 6931/10000 binary32))
%1252 = (-.f32 %16 #s(literal -6931/10000 binary32))
%1254 = (neg.f32 %1239)
%1287 = (/.f32 #s(literal 1/2 binary32) %488)
%1290 = (/.f32 #s(literal 2 binary32) %488)
%1292 = (/.f32 #s(literal 2 binary32) %454)
%1294 = (/.f32 #s(literal 1 binary32) %488)
%1296 = (/.f32 #s(literal 1/2 binary32) %454)
%1298 = (sqrt.f32 %467)
%1300 = (log.f32 #s(literal 2 binary32))
%1301 = (exp.f32 %1300)
%1302 = (log.f32 %386)
%1303 = (exp.f32 %1302)
%1306 = (/.f32 #s(literal 1/2 binary32) %11)
%1308 = (/.f32 #s(literal 2 binary32) %520)
%1310 = (/.f32 #s(literal 2 binary32) %512)
%1312 = (/.f32 #s(literal 1/2 binary32) %512)
%1316 = (/.f32 #s(literal 1 binary32) %520)
%1320 = (/.f32 #s(literal 1 binary32) %11)
%1325 = (/.f32 #s(literal 2 binary32) %11)
%1327 = (/.f32 #s(literal 1/2 binary32) %520)
%1331 = (neg.f32 %454)
%1336 = (*.f32 %467 %467)
%1339 = (/.f32 (fma.f32 #s(literal 2 binary32) v %454) #s(literal 2 binary32))
%1341 = (/.f32 (-.f32 %454 %467) #s(literal 2 binary32))
%1344 = (/.f32 #s(literal 0 binary32) %454)
%1372 = (exp.f32 #s(literal 1 binary32))
%1373 = (log.f32 %467)
%1382 = (/.f32 (-.f32 %467 %454) #s(literal 2 binary32))
%1389 = (neg.f32 %459)
%1423 = (log.f32 #s(literal 1/2 binary32))
%1462 = (/.f32 #s(literal 0 binary32) %1389)
%1464 = (/.f32 #s(literal 0 binary32) %467)
%1522 = (neg.f32 %1373)
%1527 = (/.f32 #s(literal 1/2 binary32) %1389)
%1547 = (log.f32 %11)
%1553 = (log.f32 %520)
%1567 = (+.f32 #s(literal -6931/10000 binary32) %1373)
%1568 = (-.f32 %600 %1567)
%1571 = (+.f32 %1522 %600)
%1573 = (+.f32 %1522 %361)
%1575 = (+.f32 %1231 #s(literal 0 binary32))
%1577 = (-.f32 %1373 %1231)
%1579 = (neg.f32 %1231)
%1582 = (-.f32 #s(literal -6931/10000 binary32) %1522)
%1584 = (-.f32 #s(literal 6931/10000 binary32) %1373)
%1585 = (neg.f32 %1584)
%1587 = (-.f32 %1239 %1522)
%1589 = (-.f32 %11 %1584)
%1591 = (+.f32 %1239 %1373)
%1593 = (-.f32 %1173 %1584)
%1595 = (+.f32 %16 %1584)
%1608 = (+.f32 %600 %1522)
%1610 = (-.f32 %600 %1373)
%1615 = (exp.f32 %1231)
%1616 = (/.f32 %1615 %467)
%1617 = (sqrt.f32 %1616)
%1619 = (exp.f32 %1571)
%1620 = (exp.f32 #s(literal 6931/10000 binary32))
%1626 = (/.f32 %1620 %467)
%1627 = (exp.f32 %600)
%1630 = (exp.f32 %361)
%1635 = (sinh.f32 %1568)
%1636 = (cosh.f32 %1568)
%1637 = (*.f32 #s(literal 2 binary32) %1636)
%1640 = (*.f32 #s(literal 2 binary32) %1635)
%1650 = (exp.f32 #s(literal -6931/10000 binary32))
%1662 = (*.f32 %1627 #s(literal 1 binary32))
%1668 = (exp.f32 %1239)
%1680 = (*.f32 %1630 #s(literal 1 binary32))
%1709 = (*.f32 #s(literal 1 binary32) %1627)
%1714 = (*.f32 #s(literal 1 binary32) %1630)
%1748 = (exp.f32 (*.f32 %1568 #s(literal 2 binary32)))
%1752 = (neg.f32 %1635)
%1761 = (*.f32 %1568 #s(literal 1 binary32))
%1769 = (neg.f32 %1616)
cosTheta_i
cosTheta_O
%2
(*.f32 cosTheta_i cosTheta_O)
(/.f32 #s(literal 1 binary32) (pow.f32 %2 #s(literal -1 binary32)))
(pow.f32 %2 #s(literal 1 binary32))
v
(*.f32 %10 %11)
(*.f32 %13 cosTheta_i)
(*.f32 %15 %16)
(*.f32 %11 %2)
(*.f32 %2 %11)
(*.f32 cosTheta_O %20)
(*.f32 cosTheta_O %22)
(*.f32 cosTheta_i %13)
(/.f32 (neg.f32 %25) %28)
(/.f32 (neg.f32 %10) %27)
(/.f32 (neg.f32 %32) %34)
(/.f32 %25 %27)
(/.f32 %10 v)
(/.f32 %32 %28)
(/.f32 %15 %27)
(/.f32 #s(literal 1 binary32) (pow.f32 %40 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %27 %15))
(/.f32 #s(literal 1 binary32) (/.f32 v %2))
%40
(pow.f32 %40 #s(literal 1 binary32))
(neg.f32 %48)
(neg.f32 (/.f32 %15 v))
sinTheta_i
sinTheta_O
%54
(*.f32 sinTheta_i sinTheta_O)
(/.f32 #s(literal 1 binary32) (pow.f32 %54 #s(literal -1 binary32)))
(pow.f32 %54 #s(literal 1 binary32))
(*.f32 %59 %11)
(*.f32 %61 sinTheta_i)
(*.f32 %63 %16)
(*.f32 %11 %54)
(*.f32 %54 %11)
(*.f32 sinTheta_O (*.f32 sinTheta_i %11))
(*.f32 sinTheta_O (/.f32 sinTheta_i v))
(*.f32 sinTheta_i %61)
(/.f32 (neg.f32 %72) %28)
(/.f32 (neg.f32 %59) %27)
(/.f32 (neg.f32 %77) %34)
(/.f32 %72 %27)
(/.f32 %59 v)
(/.f32 %77 %28)
(/.f32 %63 %27)
(/.f32 #s(literal 1 binary32) (pow.f32 %84 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %27 %63))
(/.f32 #s(literal 1 binary32) (/.f32 v %54))
%84
(pow.f32 %84 #s(literal 1 binary32))
(neg.f32 %92)
(*.f32 %94 %11)
(*.f32 %96 %11)
(*.f32 %100 %102)
(*.f32 %11 %96)
(/.f32 (+.f32 %77 %25) %27)
(/.f32 (fma.f32 sinTheta_O sinTheta_i %25) %27)
(/.f32 (fma.f32 %109 sinTheta_O %10) v)
(/.f32 (fma.f32 %109 sinTheta_O %32) %28)
(/.f32 (+.f32 %77 %15) %27)
(/.f32 (fma.f32 sinTheta_O sinTheta_i %15) %27)
(/.f32 (fma.f32 %109 sinTheta_O %2) v)
(/.f32 (fma.f32 %2 #s(literal -1 binary32) %77) %27)
(/.f32 (fma.f32 %122 cosTheta_O %77) %27)
(/.f32 (+.f32 %32 %63) %28)
(/.f32 (fma.f32 %2 #s(literal -1 binary32) %54) %27)
(/.f32 (fma.f32 %122 cosTheta_O %54) %27)
(/.f32 (-.f32 %25 %72) %27)
(/.f32 (-.f32 %15 %72) %27)
(/.f32 (-.f32 %10 %59) v)
(/.f32 (-.f32 %2 %59) v)
(/.f32 (-.f32 %32 %77) %28)
(/.f32 (-.f32 %25 %63) %27)
(/.f32 (fma.f32 %77 %27 %143) %101)
(/.f32 (fma.f32 %77 v %146) %148)
(/.f32 (fma.f32 %77 %28 %150) %152)
(/.f32 (fma.f32 %77 %27 %154) %101)
(/.f32 (fma.f32 %77 v %157) %148)
(/.f32 (fma.f32 %63 %27 (*.f32 %28 %25)) %162)
(/.f32 (fma.f32 %63 v (*.f32 %28 %10)) %166)
(/.f32 (fma.f32 %63 %28 (*.f32 %28 %32)) %101)
(/.f32 (fma.f32 %63 %27 (*.f32 %28 %15)) %162)
(/.f32 (fma.f32 %63 v (*.f32 %28 %2)) %166)
(/.f32 (fma.f32 %63 %27 (*.f32 v %25)) %179)
(/.f32 (fma.f32 %63 v (*.f32 v %10)) %101)
(/.f32 (fma.f32 %63 %28 (*.f32 v %32)) %186)
(/.f32 (fma.f32 %63 %27 (*.f32 v %15)) %179)
(/.f32 (fma.f32 %63 v %98) %101)
(/.f32 (fma.f32 %54 %27 %143) %101)
(/.f32 (fma.f32 %195 sinTheta_i %146) %148)
(/.f32 (fma.f32 %54 %28 %150) %152)
(/.f32 (fma.f32 %54 %27 %154) %101)
(/.f32 (fma.f32 %195 sinTheta_i %157) %148)
(/.f32 (fma.f32 %25 %27 %204) %101)
(/.f32 (fma.f32 %25 %28 %207) %152)
(/.f32 (fma.f32 %25 v %207) %148)
(/.f32 (fma.f32 %25 %27 %212) %101)
(/.f32 (fma.f32 %10 %27 %215) %179)
(/.f32 (fma.f32 %10 %28 %218) %186)
(/.f32 (fma.f32 %10 v %218) %101)
(/.f32 (fma.f32 %10 %27 %99) %179)
(/.f32 (fma.f32 %32 %27 %225) %162)
(/.f32 (fma.f32 %32 %28 %228) %101)
(/.f32 (fma.f32 %32 v %228) %166)
(/.f32 (fma.f32 %32 %27 %233) %162)
(/.f32 (fma.f32 %15 %27 %204) %101)
(/.f32 (fma.f32 %15 %28 %207) %152)
(/.f32 (fma.f32 %15 v %207) %148)
(/.f32 (fma.f32 %15 %27 %212) %101)
(/.f32 (fma.f32 %2 %27 %215) %179)
(/.f32 (fma.f32 %2 %28 %218) %186)
(/.f32 (fma.f32 v %2 %218) %101)
(/.f32 (fma.f32 %2 %27 %99) %179)
(/.f32 (-.f32 (*.f32 %98 %101) (*.f32 %101 %99)) (*.f32 %101 %101))
(/.f32 (-.f32 %257 %258) %101)
(/.f32 (-.f32 %261 %262) %148)
(/.f32 (-.f32 (*.f32 %25 %28) %204) %152)
(/.f32 (-.f32 %257 %207) %101)
(/.f32 (-.f32 %261 %212) %148)
(/.f32 (-.f32 %272 %273) %179)
(/.f32 (-.f32 %276 %277) %101)
(/.f32 (-.f32 (*.f32 %10 %28) %215) %186)
(/.f32 (-.f32 %272 %218) %179)
(/.f32 (-.f32 %276 %99) %101)
(/.f32 (-.f32 %287 (*.f32 %28 %72)) %162)
(/.f32 (-.f32 %291 (*.f32 %28 %59)) %166)
(/.f32 (-.f32 (*.f32 %32 %28) %225) %101)
(/.f32 (-.f32 %287 %228) %162)
(/.f32 (-.f32 %291 %233) %166)
(/.f32 (-.f32 %302 %258) %101)
(/.f32 (-.f32 %305 %262) %148)
(/.f32 (-.f32 (*.f32 %15 %28) %204) %152)
(/.f32 (-.f32 %311 %273) %179)
(/.f32 (-.f32 %98 %277) %101)
(/.f32 (-.f32 (*.f32 %2 %28) %215) %186)
(/.f32 (neg.f32 %319) %27)
(/.f32 (neg.f32 %323) %28)
(/.f32 (neg.f32 %326) %28)
(/.f32 (neg.f32 %329) %331)
(/.f32 (neg.f32 %333) (neg.f32 %148))
(/.f32 (neg.f32 %337) %339)
(/.f32 (neg.f32 %341) %28)
(/.f32 (neg.f32 %344) %28)
(/.f32 (neg.f32 %347) (neg.f32 %331))
(/.f32 %319 v)
(/.f32 %323 %27)
(/.f32 %326 %27)
(/.f32 %329 %101)
(/.f32 %333 %148)
(/.f32 %337 %179)
(/.f32 %341 %27)
(/.f32 %344 %27)
(/.f32 %347 %331)
(/.f32 %94 v)
%361
(/.f32 %100 %101)
(/.f32 #s(literal 1 binary32) (pow.f32 %361 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 v %94))
(/.f32 #s(literal 1 binary32) (/.f32 v %96))
(/.f32 #s(literal 1 binary32) (/.f32 %101 %100))
(-.f32 (/.f32 %322 %27) %84)
(-.f32 (/.f32 %302 %101) (/.f32 %207 %101))
(-.f32 (/.f32 %305 %148) (/.f32 %212 %148))
(-.f32 (/.f32 %311 %179) (/.f32 %218 %179))
(-.f32 %382 (/.f32 %99 %101))
(-.f32 %40 %84)
(fma.f32 %387 %388 %390)
(fma.f32 %387 %388 %392)
(fma.f32 %388 %387 %390)
(fma.f32 %388 %387 %392)
(fma.f32 %396 %48 %390)
(fma.f32 %396 %48 %392)
(fma.f32 %399 %40 %390)
(fma.f32 %399 %40 %392)
(fma.f32 %402 %404 %390)
(fma.f32 %402 %404 %392)
(fma.f32 %407 %408 %390)
(fma.f32 %407 %408 %392)
(fma.f32 %411 %413 %390)
(fma.f32 %411 %413 %392)
(fma.f32 %416 %417 %390)
(fma.f32 %416 %417 %392)
(fma.f32 %10 %11 %92)
(fma.f32 %22 %421 %390)
(fma.f32 %22 %421 %392)
(fma.f32 %48 %396 %390)
(fma.f32 %48 %396 %392)
(fma.f32 %109 %61 %40)
(fma.f32 %13 %427 %390)
(fma.f32 %13 %427 %392)
(fma.f32 %13 cosTheta_i %92)
(fma.f32 %15 %16 %92)
(fma.f32 %63 %11 %40)
(fma.f32 %11 %2 %92)
(fma.f32 %54 %16 %40)
(fma.f32 sinTheta_i (neg.f32 %61) %40)
(fma.f32 %40 %399 %390)
(fma.f32 %40 %399 %392)
(fma.f32 %2 %11 %92)
(fma.f32 cosTheta_O %20 %92)
(fma.f32 cosTheta_O %22 %92)
(fma.f32 cosTheta_i %13 %92)
(pow.f32 %361 #s(literal 1 binary32))
(+.f32 %382 %390)
(+.f32 %382 %392)
(+.f32 %92 %40)
(+.f32 %40 %92)
(neg.f32 (/.f32 %448 v))
#s(literal 1 binary32)
(*.f32 #s(literal -1 binary32) %16)
(*.f32 #s(literal 2 binary32) %454)
(*.f32 %11 #s(literal 1 binary32))
(*.f32 #s(literal 1 binary32) %11)
(/.f32 #s(literal -2 binary32) %459)
(/.f32 #s(literal -1 binary32) %34)
(/.f32 #s(literal -1 binary32) %27)
(/.f32 #s(literal 2 binary32) (*.f32 %28 #s(literal 2 binary32)))
(/.f32 #s(literal 2 binary32) %465)
(/.f32 #s(literal 2 binary32) %467)
(/.f32 #s(literal 1 binary32) (pow.f32 %11 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %27 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) %28)
(/.f32 #s(literal 1 binary32) (/.f32 v #s(literal 1 binary32)))
%11
(fma.f32 %476 #s(literal 1/4 binary32) %454)
(fma.f32 %479 #s(literal -1/4 binary32) %454)
(fma.f32 %482 #s(literal -1/4 binary32) %454)
(fma.f32 %484 #s(literal 1/4 binary32) %454)
(fma.f32 %486 #s(literal 1/2 binary32) %454)
(fma.f32 %489 #s(literal 1/4 binary32) %454)
(fma.f32 #s(literal 4 binary32) %492 %454)
(fma.f32 #s(literal 1/4 binary32) %484 %454)
(fma.f32 #s(literal 1/4 binary32) %488 %454)
(fma.f32 %488 #s(literal 1/4 binary32) %454)
(fma.f32 #s(literal -1/2 binary32) %498 %454)
(fma.f32 #s(literal -1/2 binary32) %16 %454)
(fma.f32 #s(literal -2 binary32) %501 %454)
(fma.f32 #s(literal 1/2 binary32) %503 %454)
(fma.f32 #s(literal 1/2 binary32) %486 %454)
(fma.f32 #s(literal 1/2 binary32) %11 %454)
(fma.f32 %16 #s(literal -1/2 binary32) %454)
(fma.f32 #s(literal -1 binary32) %508 %454)
(fma.f32 #s(literal -1 binary32) %510 %454)
(fma.f32 #s(literal -1 binary32) %512 %454)
(fma.f32 #s(literal -1 binary32) %16 %515)
(fma.f32 #s(literal -1 binary32) %16 %517)
(fma.f32 %454 #s(literal 1 binary32) %454)
(fma.f32 #s(literal 2 binary32) %520 %454)
(fma.f32 #s(literal 2 binary32) %454 %515)
(fma.f32 #s(literal 2 binary32) %454 %517)
(fma.f32 %11 #s(literal 1/2 binary32) %454)
(fma.f32 %11 #s(literal 1 binary32) %515)
(fma.f32 %11 #s(literal 1 binary32) %517)
(fma.f32 #s(literal 1 binary32) %527 %454)
(fma.f32 #s(literal 1 binary32) %454 %454)
(fma.f32 #s(literal 1 binary32) %11 %515)
(fma.f32 #s(literal 1 binary32) %11 %517)
(pow.f32 %28 #s(literal -1 binary32))
(pow.f32 %11 #s(literal 1 binary32))
(pow.f32 v #s(literal -1 binary32))
(+.f32 %454 %454)
(+.f32 %11 %515)
(+.f32 %11 %517)
(fabs.f32 %11)
(neg.f32 %16)
(*.f32 %540 %11)
(/.f32 (+.f32 #s(literal -1 binary32) %319) v)
(/.f32 (+.f32 #s(literal 1 binary32) %323) %27)
(/.f32 (+.f32 #s(literal 1 binary32) %326) %27)
(/.f32 (+.f32 #s(literal 1 binary32) %341) %27)
(/.f32 (+.f32 #s(literal 1 binary32) %344) %27)
(/.f32 (+.f32 #s(literal -1 binary32) %94) v)
(/.f32 (+.f32 #s(literal -1 binary32) %96) v)
(/.f32 (+.f32 %319 #s(literal -1 binary32)) v)
(/.f32 (+.f32 %94 #s(literal -1 binary32)) v)
(/.f32 (+.f32 %96 #s(literal -1 binary32)) v)
(/.f32 (+.f32 %323 #s(literal 1 binary32)) %27)
(/.f32 (+.f32 %326 #s(literal 1 binary32)) %27)
(/.f32 (+.f32 %341 #s(literal 1 binary32)) %27)
(/.f32 (+.f32 %344 #s(literal 1 binary32)) %27)
(/.f32 (-.f32 %323 #s(literal -1 binary32)) %27)
(/.f32 (-.f32 %326 #s(literal -1 binary32)) %27)
(/.f32 (-.f32 %341 #s(literal -1 binary32)) %27)
(/.f32 (-.f32 %344 #s(literal -1 binary32)) %27)
(/.f32 (-.f32 %319 #s(literal 1 binary32)) v)
(/.f32 (-.f32 %25 %580) %27)
(/.f32 (-.f32 %15 %580) %27)
(/.f32 (-.f32 %10 %585) v)
(/.f32 (-.f32 %2 %585) v)
(/.f32 (-.f32 %25 %591) %27)
(/.f32 (-.f32 %15 %591) %27)
(/.f32 (-.f32 %10 %596) v)
%600
(/.f32 (fma.f32 #s(literal -1 binary32) v (*.f32 %28 %319)) %166)
(/.f32 (fma.f32 #s(literal -1 binary32) %27 (*.f32 %28 %323)) %162)
(/.f32 (fma.f32 #s(literal -1 binary32) %27 (*.f32 %28 %326)) %162)
(/.f32 (fma.f32 #s(literal -1 binary32) %101 (*.f32 %28 %329)) %612)
(/.f32 (fma.f32 #s(literal -1 binary32) %148 (*.f32 %28 %333)) %616)
(/.f32 (fma.f32 #s(literal -1 binary32) %179 (*.f32 %28 %337)) %620)
(/.f32 (fma.f32 #s(literal -1 binary32) %27 (*.f32 %28 %341)) %162)
(/.f32 (fma.f32 #s(literal -1 binary32) %27 (*.f32 %28 %344)) %162)
(/.f32 (fma.f32 #s(literal -1 binary32) %331 (*.f32 %28 %347)) (*.f32 %28 %331))
(/.f32 (fma.f32 #s(literal -1 binary32) v (*.f32 %28 %94)) %166)
(/.f32 (fma.f32 #s(literal -1 binary32) v (*.f32 %28 %96)) %166)
(/.f32 (fma.f32 #s(literal -1 binary32) %101 (*.f32 %28 %100)) %612)
(/.f32 (fma.f32 #s(literal -1 binary32) v (*.f32 v %319)) %101)
(/.f32 (fma.f32 #s(literal -1 binary32) %27 (*.f32 v %323)) %179)
(/.f32 (fma.f32 #s(literal -1 binary32) %27 (*.f32 v %326)) %179)
(/.f32 (fma.f32 #s(literal -1 binary32) %101 (*.f32 v %329)) %652)
(/.f32 (fma.f32 #s(literal -1 binary32) %148 (*.f32 v %333)) %656)
(/.f32 (fma.f32 #s(literal -1 binary32) %179 (*.f32 v %337)) %660)
(/.f32 (fma.f32 #s(literal -1 binary32) %27 (*.f32 v %341)) %179)
(/.f32 (fma.f32 #s(literal -1 binary32) %27 (*.f32 v %344)) %179)
(/.f32 (fma.f32 #s(literal -1 binary32) %331 (*.f32 v %347)) (*.f32 v %331))
(/.f32 (fma.f32 #s(literal -1 binary32) v (*.f32 v %94)) %101)
(/.f32 (fma.f32 #s(literal -1 binary32) v (*.f32 v %96)) %101)
(/.f32 (fma.f32 #s(literal -1 binary32) %101 (*.f32 v %100)) %652)
(/.f32 (fma.f32 #s(literal 1 binary32) v (*.f32 %27 %319)) %148)
(/.f32 (fma.f32 #s(literal 1 binary32) %27 (*.f32 %27 %323)) %101)
(/.f32 (fma.f32 #s(literal 1 binary32) %27 (*.f32 %27 %326)) %101)
(/.f32 (fma.f32 #s(literal 1 binary32) %101 (*.f32 %27 %329)) %692)
(/.f32 (fma.f32 #s(literal 1 binary32) %148 (*.f32 %27 %333)) %696)
(/.f32 (fma.f32 #s(literal 1 binary32) %179 (*.f32 %27 %337)) %700)
(/.f32 (fma.f32 #s(literal 1 binary32) %27 (*.f32 %27 %341)) %101)
(/.f32 (fma.f32 #s(literal 1 binary32) %27 (*.f32 %27 %344)) %101)
(/.f32 (fma.f32 #s(literal 1 binary32) %331 (*.f32 %27 %347)) (*.f32 %27 %331))
(/.f32 (fma.f32 #s(literal 1 binary32) v (*.f32 %27 %94)) %148)
(/.f32 (fma.f32 #s(literal 1 binary32) v (*.f32 %27 %96)) %148)
(/.f32 (fma.f32 #s(literal 1 binary32) %101 (*.f32 %27 %100)) %692)
(/.f32 (fma.f32 %319 %28 %721) %186)
(/.f32 (fma.f32 %319 v %721) %101)
(/.f32 (fma.f32 %319 %27 %726) %179)
(/.f32 (fma.f32 %323 %28 %729) %152)
(/.f32 (fma.f32 %323 v %729) %148)
(/.f32 (fma.f32 %323 %27 %734) %101)
(/.f32 (fma.f32 %326 %28 %729) %152)
(/.f32 (fma.f32 %326 v %729) %148)
(/.f32 (fma.f32 %326 %27 %734) %101)
(/.f32 (fma.f32 %329 %28 %743) %745)
(/.f32 (fma.f32 %329 v %743) %652)
(/.f32 (fma.f32 %329 %27 %749) %692)
(/.f32 (fma.f32 %333 %28 %752) %754)
(/.f32 (fma.f32 %333 v %752) %757)
(/.f32 (fma.f32 %333 %27 %759) %761)
(/.f32 (fma.f32 %337 %28 %763) %765)
(/.f32 (fma.f32 %337 v %763) %768)
(/.f32 (fma.f32 %337 %27 %770) %772)
(/.f32 (fma.f32 %341 %28 %729) %152)
(/.f32 (fma.f32 %341 v %729) %148)
(/.f32 (fma.f32 %341 %27 %734) %101)
(/.f32 (fma.f32 %344 %28 %729) %152)
(/.f32 (fma.f32 %344 v %729) %148)
(/.f32 (fma.f32 %344 %27 %734) %101)
(/.f32 (fma.f32 %347 %28 %786) %788)
(/.f32 (fma.f32 %347 v %786) %791)
(/.f32 (fma.f32 %347 %27 %793) %795)
(/.f32 (fma.f32 %94 %28 %721) %186)
(/.f32 (fma.f32 %94 v %721) %101)
(/.f32 (fma.f32 %94 %27 %726) %179)
(/.f32 (fma.f32 %96 %28 %721) %186)
(/.f32 (fma.f32 %96 v %721) %101)
(/.f32 (fma.f32 %96 %27 %726) %179)
(/.f32 (fma.f32 %100 %28 %743) %745)
(/.f32 (fma.f32 %100 v %743) %652)
(/.f32 (fma.f32 %100 %27 %749) %692)
(/.f32 (-.f32 (*.f32 %815 %27) %721) %179)
(/.f32 (-.f32 (*.f32 %815 %28) %726) %186)
(/.f32 (-.f32 (*.f32 %815 v) %726) %101)
(/.f32 (-.f32 (*.f32 %319 %27) %721) %179)
(/.f32 (-.f32 (*.f32 %319 %28) %726) %186)
(/.f32 (-.f32 (*.f32 %319 v) %726) %101)
(/.f32 (-.f32 (*.f32 %323 %27) %729) %101)
(/.f32 (-.f32 (*.f32 %323 %28) %734) %152)
(/.f32 (-.f32 (*.f32 %323 v) %734) %148)
(/.f32 (-.f32 (*.f32 %326 %27) %729) %101)
(/.f32 (-.f32 (*.f32 %326 %28) %734) %152)
(/.f32 (-.f32 (*.f32 %326 v) %734) %148)
(/.f32 (-.f32 (*.f32 %329 %27) %743) %692)
(/.f32 (-.f32 (*.f32 %329 %28) %749) %745)
(/.f32 (-.f32 (*.f32 %329 v) %749) %652)
(/.f32 (-.f32 (*.f32 %333 %27) %752) %761)
(/.f32 (-.f32 (*.f32 %333 %28) %759) %754)
(/.f32 (-.f32 (*.f32 %333 v) %759) %757)
(/.f32 (-.f32 (*.f32 %337 %27) %763) %772)
(/.f32 (-.f32 (*.f32 %337 %28) %770) %765)
(/.f32 (-.f32 (*.f32 %337 v) %770) %768)
(/.f32 (-.f32 (*.f32 %341 %27) %729) %101)
(/.f32 (-.f32 (*.f32 %341 %28) %734) %152)
(/.f32 (-.f32 (*.f32 %341 v) %734) %148)
(/.f32 (-.f32 (*.f32 %344 %27) %729) %101)
(/.f32 (-.f32 (*.f32 %344 %28) %734) %152)
(/.f32 (-.f32 (*.f32 %344 v) %734) %148)
(/.f32 (-.f32 (*.f32 %347 %27) %786) %795)
(/.f32 (-.f32 (*.f32 %347 %28) %793) %788)
(/.f32 (-.f32 (*.f32 %347 v) %793) %791)
(/.f32 (-.f32 (*.f32 %94 %28) %726) %186)
(/.f32 (-.f32 (*.f32 %96 %28) %726) %186)
(/.f32 (-.f32 (*.f32 %100 %28) %749) %745)
(/.f32 (-.f32 %257 %915) %101)
(/.f32 (-.f32 %261 %918) %148)
(/.f32 (-.f32 %921 %924) %692)
(/.f32 (-.f32 %927 %930) %696)
(/.f32 (-.f32 %933 %936) %700)
(/.f32 (-.f32 %921 %941) %692)
(/.f32 (-.f32 %257 %944) %101)
(/.f32 (-.f32 %261 %947) %148)
(/.f32 (-.f32 %921 %951) %692)
(/.f32 (-.f32 %927 %955) %696)
(/.f32 (-.f32 %933 %959) %700)
(/.f32 (-.f32 %921 %963) %692)
(/.f32 (-.f32 %272 %966) %179)
(/.f32 (-.f32 %276 %969) %101)
(/.f32 (-.f32 %972 %973) %652)
(/.f32 (-.f32 %976 %977) %656)
(/.f32 (-.f32 %980 %981) %660)
(/.f32 (-.f32 %972 %984) %652)
(/.f32 (-.f32 %272 %987) %179)
(/.f32 (-.f32 %276 %990) %101)
(/.f32 (-.f32 %972 %993) %652)
(/.f32 (-.f32 %976 %996) %656)
(/.f32 (-.f32 %980 %999) %660)
(/.f32 (-.f32 %972 %1002) %652)
(/.f32 (-.f32 %287 (*.f32 %28 %580)) %162)
(/.f32 (-.f32 %291 (*.f32 %28 %585)) %166)
(/.f32 (-.f32 %1011 (*.f32 %28 %923)) %612)
(/.f32 (-.f32 %1015 (*.f32 %28 %929)) %616)
(/.f32 (-.f32 %1019 (*.f32 %28 %935)) %620)
(/.f32 (-.f32 %1011 (*.f32 %28 %940)) %612)
(/.f32 (-.f32 %287 (*.f32 %28 %591)) %162)
(/.f32 (-.f32 %291 (*.f32 %28 %596)) %166)
(/.f32 (-.f32 %1011 (*.f32 %28 %950)) %612)
(/.f32 (-.f32 %1015 (*.f32 %28 %954)) %616)
(/.f32 (-.f32 %1019 (*.f32 %28 %958)) %620)
(/.f32 (-.f32 %1011 (*.f32 %28 %962)) %612)
(/.f32 (-.f32 %302 %915) %101)
(/.f32 (-.f32 %305 %918) %148)
(/.f32 (-.f32 %1048 %924) %692)
(/.f32 (-.f32 %1051 %930) %696)
(/.f32 (-.f32 %1054 %936) %700)
(/.f32 (-.f32 %1048 %941) %692)
(/.f32 (-.f32 %302 %944) %101)
(/.f32 (-.f32 %305 %947) %148)
(/.f32 (-.f32 %1048 %951) %692)
(/.f32 (-.f32 %1051 %955) %696)
(/.f32 (-.f32 %1054 %959) %700)
(/.f32 (-.f32 %1048 %963) %692)
(/.f32 (-.f32 %311 %966) %179)
(/.f32 (-.f32 %98 %969) %101)
(/.f32 (-.f32 %1075 %973) %652)
(/.f32 (-.f32 %1078 %977) %656)
(/.f32 (-.f32 %1081 %981) %660)
(/.f32 (-.f32 %1075 %984) %652)
(/.f32 (-.f32 %311 %987) %179)
(/.f32 (-.f32 %98 %990) %101)
(/.f32 (-.f32 %1075 %993) %652)
(/.f32 (-.f32 %1078 %996) %656)
(/.f32 (-.f32 %1081 %999) %660)
(/.f32 (-.f32 %1075 %1002) %652)
(/.f32 (neg.f32 %1099) %28)
(/.f32 (neg.f32 %1102) %27)
(/.f32 (neg.f32 %1105) %27)
(/.f32 (neg.f32 %1109) %339)
(/.f32 (neg.f32 %1113) %331)
(/.f32 (neg.f32 %1117) %339)
(/.f32 (neg.f32 %1121) %331)
(/.f32 (neg.f32 %1125) (neg.f32 %692))
(/.f32 (neg.f32 %1130) (neg.f32 %652))
(/.f32 (neg.f32 %1134) %28)
(/.f32 %1099 %27)
(/.f32 %1102 v)
(/.f32 %1105 v)
(/.f32 %1109 %179)
(/.f32 %1113 %101)
(/.f32 %1117 %179)
(/.f32 %1121 %101)
(/.f32 %1125 %692)
(/.f32 %1130 %652)
(/.f32 %1134 %27)
(/.f32 %540 v)
(/.f32 #s(literal 1 binary32) (pow.f32 %600 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 v %540))
(-.f32 (/.f32 %1098 %27) %11)
(-.f32 (/.f32 %1108 %179) %1155)
(-.f32 (/.f32 %1112 %101) %1158)
(-.f32 (/.f32 %1116 %179) %1155)
(-.f32 (/.f32 %1120 %101) %1158)
(-.f32 (/.f32 %1124 %692) (/.f32 %743 %692))
(-.f32 (/.f32 %1129 %652) (/.f32 %749 %652))
(-.f32 %1170 %11)
(-.f32 %361 %11)
(-.f32 %40 %1173)
(fma.f32 %10 %11 %1175)
(fma.f32 %10 %11 %1178)
(fma.f32 %10 %11 %1180)
(fma.f32 %13 cosTheta_i %1175)
(fma.f32 %13 cosTheta_i %1178)
(fma.f32 %13 cosTheta_i %1180)
(fma.f32 %94 %11 %16)
(fma.f32 %96 %11 %16)
(fma.f32 %100 %102 %16)
(fma.f32 %15 %16 %1175)
(fma.f32 %15 %16 %1178)
(fma.f32 %15 %16 %1180)
(fma.f32 #s(literal -1 binary32) %11 %361)
(fma.f32 %11 %96 %16)
(fma.f32 %11 %2 %1175)
(fma.f32 %11 %2 %1178)
(fma.f32 %11 %2 %1180)
(fma.f32 #s(literal 1 binary32) %16 %361)
(fma.f32 %2 %11 %1175)
(fma.f32 %2 %11 %1178)
(fma.f32 %2 %11 %1180)
(fma.f32 cosTheta_O %20 %1175)
(fma.f32 cosTheta_O %20 %1178)
(fma.f32 cosTheta_O %20 %1180)
(fma.f32 cosTheta_O %22 %1175)
(fma.f32 cosTheta_O %22 %1178)
(fma.f32 cosTheta_O %22 %1180)
(fma.f32 cosTheta_i %13 %1175)
(fma.f32 cosTheta_i %13 %1178)
(fma.f32 cosTheta_i %13 %1180)
(pow.f32 %600 #s(literal 1 binary32))
(+.f32 %1170 %16)
(+.f32 %16 %361)
(+.f32 %361 %16)
(+.f32 %40 %1175)
(+.f32 %40 %1178)
(+.f32 %40 %1180)
(neg.f32 (/.f32 (+.f32 %448 #s(literal 1 binary32)) v))
(neg.f32 (/.f32 (-.f32 %596 %2) v))
(neg.f32 %1223)
#s(literal 6931/10000 binary32)
(/.f32 (neg.f32 %1226) %27)
(/.f32 %1226 v)
(/.f32 #s(literal 1 binary32) (pow.f32 %1231 #s(literal -1 binary32)))
(-.f32 %1234 %11)
(-.f32 (+.f32 #s(literal 6931/10000 binary32) %40) %1173)
(-.f32 #s(literal 6931/10000 binary32) %1223)
%1231
(-.f32 %361 %1239)
(-.f32 %40 (-.f32 %1173 #s(literal 6931/10000 binary32)))
(-.f32 %40 (+.f32 %1173 #s(literal -6931/10000 binary32)))
(-.f32 %40 (fma.f32 %61 sinTheta_i %1239))
(fma.f32 %10 %11 %1247)
(fma.f32 %13 cosTheta_i %1247)
(fma.f32 %94 %11 %1250)
(fma.f32 %94 %11 %1252)
(fma.f32 %94 %11 %1254)
(fma.f32 %540 %11 #s(literal 6931/10000 binary32))
(fma.f32 %96 %11 %1250)
(fma.f32 %96 %11 %1252)
(fma.f32 %96 %11 %1254)
(fma.f32 %100 %102 %1250)
(fma.f32 %100 %102 %1252)
(fma.f32 %100 %102 %1254)
(fma.f32 %15 %16 %1247)
(fma.f32 %11 %96 %1250)
(fma.f32 %11 %96 %1252)
(fma.f32 %11 %96 %1254)
(fma.f32 %11 %2 %1247)
(fma.f32 %2 %11 %1247)
(fma.f32 cosTheta_O %20 %1247)
(fma.f32 cosTheta_O %22 %1247)
(fma.f32 cosTheta_i %13 %1247)
(pow.f32 %1231 #s(literal 1 binary32))
(+.f32 (/.f32 (*.f32 #s(literal 6931/10000 binary32) v) v) %600)
(+.f32 %1234 %16)
(+.f32 #s(literal 6931/10000 binary32) %600)
(+.f32 %600 #s(literal 6931/10000 binary32))
(+.f32 %361 %1250)
(+.f32 %361 %1252)
(+.f32 %361 %1254)
(+.f32 %40 %1247)
(neg.f32 (-.f32 #s(literal -6931/10000 binary32) %600))
(neg.f32 (-.f32 %1239 %361))
#s(literal 2 binary32)
(*.f32 %1287 #s(literal 8 binary32))
(*.f32 %1290 #s(literal 2 binary32))
(*.f32 %1292 #s(literal 1/2 binary32))
(*.f32 %1294 #s(literal 4 binary32))
(*.f32 %1296 #s(literal 2 binary32))
(*.f32 %1298 %1298)
(*.f32 %1301 %1303)
(*.f32 %1303 %1301)
(*.f32 #s(literal 4 binary32) %1306)
(*.f32 #s(literal 1/4 binary32) %1308)
(*.f32 #s(literal -1/2 binary32) %1310)
(*.f32 #s(literal -2 binary32) %1312)
(*.f32 %386 #s(literal 2 binary32))
(*.f32 #s(literal 1/2 binary32) %1292)
(*.f32 #s(literal 1/2 binary32) %1316)
(*.f32 #s(literal -1 binary32) %459)
(*.f32 %467 #s(literal 1 binary32))
(*.f32 #s(literal 2 binary32) %1320)
(*.f32 #s(literal 2 binary32) %1296)
(*.f32 #s(literal 2 binary32) %386)
(*.f32 #s(literal 2 binary32) v)
(*.f32 #s(literal 1 binary32) %1325)
(*.f32 #s(literal 1 binary32) %1327)
(*.f32 #s(literal 1 binary32) %467)
(*.f32 v #s(literal 2 binary32))
(/.f32 #s(literal -1 binary32) %1331)
(/.f32 #s(literal -1 binary32) %512)
(/.f32 %467 #s(literal 1 binary32))
(/.f32 #s(literal 1 binary32) %454)
(sqrt.f32 %1336)
(-.f32 %1339 %1341)
(-.f32 v %27)
(fma.f32 %1287 #s(literal 8 binary32) %1344)
(fma.f32 %1290 #s(literal 2 binary32) %1344)
(fma.f32 %1292 #s(literal 1/2 binary32) %1344)
(fma.f32 %1294 #s(literal 4 binary32) %1344)
(fma.f32 %1296 #s(literal 2 binary32) %1344)
(fma.f32 %1298 %1298 %1344)
(fma.f32 %1301 %1303 %1344)
(fma.f32 %1303 %1301 %1344)
(fma.f32 #s(literal 4 binary32) %1306 %1344)
(fma.f32 #s(literal 1/4 binary32) %1308 %1344)
(fma.f32 #s(literal -1/2 binary32) %1310 %1344)
(fma.f32 #s(literal -2 binary32) %1312 %1344)
(fma.f32 %386 #s(literal 2 binary32) %1344)
(fma.f32 #s(literal 1/2 binary32) %1292 %1344)
(fma.f32 #s(literal 1/2 binary32) %1316 %1344)
(fma.f32 #s(literal -1 binary32) %459 %1344)
(fma.f32 %467 #s(literal 1 binary32) %1344)
(fma.f32 #s(literal 2 binary32) %1320 %1344)
(fma.f32 #s(literal 2 binary32) %1296 %1344)
(fma.f32 #s(literal 2 binary32) %386 %1344)
(fma.f32 #s(literal 2 binary32) v %1344)
(fma.f32 #s(literal 1 binary32) %1325 %1344)
(fma.f32 #s(literal 1 binary32) %1327 %1344)
(fma.f32 #s(literal 1 binary32) %467 %1344)
(fma.f32 #s(literal 1 binary32) v %939)
(fma.f32 v #s(literal 2 binary32) %1344)
(fma.f32 v #s(literal 1 binary32) %726)
(pow.f32 %1372 %1373)
(pow.f32 %1336 #s(literal 1/2 binary32))
(pow.f32 %454 #s(literal -1 binary32))
(pow.f32 %467 #s(literal 1 binary32))
(+.f32 %1296 %1296)
(+.f32 %726 %726)
(+.f32 %939 %939)
(+.f32 %1339 %1382)
(+.f32 %467 %1344)
%467
(fabs.f32 (-.f32 %27 v))
(fabs.f32 (/.f32 #s(literal -1 binary32) %454))
(fabs.f32 %1389)
(fabs.f32 %459)
(fabs.f32 %467)
(exp.f32 %1373)
(*.f32 %476 #s(literal 1/4 binary32))
(*.f32 %479 #s(literal -1/4 binary32))
(*.f32 %482 #s(literal -1/4 binary32))
(*.f32 %484 #s(literal 1/4 binary32))
(*.f32 %486 #s(literal 1/2 binary32))
(*.f32 %489 #s(literal 1/4 binary32))
(*.f32 #s(literal 4 binary32) %492)
(*.f32 #s(literal 1/4 binary32) %484)
(*.f32 #s(literal 1/4 binary32) %488)
(*.f32 %488 #s(literal 1/4 binary32))
(*.f32 #s(literal -1/2 binary32) %498)
(*.f32 #s(literal -1/2 binary32) %16)
(*.f32 #s(literal -2 binary32) %501)
(*.f32 #s(literal 1/2 binary32) %503)
(*.f32 #s(literal 1/2 binary32) %486)
(*.f32 #s(literal 1/2 binary32) %11)
(*.f32 %16 #s(literal -1/2 binary32))
(*.f32 #s(literal -1 binary32) %508)
(*.f32 #s(literal -1 binary32) %510)
(*.f32 #s(literal -1 binary32) %512)
(*.f32 %454 #s(literal 1 binary32))
(*.f32 #s(literal 2 binary32) %520)
(*.f32 %11 #s(literal 1/2 binary32))
(*.f32 #s(literal 1 binary32) %527)
(*.f32 #s(literal 1 binary32) %454)
(/.f32 (*.f32 %11 #s(literal 2 binary32)) #s(literal 4 binary32))
(/.f32 (*.f32 #s(literal 2 binary32) %11) #s(literal 4 binary32))
(/.f32 (exp.f32 %1423) %1303)
(/.f32 #s(literal -1/2 binary32) %27)
(/.f32 #s(literal -2 binary32) (*.f32 %459 #s(literal 2 binary32)))
(/.f32 #s(literal -2 binary32) (*.f32 #s(literal 2 binary32) %459))
(/.f32 #s(literal 1/2 binary32) %28)
(/.f32 #s(literal 1/2 binary32) %386)
%454
(/.f32 %16 #s(literal -2 binary32))
(/.f32 #s(literal -1 binary32) (*.f32 #s(literal -2 binary32) %28))
(/.f32 #s(literal -1 binary32) (neg.f32 %1389))
(/.f32 #s(literal -1 binary32) %459)
(/.f32 #s(literal 2 binary32) (*.f32 %1389 #s(literal 2 binary32)))
(/.f32 #s(literal 2 binary32) (*.f32 %467 #s(literal 2 binary32)))
(/.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %1389))
(/.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %467))
(/.f32 %11 #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (*.f32 #s(literal -2 binary32) %27))
(/.f32 #s(literal 1 binary32) %465)
(/.f32 #s(literal 1 binary32) (/.f32 v #s(literal 1/2 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %459 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) %1389)
(/.f32 #s(literal 1 binary32) %467)
(sqrt.f32 (*.f32 %454 %454))
(sqrt.f32 (/.f32 #s(literal 1 binary32) %1336))
(-.f32 %1339 %1382)
(fma.f32 %476 #s(literal 1/4 binary32) %1462)
(fma.f32 %476 #s(literal 1/4 binary32) %1464)
(fma.f32 %479 #s(literal -1/4 binary32) %1462)
(fma.f32 %479 #s(literal -1/4 binary32) %1464)
(fma.f32 %482 #s(literal -1/4 binary32) %1462)
(fma.f32 %482 #s(literal -1/4 binary32) %1464)
(fma.f32 %484 #s(literal 1/4 binary32) %1462)
(fma.f32 %484 #s(literal 1/4 binary32) %1464)
(fma.f32 %486 #s(literal 1/2 binary32) %1462)
(fma.f32 %486 #s(literal 1/2 binary32) %1464)
(fma.f32 %489 #s(literal 1/4 binary32) %1462)
(fma.f32 %489 #s(literal 1/4 binary32) %1464)
(fma.f32 #s(literal 4 binary32) %492 %1462)
(fma.f32 #s(literal 4 binary32) %492 %1464)
(fma.f32 #s(literal 1/4 binary32) %484 %1462)
(fma.f32 #s(literal 1/4 binary32) %484 %1464)
(fma.f32 #s(literal 1/4 binary32) %488 %1462)
(fma.f32 #s(literal 1/4 binary32) %488 %1464)
(fma.f32 %488 #s(literal 1/8 binary32) %520)
(fma.f32 %488 #s(literal 1/4 binary32) %1462)
(fma.f32 %488 #s(literal 1/4 binary32) %1464)
(fma.f32 #s(literal -1/2 binary32) %498 %1462)
(fma.f32 #s(literal -1/2 binary32) %498 %1464)
(fma.f32 #s(literal -1/2 binary32) %16 %1462)
(fma.f32 #s(literal -1/2 binary32) %16 %1464)
(fma.f32 #s(literal -2 binary32) %501 %1462)
(fma.f32 #s(literal -2 binary32) %501 %1464)
(fma.f32 #s(literal 1/2 binary32) %503 %1462)
(fma.f32 #s(literal 1/2 binary32) %503 %1464)
(fma.f32 #s(literal 1/2 binary32) %486 %1462)
(fma.f32 #s(literal 1/2 binary32) %486 %1464)
(fma.f32 #s(literal 1/2 binary32) %454 %520)
(fma.f32 #s(literal 1/2 binary32) %11 %1462)
(fma.f32 #s(literal 1/2 binary32) %11 %1464)
(fma.f32 %16 #s(literal -1/2 binary32) %1462)
(fma.f32 %16 #s(literal -1/2 binary32) %1464)
(fma.f32 #s(literal -1 binary32) %508 %1462)
(fma.f32 #s(literal -1 binary32) %508 %1464)
(fma.f32 #s(literal -1 binary32) %510 %1462)
(fma.f32 #s(literal -1 binary32) %510 %1464)
(fma.f32 #s(literal -1 binary32) %512 %1462)
(fma.f32 #s(literal -1 binary32) %512 %1464)
(fma.f32 %454 #s(literal 1 binary32) %1462)
(fma.f32 %454 #s(literal 1 binary32) %1464)
(fma.f32 #s(literal 2 binary32) %520 %1462)
(fma.f32 #s(literal 2 binary32) %520 %1464)
(fma.f32 %11 #s(literal 1/4 binary32) %520)
(fma.f32 %11 #s(literal 1/2 binary32) %1462)
(fma.f32 %11 #s(literal 1/2 binary32) %1464)
(fma.f32 #s(literal 1 binary32) %527 %1462)
(fma.f32 #s(literal 1 binary32) %527 %1464)
(fma.f32 #s(literal 1 binary32) (/.f32 #s(literal 1/4 binary32) v) %520)
(fma.f32 #s(literal 1 binary32) %454 %1462)
(fma.f32 #s(literal 1 binary32) %454 %1464)
(pow.f32 (exp.f32 #s(literal -1 binary32)) %1373)
(pow.f32 %1372 %1522)
(pow.f32 %1389 #s(literal -1 binary32))
(pow.f32 %454 #s(literal 1 binary32))
(pow.f32 %467 #s(literal -1 binary32))
(+.f32 %1527 %1527)
(+.f32 %520 %520)
(+.f32 %1339 %1341)
(+.f32 %454 %1462)
(+.f32 %454 %1464)
(fabs.f32 (-.f32 %1382 %1339))
(fabs.f32 %1331)
(fabs.f32 %512)
(fabs.f32 %454)
(exp.f32 (*.f32 %1522 #s(literal 1 binary32)))
(exp.f32 %1522)
(neg.f32 %512)
(log.f32 %454)
(*.f32 #s(literal -1 binary32) %1373)
(*.f32 #s(literal 1 binary32) %1522)
(/.f32 #s(literal 1 binary32) (pow.f32 %1522 #s(literal -1 binary32)))
(-.f32 %1547 %1300)
(-.f32 %1423 %1302)
(-.f32 #s(literal 0 binary32) %1373)
(fma.f32 #s(literal -1 binary32) %1300 %1547)
(fma.f32 #s(literal -1 binary32) %1373 #s(literal 0 binary32))
(fma.f32 #s(literal 1 binary32) %1300 %1553)
(fma.f32 #s(literal 1 binary32) %1423 %1547)
(fma.f32 #s(literal 1 binary32) %1522 #s(literal 0 binary32))
(pow.f32 %1522 #s(literal 1 binary32))
(+.f32 (log.f32 %489) (log.f32 #s(literal 1/4 binary32)))
(+.f32 %1300 %1553)
(+.f32 %1423 %1547)
(+.f32 #s(literal 0 binary32) %1522)
(+.f32 %1522 #s(literal 0 binary32))
(neg.f32 (log.f32 %1389))
%1522
(/.f32 #s(literal 1 binary32) (pow.f32 %1568 #s(literal -1 binary32)))
(-.f32 %1571 #s(literal -6931/10000 binary32))
(-.f32 %1573 %1239)
(-.f32 %1575 %1373)
(-.f32 #s(literal 0 binary32) %1577)
(-.f32 %1522 %1579)
(-.f32 %1231 %1373)
(-.f32 %600 %1582)
%1568
(-.f32 %600 %1585)
(-.f32 %361 %1587)
(-.f32 %361 %1589)
(-.f32 %361 %1591)
(-.f32 %40 %1593)
(fma.f32 %94 %11 %1595)
(fma.f32 %540 %11 %1584)
(fma.f32 %96 %11 %1595)
(fma.f32 %100 %102 %1595)
(fma.f32 #s(literal -1 binary32) %1373 %1231)
(fma.f32 %11 %96 %1595)
(fma.f32 #s(literal 1 binary32) %1522 %1231)
(pow.f32 %1568 #s(literal 1 binary32))
(+.f32 %1571 #s(literal 6931/10000 binary32))
(+.f32 %1584 %600)
(+.f32 %1522 %1231)
(+.f32 %1231 %1522)
(+.f32 #s(literal 6931/10000 binary32) %1608)
(+.f32 #s(literal 6931/10000 binary32) %1610)
(+.f32 %600 %1584)
(+.f32 %361 %1595)
(neg.f32 %1577)
(*.f32 %1617 %1617)
(*.f32 %1619 %1620)
(*.f32 %1620 (exp.f32 %1608))
(*.f32 %1620 (exp.f32 %1610))
(*.f32 %1626 %1627)
(*.f32 %1627 %1626)
(*.f32 %1630 (exp.f32 %1595))
(*.f32 %1615 %454)
(*.f32 %454 %1615)
(/.f32 (fma.f32 #s(literal 2 binary32) %1635 %1637) #s(literal 2 binary32))
(/.f32 (fma.f32 #s(literal 2 binary32) %1636 %1640) #s(literal 2 binary32))
(/.f32 (fma.f32 %1640 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %1637)) #s(literal 4 binary32))
(/.f32 (fma.f32 %1637 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %1640)) #s(literal 4 binary32))
(/.f32 (*.f32 %1627 #s(literal -1/2 binary32)) (*.f32 %1650 %27))
(/.f32 (*.f32 %1627 #s(literal 1/2 binary32)) (*.f32 %1650 v))
(/.f32 (*.f32 %1627 #s(literal -1 binary32)) (*.f32 %1650 %459))
(/.f32 (*.f32 %1627 %11) (*.f32 %1650 #s(literal 2 binary32)))
(/.f32 %1662 (*.f32 %1650 %1389))
(/.f32 %1662 (*.f32 %1650 %467))
(/.f32 (*.f32 %1630 #s(literal -1/2 binary32)) (*.f32 %1668 %27))
(/.f32 (*.f32 %1630 #s(literal 1/2 binary32)) (*.f32 %1668 v))
(/.f32 (*.f32 %1630 #s(literal -1 binary32)) (*.f32 %1668 %459))
(/.f32 (*.f32 %1630 %11) (*.f32 %1668 #s(literal 2 binary32)))
(/.f32 %1680 (*.f32 %1668 %1389))
(/.f32 %1680 (*.f32 %1668 %467))
(/.f32 (*.f32 #s(literal -1/2 binary32) %1627) (*.f32 %27 %1650))
(/.f32 (*.f32 #s(literal -1/2 binary32) %1630) (*.f32 %27 %1668))
(/.f32 (*.f32 #s(literal 1/2 binary32) %1627) (*.f32 v %1650))
(/.f32 (*.f32 #s(literal 1/2 binary32) %1630) (*.f32 v %1668))
(/.f32 (*.f32 #s(literal -1 binary32) %1627) (*.f32 %459 %1650))
(/.f32 (*.f32 #s(literal -1 binary32) %1630) (*.f32 %459 %1668))
(/.f32 (*.f32 %11 %1627) (*.f32 #s(literal 2 binary32) %1650))
(/.f32 (*.f32 %11 %1630) (*.f32 #s(literal 2 binary32) %1668))
(/.f32 %1709 (*.f32 %1389 %1650))
(/.f32 %1709 (*.f32 %467 %1650))
(/.f32 %1714 (*.f32 %1389 %1668))
(/.f32 %1714 (*.f32 %467 %1668))
(/.f32 (neg.f32 %1615) %459)
(/.f32 %1619 %1650)
(/.f32 (exp.f32 %1573) %1668)
(/.f32 (exp.f32 %1575) %467)
(/.f32 (exp.f32 %40) (exp.f32 %1593))
(/.f32 %1627 (exp.f32 %1582))
(/.f32 %1627 (exp.f32 %1567))
(/.f32 %1627 (exp.f32 %1585))
(/.f32 %1630 (exp.f32 %1587))
(/.f32 %1630 (exp.f32 %1589))
(/.f32 %1630 (exp.f32 %1591))
%1616
(/.f32 %454 (exp.f32 %1579))
(/.f32 #s(literal 1 binary32) (exp.f32 %1577))
(/.f32 #s(literal 1 binary32) (pow.f32 %1616 #s(literal -1 binary32)))
(sqrt.f32 %1748)
(-.f32 %1636 (sinh.f32 %1577))
(-.f32 %1636 %1752)
(pow.f32 %1748 #s(literal 1/2 binary32))
(pow.f32 %1616 #s(literal 1 binary32))
(+.f32 (/.f32 (cosh.f32 %1231) %467) (/.f32 (sinh.f32 %1231) %467))
(+.f32 (cosh.f32 %1761) (sinh.f32 %1761))
(+.f32 %1635 %1636)
(+.f32 %1636 %1635)
(fabs.f32 (-.f32 %1752 %1636))
(fabs.f32 (neg.f32 %1769))
(fabs.f32 %1769)
(fabs.f32 %1616)
(exp.f32 (*.f32 %1761 #s(literal 1 binary32)))
(exp.f32 %1761)
(exp.f32 %1568)

reconstruct80.0ms (1.6%)

Counts
991 → 181
Compiler

Compiled 991 to 2 099 computations (-111.8% saved)

eval15.0ms (0.3%)

Compiler

Compiled 174 to 998 computations (-473.6% saved)

prune3.0ms (0.1%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1668174
Fresh000
Picked101
Done000
Total1678175
Accuracy
99.8%
Counts
175 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.6%
(/.f32 (exp.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v)) (exp.f32 (+.f32 #s(literal -6931/10000 binary32) (log.f32 (+.f32 v v)))))
99.6%
(/.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (+.f32 v v))
99.5%
(/.f32 #s(literal 1 binary32) (exp.f32 (-.f32 (log.f32 (+.f32 v v)) (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32)))))
99.6%
%52 = (sqrt.f32 (/.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (+.f32 v v)))
(*.f32 %52 %52)
99.6%
(*.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (/.f32 #s(literal 1/2 binary32) v))
99.6%
(exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v) (+.f32 #s(literal -6931/10000 binary32) (log.f32 (+.f32 v v)))))
4.8%
(exp.f32 (+.f32 (approx (+ (- (- (/ (* cosTheta_i cosTheta_O) v) (/ (* sinTheta_i sinTheta_O) v)) (/ 1 v)) 6931/10000) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v)))))
4.8%
(exp.f32 (approx (+ (+ (- (- (/ (* cosTheta_i cosTheta_O) v) (/ (* sinTheta_i sinTheta_O) v)) (/ 1 v)) 6931/10000) (log (/ 1 (* 2 v)))) (+.f32 #s(literal 6931/10000 binary32) (+.f32 (log.f32 #s(literal 1/2 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) v))))))
Compiler

Compiled 8 to 43 computations (-437.5% saved)

sample1.0ms (0.0%)

Calls
Call 1
Inputs
(log 1/2)
Outputs
#s(literal -1453635/2097152 binary32)
Samples
0.0ms0valid
Compiler

Compiled 4 to 4 computations (0.0% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
adjust: 0.0ms (0.0% of total, 0.0 MiB)

series99.0ms (2.0%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0195521030
Stop Event
iter-limit
Counts
45 → 311
Calls
Call 1
Inputs
%6 = (/.f32 #s(literal 1 binary32) v)
%9 = (*.f32 #s(literal 2 binary32) v)
%10 = (/.f32 #s(literal 1 binary32) %9)
%11 = (log.f32 %10)
%12 = (*.f32 cosTheta_O cosTheta_i)
%14 = (/.f32 #s(literal 1/2 binary32) v)
%15 = (log.f32 #s(literal 1/2 binary32))
%25 = (+ (- (- (/ (* cosTheta_i cosTheta_O) v) (/ (* sinTheta_i sinTheta_O) v)) (/ 1 v)) 6931/10000)
%26 = (approx %25 #s(literal 6931/10000 binary32))
%27 = (log.f32 %6)
%28 = (+.f32 %15 %27)
%29 = (+.f32 #s(literal 6931/10000 binary32) %28)
%35 = (approx (+ %25 (log (/ 1 (* 2 v)))) %29)
%36 = (+.f32 v v)
%37 = (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))
%38 = (-.f32 %12 %37)
%39 = (/.f32 %38 v)
%41 = (-.f32 %39 #s(literal -6931/10000 binary32))
%42 = (log.f32 %36)
%43 = (+.f32 #s(literal -6931/10000 binary32) %42)
%44 = (-.f32 %39 %43)
%45 = (-.f32 %42 %41)
%46 = (exp.f32 %41)
%47 = (/.f32 %46 %36)
%48 = (sqrt.f32 %47)
%50 = (exp.f32 %39)
%52 = (exp.f32 %43)
%54 = (exp.f32 %45)
%58 = (+.f32 %26 %11)
cosTheta_i
cosTheta_O
v
sinTheta_i
sinTheta_O
#s(literal 1 binary32)
%6
#s(literal 6931/10000 binary32)
#s(literal 2 binary32)
%9
%10
%11
%12
#s(literal 1/2 binary32)
%14
%15
%26
%27
%28
%29
%35
%36
%37
%38
%39
#s(literal -6931/10000 binary32)
%41
%42
%43
%44
%45
%46
%47
%48
(*.f32 %48 %48)
%50
(*.f32 %46 %14)
%52
(/.f32 %50 %52)
%54
(/.f32 #s(literal 1 binary32) %54)
(exp.f32 %44)
(exp.f32 %35)
%58
(exp.f32 %58)
Outputs
%5 = (* cosTheta_O cosTheta_i)
%6 = (*.f32 cosTheta_O cosTheta_i)
%17 = (/ 1 v)
%20 = (+ (- (- (/ (* cosTheta_i cosTheta_O) v) (/ (* sinTheta_i sinTheta_O) v)) %17) 6931/10000)
%23 = (/.f32 #s(literal 1 binary32) v)
%24 = (*.f32 sinTheta_O sinTheta_i)
%25 = (/.f32 %24 v)
%26 = (+.f32 %23 %25)
%27 = (-.f32 #s(literal 6931/10000 binary32) %26)
%29 = (/.f32 %6 v)
%30 = (+.f32 #s(literal 6931/10000 binary32) %29)
%31 = (-.f32 %30 %26)
%34 = (* 2 v)
%35 = (/ 1 %34)
%36 = (log %35)
%37 = (+ %20 %36)
%39 = (/.f32 #s(literal 1/2 binary32) v)
%40 = (log.f32 %39)
%42 = (-.f32 (+.f32 #s(literal 6931/10000 binary32) %40) %26)
%45 = (+.f32 #s(literal 6931/10000 binary32) (+.f32 %40 %29))
%46 = (-.f32 %45 %26)
%49 = (+ (* sinTheta_O sinTheta_i) 1)
%50 = (- %5 %49)
%52 = (+.f32 #s(literal 1 binary32) %24)
%55 = (-.f32 %6 %52)
%57 = (/ %50 v)
%58 = (/.f32 %52 v)
%59 = (*.f32 #s(literal -1 binary32) %58)
%64 = (+ v v)
%65 = (log %64)
%66 = (+ -6931/10000 %65)
%67 = (- %57 %66)
%69 = (*.f32 #s(literal 2 binary32) v)
%70 = (log.f32 %69)
%71 = (+.f32 %70 %26)
%72 = (-.f32 #s(literal 6931/10000 binary32) %71)
%74 = (-.f32 %30 %71)
%76 = (- %57 -6931/10000)
%77 = (- %65 %76)
%78 = (-.f32 %71 #s(literal 6931/10000 binary32))
%84 = (exp %76)
%85 = (exp.f32 %27)
%87 = (*.f32 cosTheta_i %85)
%88 = (*.f32 cosTheta_O %87)
%92 = (pow.f32 cosTheta_O #s(literal 2 binary32))
%93 = (*.f32 %92 %87)
%94 = (pow.f32 v #s(literal 2 binary32))
%96 = (*.f32 cosTheta_O %85)
%97 = (/.f32 %96 v)
%104 = (pow.f32 cosTheta_O #s(literal 3 binary32))
%105 = (*.f32 %104 %87)
%106 = (pow.f32 v #s(literal 3 binary32))
%108 = (*.f32 %92 %85)
%116 = (/ %84 %64)
%117 = (/.f32 %85 v)
%118 = (*.f32 #s(literal 1/2 binary32) %117)
%120 = (/.f32 %88 %94)
%126 = (/.f32 %96 %94)
%128 = (fma.f32 #s(literal 1/4 binary32) (/.f32 %93 %106) (*.f32 #s(literal 1/2 binary32) %126))
%134 = (pow.f32 v #s(literal 4 binary32))
%137 = (*.f32 #s(literal 1/4 binary32) (/.f32 %108 %106))
%140 = (fma.f32 #s(literal 1/2 binary32) %126 (*.f32 cosTheta_i (fma.f32 #s(literal 1/12 binary32) (/.f32 %105 %134) %137)))
%144 = (sqrt %116)
%145 = (sqrt.f32 %118)
%147 = (*.f32 %94 %145)
%152 = (/.f32 %96 %147)
%154 = (pow.f32 %85 #s(literal 2 binary32))
%156 = (pow.f32 %145 #s(literal 2 binary32))
%157 = (*.f32 %134 %156)
%160 = (-.f32 %137 (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %92 %154) %157)))
%173 = (*.f32 %94 %156)
%187 = (* %144 %144)
%195 = (exp %57)
%196 = (exp.f32 %59)
%198 = (*.f32 cosTheta_i %196)
%199 = (*.f32 cosTheta_O %198)
%203 = (*.f32 %92 %198)
%205 = (*.f32 cosTheta_O %196)
%206 = (/.f32 %205 v)
%211 = (*.f32 %104 %198)
%213 = (*.f32 %92 %196)
%221 = (exp %66)
%222 = (/ %195 %221)
%224 = (exp.f32 (-.f32 %70 #s(literal 6931/10000 binary32)))
%225 = (/.f32 %196 %224)
%227 = (*.f32 v %224)
%231 = (*.f32 %94 %224)
%233 = (/.f32 %205 %227)
%237 = (*.f32 %106 %224)
%245 = (exp %77)
%246 = (exp.f32 %78)
%248 = (*.f32 cosTheta_i %246)
%255 = (/.f32 (*.f32 cosTheta_O %246) v)
%275 = (/ 1 %245)
%276 = (/.f32 #s(literal 1 binary32) %246)
%278 = (*.f32 v %246)
%282 = (*.f32 %94 %246)
%283 = (/.f32 %92 %282)
%285 = (fma.f32 #s(literal -1 binary32) %283 (*.f32 #s(literal 1/2 binary32) %283))
%289 = (*.f32 #s(literal -1 binary32) (/.f32 cosTheta_O %278))
%293 = (*.f32 %106 %246)
%294 = (/.f32 %104 %293)
%306 = (exp %67)
%307 = (exp.f32 %72)
%309 = (*.f32 cosTheta_i %307)
%317 = (/.f32 (*.f32 cosTheta_O %307) v)
%332 = (exp %37)
%333 = (exp.f32 %42)
%335 = (*.f32 cosTheta_i %333)
%343 = (/.f32 (*.f32 cosTheta_O %333) v)
%359 = (/.f32 #s(literal 1 binary32) cosTheta_i)
%360 = (/.f32 cosTheta_O v)
%361 = (fma.f32 #s(literal 6931/10000 binary32) %359 %360)
%362 = (*.f32 cosTheta_i v)
%363 = (/.f32 #s(literal 1 binary32) %362)
%364 = (/.f32 %24 %362)
%365 = (+.f32 %363 %364)
%386 = (+.f32 %363 (+.f32 (/.f32 %70 cosTheta_i) %364))
%395 = (exp.f32 %31)
%398 = (*.f32 #s(literal 1/2 binary32) (/.f32 %395 v))
%400 = (sqrt.f32 %398)
%404 = (/.f32 %55 v)
%405 = (exp.f32 %404)
%409 = (-.f32 %71 %30)
%410 = (exp.f32 %409)
%454 = (pow.f32 cosTheta_i #s(literal 2 binary32))
%455 = (*.f32 %454 %85)
%456 = (*.f32 cosTheta_O %455)
%458 = (/.f32 %87 v)
%463 = (pow.f32 cosTheta_i #s(literal 3 binary32))
%464 = (*.f32 %463 %85)
%465 = (*.f32 cosTheta_O %464)
%475 = (/.f32 %87 %94)
%477 = (fma.f32 #s(literal 1/4 binary32) (/.f32 %456 %106) (*.f32 #s(literal 1/2 binary32) %475))
%483 = (*.f32 #s(literal 1/4 binary32) (/.f32 %455 %106))
%486 = (fma.f32 #s(literal 1/2 binary32) %475 (*.f32 cosTheta_O (fma.f32 #s(literal 1/12 binary32) (/.f32 %465 %134) %483)))
%490 = (/.f32 %87 %147)
%494 = (-.f32 %483 (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %454 %154) %157)))
%523 = (*.f32 %454 %196)
%524 = (*.f32 cosTheta_O %523)
%526 = (/.f32 %198 v)
%532 = (*.f32 cosTheta_O (*.f32 %463 %196))
%542 = (/.f32 %198 %227)
%553 = (/.f32 %248 v)
%554 = (*.f32 %454 %246)
%573 = (/.f32 %454 %282)
%575 = (fma.f32 #s(literal -1 binary32) %573 (*.f32 #s(literal 1/2 binary32) %573))
%579 = (*.f32 #s(literal -1 binary32) (/.f32 cosTheta_i %278))
%583 = (/.f32 %463 %293)
%595 = (*.f32 %454 %307)
%598 = (/.f32 %309 v)
%613 = (*.f32 %454 %333)
%616 = (/.f32 %335 v)
%631 = (/.f32 #s(literal 1 binary32) cosTheta_O)
%632 = (/.f32 cosTheta_i v)
%633 = (fma.f32 #s(literal 6931/10000 binary32) %631 %632)
%634 = (*.f32 cosTheta_O v)
%635 = (/.f32 #s(literal 1 binary32) %634)
%636 = (/.f32 %24 %634)
%637 = (+.f32 %635 %636)
%658 = (+.f32 %635 (+.f32 (/.f32 %70 cosTheta_O) %636))
%701 = (-.f32 %30 %23)
%703 = (fma.f32 #s(literal -1 binary32) %25 %29)
%704 = (+.f32 #s(literal 6931/10000 binary32) %703)
%707 = (-.f32 %45 %23)
%715 = (-.f32 %6 #s(literal 1 binary32))
%720 = (/.f32 %715 v)
%724 = (+.f32 %70 %23)
%725 = (-.f32 %30 %724)
%729 = (-.f32 %724 %30)
%732 = (exp.f32 %701)
%734 = (*.f32 sinTheta_i %732)
%735 = (*.f32 sinTheta_O %734)
%740 = (*.f32 sinTheta_O %732)
%741 = (/.f32 %740 v)
%742 = (pow.f32 sinTheta_O #s(literal 2 binary32))
%743 = (*.f32 %742 %734)
%750 = (pow.f32 sinTheta_O #s(literal 3 binary32))
%751 = (*.f32 %750 %734)
%753 = (*.f32 %742 %732)
%762 = (/.f32 %732 v)
%763 = (*.f32 #s(literal 1/2 binary32) %762)
%766 = (/.f32 %735 %94)
%769 = (/.f32 %740 %94)
%772 = (fma.f32 #s(literal -1/2 binary32) %769 (*.f32 #s(literal 1/4 binary32) (/.f32 %743 %106)))
%779 = (*.f32 #s(literal 1/4 binary32) (/.f32 %753 %106))
%782 = (fma.f32 #s(literal -1/2 binary32) %769 (*.f32 sinTheta_i (fma.f32 #s(literal -1/12 binary32) (/.f32 %751 %134) %779)))
%786 = (sqrt.f32 %763)
%789 = (*.f32 %94 %786)
%794 = (/.f32 %740 %789)
%795 = (pow.f32 %732 #s(literal 2 binary32))
%797 = (pow.f32 %786 #s(literal 2 binary32))
%798 = (*.f32 %134 %797)
%801 = (-.f32 %779 (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %742 %795) %798)))
%814 = (*.f32 %94 %797)
%835 = (exp.f32 %720)
%837 = (*.f32 sinTheta_i %835)
%838 = (*.f32 sinTheta_O %837)
%843 = (*.f32 sinTheta_O %835)
%844 = (/.f32 %843 v)
%845 = (*.f32 %742 %837)
%852 = (*.f32 %750 %837)
%854 = (*.f32 %742 %835)
%863 = (/.f32 %835 %224)
%868 = (/.f32 %843 %227)
%882 = (exp.f32 %729)
%884 = (*.f32 sinTheta_i %882)
%892 = (/.f32 (*.f32 sinTheta_O %882) v)
%907 = (/.f32 #s(literal 1 binary32) %882)
%909 = (*.f32 v %882)
%913 = (*.f32 %94 %882)
%914 = (/.f32 %742 %913)
%916 = (fma.f32 #s(literal -1 binary32) %914 (*.f32 #s(literal 1/2 binary32) %914))
%919 = (/.f32 sinTheta_O %909)
%925 = (*.f32 %106 %882)
%926 = (/.f32 %750 %925)
%937 = (exp.f32 %725)
%939 = (*.f32 sinTheta_i %937)
%946 = (/.f32 (*.f32 sinTheta_O %937) v)
%965 = (exp.f32 %707)
%967 = (*.f32 sinTheta_i %965)
%974 = (/.f32 (*.f32 sinTheta_O %965) v)
%995 = (/.f32 #s(literal 1 binary32) sinTheta_i)
%996 = (*.f32 sinTheta_i v)
%997 = (/.f32 %6 %996)
%998 = (fma.f32 #s(literal 6931/10000 binary32) %995 %997)
%999 = (/.f32 #s(literal 1 binary32) %996)
%1000 = (/.f32 sinTheta_O v)
%1001 = (+.f32 %999 %1000)
%1012 = (+.f32 sinTheta_O %995)
%1015 = (*.f32 #s(literal -1 binary32) %24)
%1027 = (+.f32 %999 (+.f32 %1000 (/.f32 %70 sinTheta_i)))
%1037 = (*.f32 #s(literal -1 binary32) %1000)
%1048 = (*.f32 #s(literal -1 binary32) sinTheta_O)
%1059 = (-.f32 %29 %23)
%1078 = (/.f32 %734 v)
%1079 = (pow.f32 sinTheta_i #s(literal 2 binary32))
%1080 = (*.f32 %1079 %732)
%1081 = (*.f32 sinTheta_O %1080)
%1088 = (pow.f32 sinTheta_i #s(literal 3 binary32))
%1089 = (*.f32 %1088 %732)
%1090 = (*.f32 sinTheta_O %1089)
%1100 = (/.f32 %734 %94)
%1103 = (fma.f32 #s(literal -1/2 binary32) %1100 (*.f32 #s(literal 1/4 binary32) (/.f32 %1081 %106)))
%1109 = (*.f32 #s(literal 1/4 binary32) (/.f32 %1080 %106))
%1112 = (fma.f32 #s(literal -1/2 binary32) %1100 (*.f32 sinTheta_O (fma.f32 #s(literal -1/12 binary32) (/.f32 %1090 %134) %1109)))
%1116 = (/.f32 %734 %789)
%1120 = (-.f32 %1109 (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %1079 %795) %798)))
%1149 = (/.f32 %837 v)
%1150 = (*.f32 %1079 %835)
%1151 = (*.f32 sinTheta_O %1150)
%1159 = (*.f32 sinTheta_O (*.f32 %1088 %835))
%1169 = (/.f32 %837 %227)
%1183 = (*.f32 %1079 %882)
%1186 = (/.f32 %884 v)
%1201 = (/.f32 %1079 %913)
%1203 = (fma.f32 #s(literal -1 binary32) %1201 (*.f32 #s(literal 1/2 binary32) %1201))
%1206 = (/.f32 sinTheta_i %909)
%1212 = (/.f32 %1088 %925)
%1223 = (/.f32 %939 v)
%1224 = (*.f32 %1079 %937)
%1243 = (/.f32 %967 v)
%1244 = (*.f32 %1079 %965)
%1263 = (/.f32 #s(literal 1 binary32) sinTheta_O)
%1264 = (*.f32 sinTheta_O v)
%1265 = (/.f32 %6 %1264)
%1266 = (fma.f32 #s(literal 6931/10000 binary32) %1263 %1265)
%1267 = (/.f32 #s(literal 1 binary32) %1264)
%1268 = (/.f32 sinTheta_i v)
%1269 = (+.f32 %1267 %1268)
%1279 = (+.f32 sinTheta_i %1263)
%1292 = (+.f32 %1267 (+.f32 %1268 (/.f32 %70 sinTheta_O)))
%1301 = (*.f32 #s(literal -1 binary32) %1268)
%1312 = (*.f32 #s(literal -1 binary32) sinTheta_i)
%1344 = (log.f32 #s(literal 1/2 binary32))
%1345 = (log.f32 v)
%1346 = (*.f32 #s(literal -1 binary32) %1345)
%1347 = (+.f32 %1344 %1346)
%1354 = (log %17)
%1359 = (+ 6931/10000 (+ (log 1/2) %1354))
%1360 = (+.f32 #s(literal 6931/10000 binary32) %1347)
%1367 = (log.f32 #s(literal 2 binary32))
%1368 = (+.f32 %1367 %1345)
%1370 = (-.f32 %1368 #s(literal 6931/10000 binary32))
%1378 = (-.f32 %52 %6)
%1389 = (sqrt.f32 (*.f32 #s(literal 1/2 binary32) (*.f32 v %395)))
%1395 = (exp.f32 %1370)
%1399 = (log.f32 %23)
%1400 = (+.f32 %1344 %1399)
%1404 = (+.f32 #s(literal 6931/10000 binary32) %1400)
%1412 = (+.f32 %1367 (*.f32 #s(literal -1 binary32) %1399))
%1414 = (-.f32 %1412 #s(literal 6931/10000 binary32))
%1416 = (-.f32 #s(literal 6931/10000 binary32) %1412)
%1419 = (+.f32 %1367 (fma.f32 #s(literal -1 binary32) %1399 %26))
%1424 = (exp.f32 #s(literal 6931/10000 binary32))
%1426 = (*.f32 %1424 %55)
%1427 = (/.f32 %1426 v)
%1430 = (pow.f32 %55 #s(literal 2 binary32))
%1431 = (*.f32 %1424 %1430)
%1432 = (/.f32 %1431 %94)
%1433 = (fma.f32 #s(literal 1/2 binary32) %1432 %1427)
%1436 = (pow.f32 %55 #s(literal 3 binary32))
%1437 = (*.f32 %1424 %1436)
%1438 = (/.f32 %1437 %106)
%1443 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1424 v))
%1446 = (fma.f32 #s(literal 1/2 binary32) %1424 (*.f32 #s(literal 1/2 binary32) %1427))
%1449 = (fma.f32 #s(literal 1/4 binary32) %1432 %1446)
%1455 = (sqrt.f32 %1443)
%1458 = (/.f32 %1426 (*.f32 %94 %1455))
%1459 = (*.f32 #s(literal 1/4 binary32) %1458)
%1464 = (/.f32 %1431 (*.f32 %106 %1455))
%1471 = (pow.f32 %1455 #s(literal 2 binary32))
%1474 = (-.f32 (*.f32 #s(literal 1/12 binary32) %1437) (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 (pow.f32 %1424 #s(literal 2 binary32)) %1430) %1471)))
%1484 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1426 %94) %1471)
%1487 = (fma.f32 #s(literal 1/4 binary32) (/.f32 %1431 %106) %1484)
%1496 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1430 %94) %29)
%1505 = (exp.f32 %1414)
%1507 = (/.f32 #s(literal 1 binary32) %1505)
%1509 = (*.f32 v %1505)
%1511 = (+.f32 %1507 (/.f32 %6 %1509))
%1512 = (/.f32 #s(literal 1 binary32) %1509)
%1513 = (/.f32 %24 %1509)
%1514 = (+.f32 %1512 %1513)
%1517 = (*.f32 %94 %1505)
%1519 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1430 %1517) %1511)
%1528 = (/.f32 (*.f32 %1505 %1378) v)
%1531 = (pow.f32 %1378 #s(literal 2 binary32))
%1534 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1505 %1531) %94) %1528)
%1537 = (pow.f32 %1378 #s(literal 3 binary32))
%1544 = (/.f32 %6 %1505)
%1545 = (/.f32 %24 %1505)
%1546 = (+.f32 %1507 %1545)
%1547 = (-.f32 %1544 %1546)
%1548 = (*.f32 %1378 %1547)
%1549 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1531 %1505) %1548)
%1569 = (exp.f32 %1416)
%1571 = (*.f32 %1569 %55)
%1572 = (/.f32 %1571 v)
%1575 = (*.f32 %1569 %1430)
%1577 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1575 %94) %1572)
%1580 = (*.f32 %1569 %1436)
%1585 = (exp.f32 %1404)
%1588 = (/.f32 (*.f32 %1585 %55) v)
%1593 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1585 %1430) %94) %1588)
%1603 = (-.f32 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) %6)) %1015)
%1605 = (*.f32 #s(literal -1 binary32) (/.f32 %1603 v))
%1617 = (/.f32 %1431 v)
%1624 = (/.f32 %1437 v)
%1639 = (*.f32 #s(literal 1/2 binary32) %1426)
%1642 = (*.f32 #s(literal -1/2 binary32) %1424)
%1648 = (fma.f32 #s(literal -1/4 binary32) %1431 (*.f32 #s(literal -1/12 binary32) %1624))
%1686 = (/.f32 %55 %1505)
%1687 = (/.f32 %1430 %1509)
%1693 = (/.f32 %1436 %1509)
%1694 = (/.f32 %1430 %1505)
%1703 = (*.f32 %1505 %55)
%1708 = (*.f32 %1505 %1430)
%1725 = (-.f32 %1546 %1544)
%1729 = (*.f32 %55 %1725)
%1738 = (fma.f32 #s(literal 1/2 binary32) %1694 %1729)
%1770 = (*.f32 %1585 %1603)
%1776 = (*.f32 %1585 (pow.f32 %1603 #s(literal 2 binary32)))
(approx cosTheta_i #s(literal 0 binary32))
(approx cosTheta_i cosTheta_i)
(approx %5 %6)
(approx %20 %27)
(approx %20 %31)
(approx %37 %42)
(approx %37 %46)
(approx %50 (*.f32 #s(literal -1 binary32) %52))
(approx %50 %55)
(approx %57 %59)
(approx %57 (fma.f32 #s(literal -1 binary32) %58 %29))
(approx %67 %72)
(approx %67 %74)
(approx %77 %78)
(approx %77 (-.f32 (+.f32 %70 (fma.f32 #s(literal -1 binary32) %29 %26)) #s(literal 6931/10000 binary32)))
(approx %84 %85)
(approx %84 (+.f32 %85 (/.f32 %88 v)))
(approx %84 (+.f32 %85 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %93 %94) %97))))
(approx %84 (+.f32 %85 (*.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 %105 %106) (*.f32 #s(literal 1/2 binary32) (/.f32 %108 %94))) %97))))
(approx %116 %118)
(approx %116 (fma.f32 #s(literal 1/2 binary32) %117 (*.f32 #s(literal 1/2 binary32) %120)))
(approx %116 (fma.f32 #s(literal 1/2 binary32) %117 (*.f32 cosTheta_i %128)))
(approx %116 (fma.f32 #s(literal 1/2 binary32) %117 (*.f32 cosTheta_i %140)))
(approx %144 %145)
(approx %144 (+.f32 %145 (*.f32 #s(literal 1/4 binary32) (/.f32 %88 %147))))
(approx %144 (+.f32 %145 (*.f32 cosTheta_i (fma.f32 #s(literal 1/4 binary32) %152 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i %160) %145))))))
(approx %144 (+.f32 %145 (*.f32 cosTheta_i (fma.f32 #s(literal 1/4 binary32) %152 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal 1/12 binary32) (/.f32 (*.f32 %104 %85) %134)) (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %85 %160)) %173)))) %145) (*.f32 #s(literal 1/2 binary32) (/.f32 %160 %145))))))))
(approx %187 %156)
(approx %187 (fma.f32 #s(literal 1/2 binary32) %120 %156))
(approx %187 (fma.f32 cosTheta_i %128 %156))
(approx %187 (fma.f32 cosTheta_i %140 %156))
(approx %195 %196)
(approx %195 (+.f32 %196 (/.f32 %199 v)))
(approx %195 (+.f32 %196 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %203 %94) %206))))
(approx %195 (+.f32 %196 (*.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 %211 %106) (*.f32 #s(literal 1/2 binary32) (/.f32 %213 %94))) %206))))
(approx %222 %225)
(approx %222 (+.f32 %225 (/.f32 %199 %227)))
(approx %222 (fma.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %203 %231) %233) %225))
(approx %222 (fma.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 %211 %237) (*.f32 #s(literal 1/2 binary32) (/.f32 %213 %231))) %233) %225))
(approx %245 %246)
(approx %245 (+.f32 %246 (*.f32 #s(literal -1 binary32) (/.f32 (*.f32 cosTheta_O %248) v))))
(approx %245 (+.f32 %246 (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %255 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %92 %248) %94))))))
(approx %245 (+.f32 %246 (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %255 (*.f32 cosTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %104 %248) %106) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %92 %246) %94))))))))
(approx %275 %276)
(approx %275 (+.f32 %276 (/.f32 %6 %278)))
(approx %275 (fma.f32 cosTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i %285)) %289) %276))
(approx %275 (fma.f32 cosTheta_i (-.f32 (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1/6 binary32) %294 (fma.f32 #s(literal 1/2 binary32) %294 (/.f32 (*.f32 cosTheta_O %285) v))))) %285)) %289) %276))
(approx %306 %307)
(approx %306 (+.f32 %307 (/.f32 (*.f32 cosTheta_O %309) v)))
(approx %306 (+.f32 %307 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %92 %309) %94) %317))))
(approx %306 (+.f32 %307 (*.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %104 %309) %106) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %92 %307) %94))) %317))))
(approx %332 %333)
(approx %332 (+.f32 %333 (/.f32 (*.f32 cosTheta_O %335) v)))
(approx %332 (+.f32 %333 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %92 %335) %94) %343))))
(approx %332 (+.f32 %333 (*.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %104 %335) %106) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %92 %333) %94))) %343))))
(approx %20 %29)
(approx %20 (*.f32 cosTheta_i (-.f32 %361 %365)))
(approx %37 (*.f32 cosTheta_i (-.f32 (fma.f32 #s(literal 6931/10000 binary32) %359 (+.f32 %360 (/.f32 %40 cosTheta_i))) %365)))
(approx %50 (*.f32 cosTheta_i (+.f32 cosTheta_O (*.f32 #s(literal -1 binary32) (/.f32 %52 cosTheta_i)))))
(approx %57 (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) (/.f32 %52 %362) %360)))
(approx %67 (*.f32 cosTheta_i (-.f32 %361 %386)))
(approx %77 (*.f32 #s(literal -1 binary32) %29))
(approx %77 (*.f32 cosTheta_i (-.f32 %386 %361)))
(approx %84 %395)
(approx %116 %398)
(approx %144 %400)
(approx %187 (pow.f32 %400 #s(literal 2 binary32)))
(approx %195 %405)
(approx %222 (/.f32 %405 %224))
(approx %245 %410)
(approx %275 (/.f32 #s(literal 1 binary32) %410))
(approx %306 (exp.f32 %74))
(approx %332 (exp.f32 %46))
(approx %20 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %360 (*.f32 #s(literal -1 binary32) (/.f32 %27 cosTheta_i))))))
(approx %37 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %360 (*.f32 #s(literal -1 binary32) (/.f32 %42 cosTheta_i))))))
(approx %50 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) cosTheta_O (+.f32 %359 (/.f32 %24 cosTheta_i))))))
(approx %57 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %360 %365))))
(approx %67 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %360 (*.f32 #s(literal -1 binary32) (/.f32 %72 cosTheta_i))))))
(approx %77 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %78 cosTheta_i)) (*.f32 #s(literal -1 binary32) %360)))))
(approx cosTheta_O cosTheta_O)
(approx %84 (+.f32 %85 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %456 %94) %458))))
(approx %84 (+.f32 %85 (*.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 %465 %106) (*.f32 #s(literal 1/2 binary32) (/.f32 %455 %94))) %458))))
(approx %116 (fma.f32 #s(literal 1/2 binary32) %117 (*.f32 cosTheta_O %477)))
(approx %116 (fma.f32 #s(literal 1/2 binary32) %117 (*.f32 cosTheta_O %486)))
(approx %144 (+.f32 %145 (*.f32 cosTheta_O (fma.f32 #s(literal 1/4 binary32) %490 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %494) %145))))))
(approx %144 (+.f32 %145 (*.f32 cosTheta_O (fma.f32 #s(literal 1/4 binary32) %490 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal 1/12 binary32) (/.f32 %464 %134)) (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 cosTheta_i (*.f32 %85 %494)) %173)))) %145) (*.f32 #s(literal 1/2 binary32) (/.f32 %494 %145))))))))
(approx %187 (fma.f32 cosTheta_O %477 %156))
(approx %187 (fma.f32 cosTheta_O %486 %156))
(approx %195 (+.f32 %196 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %524 %94) %526))))
(approx %195 (+.f32 %196 (*.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 %532 %106) (*.f32 #s(literal 1/2 binary32) (/.f32 %523 %94))) %526))))
(approx %222 (fma.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %524 %231) %542) %225))
(approx %222 (fma.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 %532 %237) (*.f32 #s(literal 1/2 binary32) (/.f32 %523 %231))) %542) %225))
(approx %245 (+.f32 %246 (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %553 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %554) %94))))))
(approx %245 (+.f32 %246 (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %553 (*.f32 cosTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %463 %246)) %106) (*.f32 #s(literal 1/2 binary32) (/.f32 %554 %94))))))))
(approx %275 (fma.f32 cosTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O %575)) %579) %276))
(approx %275 (fma.f32 cosTheta_O (-.f32 (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1/6 binary32) %583 (fma.f32 #s(literal 1/2 binary32) %583 (/.f32 (*.f32 cosTheta_i %575) v))))) %575)) %579) %276))
(approx %306 (+.f32 %307 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %595) %94) %598))))
(approx %306 (+.f32 %307 (*.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %463 %307)) %106) (*.f32 #s(literal 1/2 binary32) (/.f32 %595 %94))) %598))))
(approx %332 (+.f32 %333 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %613) %94) %616))))
(approx %332 (+.f32 %333 (*.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %463 %333)) %106) (*.f32 #s(literal 1/2 binary32) (/.f32 %613 %94))) %616))))
(approx %20 (*.f32 cosTheta_O (-.f32 %633 %637)))
(approx %37 (*.f32 cosTheta_O (-.f32 (fma.f32 #s(literal 6931/10000 binary32) %631 (+.f32 %632 (/.f32 %40 cosTheta_O))) %637)))
(approx %50 (*.f32 cosTheta_O (+.f32 cosTheta_i (*.f32 #s(literal -1 binary32) (/.f32 %52 cosTheta_O)))))
(approx %57 (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) (/.f32 %52 %634) %632)))
(approx %67 (*.f32 cosTheta_O (-.f32 %633 %658)))
(approx %77 (*.f32 cosTheta_O (-.f32 %658 %633)))
(approx %20 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %632 (*.f32 #s(literal -1 binary32) (/.f32 %27 cosTheta_O))))))
(approx %37 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %632 (*.f32 #s(literal -1 binary32) (/.f32 %42 cosTheta_O))))))
(approx %50 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) cosTheta_i (+.f32 %631 (/.f32 %24 cosTheta_O))))))
(approx %57 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %632 %637))))
(approx %67 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %632 (*.f32 #s(literal -1 binary32) (/.f32 %72 cosTheta_O))))))
(approx %77 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %78 cosTheta_O)) (*.f32 #s(literal -1 binary32) %632)))))
(approx sinTheta_i sinTheta_i)
(approx %20 %701)
(approx %20 (-.f32 %704 %23))
(approx %37 %707)
(approx %37 (-.f32 (+.f32 #s(literal 6931/10000 binary32) (+.f32 %40 %703)) %23))
(approx %49 #s(literal 1 binary32))
(approx %49 %52)
(approx %50 %715)
(approx %50 (-.f32 (fma.f32 #s(literal -1 binary32) %24 %6) #s(literal 1 binary32)))
(approx %57 %720)
(approx %57 (-.f32 %703 %23))
(approx %67 %725)
(approx %67 (-.f32 %704 %724))
(approx %77 %729)
(approx %77 %409)
(approx %84 %732)
(approx %84 (+.f32 %732 (*.f32 #s(literal -1 binary32) (/.f32 %735 v))))
(approx %84 (+.f32 %732 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %741 (*.f32 #s(literal 1/2 binary32) (/.f32 %743 %94))))))
(approx %84 (+.f32 %732 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %741 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 %751 %106) (*.f32 #s(literal 1/2 binary32) (/.f32 %753 %94))))))))
(approx %116 %763)
(approx %116 (fma.f32 #s(literal -1/2 binary32) %766 %763))
(approx %116 (fma.f32 #s(literal 1/2 binary32) %762 (*.f32 sinTheta_i %772)))
(approx %116 (fma.f32 #s(literal 1/2 binary32) %762 (*.f32 sinTheta_i %782)))
(approx %144 %786)
(approx %144 (+.f32 %786 (*.f32 #s(literal -1/4 binary32) (/.f32 %735 %789))))
(approx %144 (+.f32 %786 (*.f32 sinTheta_i (fma.f32 #s(literal -1/4 binary32) %794 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_i %801) %786))))))
(approx %144 (+.f32 %786 (*.f32 sinTheta_i (fma.f32 #s(literal -1/4 binary32) %794 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1/12 binary32) (/.f32 (*.f32 %750 %732) %134)) (*.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %732 %801)) %814)))) %786) (*.f32 #s(literal 1/2 binary32) (/.f32 %801 %786))))))))
(approx %187 %797)
(approx %187 (fma.f32 #s(literal -1/2 binary32) %766 %797))
(approx %187 (fma.f32 sinTheta_i %772 %797))
(approx %187 (fma.f32 sinTheta_i %782 %797))
(approx %195 %835)
(approx %195 (+.f32 %835 (*.f32 #s(literal -1 binary32) (/.f32 %838 v))))
(approx %195 (+.f32 %835 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %844 (*.f32 #s(literal 1/2 binary32) (/.f32 %845 %94))))))
(approx %195 (+.f32 %835 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %844 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 %852 %106) (*.f32 #s(literal 1/2 binary32) (/.f32 %854 %94))))))))
(approx %222 %863)
(approx %222 (fma.f32 #s(literal -1 binary32) (/.f32 %838 %227) %863))
(approx %222 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %868 (*.f32 #s(literal 1/2 binary32) (/.f32 %845 %231))) %863))
(approx %222 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %868 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 %852 %237) (*.f32 #s(literal 1/2 binary32) (/.f32 %854 %231))))) %863))
(approx %245 %882)
(approx %245 (+.f32 %882 (/.f32 (*.f32 sinTheta_O %884) v)))
(approx %245 (+.f32 %882 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %742 %884) %94) %892))))
(approx %245 (+.f32 %882 (*.f32 sinTheta_i (fma.f32 sinTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %750 %884) %106) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %742 %882) %94))) %892))))
(approx %275 %907)
(approx %275 (fma.f32 #s(literal -1 binary32) (/.f32 %24 %909) %907))
(approx %275 (fma.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i %916)) %919) %907))
(approx %275 (fma.f32 sinTheta_i (-.f32 (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 sinTheta_O %916) v) (fma.f32 #s(literal -1/2 binary32) %926 (*.f32 #s(literal 1/6 binary32) %926))))) %916)) %919) %907))
(approx %306 %937)
(approx %306 (+.f32 %937 (*.f32 #s(literal -1 binary32) (/.f32 (*.f32 sinTheta_O %939) v))))
(approx %306 (+.f32 %937 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %946 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %742 %939) %94))))))
(approx %306 (+.f32 %937 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %946 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %750 %939) %106) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %742 %937) %94))))))))
(approx %332 %965)
(approx %332 (+.f32 %965 (*.f32 #s(literal -1 binary32) (/.f32 (*.f32 sinTheta_O %967) v))))
(approx %332 (+.f32 %965 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %974 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %742 %967) %94))))))
(approx %332 (+.f32 %965 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %974 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %750 %967) %106) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %742 %965) %94))))))))
(approx %20 (*.f32 #s(literal -1 binary32) %25))
(approx %20 (*.f32 sinTheta_i (-.f32 %998 %1001)))
(approx %37 (*.f32 sinTheta_i (-.f32 (fma.f32 #s(literal 6931/10000 binary32) %995 (+.f32 (/.f32 %40 sinTheta_i) %997)) %1001)))
(approx %49 %24)
(approx %49 (*.f32 sinTheta_i %1012))
(approx %50 %1015)
(approx %50 (*.f32 sinTheta_i (-.f32 (/.f32 %6 sinTheta_i) %1012)))
(approx %57 (*.f32 sinTheta_i (-.f32 (fma.f32 #s(literal -1 binary32) %1000 %997) %999)))
(approx %67 (*.f32 sinTheta_i (-.f32 %998 %1027)))
(approx %77 %25)
(approx %77 (*.f32 sinTheta_i (-.f32 %1027 %998)))
(approx %20 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %701 sinTheta_i)) %1037))))
(approx %37 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %707 sinTheta_i)) %1037))))
(approx %49 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 %1048 %995))))
(approx %50 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %715 sinTheta_i)) %1048))))
(approx %57 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) (/.f32 %1059 sinTheta_i) %1000))))
(approx %67 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %725 sinTheta_i)) %1037))))
(approx %77 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1000 (*.f32 #s(literal -1 binary32) (/.f32 %729 sinTheta_i))))))
(approx sinTheta_O sinTheta_O)
(approx %84 (+.f32 %732 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %1078 (*.f32 #s(literal 1/2 binary32) (/.f32 %1081 %94))))))
(approx %84 (+.f32 %732 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %1078 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 %1090 %106) (*.f32 #s(literal 1/2 binary32) (/.f32 %1080 %94))))))))
(approx %116 (fma.f32 #s(literal 1/2 binary32) %762 (*.f32 sinTheta_O %1103)))
(approx %116 (fma.f32 #s(literal 1/2 binary32) %762 (*.f32 sinTheta_O %1112)))
(approx %144 (+.f32 %786 (*.f32 sinTheta_O (fma.f32 #s(literal -1/4 binary32) %1116 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %1120) %786))))))
(approx %144 (+.f32 %786 (*.f32 sinTheta_O (fma.f32 #s(literal -1/4 binary32) %1116 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1/12 binary32) (/.f32 %1089 %134)) (*.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 sinTheta_i (*.f32 %732 %1120)) %814)))) %786) (*.f32 #s(literal 1/2 binary32) (/.f32 %1120 %786))))))))
(approx %187 (fma.f32 sinTheta_O %1103 %797))
(approx %187 (fma.f32 sinTheta_O %1112 %797))
(approx %195 (+.f32 %835 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %1149 (*.f32 #s(literal 1/2 binary32) (/.f32 %1151 %94))))))
(approx %195 (+.f32 %835 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %1149 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 %1159 %106) (*.f32 #s(literal 1/2 binary32) (/.f32 %1150 %94))))))))
(approx %222 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %1169 (*.f32 #s(literal 1/2 binary32) (/.f32 %1151 %231))) %863))
(approx %222 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %1169 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 %1159 %237) (*.f32 #s(literal 1/2 binary32) (/.f32 %1150 %231))))) %863))
(approx %245 (+.f32 %882 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %1183) %94) %1186))))
(approx %245 (+.f32 %882 (*.f32 sinTheta_O (fma.f32 sinTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %1088 %882)) %106) (*.f32 #s(literal 1/2 binary32) (/.f32 %1183 %94))) %1186))))
(approx %275 (fma.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O %1203)) %1206) %907))
(approx %275 (fma.f32 sinTheta_O (-.f32 (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 sinTheta_i %1203) v) (fma.f32 #s(literal -1/2 binary32) %1212 (*.f32 #s(literal 1/6 binary32) %1212))))) %1203)) %1206) %907))
(approx %306 (+.f32 %937 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %1223 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %1224) %94))))))
(approx %306 (+.f32 %937 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %1223 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %1088 %937)) %106) (*.f32 #s(literal 1/2 binary32) (/.f32 %1224 %94))))))))
(approx %332 (+.f32 %965 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %1243 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %1244) %94))))))
(approx %332 (+.f32 %965 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %1243 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %1088 %965)) %106) (*.f32 #s(literal 1/2 binary32) (/.f32 %1244 %94))))))))
(approx %20 (*.f32 sinTheta_O (-.f32 %1266 %1269)))
(approx %37 (*.f32 sinTheta_O (-.f32 (fma.f32 #s(literal 6931/10000 binary32) %1263 (+.f32 (/.f32 %40 sinTheta_O) %1265)) %1269)))
(approx %49 (*.f32 sinTheta_O %1279))
(approx %50 (*.f32 sinTheta_O (-.f32 (/.f32 %6 sinTheta_O) %1279)))
(approx %57 (*.f32 sinTheta_O (-.f32 (fma.f32 #s(literal -1 binary32) %1268 %1265) %1267)))
(approx %67 (*.f32 sinTheta_O (-.f32 %1266 %1292)))
(approx %77 (*.f32 sinTheta_O (-.f32 %1292 %1266)))
(approx %20 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %701 sinTheta_O)) %1301))))
(approx %37 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %707 sinTheta_O)) %1301))))
(approx %49 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 %1312 %1263))))
(approx %50 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %715 sinTheta_O)) %1312))))
(approx %57 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) (/.f32 %1059 sinTheta_O) %1268))))
(approx %67 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %725 sinTheta_O)) %1301))))
(approx %77 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %1268 (*.f32 #s(literal -1 binary32) (/.f32 %729 sinTheta_O))))))
(approx v v)
(approx %17 %23)
(approx %34 %69)
(approx %35 %39)
(approx %36 %1347)
(approx %20 %404)
(approx %20 (/.f32 (-.f32 (fma.f32 #s(literal 6931/10000 binary32) v %6) %52) v))
(approx %1354 %1346)
(approx %1359 %1360)
(approx %37 (/.f32 (-.f32 (fma.f32 cosTheta_O cosTheta_i (*.f32 v %1360)) %52) v))
(approx %65 %1368)
(approx %66 %1370)
(approx %67 (/.f32 (-.f32 (fma.f32 cosTheta_O cosTheta_i (*.f32 v (-.f32 #s(literal 6931/10000 binary32) %1368))) %52) v))
(approx %77 (/.f32 %1378 v))
(approx %77 (/.f32 (-.f32 (+.f32 #s(literal 1 binary32) (fma.f32 sinTheta_O sinTheta_i (*.f32 v %1370))) %6) v))
(approx %144 (/.f32 %1389 v))
(approx %187 (/.f32 (pow.f32 %1389 #s(literal 2 binary32)) %94))
(approx %221 %1395)
(approx %222 (/.f32 %405 %1395))
(approx %36 %1400)
(approx %20 #s(literal 6931/10000 binary32))
(approx %1354 %1399)
(approx %1359 %1404)
(approx %37 (-.f32 (+.f32 #s(literal 6931/10000 binary32) (+.f32 %1344 (+.f32 %1399 %29))) %26))
(approx %65 %1412)
(approx %66 %1414)
(approx %67 %1416)
(approx %67 (-.f32 %30 %1419))
(approx %77 (-.f32 %1419 %30))
(approx %84 %1424)
(approx %84 (+.f32 %1424 %1427))
(approx %84 (+.f32 %1424 %1433))
(approx %84 (+.f32 %1424 (fma.f32 #s(literal 1/6 binary32) %1438 %1433)))
(approx %116 %1443)
(approx %116 (/.f32 %1446 v))
(approx %116 (/.f32 %1449 v))
(approx %116 (/.f32 (fma.f32 #s(literal 1/12 binary32) %1438 %1449) v))
(approx %144 %1455)
(approx %144 (+.f32 %1455 %1459))
(approx %144 (+.f32 %1455 (fma.f32 #s(literal 1/8 binary32) %1464 %1459)))
(approx %144 (+.f32 %1455 (fma.f32 #s(literal 1/8 binary32) %1464 (fma.f32 #s(literal 1/4 binary32) %1458 (*.f32 #s(literal 1/2 binary32) (/.f32 %1474 (*.f32 %134 %1455)))))))
(approx %187 %1471)
(approx %187 %1484)
(approx %187 %1487)
(approx %187 (fma.f32 #s(literal 1/12 binary32) (/.f32 %1437 %134) %1487))
(approx %195 (-.f32 (+.f32 #s(literal 1 binary32) %29) %26))
(approx %195 (-.f32 (+.f32 #s(literal 1 binary32) %1496) %26))
(approx %195 (-.f32 (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal 1/6 binary32) (/.f32 %1436 %106) %1496)) %26))
(approx %221 %1505)
(approx %222 %1507)
(approx %222 (-.f32 %1511 %1514))
(approx %222 (-.f32 %1519 %1514))
(approx %222 (-.f32 (fma.f32 #s(literal 1/6 binary32) (/.f32 %1436 (*.f32 %106 %1505)) %1519) %1514))
(approx %245 (+.f32 %1505 %1528))
(approx %245 (+.f32 %1505 %1534))
(approx %245 (+.f32 %1505 (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %1505 %1537) %106) %1534)))
(approx %275 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %1549 %94) %1511) %1514))
(approx %275 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (*.f32 %1549 %1378) (fma.f32 #s(literal 1/6 binary32) (/.f32 %1537 %1505) (*.f32 #s(literal 1/2 binary32) (*.f32 %1531 %1547)))) %106) %1511) (fma.f32 #s(literal 1/2 binary32) (/.f32 %1531 %1517) (+.f32 %1512 (+.f32 %1513 (/.f32 %1548 %94))))))
(approx %306 %1569)
(approx %306 (+.f32 %1569 %1572))
(approx %306 (+.f32 %1569 %1577))
(approx %306 (+.f32 %1569 (fma.f32 #s(literal 1/6 binary32) (/.f32 %1580 %106) %1577)))
(approx %332 %1585)
(approx %332 (+.f32 %1585 %1588))
(approx %332 (+.f32 %1585 %1593))
(approx %332 (+.f32 %1585 (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %1585 %1436) %106) %1593)))
(approx %20 (+.f32 #s(literal 6931/10000 binary32) %1605))
(approx %37 (+.f32 #s(literal 6931/10000 binary32) (+.f32 %1344 (+.f32 %1399 %1605))))
(approx %77 (-.f32 (+.f32 %1367 (fma.f32 #s(literal -1 binary32) %1399 (*.f32 #s(literal -1 binary32) %404))) #s(literal 6931/10000 binary32)))
(approx %84 (+.f32 %1424 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1426 (*.f32 #s(literal -1/2 binary32) %1617)) v))))
(approx %84 (+.f32 %1424 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1426 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/6 binary32) %1624 (*.f32 #s(literal 1/2 binary32) %1431)) v))) v))))
(approx %116 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %1424 (*.f32 #s(literal -1/2 binary32) %1427)) v)))
(approx %116 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/4 binary32) %1617 %1639) v) %1642) v)))
(approx %116 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %1648 v) %1639) v) %1642) v)))
(approx %144 (+.f32 %1455 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1474 (*.f32 v %1455)) (*.f32 #s(literal -1/8 binary32) (/.f32 %1431 %1455))) %106) %1459)))
(approx %187 (fma.f32 #s(literal -1 binary32) (/.f32 %1648 %106) %1484))
(approx %195 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %55 (*.f32 #s(literal -1/2 binary32) (/.f32 %1430 v))) v))))
(approx %195 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %55 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/6 binary32) (/.f32 %1436 v) (*.f32 #s(literal 1/2 binary32) %1430)) v))) v))))
(approx %222 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1686 (*.f32 #s(literal -1/2 binary32) %1687)) v) %1507))
(approx %222 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/6 binary32) %1693 (*.f32 #s(literal 1/2 binary32) %1694)) v) (*.f32 #s(literal -1 binary32) %1686)) v) %1507))
(approx %245 (+.f32 %1505 (*.f32 #s(literal -1 binary32) (/.f32 %1703 v))))
(approx %245 (+.f32 %1505 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1708 v) %1703) v))))
(approx %245 (+.f32 %1505 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %1505 %1436) v) (*.f32 #s(literal 1/2 binary32) %1708)) v) %1703) v))))
(approx %275 (fma.f32 #s(literal -1 binary32) (/.f32 %1725 v) %1507))
(approx %275 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal 1/2 binary32) %1687 (+.f32 %1507 (+.f32 %1545 (/.f32 %1729 v)))) %1544) v) %1507))
(approx %275 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 %1738 %55) v) (fma.f32 #s(literal 1/6 binary32) %1693 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1430 %1725) v)))) %1738) v) %1546) %1544) v) %1507))
(approx %306 (+.f32 %1569 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1571 (*.f32 #s(literal -1/2 binary32) (/.f32 %1575 v))) v))))
(approx %306 (+.f32 %1569 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %1571 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/6 binary32) (/.f32 %1580 v) (*.f32 #s(literal 1/2 binary32) %1575)) v))) v))))
(approx %332 (+.f32 %1585 (*.f32 #s(literal -1 binary32) (/.f32 %1770 v))))
(approx %332 (+.f32 %1585 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1776 v) %1770) v))))
(approx %332 (+.f32 %1585 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %1585 (pow.f32 %1603 #s(literal 3 binary32))) v) (*.f32 #s(literal 1/2 binary32) %1776)) v) %1770) v))))
Calls

15 calls:

TimeVariablePoint
19.0ms
sinTheta_O
0
6.0ms
v
inf
4.0ms
sinTheta_i
0
3.0ms
v
-inf
3.0ms
cosTheta_i
0

rewrite102.0ms (2.1%)

Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
057472
091411
1371393
21778393
04050393
04374393
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
45 → 1 353
Calls
Call 1
Inputs
%6 = (/.f32 #s(literal 1 binary32) v)
%9 = (*.f32 #s(literal 2 binary32) v)
%10 = (/.f32 #s(literal 1 binary32) %9)
%11 = (log.f32 %10)
%12 = (*.f32 cosTheta_O cosTheta_i)
%14 = (/.f32 #s(literal 1/2 binary32) v)
%15 = (log.f32 #s(literal 1/2 binary32))
%25 = (+ (- (- (/ (* cosTheta_i cosTheta_O) v) (/ (* sinTheta_i sinTheta_O) v)) (/ 1 v)) 6931/10000)
%26 = (approx %25 #s(literal 6931/10000 binary32))
%27 = (log.f32 %6)
%28 = (+.f32 %15 %27)
%29 = (+.f32 #s(literal 6931/10000 binary32) %28)
%35 = (approx (+ %25 (log (/ 1 (* 2 v)))) %29)
%36 = (+.f32 v v)
%37 = (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))
%38 = (-.f32 %12 %37)
%39 = (/.f32 %38 v)
%41 = (-.f32 %39 #s(literal -6931/10000 binary32))
%42 = (log.f32 %36)
%43 = (+.f32 #s(literal -6931/10000 binary32) %42)
%44 = (-.f32 %39 %43)
%45 = (-.f32 %42 %41)
%46 = (exp.f32 %41)
%47 = (/.f32 %46 %36)
%48 = (sqrt.f32 %47)
%50 = (exp.f32 %39)
%52 = (exp.f32 %43)
%54 = (exp.f32 %45)
%58 = (+.f32 %26 %11)
cosTheta_i
cosTheta_O
v
sinTheta_i
sinTheta_O
#s(literal 1 binary32)
%6
#s(literal 6931/10000 binary32)
#s(literal 2 binary32)
%9
%10
%11
%12
#s(literal 1/2 binary32)
%14
%15
%26
%27
%28
%29
%35
%36
%37
%38
%39
#s(literal -6931/10000 binary32)
%41
%42
%43
%44
%45
%46
%47
%48
(*.f32 %48 %48)
%50
(*.f32 %46 %14)
%52
(/.f32 %50 %52)
%54
(/.f32 #s(literal 1 binary32) %54)
(exp.f32 %44)
(exp.f32 %35)
%58
(exp.f32 %58)
Outputs
%7 = (/.f32 #s(literal -1 binary32) v)
%11 = (/.f32 #s(literal 1/2 binary32) v)
%13 = (/.f32 #s(literal 1 binary32) v)
%16 = (neg.f32 v)
%20 = (neg.f32 %16)
%29 = (+.f32 v v)
%30 = (sqrt.f32 %29)
%31 = (*.f32 %30 %30)
%32 = (fabs.f32 v)
%33 = (*.f32 %32 #s(literal 2 binary32))
%34 = (*.f32 #s(literal 2 binary32) %32)
%35 = (*.f32 #s(literal 2 binary32) v)
%36 = (*.f32 v #s(literal 2 binary32))
%37 = (/.f32 #s(literal 1 binary32) %11)
%38 = (*.f32 %29 %29)
%39 = (sqrt.f32 %38)
%41 = (/.f32 (fma.f32 #s(literal 2 binary32) v %11) #s(literal 2 binary32))
%43 = (/.f32 (-.f32 %11 %29) #s(literal 2 binary32))
%44 = (-.f32 %41 %43)
%45 = (-.f32 v %16)
%46 = (*.f32 #s(literal 1 binary32) v)
%47 = (fma.f32 #s(literal 1 binary32) v %46)
%48 = (*.f32 v #s(literal 1 binary32))
%49 = (fma.f32 v #s(literal 1 binary32) %48)
%50 = (exp.f32 #s(literal 1 binary32))
%51 = (log.f32 %29)
%52 = (pow.f32 %50 %51)
%53 = (pow.f32 %38 #s(literal 1/2 binary32))
%54 = (pow.f32 %30 #s(literal 2 binary32))
%55 = (pow.f32 %11 #s(literal -1 binary32))
%56 = (pow.f32 %29 #s(literal 1 binary32))
%57 = (+.f32 %48 %48)
%58 = (+.f32 %46 %46)
%60 = (/.f32 (-.f32 %29 %11) #s(literal 2 binary32))
%61 = (+.f32 %41 %60)
%62 = (+.f32 v %20)
%64 = (*.f32 #s(literal -2 binary32) v)
%65 = (fabs.f32 %64)
%66 = (fabs.f32 %29)
%68 = (exp.f32 (*.f32 %51 #s(literal 1 binary32)))
%69 = (exp.f32 %51)
%70 = (neg.f32 %64)
%71 = (/.f32 #s(literal 2 binary32) v)
%73 = (*.f32 %71 #s(literal 1/4 binary32))
%74 = (log.f32 v)
%75 = (neg.f32 %74)
%76 = (exp.f32 %75)
%77 = (log.f32 #s(literal 1/2 binary32))
%78 = (exp.f32 %77)
%79 = (*.f32 %76 %78)
%80 = (*.f32 %78 %76)
%82 = (*.f32 #s(literal -1/2 binary32) %7)
%83 = (/.f32 #s(literal 1 binary32) %64)
%84 = (*.f32 #s(literal -1 binary32) %83)
%85 = (*.f32 #s(literal 1/2 binary32) %13)
%86 = (*.f32 %11 #s(literal 1 binary32))
%87 = (*.f32 #s(literal 1/2 binary32) %11)
%88 = (*.f32 #s(literal 2 binary32) %87)
%89 = (/.f32 #s(literal 1/2 binary32) %29)
%90 = (*.f32 #s(literal 2 binary32) %89)
%91 = (*.f32 %13 #s(literal 1/2 binary32))
%92 = (*.f32 #s(literal 1 binary32) %11)
%93 = (exp.f32 %74)
%94 = (/.f32 %78 %93)
%95 = (/.f32 #s(literal -1/2 binary32) %16)
%96 = (/.f32 #s(literal -1 binary32) %64)
%97 = (/.f32 #s(literal 1/2 binary32) %20)
%98 = (/.f32 %13 #s(literal 2 binary32))
%100 = (/.f32 #s(literal 1 binary32) (/.f32 %16 #s(literal -1/2 binary32)))
%102 = (/.f32 #s(literal 1 binary32) (/.f32 %64 #s(literal -1 binary32)))
%103 = (/.f32 v #s(literal 1/2 binary32))
%104 = (/.f32 #s(literal 1 binary32) %103)
%105 = (/.f32 %29 #s(literal 1 binary32))
%106 = (/.f32 #s(literal 1 binary32) %105)
%107 = (/.f32 #s(literal 1 binary32) %29)
%108 = (-.f32 %41 %60)
%110 = (pow.f32 (exp.f32 #s(literal -1 binary32)) %51)
%111 = (neg.f32 %51)
%112 = (pow.f32 %50 %111)
%113 = (pow.f32 %11 #s(literal 1 binary32))
%114 = (pow.f32 %29 #s(literal -1 binary32))
%115 = (+.f32 %41 %43)
%116 = (fabs.f32 %11)
%118 = (exp.f32 (*.f32 %111 #s(literal 1 binary32)))
%120 = (exp.f32 (*.f32 %51 #s(literal -1 binary32)))
%121 = (exp.f32 %111)
%123 = (neg.f32 (/.f32 #s(literal 1/2 binary32) %16))
%125 = (neg.f32 (/.f32 #s(literal -1/2 binary32) v))
%127 = (neg.f32 (/.f32 #s(literal -1 binary32) %29))
%128 = (neg.f32 %83)
%129 = (/.f32 #s(literal 1 binary32) %32)
%131 = (log.f32 (*.f32 %129 #s(literal 1/2 binary32)))
%132 = (fabs.f32 %13)
%134 = (log.f32 (*.f32 #s(literal 1/2 binary32) %132))
%136 = (log.f32 (*.f32 #s(literal 1/2 binary32) %129))
%138 = (log.f32 (/.f32 #s(literal 1/2 binary32) %32))
%139 = (log.f32 %11)
%140 = (*.f32 #s(literal -1 binary32) %51)
%141 = (*.f32 #s(literal 1 binary32) %111)
%143 = (/.f32 #s(literal 1 binary32) (pow.f32 %111 #s(literal -1 binary32)))
%145 = (log.f32 (fabs.f32 %78))
%148 = (-.f32 %145 (log.f32 (fabs.f32 %93)))
%149 = (log.f32 %132)
%150 = (log.f32 #s(literal 2 binary32))
%151 = (-.f32 %149 %150)
%153 = (-.f32 #s(literal 0 binary32) %51)
%154 = (-.f32 %75 %150)
%156 = (log.f32 (fabs.f32 %20))
%157 = (-.f32 %77 %156)
%158 = (-.f32 %77 %74)
%160 = (log.f32 (fabs.f32 %7))
%161 = (fma.f32 #s(literal -1 binary32) %150 %160)
%162 = (fma.f32 #s(literal -1 binary32) %150 %149)
%163 = (fma.f32 #s(literal -1 binary32) %150 %75)
%164 = (fma.f32 #s(literal -1 binary32) %74 %77)
%165 = (fma.f32 #s(literal -1 binary32) %51 #s(literal 0 binary32))
%166 = (fma.f32 #s(literal 1 binary32) %149 %77)
%168 = (log.f32 (fabs.f32 %87))
%169 = (fma.f32 #s(literal 1 binary32) %150 %168)
%171 = (log.f32 (fabs.f32 %89))
%172 = (fma.f32 #s(literal 1 binary32) %150 %171)
%173 = (fma.f32 #s(literal 1 binary32) %77 %160)
%174 = (fma.f32 #s(literal 1 binary32) %77 %149)
%175 = (fma.f32 #s(literal 1 binary32) %77 %75)
%176 = (fma.f32 #s(literal 1 binary32) %111 #s(literal 0 binary32))
%177 = (pow.f32 %111 #s(literal 1 binary32))
%180 = (log.f32 #s(literal 1/4 binary32))
%181 = (+.f32 (log.f32 (fabs.f32 %71)) %180)
%183 = (log.f32 (fabs.f32 %76))
%184 = (+.f32 %183 %145)
%185 = (+.f32 %145 %183)
%186 = (+.f32 %149 %77)
%187 = (+.f32 %150 %168)
%188 = (+.f32 %150 %171)
%191 = (+.f32 #s(literal 0 binary32) (log.f32 (fabs.f32 %83)))
%192 = (+.f32 #s(literal 0 binary32) %111)
%193 = (+.f32 %75 %77)
%194 = (+.f32 %77 %160)
%195 = (+.f32 %77 %149)
%196 = (+.f32 %77 %75)
%197 = (+.f32 %111 #s(literal 0 binary32))
%198 = (*.f32 cosTheta_O cosTheta_i)
%223 = (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000)
%224 = (approx %223 #s(literal 6931/10000 binary32))
%239 = (log.f32 (fabs.f32 %32))
%252 = (-.f32 #s(literal 6931/10000 binary32) %51)
%255 = (+.f32 %77 #s(literal 6931/10000 binary32))
%259 = (-.f32 %51 #s(literal 6931/10000 binary32))
%265 = (+.f32 %75 #s(literal 6931/10000 binary32))
%285 = (approx (- %223 (log (* 2 v))) %252)
%289 = (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))
%292 = (*.f32 sinTheta_O sinTheta_i)
%294 = (neg.f32 %292)
%300 = (-.f32 #s(literal -1 binary32) %292)
%302 = (-.f32 %198 %289)
%307 = (-.f32 %198 %292)
%315 = (-.f32 %289 %198)
%317 = (*.f32 %302 #s(literal 1 binary32))
%319 = (/.f32 %307 v)
%320 = (fma.f32 %319 v #s(literal -1 binary32))
%328 = (*.f32 %198 #s(literal 1 binary32))
%334 = (-.f32 %328 %292)
%337 = (neg.f32 %198)
%343 = (*.f32 %198 v)
%346 = (*.f32 v v)
%349 = (*.f32 v #s(literal -1 binary32))
%351 = (*.f32 v %16)
%363 = (-.f32 %343 (*.f32 %292 v))
%379 = (/.f32 %302 v)
%392 = (/.f32 %198 v)
%393 = (/.f32 %289 v)
%395 = (/.f32 cosTheta_O v)
%397 = (/.f32 sinTheta_O v)
%398 = (fma.f32 (neg.f32 sinTheta_i) %397 %7)
%400 = (/.f32 %294 v)
%401 = (-.f32 %400 %13)
%403 = (neg.f32 %393)
%405 = (/.f32 %300 v)
%413 = (/.f32 #s(literal 1 binary32) %346)
%430 = (*.f32 cosTheta_i %13)
%435 = (/.f32 cosTheta_i v)
%453 = (+.f32 (/.f32 (-.f32 %292 %198) v) %13)
%455 = (/.f32 %302 %16)
%457 = (*.f32 %315 %13)
%459 = (-.f32 %393 %392)
%461 = (/.f32 %315 v)
%465 = (-.f32 %379 #s(literal -6931/10000 binary32))
%468 = (+.f32 #s(literal 6931/10000 binary32) %319)
%472 = (-.f32 %13 #s(literal 6931/10000 binary32))
%482 = (-.f32 %400 %472)
%485 = (+.f32 %7 #s(literal 6931/10000 binary32))
%487 = (-.f32 %7 #s(literal -6931/10000 binary32))
%489 = (neg.f32 %472)
%518 = (-.f32 %472 %319)
%520 = (-.f32 #s(literal -6931/10000 binary32) %379)
%546 = (-.f32 #s(literal -6931/10000 binary32) %77)
%555 = (-.f32 %379 %259)
%558 = (+.f32 %465 #s(literal 0 binary32))
%560 = (+.f32 %465 %77)
%564 = (+.f32 %111 %379)
%566 = (-.f32 %379 %51)
%568 = (-.f32 %259 %379)
%586 = (+.f32 %7 %252)
%591 = (+.f32 %75 %465)
%593 = (+.f32 %77 %465)
%607 = (+.f32 %379 %111)
%611 = (-.f32 %51 %379)
%647 = (exp.f32 %465)
%648 = (sqrt.f32 %647)
%650 = (exp.f32 %379)
%651 = (exp.f32 #s(literal 6931/10000 binary32))
%653 = (neg.f32 %650)
%654 = (exp.f32 #s(literal -6931/10000 binary32))
%660 = (exp.f32 %520)
%663 = (exp.f32 (*.f32 %465 #s(literal 2 binary32)))
%665 = (cosh.f32 %465)
%674 = (*.f32 %465 #s(literal 1 binary32))
%678 = (cosh.f32 %379)
%680 = (sinh.f32 %379)
%683 = (sinh.f32 %465)
%686 = (neg.f32 %647)
%689 = (/.f32 %465 #s(literal 2 binary32))
%694 = (*.f32 %379 #s(literal 1 binary32))
%704 = (exp.f32 %558)
%705 = (*.f32 %704 %11)
%706 = (/.f32 %647 %29)
%707 = (sqrt.f32 %706)
%708 = (neg.f32 %707)
%709 = (neg.f32 %708)
%710 = (*.f32 %709 %709)
%711 = (*.f32 %647 #s(literal 1/2 binary32))
%712 = (*.f32 %711 %13)
%713 = (/.f32 %651 %29)
%714 = (*.f32 %713 %650)
%715 = (*.f32 %686 %83)
%716 = (*.f32 %654 %64)
%718 = (*.f32 %653 (/.f32 #s(literal 1 binary32) %716))
%719 = (*.f32 %708 %708)
%720 = (*.f32 %29 %660)
%721 = (neg.f32 %720)
%722 = (/.f32 #s(literal 1 binary32) %721)
%723 = (*.f32 #s(literal -1 binary32) %722)
%724 = (*.f32 %650 %713)
%725 = (*.f32 %707 %707)
%726 = (*.f32 %706 #s(literal 1 binary32))
%727 = (*.f32 %647 %11)
%729 = (*.f32 #s(literal 1/2 binary32) (*.f32 %13 %647))
%730 = (*.f32 %11 %647)
%732 = (*.f32 #s(literal 2 binary32) (*.f32 #s(literal 1/2 binary32) %706))
%734 = (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1/2 binary32) %720))
%735 = (*.f32 #s(literal 1 binary32) %706)
%737 = (/.f32 (*.f32 %707 %648) %30)
%739 = (/.f32 (*.f32 %647 #s(literal -1/2 binary32)) %16)
%741 = (/.f32 (*.f32 %647 #s(literal -1 binary32)) %64)
%743 = (/.f32 (*.f32 %11 %650) %654)
%744 = (/.f32 %704 %29)
%746 = (/.f32 (*.f32 %648 %707) %30)
%748 = (/.f32 (*.f32 %650 %11) %654)
%750 = (/.f32 (*.f32 #s(literal -1/2 binary32) %647) %16)
%752 = (/.f32 (*.f32 #s(literal -1 binary32) %647) %64)
%755 = (/.f32 (exp.f32 (+.f32 #s(literal 0 binary32) %465)) %29)
%757 = (/.f32 (/.f32 %647 v) #s(literal 2 binary32))
%760 = (/.f32 (*.f32 %650 #s(literal -1/2 binary32)) (*.f32 %654 %16))
%762 = (/.f32 (*.f32 %650 #s(literal -1 binary32)) %716)
%765 = (/.f32 (*.f32 %650 #s(literal 1/2 binary32)) (*.f32 %654 v))
%768 = (/.f32 (*.f32 #s(literal -1/2 binary32) %650) (*.f32 %16 %654))
%771 = (/.f32 (*.f32 #s(literal -1 binary32) %650) (*.f32 %64 %654))
%774 = (/.f32 (*.f32 #s(literal 1/2 binary32) %650) (*.f32 v %654))
%777 = (*.f32 %654 %29)
%778 = (/.f32 (exp.f32 (+.f32 #s(literal 0 binary32) %379)) %777)
%781 = (/.f32 (exp.f32 (+.f32 %379 #s(literal 0 binary32))) %777)
%783 = (/.f32 (neg.f32 %711) %16)
%785 = (/.f32 (neg.f32 %686) %29)
%788 = (/.f32 (neg.f32 %653) (neg.f32 %716))
%789 = (/.f32 %711 v)
%790 = (/.f32 %686 %64)
%791 = (/.f32 %653 %716)
%792 = (/.f32 #s(literal -1 binary32) %721)
%793 = (/.f32 %650 %777)
%795 = (/.f32 #s(literal 1 binary32) (/.f32 v %711))
%797 = (/.f32 #s(literal 1 binary32) (/.f32 %716 %653))
%799 = (/.f32 #s(literal 1 binary32) (/.f32 %721 #s(literal -1 binary32)))
%800 = (neg.f32 %721)
%801 = (/.f32 #s(literal 1 binary32) %800)
%803 = (/.f32 #s(literal 1 binary32) (/.f32 %777 %650))
%805 = (/.f32 #s(literal 1 binary32) (/.f32 %720 #s(literal 1 binary32)))
%806 = (/.f32 #s(literal 1 binary32) %720)
%808 = (exp.f32 (*.f32 %555 #s(literal 2 binary32)))
%809 = (sqrt.f32 %808)
%810 = (cosh.f32 %568)
%811 = (sinh.f32 %568)
%812 = (-.f32 %810 %811)
%813 = (*.f32 %683 %11)
%814 = (fma.f32 %665 %11 %813)
%815 = (*.f32 %11 %683)
%816 = (fma.f32 %11 %665 %815)
%817 = (pow.f32 %800 #s(literal -1 binary32))
%818 = (pow.f32 %709 #s(literal 2 binary32))
%821 = (pow.f32 (pow.f32 %706 #s(literal 4 binary32)) #s(literal 1/4 binary32))
%822 = (pow.f32 %708 #s(literal 2 binary32))
%823 = (pow.f32 %808 #s(literal 1/2 binary32))
%824 = (pow.f32 %720 #s(literal -1 binary32))
%825 = (pow.f32 %707 #s(literal 2 binary32))
%826 = (pow.f32 %706 #s(literal 1 binary32))
%827 = (+.f32 #s(literal 0 binary32) %555)
%830 = (+.f32 (cosh.f32 %827) (sinh.f32 %827))
%831 = (*.f32 %555 #s(literal 1 binary32))
%834 = (+.f32 (cosh.f32 %831) (sinh.f32 %831))
%835 = (*.f32 %568 #s(literal -1 binary32))
%838 = (+.f32 (cosh.f32 %835) (sinh.f32 %835))
%840 = (+.f32 (*.f32 %11 %665) %815)
%842 = (+.f32 (*.f32 %665 %11) %813)
%845 = (+.f32 (/.f32 %665 %29) (/.f32 %683 %29))
%848 = (+.f32 (/.f32 %678 %777) (/.f32 %680 %777))
%849 = (sinh.f32 %555)
%850 = (+.f32 %849 %810)
%851 = (+.f32 %810 %849)
%853 = (fabs.f32 (neg.f32 %706))
%854 = (fabs.f32 %706)
%856 = (exp.f32 (+.f32 %252 %694))
%858 = (exp.f32 (fma.f32 %379 #s(literal 1 binary32) %252))
%860 = (exp.f32 (+.f32 %827 #s(literal 0 binary32)))
%862 = (exp.f32 (fma.f32 %555 #s(literal 1 binary32) #s(literal 0 binary32)))
%864 = (exp.f32 (fma.f32 %568 #s(literal -1 binary32) #s(literal 0 binary32)))
%866 = (exp.f32 (+.f32 %555 #s(literal 0 binary32)))
%868 = (exp.f32 (fma.f32 %465 #s(literal 1 binary32) %111))
%870 = (exp.f32 (+.f32 %111 %674))
%872 = (exp.f32 (+.f32 #s(literal 0 binary32) %827))
%874 = (exp.f32 (+.f32 #s(literal 0 binary32) %831))
%876 = (exp.f32 (+.f32 #s(literal 0 binary32) %835))
%877 = (*.f32 %568 #s(literal 1 binary32))
%879 = (exp.f32 (neg.f32 %877))
%880 = (*.f32 %259 #s(literal 1 binary32))
%882 = (exp.f32 (-.f32 %694 %880))
%884 = (exp.f32 (-.f32 %694 %259))
%886 = (exp.f32 (-.f32 %379 %880))
%888 = (exp.f32 (-.f32 %674 %51))
%890 = (exp.f32 (-.f32 #s(literal 0 binary32) %877))
%892 = (exp.f32 (*.f32 %877 #s(literal -1 binary32)))
%894 = (exp.f32 (*.f32 %827 #s(literal 1 binary32)))
%896 = (exp.f32 (*.f32 %831 #s(literal 1 binary32)))
%898 = (exp.f32 (*.f32 %835 #s(literal 1 binary32)))
%899 = (exp.f32 %827)
%900 = (exp.f32 %831)
%901 = (exp.f32 %835)
%902 = (exp.f32 %555)
%904 = (neg.f32 (/.f32 %647 %64))
%906 = (neg.f32 (/.f32 %650 %716))
%908 = (neg.f32 (/.f32 %686 %29))
%910 = (neg.f32 (/.f32 %653 %777))
%912 = (neg.f32 (/.f32 #s(literal -1 binary32) %720))
%914 = (neg.f32 (*.f32 %708 %707))
%916 = (neg.f32 (*.f32 %707 %708))
%917 = (neg.f32 %722)
%918 = (sqrt.f32 %707)
%920 = (sqrt.f32 %11)
%964 = (exp.f32 %302)
%970 = (exp.f32 (*.f32 %379 #s(literal 2 binary32)))
%1007 = (exp.f32 (*.f32 %259 #s(literal 2 binary32)))
%1009 = (cosh.f32 %259)
%1017 = (sinh.f32 %259)
%1032 = (exp.f32 (*.f32 %568 #s(literal 2 binary32)))
%1068 = (exp.f32 %285)
%1072 = (exp.f32 (*.f32 %285 #s(literal 2 binary32)))
%1074 = (cosh.f32 %285)
%1075 = (sinh.f32 %285)
%1080 = (*.f32 %285 #s(literal 1 binary32))
%1092 = (-.f32 %224 %51)
%1097 = (+.f32 %224 %77)
%1099 = (-.f32 %51 %224)
%1105 = (+.f32 %75 %224)
%1107 = (+.f32 %77 %224)
%1122 = (exp.f32 %224)
%1125 = (/.f32 %1122 %29)
%1129 = (exp.f32 (*.f32 %1092 #s(literal 2 binary32)))
%1131 = (cosh.f32 %1092)
%1134 = (sinh.f32 %1092)
%1139 = (*.f32 %1092 #s(literal 1 binary32))
cosTheta_i
cosTheta_O
v
sinTheta_i
sinTheta_O
#s(literal 1 binary32)
(*.f32 #s(literal -1 binary32) %7)
(*.f32 #s(literal 2 binary32) %11)
(*.f32 %13 #s(literal 1 binary32))
(*.f32 #s(literal 1 binary32) %13)
(/.f32 #s(literal -1 binary32) %16)
(/.f32 #s(literal 1 binary32) (/.f32 %16 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) %20)
(/.f32 #s(literal 1 binary32) (/.f32 v #s(literal 1 binary32)))
%13
(pow.f32 %20 #s(literal -1 binary32))
(pow.f32 %13 #s(literal 1 binary32))
(pow.f32 v #s(literal -1 binary32))
(neg.f32 %7)
#s(literal 6931/10000 binary32)
#s(literal 2 binary32)
%31
%33
%34
%35
%36
%37
%39
%44
%45
%47
%49
%52
%53
%54
%55
%56
%57
%58
%61
%62
%29
%65
%66
%68
%69
%70
%73
%79
%80
%82
%84
%85
%86
%88
%90
%91
%92
%94
%95
%96
%97
%11
%98
%100
%102
%104
%106
%107
%108
%110
%112
%113
%114
%115
%116
%118
%120
%121
%123
%125
%127
%128
%131
%134
%136
%138
%139
%140
%141
%143
%148
%151
%153
%154
%157
%158
%161
%162
%163
%164
%165
%166
%169
%172
%173
%174
%175
%176
%177
%181
%184
%185
%186
%187
%188
%191
%192
%193
%194
%195
%196
%197
%111
%198
(*.f32 cosTheta_i cosTheta_O)
(/.f32 #s(literal 1 binary32) (pow.f32 %198 #s(literal -1 binary32)))
(pow.f32 %198 #s(literal 1 binary32))
#s(literal 1/2 binary32)
%73
%79
%80
%82
%84
%85
%86
%88
%90
%91
%92
%94
%95
%96
%97
%11
%98
%100
%102
%104
%106
%107
%108
%110
%112
%113
%114
%115
%116
%118
%120
%121
%123
%125
%127
%128
%77
(*.f32 #s(literal -1 binary32) %150)
(*.f32 #s(literal 1 binary32) %77)
(/.f32 #s(literal 1 binary32) (pow.f32 %77 #s(literal -1 binary32)))
(-.f32 #s(literal 0 binary32) %150)
(fma.f32 #s(literal -1 binary32) %150 #s(literal 0 binary32))
(fma.f32 #s(literal 1 binary32) %150 %180)
(fma.f32 #s(literal 1 binary32) %77 #s(literal 0 binary32))
(pow.f32 %77 #s(literal 1 binary32))
(+.f32 %150 %180)
(+.f32 #s(literal 0 binary32) %77)
(+.f32 %77 #s(literal 0 binary32))
(neg.f32 %150)
(/.f32 #s(literal 1 binary32) (pow.f32 %224 #s(literal -1 binary32)))
%224
(pow.f32 %224 #s(literal 1 binary32))
(log.f32 (*.f32 #s(literal 1 binary32) %132))
(log.f32 (*.f32 #s(literal 1 binary32) %129))
(log.f32 %129)
(log.f32 %13)
(*.f32 #s(literal -1 binary32) %74)
(*.f32 #s(literal 1 binary32) %149)
(/.f32 #s(literal 1 binary32) (pow.f32 %75 #s(literal -1 binary32)))
(-.f32 #s(literal 0 binary32) %239)
(-.f32 #s(literal 0 binary32) %156)
(-.f32 #s(literal 0 binary32) %74)
(fma.f32 #s(literal 1 binary32) %150 %111)
(pow.f32 %75 #s(literal 1 binary32))
(+.f32 %149 #s(literal 0 binary32))
(+.f32 %150 %111)
(+.f32 #s(literal 0 binary32) %160)
(+.f32 #s(literal 0 binary32) %149)
(+.f32 #s(literal 0 binary32) %75)
(neg.f32 (log.f32 %20))
%75
%131
%134
%136
%138
%139
%140
%141
%143
%148
%151
%153
%154
%157
%158
%161
%162
%163
%164
%165
%166
%169
%172
%173
%174
%175
%176
%177
%181
%184
%185
%186
%187
%188
%191
%192
%193
%194
%195
%196
%197
%111
(/.f32 #s(literal 1 binary32) (pow.f32 %252 #s(literal -1 binary32)))
(-.f32 (+.f32 %255 #s(literal 0 binary32)) %74)
(-.f32 %255 %74)
(-.f32 #s(literal 0 binary32) %259)
(-.f32 %77 (-.f32 %74 #s(literal 6931/10000 binary32)))
(-.f32 %111 #s(literal -6931/10000 binary32))
%252
(fma.f32 #s(literal -1 binary32) %150 %265)
(fma.f32 #s(literal -1 binary32) %74 %255)
(fma.f32 #s(literal -1 binary32) %51 #s(literal 6931/10000 binary32))
(fma.f32 #s(literal 1 binary32) %149 %255)
(fma.f32 #s(literal 1 binary32) %77 %265)
(fma.f32 #s(literal 1 binary32) %111 #s(literal 6931/10000 binary32))
(pow.f32 %252 #s(literal 1 binary32))
(+.f32 (+.f32 #s(literal 6931/10000 binary32) %75) %77)
(+.f32 %255 %75)
(+.f32 %75 %255)
(+.f32 %77 %265)
(+.f32 %111 #s(literal 6931/10000 binary32))
(+.f32 #s(literal 6931/10000 binary32) %111)
(neg.f32 %259)
(/.f32 #s(literal 1 binary32) (pow.f32 %285 #s(literal -1 binary32)))
%285
(pow.f32 %285 #s(literal 1 binary32))
%31
%33
%34
%35
%36
%37
%39
%44
%45
%47
%49
%52
%53
%54
%55
%56
%57
%58
%61
%62
%29
%65
%66
%68
%69
%70
(/.f32 #s(literal 1 binary32) (pow.f32 %289 #s(literal -1 binary32)))
(-.f32 %292 #s(literal -1 binary32))
(-.f32 #s(literal 1 binary32) %294)
%289
(fma.f32 sinTheta_i sinTheta_O #s(literal 1 binary32))
(pow.f32 %289 #s(literal 1 binary32))
(+.f32 %292 #s(literal 1 binary32))
(+.f32 #s(literal 1 binary32) %292)
(neg.f32 %300)
(/.f32 #s(literal 1 binary32) (pow.f32 %302 #s(literal -1 binary32)))
(-.f32 (-.f32 %198 #s(literal 1 binary32)) %292)
(-.f32 %307 #s(literal 1 binary32))
%302
(fma.f32 cosTheta_O cosTheta_i %300)
(fma.f32 cosTheta_i cosTheta_O %300)
(pow.f32 %302 #s(literal 1 binary32))
(+.f32 %300 %198)
(+.f32 %307 #s(literal -1 binary32))
(+.f32 %198 %300)
(neg.f32 %315)
(*.f32 %317 %13)
(*.f32 %320 %13)
(*.f32 %315 %7)
(*.f32 %302 %13)
(*.f32 %13 %302)
(/.f32 (*.f32 %302 #s(literal -1 binary32)) %16)
(/.f32 %317 v)
(/.f32 (-.f32 %328 %289) v)
(/.f32 (-.f32 (*.f32 %319 %16) #s(literal -1 binary32)) %16)
(/.f32 (-.f32 %334 #s(literal 1 binary32)) v)
(/.f32 (-.f32 (*.f32 %337 v) (*.f32 %16 %289)) (*.f32 %16 v))
(/.f32 (-.f32 %343 (*.f32 v %289)) %346)
(/.f32 (-.f32 (*.f32 %334 %16) %349) %351)
(/.f32 (-.f32 (*.f32 %334 v) %48) %346)
(/.f32 (-.f32 (*.f32 %307 %16) %349) %351)
(/.f32 (-.f32 (*.f32 %307 v) %48) %346)
(/.f32 (-.f32 (*.f32 %363 %16) (*.f32 %346 #s(literal -1 binary32))) (*.f32 %346 %16))
(/.f32 (-.f32 (*.f32 %363 v) (*.f32 %346 #s(literal 1 binary32))) (*.f32 %346 v))
(/.f32 (neg.f32 %320) %16)
(/.f32 %320 v)
(/.f32 %315 %16)
(/.f32 %302 %20)
%379
(/.f32 #s(literal 1 binary32) (pow.f32 %379 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %16 %315))
(/.f32 #s(literal 1 binary32) (/.f32 v %320))
(/.f32 #s(literal 1 binary32) (/.f32 v %302))
(-.f32 (/.f32 (*.f32 %319 v) v) %13)
(-.f32 %319 %13)
(-.f32 %392 %393)
(fma.f32 %395 cosTheta_i %398)
(fma.f32 %395 cosTheta_i %401)
(fma.f32 %395 cosTheta_i %403)
(fma.f32 %395 cosTheta_i %405)
(fma.f32 %334 %13 %7)
(fma.f32 %328 %13 %398)
(fma.f32 %328 %13 %401)
(fma.f32 %328 %13 %403)
(fma.f32 %328 %13 %405)
(fma.f32 %307 %13 %7)
(fma.f32 %363 %413 %7)
(fma.f32 %337 %7 %398)
(fma.f32 %337 %7 %401)
(fma.f32 %337 %7 %403)
(fma.f32 %337 %7 %405)
(fma.f32 #s(literal -1 binary32) %13 %319)
(fma.f32 %198 %13 %398)
(fma.f32 %198 %13 %401)
(fma.f32 %198 %13 %403)
(fma.f32 %198 %13 %405)
(fma.f32 %13 %307 %7)
(fma.f32 %13 %198 %398)
(fma.f32 %13 %198 %401)
(fma.f32 %13 %198 %403)
(fma.f32 %13 %198 %405)
(fma.f32 #s(literal 1 binary32) %7 %319)
(fma.f32 cosTheta_O %430 %398)
(fma.f32 cosTheta_O %430 %401)
(fma.f32 cosTheta_O %430 %403)
(fma.f32 cosTheta_O %430 %405)
(fma.f32 cosTheta_O %435 %398)
(fma.f32 cosTheta_O %435 %401)
(fma.f32 cosTheta_O %435 %403)
(fma.f32 cosTheta_O %435 %405)
(fma.f32 cosTheta_i %395 %398)
(fma.f32 cosTheta_i %395 %401)
(fma.f32 cosTheta_i %395 %403)
(fma.f32 cosTheta_i %395 %405)
(pow.f32 %379 #s(literal 1 binary32))
(+.f32 %7 %319)
(+.f32 %319 %7)
(+.f32 %392 %398)
(+.f32 %392 %401)
(+.f32 %392 %403)
(+.f32 %392 %405)
(neg.f32 %453)
(neg.f32 %455)
(neg.f32 %457)
(neg.f32 %459)
(neg.f32 %461)
#s(literal -6931/10000 binary32)
(/.f32 (fma.f32 #s(literal 6931/10000 binary32) v %320) v)
(/.f32 #s(literal 1 binary32) (pow.f32 %465 #s(literal -1 binary32)))
(-.f32 %468 %13)
(-.f32 (+.f32 #s(literal 6931/10000 binary32) %392) %393)
%465
(-.f32 %319 %472)
(-.f32 %392 (-.f32 %393 #s(literal 6931/10000 binary32)))
(-.f32 %392 (+.f32 %393 #s(literal -6931/10000 binary32)))
(-.f32 %392 (fma.f32 %397 sinTheta_i %472))
(-.f32 #s(literal 6931/10000 binary32) %461)
(fma.f32 %317 %13 #s(literal 6931/10000 binary32))
(fma.f32 %395 cosTheta_i %482)
(fma.f32 %320 %13 #s(literal 6931/10000 binary32))
(fma.f32 %334 %13 %485)
(fma.f32 %334 %13 %487)
(fma.f32 %334 %13 %489)
(fma.f32 %328 %13 %482)
(fma.f32 %307 %13 %485)
(fma.f32 %307 %13 %487)
(fma.f32 %307 %13 %489)
(fma.f32 %363 %413 %485)
(fma.f32 %363 %413 %487)
(fma.f32 %363 %413 %489)
(fma.f32 %315 %7 #s(literal 6931/10000 binary32))
(fma.f32 %337 %7 %482)
(fma.f32 %302 %13 #s(literal 6931/10000 binary32))
(fma.f32 %198 %13 %482)
(fma.f32 %13 %307 %485)
(fma.f32 %13 %307 %487)
(fma.f32 %13 %307 %489)
(fma.f32 %13 %302 #s(literal 6931/10000 binary32))
(fma.f32 %13 %198 %482)
(fma.f32 cosTheta_O %430 %482)
(fma.f32 cosTheta_O %435 %482)
(fma.f32 cosTheta_i %395 %482)
(pow.f32 %465 #s(literal 1 binary32))
(+.f32 %468 %7)
(+.f32 %379 #s(literal 6931/10000 binary32))
(+.f32 %319 %485)
(+.f32 %319 %487)
(+.f32 %319 %489)
(+.f32 %392 %482)
(+.f32 #s(literal 6931/10000 binary32) %379)
(neg.f32 %518)
(neg.f32 %520)
(log.f32 (/.f32 %32 #s(literal 1/2 binary32)))
(log.f32 %103)
(log.f32 %105)
%51
(*.f32 #s(literal 1 binary32) %51)
(/.f32 #s(literal 1 binary32) (pow.f32 %51 #s(literal -1 binary32)))
(-.f32 %74 %77)
(-.f32 #s(literal 0 binary32) %111)
(-.f32 %51 #s(literal 0 binary32))
(fma.f32 #s(literal 1 binary32) %239 %150)
(fma.f32 #s(literal 1 binary32) %150 %239)
(fma.f32 #s(literal 1 binary32) %150 %74)
(fma.f32 #s(literal 1 binary32) %74 %150)
(pow.f32 %51 #s(literal 1 binary32))
(+.f32 %239 %150)
(+.f32 %150 %239)
(+.f32 %150 %74)
(+.f32 %74 %150)
(neg.f32 %111)
(/.f32 #s(literal 1 binary32) (pow.f32 %259 #s(literal -1 binary32)))
(-.f32 (-.f32 #s(literal -6931/10000 binary32) %75) %77)
(-.f32 %546 %75)
%259
(-.f32 #s(literal -6931/10000 binary32) %111)
(fma.f32 #s(literal 1 binary32) %51 #s(literal -6931/10000 binary32))
(pow.f32 %259 #s(literal 1 binary32))
(+.f32 %546 %74)
(+.f32 %51 #s(literal -6931/10000 binary32))
(+.f32 #s(literal -6931/10000 binary32) %51)
(neg.f32 %252)
(/.f32 #s(literal 1 binary32) (pow.f32 %555 #s(literal -1 binary32)))
(-.f32 %558 %51)
(-.f32 %560 %74)
(-.f32 (+.f32 %111 %319) %472)
(-.f32 %564 #s(literal -6931/10000 binary32))
(-.f32 %566 #s(literal -6931/10000 binary32))
(-.f32 #s(literal 0 binary32) %568)
(-.f32 %465 %51)
%555
(-.f32 %319 (-.f32 %472 %111))
(-.f32 %319 (-.f32 %13 %252))
(-.f32 %319 (+.f32 %472 %51))
(-.f32 %392 (-.f32 %393 %252))
(-.f32 %392 (+.f32 %393 %259))
(-.f32 %77 (-.f32 %74 %465))
(-.f32 %111 %520)
(fma.f32 %317 %13 %252)
(fma.f32 %320 %13 %252)
(fma.f32 %334 %13 %586)
(fma.f32 %307 %13 %586)
(fma.f32 %363 %413 %586)
(fma.f32 %315 %7 %252)
(fma.f32 #s(literal -1 binary32) %150 %591)
(fma.f32 #s(literal -1 binary32) %74 %593)
(fma.f32 #s(literal -1 binary32) %51 %465)
(fma.f32 %302 %13 %252)
(fma.f32 %13 %307 %586)
(fma.f32 %13 %302 %252)
(fma.f32 #s(literal 1 binary32) %149 %593)
(fma.f32 #s(literal 1 binary32) %77 %591)
(fma.f32 #s(literal 1 binary32) %111 %465)
(pow.f32 %555 #s(literal 1 binary32))
(+.f32 (+.f32 %465 %75) %77)
(+.f32 (+.f32 %379 %255) %75)
(+.f32 %607 #s(literal 6931/10000 binary32))
(+.f32 %560 %75)
(+.f32 %564 #s(literal 6931/10000 binary32))
(+.f32 (neg.f32 %611) #s(literal 6931/10000 binary32))
(+.f32 %252 %379)
(+.f32 %465 %111)
(+.f32 %379 %252)
(+.f32 %75 %593)
(+.f32 %319 %586)
(+.f32 %77 %591)
(+.f32 %111 %465)
(+.f32 #s(literal 6931/10000 binary32) %607)
(+.f32 #s(literal 6931/10000 binary32) %566)
(neg.f32 %568)
(/.f32 (-.f32 (*.f32 %259 %16) %315) %16)
(/.f32 (-.f32 (*.f32 %259 v) %302) v)
(/.f32 #s(literal 1 binary32) (pow.f32 %568 #s(literal -1 binary32)))
(-.f32 %611 #s(literal 6931/10000 binary32))
%568
(-.f32 %51 %465)
(-.f32 #s(literal -6931/10000 binary32) %564)
(fma.f32 #s(literal 1 binary32) %51 %520)
(pow.f32 %568 #s(literal 1 binary32))
(+.f32 (-.f32 %259 %392) %393)
(+.f32 %461 %259)
(+.f32 %611 #s(literal -6931/10000 binary32))
(+.f32 %520 %51)
(+.f32 %259 %457)
(+.f32 %259 %461)
(+.f32 %51 %520)
(+.f32 #s(literal -6931/10000 binary32) %611)
(neg.f32 %555)
(*.f32 %648 %648)
(*.f32 %650 %651)
(/.f32 %653 (neg.f32 %654))
(/.f32 %650 %654)
(/.f32 #s(literal 1 binary32) (/.f32 %654 %650))
(/.f32 #s(literal 1 binary32) %660)
(sqrt.f32 %663)
(-.f32 %665 (sinh.f32 %518))
(-.f32 %665 (sinh.f32 %520))
(pow.f32 %663 #s(literal 1/2 binary32))
(pow.f32 %660 #s(literal -1 binary32))
(pow.f32 %648 #s(literal 2 binary32))
(pow.f32 %647 #s(literal 1 binary32))
(+.f32 (cosh.f32 %674) (sinh.f32 %674))
(+.f32 (/.f32 %678 %654) (/.f32 %680 %654))
(+.f32 %683 %665)
(+.f32 %665 %683)
(fabs.f32 %686)
(fabs.f32 %647)
(exp.f32 (+.f32 %689 %689))
(exp.f32 (fma.f32 %379 #s(literal 1 binary32) #s(literal 6931/10000 binary32)))
(exp.f32 (-.f32 %694 #s(literal -6931/10000 binary32)))
(exp.f32 (-.f32 #s(literal 0 binary32) %520))
(exp.f32 (*.f32 %689 #s(literal 2 binary32)))
(exp.f32 (*.f32 %674 #s(literal 1 binary32)))
(exp.f32 %674)
%647
%705
%710
%712
%714
%715
%718
%719
%723
%724
%725
%726
%727
%729
%730
%732
%734
%735
%737
%739
%741
%743
%744
%746
%748
%750
%752
%755
%757
%760
%762
%765
%768
%771
%774
%778
%781
%783
%785
%788
%789
%790
%791
%792
%793
%706
%795
%797
%799
%801
%803
%805
%806
%809
%812
%814
%816
%817
%818
%821
%822
%823
%824
%825
%826
%830
%834
%838
%840
%842
%845
%848
%850
%851
%853
%854
%856
%858
%860
%862
%864
%866
%868
%870
%872
%874
%876
%879
%882
%884
%886
%888
%890
%892
%894
%896
%898
%899
%900
%901
%902
%904
%906
%908
%910
%912
%914
%916
%917
(*.f32 %918 %918)
(*.f32 %920 %648)
(*.f32 %648 (/.f32 #s(literal 1 binary32) %30))
(*.f32 %648 %920)
(/.f32 (neg.f32 %648) (neg.f32 %30))
(/.f32 (sqrt.f32 (fabs.f32 %711)) (sqrt.f32 %32))
(/.f32 %648 %30)
(/.f32 #s(literal 1 binary32) (pow.f32 %707 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (pow.f32 %706 #s(literal -1/2 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %30 %648))
%707
(pow.f32 %918 #s(literal 2 binary32))
(pow.f32 %808 #s(literal 1/4 binary32))
(pow.f32 %707 #s(literal 1 binary32))
(pow.f32 %706 #s(literal 1/2 binary32))
(fabs.f32 %708)
(fabs.f32 %707)
(exp.f32 (/.f32 %827 #s(literal 2 binary32)))
(exp.f32 (/.f32 %831 #s(literal 2 binary32)))
(exp.f32 (/.f32 %835 #s(literal 2 binary32)))
(exp.f32 (/.f32 %555 #s(literal 2 binary32)))
(exp.f32 (*.f32 %827 #s(literal 1/2 binary32)))
(exp.f32 (*.f32 %831 #s(literal 1/2 binary32)))
(exp.f32 (*.f32 %835 #s(literal 1/2 binary32)))
(exp.f32 (*.f32 %555 #s(literal 1/2 binary32)))
%705
%710
%712
%714
%715
%718
%719
%723
%724
%725
%726
%727
%729
%730
%732
%734
%735
%737
%739
%741
%743
%744
%746
%748
%750
%752
%755
%757
%760
%762
%765
%768
%771
%774
%778
%781
%783
%785
%788
%789
%790
%791
%792
%793
%706
%795
%797
%799
%801
%803
%805
%806
%809
%812
%814
%816
%817
%818
%821
%822
%823
%824
%825
%826
%830
%834
%838
%840
%842
%845
%848
%850
%851
%853
%854
%856
%858
%860
%862
%864
%866
%868
%870
%872
%874
%876
%879
%882
%884
%886
%888
%890
%892
%894
%896
%898
%899
%900
%901
%902
%904
%906
%908
%910
%912
%914
%916
%917
(/.f32 (exp.f32 %392) (exp.f32 %393))
(/.f32 #s(literal 1 binary32) (pow.f32 %964 %7))
(/.f32 #s(literal 1 binary32) (pow.f32 %650 #s(literal -1 binary32)))
(sqrt.f32 %970)
(-.f32 %678 (sinh.f32 %453))
(-.f32 %678 (sinh.f32 %455))
(-.f32 %678 (sinh.f32 %457))
(-.f32 %678 (sinh.f32 %459))
(-.f32 %678 (sinh.f32 %461))
(pow.f32 (exp.f32 %317) %13)
(pow.f32 (exp.f32 %320) %13)
(pow.f32 (exp.f32 %315) %7)
(pow.f32 (exp.f32 %13) %302)
(pow.f32 %970 #s(literal 1/2 binary32))
(pow.f32 %964 %13)
(pow.f32 %650 #s(literal 1 binary32))
(+.f32 (cosh.f32 %694) (sinh.f32 %694))
(+.f32 %680 %678)
(+.f32 %678 %680)
(fabs.f32 %653)
(fabs.f32 %650)
(exp.f32 (*.f32 %694 #s(literal 1 binary32)))
(exp.f32 %694)
%650
%705
%710
%712
%714
%715
%718
%719
%723
%724
%725
%726
%727
%729
%730
%732
%734
%735
%737
%739
%741
%743
%744
%746
%748
%750
%752
%755
%757
%760
%762
%765
%768
%771
%774
%778
%781
%783
%785
%788
%789
%790
%791
%792
%793
%706
%795
%797
%799
%801
%803
%805
%806
%809
%812
%814
%816
%817
%818
%821
%822
%823
%824
%825
%826
%830
%834
%838
%840
%842
%845
%848
%850
%851
%853
%854
%856
%858
%860
%862
%864
%866
%868
%870
%872
%874
%876
%879
%882
%884
%886
%888
%890
%892
%894
%896
%898
%899
%900
%901
%902
%904
%906
%908
%910
%912
%914
%916
%917
%777
(*.f32 %29 %654)
(/.f32 %654 %11)
(/.f32 #s(literal 1 binary32) %713)
(sqrt.f32 %1007)
(-.f32 %1009 (sinh.f32 %252))
(pow.f32 %1007 #s(literal 1/2 binary32))
(pow.f32 %777 #s(literal 1 binary32))
(+.f32 (cosh.f32 %880) (sinh.f32 %880))
(+.f32 %1017 %1009)
(+.f32 %1009 %1017)
(fabs.f32 %716)
(fabs.f32 %777)
(exp.f32 (*.f32 %880 #s(literal 1 binary32)))
(exp.f32 %880)
(exp.f32 %259)
%705
%710
%712
%714
%715
%718
%719
%723
%724
%725
%726
%727
%729
%730
%732
%734
%735
%737
%739
%741
%743
%744
%746
%748
%750
%752
%755
%757
%760
%762
%765
%768
%771
%774
%778
%781
%783
%785
%788
%789
%790
%791
%792
%793
%706
%795
%797
%799
%801
%803
%805
%806
%809
%812
%814
%816
%817
%818
%821
%822
%823
%824
%825
%826
%830
%834
%838
%840
%842
%845
%848
%850
%851
%853
%854
%856
%858
%860
%862
%864
%866
%868
%870
%872
%874
%876
%879
%882
%884
%886
%888
%890
%892
%894
%896
%898
%899
%900
%901
%902
%904
%906
%908
%910
%912
%914
%916
%917
(*.f32 (/.f32 %29 %650) %654)
%720
(/.f32 %64 %686)
(/.f32 %29 %647)
(/.f32 #s(literal 1 binary32) %706)
(sqrt.f32 %1032)
(-.f32 %810 %849)
(pow.f32 %1032 #s(literal 1/2 binary32))
(pow.f32 %708 #s(literal -2 binary32))
(pow.f32 %808 #s(literal -1/2 binary32))
(pow.f32 %720 #s(literal 1 binary32))
(pow.f32 %707 #s(literal -2 binary32))
(pow.f32 %706 #s(literal -1 binary32))
(+.f32 (cosh.f32 %877) (sinh.f32 %877))
(+.f32 %811 %810)
(+.f32 %810 %811)
(fabs.f32 %721)
(fabs.f32 %720)
(exp.f32 (neg.f32 %827))
(exp.f32 (neg.f32 %831))
(exp.f32 (neg.f32 %835))
(exp.f32 (-.f32 %51 %674))
(exp.f32 (-.f32 #s(literal 0 binary32) %827))
(exp.f32 (-.f32 #s(literal 0 binary32) %831))
(exp.f32 (-.f32 #s(literal 0 binary32) %835))
(exp.f32 (-.f32 #s(literal 0 binary32) %555))
(exp.f32 (*.f32 %877 #s(literal 1 binary32)))
(exp.f32 %877)
(exp.f32 %568)
%705
%710
%712
%714
%715
%718
%719
%723
%724
%725
%726
%727
%729
%730
%732
%734
%735
%737
%739
%741
%743
%744
%746
%748
%750
%752
%755
%757
%760
%762
%765
%768
%771
%774
%778
%781
%783
%785
%788
%789
%790
%791
%792
%793
%706
%795
%797
%799
%801
%803
%805
%806
%809
%812
%814
%816
%817
%818
%821
%822
%823
%824
%825
%826
%830
%834
%838
%840
%842
%845
%848
%850
%851
%853
%854
%856
%858
%860
%862
%864
%866
%868
%870
%872
%874
%876
%879
%882
%884
%886
%888
%890
%892
%894
%896
%898
%899
%900
%901
%902
%904
%906
%908
%910
%912
%914
%916
%917
%705
%710
%712
%714
%715
%718
%719
%723
%724
%725
%726
%727
%729
%730
%732
%734
%735
%737
%739
%741
%743
%744
%746
%748
%750
%752
%755
%757
%760
%762
%765
%768
%771
%774
%778
%781
%783
%785
%788
%789
%790
%791
%792
%793
%706
%795
%797
%799
%801
%803
%805
%806
%809
%812
%814
%816
%817
%818
%821
%822
%823
%824
%825
%826
%830
%834
%838
%840
%842
%845
%848
%850
%851
%853
%854
%856
%858
%860
%862
%864
%866
%868
%870
%872
%874
%876
%879
%882
%884
%886
%888
%890
%892
%894
%896
%898
%899
%900
%901
%902
%904
%906
%908
%910
%912
%914
%916
%917
(/.f32 #s(literal 1 binary32) (pow.f32 %1068 #s(literal -1 binary32)))
(sqrt.f32 %1072)
(-.f32 %1074 (neg.f32 %1075))
(pow.f32 %1072 #s(literal 1/2 binary32))
(pow.f32 %1068 #s(literal 1 binary32))
(+.f32 (cosh.f32 %1080) (sinh.f32 %1080))
(+.f32 %1075 %1074)
(+.f32 %1074 %1075)
(fabs.f32 (neg.f32 %1068))
(fabs.f32 %1068)
(exp.f32 (*.f32 %1080 #s(literal 1 binary32)))
(exp.f32 %1080)
%1068
(/.f32 #s(literal 1 binary32) (pow.f32 %1092 #s(literal -1 binary32)))
(-.f32 (+.f32 %224 #s(literal 0 binary32)) %51)
(-.f32 %1097 %74)
(-.f32 #s(literal 0 binary32) %1099)
%1092
(-.f32 %77 (-.f32 %74 %224))
(-.f32 %111 (neg.f32 %224))
(fma.f32 #s(literal -1 binary32) %150 %1105)
(fma.f32 #s(literal -1 binary32) %74 %1107)
(fma.f32 #s(literal -1 binary32) %51 %224)
(fma.f32 #s(literal 1 binary32) %149 %1107)
(fma.f32 #s(literal 1 binary32) %77 %1105)
(fma.f32 #s(literal 1 binary32) %111 %224)
(pow.f32 %1092 #s(literal 1 binary32))
(+.f32 (+.f32 %224 %75) %77)
(+.f32 %1097 %75)
(+.f32 %75 %1107)
(+.f32 %224 %111)
(+.f32 %77 %1105)
(+.f32 %111 %224)
(neg.f32 %1099)
(*.f32 %1122 %11)
(*.f32 %11 %1122)
%1125
(/.f32 #s(literal 1 binary32) (pow.f32 %1125 #s(literal -1 binary32)))
(sqrt.f32 %1129)
(-.f32 %1131 (sinh.f32 %1099))
(-.f32 %1131 (neg.f32 %1134))
(pow.f32 %1129 #s(literal 1/2 binary32))
(pow.f32 %1125 #s(literal 1 binary32))
(+.f32 (cosh.f32 %1139) (sinh.f32 %1139))
(+.f32 %1134 %1131)
(+.f32 %1131 %1134)
(fabs.f32 (neg.f32 %1125))
(fabs.f32 %1125)
(exp.f32 (*.f32 %1139 #s(literal 1 binary32)))
(exp.f32 %1139)
(exp.f32 %1092)

reconstruct148.0ms (3.0%)

Counts
1 665 → 530
Compiler

Compiled 1 665 to 2 545 computations (-52.9% saved)

eval45.0ms (0.9%)

Compiler

Compiled 715 to 2 558 computations (-257.8% saved)

prune11.0ms (0.2%)

Pruning

18 alts after pruning (18 fresh and 0 done)

PrunedKeptTotal
New69718715
Fresh000
Picked808
Done000
Total70518723
Accuracy
99.9%
Counts
723 → 18
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(/.f32 (pow.f32 (exp.f32 (-.f32 (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32)) (*.f32 cosTheta_O cosTheta_i))) (/.f32 #s(literal -1 binary32) v)) (exp.f32 (+.f32 #s(literal -6931/10000 binary32) (log.f32 (+.f32 v v)))))
99.6%
(/.f32 (exp.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v)) (exp.f32 (+.f32 #s(literal -6931/10000 binary32) (approx (log (+ v v)) (+.f32 (log.f32 #s(literal 2 binary32)) (*.f32 #s(literal -1 binary32) (log.f32 (/.f32 #s(literal 1 binary32) v))))))))
99.6%
(/.f32 (exp.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v)) (exp.f32 (+.f32 #s(literal -6931/10000 binary32) (log.f32 (+.f32 v v)))))
99.6%
%73 = (sqrt.f32 (+.f32 v v))
(/.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (*.f32 %73 %73))
99.6%
(/.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (+.f32 v v))
4.8%
(/.f32 (exp.f32 (approx (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000) #s(literal 6931/10000 binary32))) (+.f32 v v))
99.5%
(/.f32 #s(literal 1 binary32) (exp.f32 (-.f32 (log.f32 (+.f32 v v)) (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32)))))
12.9%
(/.f32 #s(literal 1 binary32) (exp.f32 (approx (- (log (+ v v)) (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000)) (/.f32 (*.f32 sinTheta_O sinTheta_i) v))))
14.6%
(/.f32 #s(literal 1 binary32) (exp.f32 (approx (- (log (+ v v)) (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000)) (*.f32 #s(literal -1 binary32) (/.f32 (*.f32 cosTheta_O cosTheta_i) v)))))
99.6%
%75 = (*.f32 (sqrt.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32)))) (/.f32 #s(literal 1 binary32) (sqrt.f32 (+.f32 v v))))
(*.f32 %75 %75)
99.6%
%70 = (sqrt.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v) (-.f32 (log.f32 (+.f32 v v)) #s(literal 6931/10000 binary32)))))
(*.f32 %70 %70)
99.6%
(*.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (exp.f32 (neg.f32 (log.f32 (+.f32 v v)))))
99.6%
(*.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (/.f32 #s(literal 1/2 binary32) v))
4.8%
(*.f32 (exp.f32 (approx (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000) #s(literal 6931/10000 binary32))) (/.f32 #s(literal 1/2 binary32) v))
99.5%
%51 = (approx (sqrt (/ (exp (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000)) (+ v v))) (/.f32 (sqrt.f32 (*.f32 #s(literal 1/2 binary32) (*.f32 v (exp.f32 (-.f32 (+.f32 #s(literal 6931/10000 binary32) (/.f32 (*.f32 cosTheta_O cosTheta_i) v)) (+.f32 (/.f32 #s(literal 1 binary32) v) (/.f32 (*.f32 sinTheta_O sinTheta_i) v))))))) v))
(*.f32 %51 %51)
99.6%
(exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) (+.f32 #s(literal -6931/10000 binary32) (log.f32 (+.f32 v v)))))
4.8%
(exp.f32 (-.f32 (approx (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000) #s(literal 6931/10000 binary32)) (log.f32 (+.f32 v v))))
60.4%
%16 = (sqrt (/ (exp (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000)) (+ v v)))
(approx (* %16 %16) (/.f32 (pow.f32 (sqrt.f32 (*.f32 #s(literal 1/2 binary32) (*.f32 v (exp.f32 (-.f32 (+.f32 #s(literal 6931/10000 binary32) (/.f32 (*.f32 cosTheta_O cosTheta_i) v)) (+.f32 (/.f32 #s(literal 1 binary32) v) (/.f32 (*.f32 sinTheta_O sinTheta_i) v))))))) #s(literal 2 binary32)) (pow.f32 v #s(literal 2 binary32))))
Compiler

Compiled 18 to 89 computations (-394.4% saved)

sample1.0ms (0.0%)

Calls
Call 1
Inputs
(log 2)
Outputs
#s(literal 1453635/2097152 binary32)
Samples
0.0ms0valid
Compiler

Compiled 4 to 4 computations (0.0% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
adjust: 0.0ms (0.0% of total, 0.0 MiB)

series176.0ms (3.6%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0373351297
Stop Event
iter-limit
Counts
96 → 610
Calls
Call 1
Inputs
%6 = (/.f32 #s(literal 1 binary32) v)
%9 = (*.f32 cosTheta_O cosTheta_i)
%10 = (/.f32 %9 v)
%12 = (*.f32 sinTheta_O sinTheta_i)
%13 = (/.f32 %12 v)
%14 = (+.f32 %6 %13)
%15 = (+.f32 #s(literal 6931/10000 binary32) %10)
%16 = (-.f32 %15 %14)
%18 = (/.f32 #s(literal 1/2 binary32) v)
%19 = (pow.f32 v #s(literal 2 binary32))
%20 = (log.f32 %6)
%21 = (/.f32 #s(literal -1 binary32) v)
%22 = (+.f32 v v)
%23 = (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))
%24 = (-.f32 %9 %23)
%25 = (/.f32 %24 v)
%26 = (-.f32 %23 %9)
%28 = (-.f32 %25 #s(literal -6931/10000 binary32))
%29 = (sqrt.f32 %22)
%30 = (*.f32 %29 %29)
%31 = (log.f32 #s(literal 2 binary32))
%32 = (log.f32 %22)
%33 = (neg.f32 %32)
%34 = (exp.f32 %33)
%35 = (+.f32 #s(literal -6931/10000 binary32) %32)
%36 = (exp.f32 %28)
%37 = (exp.f32 %25)
%38 = (exp.f32 %35)
%39 = (*.f32 #s(literal -1 binary32) %10)
%40 = (+ v v)
%41 = (log %40)
%45 = (+ (* sinTheta_O sinTheta_i) 1)
%49 = (- (/ (- (* cosTheta_O cosTheta_i) %45) v) -6931/10000)
%50 = (- %41 %49)
%51 = (approx %50 %39)
%52 = (exp.f32 %16)
%53 = (approx %45 #s(literal 1 binary32))
%54 = (approx %50 %13)
%55 = (*.f32 v %52)
%56 = (*.f32 #s(literal 1/2 binary32) %55)
%57 = (sqrt.f32 %56)
%58 = (/.f32 %57 v)
%61 = (sqrt (/ (exp %49) %40))
%62 = (approx %61 %58)
%63 = (pow.f32 %57 #s(literal 2 binary32))
%64 = (/.f32 %63 %19)
%67 = (*.f32 #s(literal -1 binary32) %20)
%68 = (+.f32 %31 %67)
%69 = (approx %41 %68)
%70 = (approx %49 #s(literal 6931/10000 binary32))
%71 = (-.f32 %32 #s(literal 6931/10000 binary32))
%72 = (-.f32 %25 %71)
%73 = (sqrt.f32 %36)
%74 = (exp.f32 %72)
%75 = (/.f32 #s(literal 1 binary32) %29)
%76 = (*.f32 %73 %75)
%77 = (exp.f32 %26)
%78 = (pow.f32 %77 %21)
%79 = (-.f32 %70 %32)
%80 = (exp.f32 %70)
%85 = (sqrt.f32 %74)
%87 = (exp.f32 %54)
%89 = (exp.f32 %51)
%93 = (+.f32 #s(literal -6931/10000 binary32) %69)
%94 = (exp.f32 %93)
%97 = (-.f32 %9 %53)
%98 = (/.f32 %97 v)
%99 = (-.f32 %98 %35)
%101 = (-.f32 %98 #s(literal -6931/10000 binary32))
%102 = (exp.f32 %101)
%105 = (-.f32 %32 %101)
%106 = (exp.f32 %105)
%108 = (exp.f32 %98)
cosTheta_i
cosTheta_O
v
sinTheta_i
sinTheta_O
#s(literal 1 binary32)
%6
#s(literal 6931/10000 binary32)
#s(literal 2 binary32)
%9
%10
#s(literal -1 binary32)
%12
%13
%14
%15
%16
#s(literal 1/2 binary32)
%18
%19
%20
%21
%22
%23
%24
%25
%26
#s(literal -6931/10000 binary32)
%28
%29
%30
%31
%32
%33
%34
%35
%36
%37
%38
%39
%51
%52
%53
%54
%55
%56
%57
%58
%62
%63
%64
(approx (* %61 %61) %64)
%67
%68
%69
%70
%71
%72
%73
%74
%75
%76
%77
%78
%79
%80
(*.f32 %80 %18)
(/.f32 %80 %22)
(exp.f32 %79)
(/.f32 %36 %30)
%85
(*.f32 %85 %85)
%87
(/.f32 #s(literal 1 binary32) %87)
%89
(/.f32 #s(literal 1 binary32) %89)
(*.f32 %62 %62)
(*.f32 %76 %76)
%93
%94
(/.f32 %37 %94)
(/.f32 %78 %38)
%97
%98
%99
(exp.f32 %99)
%101
%102
(*.f32 %102 %18)
(/.f32 %102 %22)
%105
%106
(/.f32 #s(literal 1 binary32) %106)
%108
(/.f32 %108 %38)
(*.f32 %36 %34)
Outputs
%5 = (* cosTheta_O cosTheta_i)
%6 = (*.f32 cosTheta_O cosTheta_i)
%9 = (/ %5 v)
%10 = (/.f32 %6 v)
%13 = (+ 6931/10000 %9)
%16 = (+.f32 #s(literal 6931/10000 binary32) %10)
%19 = (/ 1 v)
%22 = (* sinTheta_O sinTheta_i)
%23 = (/ %22 v)
%24 = (+ %19 %23)
%25 = (- %13 %24)
%27 = (/.f32 #s(literal 1 binary32) v)
%28 = (*.f32 sinTheta_O sinTheta_i)
%29 = (/.f32 %28 v)
%30 = (+.f32 %27 %29)
%31 = (-.f32 #s(literal 6931/10000 binary32) %30)
%33 = (-.f32 %16 %30)
%35 = (+ %22 1)
%36 = (- %5 %35)
%38 = (+.f32 #s(literal 1 binary32) %28)
%41 = (-.f32 %6 %38)
%43 = (/ %36 v)
%44 = (/.f32 %38 v)
%45 = (*.f32 #s(literal -1 binary32) %44)
%49 = (- %35 %5)
%55 = (- %43 -6931/10000)
%56 = (exp %55)
%57 = (exp.f32 %31)
%59 = (*.f32 cosTheta_i %57)
%60 = (*.f32 cosTheta_O %59)
%66 = (pow.f32 cosTheta_O #s(literal 2 binary32))
%67 = (*.f32 %66 %59)
%68 = (pow.f32 v #s(literal 2 binary32))
%70 = (*.f32 cosTheta_O %57)
%71 = (/.f32 %70 v)
%78 = (pow.f32 cosTheta_O #s(literal 3 binary32))
%79 = (*.f32 %78 %59)
%80 = (pow.f32 v #s(literal 3 binary32))
%82 = (*.f32 %66 %57)
%84 = (*.f32 #s(literal 1/2 binary32) (/.f32 %82 %68))
%90 = (exp %43)
%91 = (exp.f32 %45)
%93 = (*.f32 cosTheta_i %91)
%94 = (*.f32 cosTheta_O %93)
%98 = (*.f32 %66 %93)
%100 = (*.f32 cosTheta_O %91)
%101 = (/.f32 %100 v)
%106 = (*.f32 %78 %93)
%108 = (*.f32 %66 %91)
%120 = (+ v v)
%121 = (log %120)
%122 = (- %121 %55)
%123 = (*.f32 #s(literal 2 binary32) v)
%124 = (log.f32 %123)
%125 = (+.f32 %124 %30)
%126 = (-.f32 %125 #s(literal 6931/10000 binary32))
%132 = (exp %25)
%133 = (* v %132)
%134 = (*.f32 v %57)
%138 = (/.f32 %67 v)
%142 = (/.f32 %79 %68)
%143 = (/.f32 %82 v)
%151 = (* 1/2 %133)
%152 = (*.f32 #s(literal 1/2 binary32) %134)
%158 = (fma.f32 #s(literal 1/4 binary32) %138 (*.f32 #s(literal 1/2 binary32) %70))
%163 = (*.f32 #s(literal 1/4 binary32) %143)
%166 = (fma.f32 #s(literal 1/2 binary32) %70 (*.f32 cosTheta_i (fma.f32 #s(literal 1/12 binary32) %142 %163)))
%170 = (sqrt %151)
%171 = (sqrt.f32 %152)
%177 = (/.f32 %70 %171)
%179 = (pow.f32 %57 #s(literal 2 binary32))
%180 = (*.f32 %66 %179)
%181 = (pow.f32 %171 #s(literal 2 binary32))
%184 = (-.f32 %163 (*.f32 #s(literal 1/16 binary32) (/.f32 %180 %181)))
%185 = (*.f32 cosTheta_i %184)
%192 = (*.f32 %78 %57)
%200 = (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal 1/12 binary32) (/.f32 %192 %68)) (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %57 %184)) %181))))
%210 = (/ %170 v)
%211 = (/.f32 %171 v)
%213 = (*.f32 v %171)
%217 = (/.f32 %70 %213)
%232 = (sqrt (/ %56 %120))
%233 = (/.f32 %57 v)
%234 = (*.f32 #s(literal 1/2 binary32) %233)
%235 = (sqrt.f32 %234)
%237 = (*.f32 %68 %235)
%242 = (/.f32 %70 %237)
%244 = (*.f32 #s(literal 1/4 binary32) (/.f32 %82 %80))
%246 = (pow.f32 v #s(literal 4 binary32))
%247 = (pow.f32 %235 #s(literal 2 binary32))
%248 = (*.f32 %246 %247)
%251 = (-.f32 %244 (*.f32 #s(literal 1/16 binary32) (/.f32 %180 %248)))
%263 = (*.f32 %68 %247)
%278 = (pow %170 2)
%286 = (pow v 2)
%287 = (/ %278 %286)
%288 = (/.f32 %181 %68)
%290 = (/.f32 %60 %68)
%294 = (/.f32 %70 %68)
%296 = (fma.f32 #s(literal 1/4 binary32) (/.f32 %67 %80) (*.f32 #s(literal 1/2 binary32) %294))
%302 = (fma.f32 #s(literal 1/2 binary32) %294 (*.f32 cosTheta_i (fma.f32 #s(literal 1/12 binary32) (/.f32 %79 %246) %244)))
%305 = (* %232 %232)
%314 = (- %43 (- %121 6931/10000))
%315 = (-.f32 #s(literal 6931/10000 binary32) %125)
%317 = (-.f32 %16 %125)
%319 = (sqrt %56)
%320 = (sqrt.f32 %57)
%322 = (*.f32 v %320)
%327 = (/.f32 %70 %322)
%328 = (pow.f32 %320 #s(literal 2 binary32))
%329 = (*.f32 %68 %328)
%332 = (-.f32 %84 (*.f32 #s(literal 1/4 binary32) (/.f32 %180 %329)))
%333 = (*.f32 cosTheta_i %332)
%344 = (*.f32 v %328)
%348 = (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal 1/6 binary32) (/.f32 %192 %80)) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %57 %332)) %344))))
%358 = (exp %314)
%359 = (exp.f32 %315)
%361 = (*.f32 cosTheta_i %359)
%362 = (*.f32 cosTheta_O %361)
%363 = (/.f32 %362 v)
%368 = (*.f32 cosTheta_O %359)
%369 = (/.f32 %368 v)
%370 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %66 %361) %68) %369)
%378 = (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %66 %359) %68))
%380 = (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %78 %361) %80) %378) %369)
%384 = (sqrt %120)
%385 = (/ 1 %384)
%386 = (* %319 %385)
%387 = (sqrt.f32 %123)
%388 = (/.f32 %320 %387)
%390 = (*.f32 %320 %387)
%391 = (*.f32 v %390)
%395 = (/.f32 %70 %391)
%409 = (exp %49)
%410 = (exp.f32 %38)
%412 = (*.f32 cosTheta_i %410)
%417 = (*.f32 cosTheta_O %410)
%434 = (/ -1 v)
%435 = (pow %409 %434)
%437 = (pow.f32 %410 #s(literal 2 binary32))
%440 = (exp.f32 (*.f32 #s(literal 2 binary32) %38))
%442 = (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 %66 %437) %440) %66)
%447 = (*.f32 %91 (fma.f32 #s(literal -1/2 binary32) (/.f32 %442 v) (*.f32 #s(literal 1/2 binary32) (/.f32 %66 %68))))
%455 = (pow.f32 %410 #s(literal 3 binary32))
%458 = (exp.f32 (*.f32 #s(literal 3 binary32) %38))
%470 = (*.f32 %91 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 cosTheta_O %442) %68) (fma.f32 #s(literal -1/6 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) (/.f32 (*.f32 %78 %455) %458) (fma.f32 #s(literal -1 binary32) %78 (*.f32 #s(literal 3 binary32) (/.f32 (*.f32 %78 %437) %440)))) v) (*.f32 #s(literal 1/6 binary32) (/.f32 %78 %80)))))
%476 = (/ 1/2 v)
%477 = (* %56 %476)
%488 = (* %384 %384)
%489 = (/ %56 %488)
%490 = (pow.f32 %387 #s(literal 2 binary32))
%491 = (/.f32 %57 %490)
%493 = (*.f32 v %490)
%494 = (/.f32 %60 %493)
%497 = (*.f32 %68 %490)
%499 = (/.f32 %70 %493)
%500 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %67 %497) %499)
%503 = (*.f32 %80 %490)
%508 = (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 %79 %503) (*.f32 #s(literal 1/2 binary32) (/.f32 %82 %497))) %499)
%511 = (sqrt %358)
%512 = (sqrt.f32 %359)
%514 = (*.f32 v %512)
%519 = (/.f32 %368 %514)
%520 = (pow.f32 %359 #s(literal 2 binary32))
%522 = (pow.f32 %512 #s(literal 2 binary32))
%523 = (*.f32 %68 %522)
%526 = (-.f32 %378 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %66 %520) %523)))
%539 = (*.f32 v %522)
%553 = (* %511 %511)
%561 = (exp %122)
%562 = (exp.f32 %126)
%564 = (*.f32 cosTheta_i %562)
%571 = (/.f32 (*.f32 cosTheta_O %562) v)
%590 = (/ 1 %561)
%591 = (/.f32 #s(literal 1 binary32) %562)
%593 = (*.f32 v %562)
%597 = (*.f32 %68 %562)
%598 = (/.f32 %66 %597)
%600 = (fma.f32 #s(literal -1 binary32) %598 (*.f32 #s(literal 1/2 binary32) %598))
%604 = (*.f32 #s(literal -1 binary32) (/.f32 cosTheta_O %593))
%608 = (*.f32 %80 %562)
%609 = (/.f32 %78 %608)
%621 = (* %386 %386)
%622 = (/.f32 %328 %490)
%630 = (+ -6931/10000 %121)
%631 = (exp %630)
%632 = (/ %90 %631)
%634 = (exp.f32 (-.f32 %124 #s(literal 6931/10000 binary32)))
%635 = (/.f32 %91 %634)
%637 = (*.f32 v %634)
%641 = (*.f32 %68 %634)
%643 = (/.f32 %100 %637)
%647 = (*.f32 %80 %634)
%655 = (/ %435 %631)
%668 = (neg %121)
%669 = (exp %668)
%670 = (* %56 %669)
%672 = (exp.f32 (neg.f32 %124))
%673 = (*.f32 %672 %57)
%675 = (*.f32 cosTheta_i %673)
%683 = (/.f32 (*.f32 cosTheta_O %673) v)
%696 = (/.f32 #s(literal 1 binary32) cosTheta_i)
%697 = (/.f32 cosTheta_O v)
%698 = (fma.f32 #s(literal 6931/10000 binary32) %696 %697)
%701 = (*.f32 cosTheta_i v)
%702 = (/.f32 #s(literal 1 binary32) %701)
%703 = (/.f32 %28 %701)
%704 = (+.f32 %702 %703)
%709 = (*.f32 #s(literal -1 binary32) (/.f32 %38 cosTheta_i))
%717 = (*.f32 #s(literal -1 binary32) %6)
%720 = (+.f32 %696 (/.f32 %28 cosTheta_i))
%724 = (exp.f32 %33)
%726 = (/.f32 %41 v)
%727 = (exp.f32 %726)
%731 = (+.f32 %702 (+.f32 (/.f32 %124 cosTheta_i) %703))
%735 = (*.f32 v %724)
%737 = (*.f32 #s(literal 1/2 binary32) %735)
%739 = (sqrt.f32 %737)
%744 = (*.f32 #s(literal 1/2 binary32) (/.f32 %724 v))
%745 = (sqrt.f32 %744)
%747 = (pow.f32 %739 #s(literal 2 binary32))
%756 = (sqrt.f32 %724)
%758 = (exp.f32 %317)
%762 = (-.f32 %38 %6)
%765 = (/.f32 %762 v)
%766 = (*.f32 #s(literal -1 binary32) %765)
%767 = (exp.f32 %766)
%772 = (sqrt.f32 %758)
%776 = (-.f32 %125 %16)
%777 = (exp.f32 %776)
%790 = (*.f32 #s(literal -1 binary32) %697)
%828 = (pow.f32 cosTheta_i #s(literal 2 binary32))
%829 = (*.f32 %828 %57)
%830 = (*.f32 cosTheta_O %829)
%832 = (/.f32 %59 v)
%837 = (pow.f32 cosTheta_i #s(literal 3 binary32))
%838 = (*.f32 %837 %57)
%839 = (*.f32 cosTheta_O %838)
%842 = (*.f32 #s(literal 1/2 binary32) (/.f32 %829 %68))
%848 = (*.f32 %828 %91)
%849 = (*.f32 cosTheta_O %848)
%851 = (/.f32 %93 v)
%857 = (*.f32 cosTheta_O (*.f32 %837 %91))
%866 = (/.f32 %830 v)
%870 = (/.f32 %839 %68)
%871 = (/.f32 %829 v)
%878 = (fma.f32 #s(literal 1/4 binary32) %866 (*.f32 #s(literal 1/2 binary32) %59))
%882 = (*.f32 #s(literal 1/4 binary32) %871)
%885 = (fma.f32 #s(literal 1/2 binary32) %59 (*.f32 cosTheta_O (fma.f32 #s(literal 1/12 binary32) %870 %882)))
%889 = (/.f32 %59 %171)
%890 = (*.f32 %828 %179)
%893 = (-.f32 %882 (*.f32 #s(literal 1/16 binary32) (/.f32 %890 %181)))
%894 = (*.f32 cosTheta_O %893)
%908 = (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal 1/12 binary32) (/.f32 %838 %68)) (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 cosTheta_i (*.f32 %57 %893)) %181))))
%918 = (/.f32 %59 %213)
%932 = (/.f32 %59 %237)
%934 = (*.f32 #s(literal 1/4 binary32) (/.f32 %829 %80))
%937 = (-.f32 %934 (*.f32 #s(literal 1/16 binary32) (/.f32 %890 %248)))
%967 = (/.f32 %59 %68)
%969 = (fma.f32 #s(literal 1/4 binary32) (/.f32 %830 %80) (*.f32 #s(literal 1/2 binary32) %967))
%975 = (fma.f32 #s(literal 1/2 binary32) %967 (*.f32 cosTheta_O (fma.f32 #s(literal 1/12 binary32) (/.f32 %839 %246) %934)))
%984 = (-.f32 %842 (*.f32 #s(literal 1/4 binary32) (/.f32 %890 %329)))
%985 = (*.f32 cosTheta_O %984)
%987 = (/.f32 %59 %322)
%1000 = (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal 1/6 binary32) (/.f32 %838 %80)) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i (*.f32 %57 %984)) %344))))
%1010 = (*.f32 %828 %359)
%1013 = (/.f32 %361 v)
%1014 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %1010) %68) %1013)
%1018 = (*.f32 %837 %359)
%1022 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1010 %68))
%1024 = (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 cosTheta_O %1018) %80) %1022) %1013)
%1029 = (/.f32 %59 %391)
%1042 = (*.f32 %828 %410)
%1060 = (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 %828 %437) %440) %828)
%1065 = (*.f32 %91 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1060 v) (*.f32 #s(literal 1/2 binary32) (/.f32 %828 %68))))
%1084 = (*.f32 %91 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 cosTheta_i %1060) %68) (fma.f32 #s(literal -1/6 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) (/.f32 (*.f32 %837 %455) %458) (fma.f32 #s(literal -1 binary32) %837 (*.f32 #s(literal 3 binary32) (/.f32 (*.f32 %837 %437) %440)))) v) (*.f32 #s(literal 1/6 binary32) (/.f32 %837 %80)))))
%1097 = (/.f32 %59 %493)
%1098 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %830 %497) %1097)
%1105 = (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 %839 %503) (*.f32 #s(literal 1/2 binary32) (/.f32 %829 %497))) %1097)
%1111 = (-.f32 %1022 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %828 %520) %523)))
%1114 = (/.f32 %361 %514)
%1141 = (/.f32 %564 v)
%1142 = (*.f32 %828 %562)
%1161 = (/.f32 %828 %597)
%1163 = (fma.f32 #s(literal -1 binary32) %1161 (*.f32 #s(literal 1/2 binary32) %1161))
%1167 = (*.f32 #s(literal -1 binary32) (/.f32 cosTheta_i %593))
%1171 = (/.f32 %837 %608)
%1188 = (/.f32 %93 %637)
%1211 = (*.f32 %828 %673)
%1214 = (/.f32 %675 v)
%1227 = (/.f32 #s(literal 1 binary32) cosTheta_O)
%1228 = (/.f32 cosTheta_i v)
%1229 = (fma.f32 #s(literal 6931/10000 binary32) %1227 %1228)
%1232 = (*.f32 cosTheta_O v)
%1233 = (/.f32 #s(literal 1 binary32) %1232)
%1234 = (/.f32 %28 %1232)
%1235 = (+.f32 %1233 %1234)
%1240 = (*.f32 #s(literal -1 binary32) (/.f32 %38 cosTheta_O))
%1249 = (+.f32 %1227 (/.f32 %28 cosTheta_O))
%1255 = (+.f32 %1233 (+.f32 (/.f32 %124 cosTheta_O) %1234))
%1262 = (*.f32 #s(literal -1 binary32) %1228)
%1304 = (-.f32 %16 %27)
%1306 = (fma.f32 #s(literal -1 binary32) %29 %10)
%1307 = (+.f32 #s(literal 6931/10000 binary32) %1306)
%1311 = (-.f32 %6 #s(literal 1 binary32))
%1316 = (/.f32 %1311 v)
%1320 = (-.f32 #s(literal 1 binary32) %6)
%1323 = (exp.f32 %1304)
%1325 = (*.f32 sinTheta_i %1323)
%1326 = (*.f32 sinTheta_O %1325)
%1331 = (*.f32 sinTheta_O %1323)
%1332 = (/.f32 %1331 v)
%1333 = (pow.f32 sinTheta_O #s(literal 2 binary32))
%1334 = (*.f32 %1333 %1325)
%1341 = (pow.f32 sinTheta_O #s(literal 3 binary32))
%1342 = (*.f32 %1341 %1325)
%1344 = (*.f32 %1333 %1323)
%1346 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1344 %68))
%1353 = (exp.f32 %1316)
%1355 = (*.f32 sinTheta_i %1353)
%1356 = (*.f32 sinTheta_O %1355)
%1361 = (*.f32 sinTheta_O %1353)
%1362 = (/.f32 %1361 v)
%1363 = (*.f32 %1333 %1355)
%1370 = (*.f32 %1341 %1355)
%1372 = (*.f32 %1333 %1353)
%1381 = (+.f32 %124 %27)
%1382 = (-.f32 %1381 %16)
%1385 = (*.f32 v %1323)
%1389 = (/.f32 %1334 v)
%1394 = (/.f32 %1342 %68)
%1395 = (/.f32 %1344 v)
%1402 = (*.f32 #s(literal 1/2 binary32) %1385)
%1407 = (fma.f32 #s(literal -1/2 binary32) %1331 (*.f32 #s(literal 1/4 binary32) %1389))
%1412 = (*.f32 #s(literal 1/4 binary32) %1395)
%1415 = (fma.f32 #s(literal -1/2 binary32) %1331 (*.f32 sinTheta_i (fma.f32 #s(literal -1/12 binary32) %1394 %1412)))
%1419 = (sqrt.f32 %1402)
%1426 = (/.f32 %1331 %1419)
%1427 = (pow.f32 %1323 #s(literal 2 binary32))
%1428 = (*.f32 %1333 %1427)
%1429 = (pow.f32 %1419 #s(literal 2 binary32))
%1432 = (-.f32 %1412 (*.f32 #s(literal 1/16 binary32) (/.f32 %1428 %1429)))
%1433 = (*.f32 sinTheta_i %1432)
%1440 = (*.f32 %1341 %1323)
%1448 = (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1/12 binary32) (/.f32 %1440 %68)) (*.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %1323 %1432)) %1429))))
%1458 = (/.f32 %1419 v)
%1460 = (*.f32 v %1419)
%1464 = (/.f32 %1331 %1460)
%1478 = (/.f32 %1323 v)
%1479 = (*.f32 #s(literal 1/2 binary32) %1478)
%1480 = (sqrt.f32 %1479)
%1482 = (*.f32 %68 %1480)
%1487 = (/.f32 %1331 %1482)
%1489 = (*.f32 #s(literal 1/4 binary32) (/.f32 %1344 %80))
%1490 = (pow.f32 %1480 #s(literal 2 binary32))
%1491 = (*.f32 %246 %1490)
%1494 = (-.f32 %1489 (*.f32 #s(literal 1/16 binary32) (/.f32 %1428 %1491)))
%1506 = (*.f32 %68 %1490)
%1527 = (/.f32 %1429 %68)
%1529 = (/.f32 %1326 %68)
%1532 = (/.f32 %1331 %68)
%1535 = (fma.f32 #s(literal -1/2 binary32) %1532 (*.f32 #s(literal 1/4 binary32) (/.f32 %1334 %80)))
%1541 = (fma.f32 #s(literal -1/2 binary32) %1532 (*.f32 sinTheta_i (fma.f32 #s(literal -1/12 binary32) (/.f32 %1342 %246) %1489)))
%1551 = (-.f32 %16 %1381)
%1555 = (sqrt.f32 %1323)
%1557 = (*.f32 v %1555)
%1562 = (/.f32 %1331 %1557)
%1563 = (pow.f32 %1555 #s(literal 2 binary32))
%1564 = (*.f32 %68 %1563)
%1567 = (-.f32 %1346 (*.f32 #s(literal 1/4 binary32) (/.f32 %1428 %1564)))
%1568 = (*.f32 sinTheta_i %1567)
%1579 = (*.f32 v %1563)
%1583 = (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1/6 binary32) (/.f32 %1440 %80)) (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %1323 %1567)) %1579))))
%1593 = (exp.f32 %1551)
%1595 = (*.f32 sinTheta_i %1593)
%1596 = (*.f32 sinTheta_O %1595)
%1597 = (/.f32 %1596 v)
%1601 = (*.f32 sinTheta_O %1593)
%1602 = (/.f32 %1601 v)
%1606 = (fma.f32 #s(literal -1 binary32) %1602 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1333 %1595) %68)))
%1614 = (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1333 %1593) %68))
%1617 = (fma.f32 #s(literal -1 binary32) %1602 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %1341 %1595) %80) %1614)))
%1621 = (/.f32 %1555 %387)
%1623 = (*.f32 %1555 %387)
%1624 = (*.f32 v %1623)
%1628 = (/.f32 %1331 %1624)
%1642 = (exp.f32 %1320)
%1644 = (*.f32 sinTheta_i %1642)
%1665 = (exp.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1320 v)))
%1667 = (*.f32 sinTheta_i %1665)
%1668 = (*.f32 sinTheta_O %1667)
%1673 = (*.f32 sinTheta_O %1665)
%1674 = (/.f32 %1673 v)
%1675 = (pow.f32 %1642 #s(literal 2 binary32))
%1678 = (exp.f32 (*.f32 #s(literal 2 binary32) %1320))
%1680 = (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 %1333 %1675) %1678) %1333)
%1685 = (*.f32 %1665 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1680 v) (*.f32 #s(literal 1/2 binary32) (/.f32 %1333 %68))))
%1686 = (*.f32 sinTheta_i %1685)
%1694 = (pow.f32 %1642 #s(literal 3 binary32))
%1697 = (exp.f32 (*.f32 #s(literal 3 binary32) %1320))
%1708 = (*.f32 %1665 (fma.f32 #s(literal -1/6 binary32) (/.f32 (fma.f32 #s(literal -3 binary32) (/.f32 (*.f32 %1341 %1675) %1678) (fma.f32 #s(literal 2 binary32) (/.f32 (*.f32 %1341 %1694) %1697) %1341)) v) (fma.f32 #s(literal -1/6 binary32) (/.f32 %1341 %80) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %1680) %68)))))
%1724 = (/.f32 %1323 %490)
%1726 = (/.f32 %1326 %493)
%1729 = (/.f32 %1331 %493)
%1732 = (fma.f32 #s(literal -1 binary32) %1729 (*.f32 #s(literal 1/2 binary32) (/.f32 %1334 %497)))
%1740 = (fma.f32 #s(literal -1 binary32) %1729 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 %1342 %503) (*.f32 #s(literal 1/2 binary32) (/.f32 %1344 %497)))))
%1743 = (sqrt.f32 %1593)
%1745 = (*.f32 v %1743)
%1750 = (/.f32 %1601 %1745)
%1751 = (pow.f32 %1593 #s(literal 2 binary32))
%1753 = (pow.f32 %1743 #s(literal 2 binary32))
%1754 = (*.f32 %68 %1753)
%1757 = (-.f32 %1614 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %1333 %1751) %1754)))
%1770 = (*.f32 v %1753)
%1791 = (exp.f32 %1382)
%1793 = (*.f32 sinTheta_i %1791)
%1801 = (/.f32 (*.f32 sinTheta_O %1791) v)
%1816 = (/.f32 #s(literal 1 binary32) %1791)
%1818 = (*.f32 v %1791)
%1822 = (*.f32 %68 %1791)
%1823 = (/.f32 %1333 %1822)
%1825 = (fma.f32 #s(literal -1 binary32) %1823 (*.f32 #s(literal 1/2 binary32) %1823))
%1828 = (/.f32 sinTheta_O %1818)
%1834 = (*.f32 %80 %1791)
%1835 = (/.f32 %1341 %1834)
%1846 = (/.f32 %1563 %490)
%1854 = (/.f32 %1353 %634)
%1859 = (/.f32 %1361 %637)
%1873 = (/.f32 %1665 %634)
%1878 = (/.f32 %1673 %637)
%1891 = (*.f32 %672 %1323)
%1893 = (*.f32 sinTheta_i %1891)
%1899 = (/.f32 (*.f32 sinTheta_O %1891) v)
%1916 = (*.f32 sinTheta_i v)
%1917 = (/.f32 #s(literal 1 binary32) %1916)
%1918 = (/.f32 sinTheta_O v)
%1919 = (+.f32 %1917 %1918)
%1924 = (/.f32 #s(literal 1 binary32) sinTheta_i)
%1925 = (/.f32 %6 %1916)
%1926 = (fma.f32 #s(literal 6931/10000 binary32) %1924 %1925)
%1930 = (+.f32 sinTheta_O %1924)
%1933 = (*.f32 #s(literal -1 binary32) %28)
%1935 = (/.f32 %6 sinTheta_i)
%1948 = (+.f32 %1917 (+.f32 %1918 (/.f32 %124 sinTheta_i)))
%1955 = (*.f32 #s(literal -1 binary32) %1918)
%1966 = (*.f32 #s(literal -1 binary32) sinTheta_O)
%1977 = (-.f32 %10 %27)
%2002 = (/.f32 %1325 v)
%2003 = (pow.f32 sinTheta_i #s(literal 2 binary32))
%2004 = (*.f32 %2003 %1323)
%2005 = (*.f32 sinTheta_O %2004)
%2012 = (pow.f32 sinTheta_i #s(literal 3 binary32))
%2013 = (*.f32 %2012 %1323)
%2014 = (*.f32 sinTheta_O %2013)
%2017 = (*.f32 #s(literal 1/2 binary32) (/.f32 %2004 %68))
%2024 = (/.f32 %1355 v)
%2025 = (*.f32 %2003 %1353)
%2026 = (*.f32 sinTheta_O %2025)
%2034 = (*.f32 sinTheta_O (*.f32 %2012 %1353))
%2044 = (/.f32 %2005 v)
%2049 = (/.f32 %2014 %68)
%2050 = (/.f32 %2004 v)
%2058 = (fma.f32 #s(literal -1/2 binary32) %1325 (*.f32 #s(literal 1/4 binary32) %2044))
%2062 = (*.f32 #s(literal 1/4 binary32) %2050)
%2065 = (fma.f32 #s(literal -1/2 binary32) %1325 (*.f32 sinTheta_O (fma.f32 #s(literal -1/12 binary32) %2049 %2062)))
%2069 = (/.f32 %1325 %1419)
%2070 = (*.f32 %2003 %1427)
%2073 = (-.f32 %2062 (*.f32 #s(literal 1/16 binary32) (/.f32 %2070 %1429)))
%2074 = (*.f32 sinTheta_O %2073)
%2088 = (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1/12 binary32) (/.f32 %2013 %68)) (*.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 sinTheta_i (*.f32 %1323 %2073)) %1429))))
%2098 = (/.f32 %1325 %1460)
%2112 = (/.f32 %1325 %1482)
%2114 = (*.f32 #s(literal 1/4 binary32) (/.f32 %2004 %80))
%2117 = (-.f32 %2114 (*.f32 #s(literal 1/16 binary32) (/.f32 %2070 %1491)))
%2146 = (/.f32 %1325 %68)
%2149 = (fma.f32 #s(literal -1/2 binary32) %2146 (*.f32 #s(literal 1/4 binary32) (/.f32 %2005 %80)))
%2155 = (fma.f32 #s(literal -1/2 binary32) %2146 (*.f32 sinTheta_O (fma.f32 #s(literal -1/12 binary32) (/.f32 %2014 %246) %2114)))
%2162 = (/.f32 %1325 %1557)
%2165 = (-.f32 %2017 (*.f32 #s(literal 1/4 binary32) (/.f32 %2070 %1564)))
%2166 = (*.f32 sinTheta_O %2165)
%2180 = (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1/6 binary32) (/.f32 %2013 %80)) (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 sinTheta_i (*.f32 %1323 %2165)) %1579))))
%2190 = (/.f32 %1595 v)
%2191 = (*.f32 %2003 %1593)
%2195 = (fma.f32 #s(literal -1 binary32) %2190 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %2191) %68)))
%2199 = (*.f32 %2012 %1593)
%2203 = (*.f32 #s(literal 1/2 binary32) (/.f32 %2191 %68))
%2206 = (fma.f32 #s(literal -1 binary32) %2190 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 sinTheta_O %2199) %80) %2203)))
%2210 = (/.f32 %1325 %1624)
%2224 = (*.f32 %2003 %1642)
%2238 = (/.f32 %1667 v)
%2241 = (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 %2003 %1675) %1678) %2003)
%2246 = (*.f32 %1665 (fma.f32 #s(literal -1/2 binary32) (/.f32 %2241 v) (*.f32 #s(literal 1/2 binary32) (/.f32 %2003 %68))))
%2247 = (*.f32 sinTheta_O %2246)
%2265 = (*.f32 %1665 (fma.f32 #s(literal -1/6 binary32) (/.f32 (fma.f32 #s(literal -3 binary32) (/.f32 (*.f32 %2012 %1675) %1678) (fma.f32 #s(literal 2 binary32) (/.f32 (*.f32 %2012 %1694) %1697) %2012)) v) (fma.f32 #s(literal -1/6 binary32) (/.f32 %2012 %80) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_i %2241) %68)))))
%2278 = (/.f32 %1325 %493)
%2281 = (fma.f32 #s(literal -1 binary32) %2278 (*.f32 #s(literal 1/2 binary32) (/.f32 %2005 %497)))
%2289 = (fma.f32 #s(literal -1 binary32) %2278 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 %2014 %503) (*.f32 #s(literal 1/2 binary32) (/.f32 %2004 %497)))))
%2292 = (/.f32 %1595 %1745)
%2296 = (-.f32 %2203 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %2003 %1751) %1754)))
%2325 = (*.f32 %2003 %1791)
%2328 = (/.f32 %1793 v)
%2343 = (/.f32 %2003 %1822)
%2345 = (fma.f32 #s(literal -1 binary32) %2343 (*.f32 #s(literal 1/2 binary32) %2343))
%2348 = (/.f32 sinTheta_i %1818)
%2354 = (/.f32 %2012 %1834)
%2369 = (/.f32 %1355 %637)
%2383 = (/.f32 %1667 %637)
%2396 = (/.f32 %1893 v)
%2397 = (*.f32 %2003 %1891)
%2414 = (*.f32 sinTheta_O v)
%2415 = (/.f32 #s(literal 1 binary32) %2414)
%2416 = (/.f32 sinTheta_i v)
%2417 = (+.f32 %2415 %2416)
%2420 = (/.f32 #s(literal 1 binary32) sinTheta_O)
%2421 = (/.f32 %6 %2414)
%2422 = (fma.f32 #s(literal 6931/10000 binary32) %2420 %2421)
%2426 = (+.f32 sinTheta_i %2420)
%2429 = (/.f32 %6 sinTheta_O)
%2442 = (+.f32 %2415 (+.f32 %2416 (/.f32 %124 sinTheta_O)))
%2449 = (*.f32 #s(literal -1 binary32) %2416)
%2460 = (*.f32 #s(literal -1 binary32) sinTheta_i)
%2496 = (fma.f32 #s(literal 6931/10000 binary32) v %6)
%2506 = (log %19)
%2507 = (log.f32 v)
%2515 = (log.f32 #s(literal 2 binary32))
%2516 = (+.f32 %2515 %2507)
%2521 = (exp.f32 (neg.f32 %2516))
%2523 = (-.f32 %2516 #s(literal 6931/10000 binary32))
%2525 = (exp.f32 %2523)
%2534 = (* -1 %2506)
%2550 = (log.f32 %27)
%2553 = (sqrt.f32 (/.f32 #s(literal 2 binary32) v))
%2554 = (*.f32 v %2553)
%2556 = (pow.f32 %2553 #s(literal 2 binary32))
%2557 = (*.f32 %68 %2556)
%2559 = (*.f32 #s(literal -1 binary32) %2550)
%2560 = (+.f32 %2515 %2559)
%2565 = (exp.f32 (neg.f32 %2560))
%2567 = (-.f32 %2560 #s(literal 6931/10000 binary32))
%2569 = (exp.f32 #s(literal 6931/10000 binary32))
%2571 = (*.f32 %2569 %41)
%2572 = (/.f32 %2571 v)
%2573 = (+.f32 %2569 %2572)
%2575 = (pow.f32 %41 #s(literal 2 binary32))
%2576 = (*.f32 %2569 %2575)
%2577 = (/.f32 %2576 %68)
%2578 = (fma.f32 #s(literal 1/2 binary32) %2577 %2572)
%2579 = (+.f32 %2569 %2578)
%2581 = (pow.f32 %41 #s(literal 3 binary32))
%2582 = (*.f32 %2569 %2581)
%2583 = (/.f32 %2582 %80)
%2585 = (+.f32 %2569 (fma.f32 #s(literal 1/6 binary32) %2583 %2578))
%2591 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %2575 %68) %10)
%2600 = (exp.f32 %2567)
%2603 = (+.f32 %2515 (fma.f32 #s(literal -1 binary32) %2550 %30))
%2606 = (*.f32 v %2569)
%2617 = (fma.f32 #s(literal 1/2 binary32) %2569 (*.f32 #s(literal 1/2 binary32) %2572))
%2620 = (fma.f32 #s(literal 1/4 binary32) %2577 %2617)
%2623 = (fma.f32 #s(literal 1/12 binary32) %2583 %2620)
%2627 = (*.f32 #s(literal 1/2 binary32) (/.f32 %2569 v))
%2628 = (sqrt.f32 %2627)
%2629 = (*.f32 v %2628)
%2631 = (*.f32 %68 %2628)
%2632 = (/.f32 %2571 %2631)
%2633 = (*.f32 #s(literal 1/4 binary32) %2632)
%2634 = (+.f32 %2628 %2633)
%2638 = (*.f32 %80 %2628)
%2639 = (/.f32 %2576 %2638)
%2641 = (+.f32 %2628 (fma.f32 #s(literal 1/8 binary32) %2639 %2633))
%2645 = (pow.f32 %2569 #s(literal 2 binary32))
%2646 = (*.f32 %2645 %2575)
%2647 = (pow.f32 %2628 #s(literal 2 binary32))
%2650 = (-.f32 (*.f32 #s(literal 1/12 binary32) %2582) (*.f32 #s(literal 1/16 binary32) (/.f32 %2646 %2647)))
%2656 = (+.f32 %2628 (fma.f32 #s(literal 1/8 binary32) %2639 (fma.f32 #s(literal 1/4 binary32) %2632 (*.f32 #s(literal 1/2 binary32) (/.f32 %2650 (*.f32 %246 %2628))))))
%2666 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %2571 %68) %2647)
%2670 = (fma.f32 #s(literal 1/4 binary32) (/.f32 %2576 %80) %2666)
%2674 = (fma.f32 #s(literal 1/12 binary32) (/.f32 %2582 %246) %2670)
%2682 = (-.f32 #s(literal 6931/10000 binary32) %2560)
%2686 = (sqrt.f32 %2569)
%2688 = (*.f32 v %2686)
%2689 = (/.f32 %2571 %2688)
%2693 = (*.f32 #s(literal 1/2 binary32) %2576)
%2694 = (pow.f32 %2686 #s(literal 2 binary32))
%2697 = (-.f32 %2693 (*.f32 #s(literal 1/4 binary32) (/.f32 %2646 %2694)))
%2700 = (*.f32 #s(literal 1/2 binary32) (/.f32 %2697 (*.f32 %68 %2686)))
%2707 = (/.f32 (*.f32 %2569 (*.f32 %2697 %41)) %2694)
%2709 = (-.f32 (*.f32 #s(literal 1/6 binary32) %2582) (*.f32 #s(literal 1/2 binary32) %2707))
%2716 = (exp.f32 %2682)
%2718 = (*.f32 %2716 %41)
%2719 = (/.f32 %2718 v)
%2722 = (*.f32 %2716 %2575)
%2723 = (/.f32 %2722 %68)
%2724 = (fma.f32 #s(literal 1/2 binary32) %2723 %2719)
%2727 = (*.f32 %2716 %2581)
%2728 = (/.f32 %2727 %80)
%2734 = (/.f32 %2686 %2554)
%2736 = (*.f32 %2686 %2553)
%2737 = (*.f32 v %2736)
%2738 = (/.f32 %2571 %2737)
%2739 = (/.f32 %2686 %2553)
%2741 = (/.f32 (fma.f32 #s(literal 1/2 binary32) %2738 %2739) v)
%2745 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %2697 (*.f32 %68 %2736)) %2739)
%2757 = (pow.f32 %762 #s(literal 2 binary32))
%2759 = (*.f32 #s(literal 1/2 binary32) (/.f32 %2757 %68))
%2763 = (pow.f32 %762 #s(literal 3 binary32))
%2778 = (/.f32 %2569 %2556)
%2779 = (*.f32 v %2556)
%2780 = (/.f32 %2571 %2779)
%2781 = (+.f32 %2778 %2780)
%2784 = (/.f32 %2576 %2557)
%2785 = (fma.f32 #s(literal 1/2 binary32) %2784 %2781)
%2789 = (/.f32 %2582 (*.f32 %80 %2556))
%2793 = (sqrt.f32 %2716)
%2795 = (*.f32 v %2793)
%2796 = (/.f32 %2718 %2795)
%2800 = (*.f32 #s(literal 1/2 binary32) %2722)
%2803 = (pow.f32 %2793 #s(literal 2 binary32))
%2806 = (-.f32 %2800 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 (pow.f32 %2716 #s(literal 2 binary32)) %2575) %2803)))
%2809 = (*.f32 #s(literal 1/2 binary32) (/.f32 %2806 (*.f32 %68 %2793)))
%2816 = (/.f32 (*.f32 %2716 (*.f32 %2806 %41)) %2803)
%2826 = (+.f32 %2719 %2803)
%2828 = (fma.f32 #s(literal 1/2 binary32) %2723 %2826)
%2833 = (/.f32 (*.f32 %2600 %762) v)
%2838 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %2600 %2757) %68) %2833)
%2846 = (/.f32 #s(literal 1 binary32) %2600)
%2848 = (*.f32 v %2600)
%2850 = (+.f32 %2846 (/.f32 %6 %2848))
%2851 = (/.f32 #s(literal 1 binary32) %2848)
%2852 = (/.f32 %28 %2848)
%2853 = (+.f32 %2851 %2852)
%2856 = (/.f32 %2757 %2600)
%2857 = (/.f32 %6 %2600)
%2858 = (/.f32 %28 %2600)
%2859 = (+.f32 %2846 %2858)
%2860 = (-.f32 %2857 %2859)
%2861 = (*.f32 %762 %2860)
%2862 = (fma.f32 #s(literal 1/2 binary32) %2856 %2861)
%2875 = (*.f32 %68 %2600)
%2876 = (/.f32 %2757 %2875)
%2885 = (/.f32 %2694 %2556)
%2886 = (+.f32 %2780 %2885)
%2889 = (fma.f32 #s(literal 1/2 binary32) %2784 %2886)
%2896 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %2575 %2875) %2850)
%2899 = (*.f32 %80 %2600)
%2904 = (/.f32 %762 %2848)
%2907 = (fma.f32 #s(literal 1/2 binary32) %2876 %2846)
%2914 = (*.f32 %2569 %2565)
%2917 = (*.f32 %2569 (*.f32 %2565 %41))
%2919 = (fma.f32 %2569 %2565 (/.f32 %2917 v))
%2922 = (*.f32 %2569 (*.f32 %2565 %2575))
%2924 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %2922 %68) %2919)
%2927 = (*.f32 %2569 (*.f32 %2565 %2581))
%2936 = (-.f32 (+.f32 #s(literal 1 binary32) %717) %1933)
%2943 = (/.f32 %2576 v)
%2950 = (/.f32 %2582 v)
%2981 = (*.f32 %2569 %2936)
%2982 = (/.f32 %2981 v)
%2986 = (pow.f32 %2936 #s(literal 2 binary32))
%2987 = (*.f32 %2569 %2986)
%2988 = (/.f32 %2987 v)
%2995 = (*.f32 %2569 (pow.f32 %2936 #s(literal 3 binary32)))
%2996 = (/.f32 %2995 v)
%3036 = (*.f32 #s(literal -1/2 binary32) %2569)
%3042 = (fma.f32 #s(literal -1/4 binary32) %2987 (*.f32 #s(literal 1/12 binary32) %2996))
%3053 = (/.f32 %2981 %2631)
%3054 = (*.f32 #s(literal -1/4 binary32) %3053)
%3059 = (/.f32 %2987 %2638)
%3071 = (/.f32 (-.f32 (*.f32 #s(literal -1/12 binary32) %2995) (*.f32 #s(literal 1/16 binary32) (/.f32 (*.f32 %2645 %2986) %2647))) %2629)
%3073 = (/.f32 %2987 %2628)
%3084 = (*.f32 #s(literal 1/4 binary32) %3053)
%3104 = (/.f32 %2981 %68)
%3105 = (fma.f32 #s(literal -1/2 binary32) %3104 %2647)
%3110 = (fma.f32 #s(literal -1/2 binary32) %3104 (fma.f32 #s(literal 1/4 binary32) (/.f32 %2987 %80) %2647))
%3114 = (fma.f32 #s(literal -1 binary32) (/.f32 %3042 %80) %3105)
%3121 = (fma.f32 #s(literal -1/4 binary32) %2576 (*.f32 #s(literal -1/12 binary32) %2950))
%3125 = (/.f32 %2571 %2686)
%3135 = (-.f32 (*.f32 #s(literal -1/6 binary32) %2582) (*.f32 #s(literal -1/2 binary32) %2707))
%3150 = (/.f32 (fma.f32 #s(literal -1 binary32) %2718 (*.f32 #s(literal -1/2 binary32) (/.f32 %2722 v))) v)
%3159 = (/.f32 (fma.f32 #s(literal -1 binary32) %2718 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/6 binary32) (/.f32 %2727 v) %2800) v))) v)
%3169 = (/.f32 %2571 %2736)
%3214 = (*.f32 #s(literal 1/2 binary32) %2571)
%3228 = (/.f32 %2571 %2556)
%3232 = (/.f32 (fma.f32 #s(literal -1 binary32) %3228 (*.f32 #s(literal -1/2 binary32) (/.f32 %2576 %2779))) v)
%3243 = (/.f32 (fma.f32 #s(literal -1 binary32) %3228 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/6 binary32) (/.f32 %2582 %2779) (*.f32 #s(literal 1/2 binary32) (/.f32 %2576 %2556))) v))) v)
%3247 = (/.f32 %2718 %2793)
%3273 = (*.f32 %2600 %41)
%3278 = (*.f32 %2600 %2575)
%3295 = (-.f32 %2859 %2857)
%3299 = (/.f32 %2575 %2848)
%3300 = (*.f32 %41 %3295)
%3309 = (/.f32 %2575 %2600)
%3310 = (fma.f32 #s(literal 1/2 binary32) %3309 %3300)
%3313 = (/.f32 %2581 %2848)
%3332 = (/.f32 %41 %2600)
(approx cosTheta_i #s(literal 0 binary32))
(approx cosTheta_i cosTheta_i)
(approx %5 %6)
(approx %9 %10)
(approx %13 #s(literal 6931/10000 binary32))
(approx %13 %16)
(approx %25 %31)
(approx %25 %33)
(approx %36 (*.f32 #s(literal -1 binary32) %38))
(approx %36 %41)
(approx %43 %45)
(approx %43 (fma.f32 #s(literal -1 binary32) %44 %10))
(approx %49 %38)
(approx %49 (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -1 binary32) %6 %28)))
(approx %56 %57)
(approx %56 (+.f32 %57 (/.f32 %60 v)))
(approx %56 (+.f32 %57 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %67 %68) %71))))
(approx %56 (+.f32 %57 (*.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 %79 %80) %84) %71))))
(approx %90 %91)
(approx %90 (+.f32 %91 (/.f32 %94 v)))
(approx %90 (+.f32 %91 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %98 %68) %101))))
(approx %90 (+.f32 %91 (*.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 %106 %80) (*.f32 #s(literal 1/2 binary32) (/.f32 %108 %68))) %101))))
(approx (* -1 %9) (*.f32 #s(literal -1 binary32) %10))
(approx %122 %126)
(approx %122 (-.f32 (+.f32 %124 (fma.f32 #s(literal -1 binary32) %10 %30)) #s(literal 6931/10000 binary32)))
(approx %133 %134)
(approx %133 (fma.f32 cosTheta_O %59 %134))
(approx %133 (fma.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) %138 %70) %134))
(approx %133 (fma.f32 cosTheta_i (fma.f32 cosTheta_O %57 (*.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) %142 (*.f32 #s(literal 1/2 binary32) %143)))) %134))
(approx %151 %152)
(approx %151 (fma.f32 #s(literal 1/2 binary32) %60 %152))
(approx %151 (fma.f32 #s(literal 1/2 binary32) %134 (*.f32 cosTheta_i %158)))
(approx %151 (fma.f32 #s(literal 1/2 binary32) %134 (*.f32 cosTheta_i %166)))
(approx %170 %171)
(approx %170 (+.f32 %171 (*.f32 #s(literal 1/4 binary32) (/.f32 %60 %171))))
(approx %170 (+.f32 %171 (*.f32 cosTheta_i (fma.f32 #s(literal 1/4 binary32) %177 (*.f32 #s(literal 1/2 binary32) (/.f32 %185 %171))))))
(approx %170 (+.f32 %171 (*.f32 cosTheta_i (fma.f32 #s(literal 1/4 binary32) %177 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %200 %171) (*.f32 #s(literal 1/2 binary32) (/.f32 %184 %171))))))))
(approx %210 %211)
(approx %210 (fma.f32 #s(literal 1/4 binary32) (/.f32 %60 %213) %211))
(approx %210 (fma.f32 cosTheta_i (fma.f32 #s(literal 1/4 binary32) %217 (*.f32 #s(literal 1/2 binary32) (/.f32 %185 %213))) %211))
(approx %210 (fma.f32 cosTheta_i (fma.f32 #s(literal 1/4 binary32) %217 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %200 %213) (*.f32 #s(literal 1/2 binary32) (/.f32 %184 %213))))) %211))
(approx %232 %235)
(approx %232 (+.f32 %235 (*.f32 #s(literal 1/4 binary32) (/.f32 %60 %237))))
(approx %232 (+.f32 %235 (*.f32 cosTheta_i (fma.f32 #s(literal 1/4 binary32) %242 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i %251) %235))))))
(approx %232 (+.f32 %235 (*.f32 cosTheta_i (fma.f32 #s(literal 1/4 binary32) %242 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal 1/12 binary32) (/.f32 %192 %246)) (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %57 %251)) %263)))) %235) (*.f32 #s(literal 1/2 binary32) (/.f32 %251 %235))))))))
(approx %278 %181)
(approx %278 (fma.f32 #s(literal 1/2 binary32) %60 %181))
(approx %278 (fma.f32 cosTheta_i %158 %181))
(approx %278 (fma.f32 cosTheta_i %166 %181))
(approx %287 %288)
(approx %287 (fma.f32 #s(literal 1/2 binary32) %290 %288))
(approx %287 (fma.f32 cosTheta_i %296 %288))
(approx %287 (fma.f32 cosTheta_i %302 %288))
(approx %305 %247)
(approx %305 (fma.f32 #s(literal 1/2 binary32) %290 %247))
(approx %305 (fma.f32 cosTheta_i %296 %247))
(approx %305 (fma.f32 cosTheta_i %302 %247))
(approx %314 %315)
(approx %314 %317)
(approx %319 %320)
(approx %319 (+.f32 %320 (*.f32 #s(literal 1/2 binary32) (/.f32 %60 %322))))
(approx %319 (+.f32 %320 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) %327 (*.f32 #s(literal 1/2 binary32) (/.f32 %333 %320))))))
(approx %319 (+.f32 %320 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) %327 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %348 %320) (*.f32 #s(literal 1/2 binary32) (/.f32 %332 %320))))))))
(approx %358 %359)
(approx %358 (+.f32 %359 %363))
(approx %358 (+.f32 %359 (*.f32 cosTheta_i %370)))
(approx %358 (+.f32 %359 (*.f32 cosTheta_i %380)))
(approx %386 %388)
(approx %386 (fma.f32 #s(literal 1/2 binary32) (/.f32 %60 %391) %388))
(approx %386 (fma.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) %395 (*.f32 #s(literal 1/2 binary32) (/.f32 %333 %390))) %388))
(approx %386 (fma.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) %395 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %348 %390) (*.f32 #s(literal 1/2 binary32) (/.f32 %332 %390))))) %388))
(approx %409 %410)
(approx %409 (+.f32 %410 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O %412))))
(approx %409 (+.f32 %410 (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %417 (*.f32 #s(literal 1/2 binary32) (*.f32 %66 %412))))))
(approx %409 (+.f32 %410 (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %417 (*.f32 cosTheta_i (fma.f32 #s(literal -1/6 binary32) (*.f32 %78 %412) (*.f32 #s(literal 1/2 binary32) (*.f32 %66 %410))))))))
(approx %435 (+.f32 %91 (*.f32 cosTheta_i (fma.f32 cosTheta_i %447 %101))))
(approx %435 (+.f32 %91 (*.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 cosTheta_i %470 %447) %101))))
(approx %477 %234)
(approx %477 (fma.f32 #s(literal 1/2 binary32) %233 (*.f32 #s(literal 1/2 binary32) %290)))
(approx %477 (fma.f32 #s(literal 1/2 binary32) %233 (*.f32 cosTheta_i %296)))
(approx %477 (fma.f32 #s(literal 1/2 binary32) %233 (*.f32 cosTheta_i %302)))
(approx %489 %491)
(approx %489 (+.f32 %491 %494))
(approx %489 (fma.f32 cosTheta_i %500 %491))
(approx %489 (fma.f32 cosTheta_i %508 %491))
(approx %511 %512)
(approx %511 (+.f32 %512 (*.f32 #s(literal 1/2 binary32) (/.f32 %362 %514))))
(approx %511 (+.f32 %512 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) %519 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i %526) %512))))))
(approx %511 (+.f32 %512 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) %519 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %78 %359) %80)) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %359 %526)) %539)))) %512) (*.f32 #s(literal 1/2 binary32) (/.f32 %526 %512))))))))
(approx %553 %522)
(approx %553 (+.f32 %363 %522))
(approx %553 (fma.f32 cosTheta_i %370 %522))
(approx %553 (fma.f32 cosTheta_i %380 %522))
(approx %561 %562)
(approx %561 (+.f32 %562 (*.f32 #s(literal -1 binary32) (/.f32 (*.f32 cosTheta_O %564) v))))
(approx %561 (+.f32 %562 (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %571 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %66 %564) %68))))))
(approx %561 (+.f32 %562 (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %571 (*.f32 cosTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %78 %564) %80) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %66 %562) %68))))))))
(approx %590 %591)
(approx %590 (+.f32 %591 (/.f32 %6 %593)))
(approx %590 (fma.f32 cosTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i %600)) %604) %591))
(approx %590 (fma.f32 cosTheta_i (-.f32 (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1/6 binary32) %609 (fma.f32 #s(literal 1/2 binary32) %609 (/.f32 (*.f32 cosTheta_O %600) v))))) %600)) %604) %591))
(approx %621 %622)
(approx %621 (+.f32 %494 %622))
(approx %621 (fma.f32 cosTheta_i %500 %622))
(approx %621 (fma.f32 cosTheta_i %508 %622))
(approx %632 %635)
(approx %632 (+.f32 %635 (/.f32 %94 %637)))
(approx %632 (fma.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %98 %641) %643) %635))
(approx %632 (fma.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 %106 %647) (*.f32 #s(literal 1/2 binary32) (/.f32 %108 %641))) %643) %635))
(approx %655 (fma.f32 cosTheta_i (+.f32 %643 (/.f32 (*.f32 cosTheta_i %447) %634)) %635))
(approx %655 (fma.f32 cosTheta_i (fma.f32 cosTheta_i (+.f32 (/.f32 (*.f32 cosTheta_i %470) %634) (/.f32 %447 %634)) %643) %635))
(approx %670 %673)
(approx %670 (fma.f32 %672 %57 (/.f32 (*.f32 cosTheta_O %675) v)))
(approx %670 (fma.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %66 %675) %68) %683) %673))
(approx %670 (fma.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %78 %675) %80) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %66 %673) %68))) %683) %673))
(approx %13 (*.f32 cosTheta_i %698))
(approx %25 (*.f32 cosTheta_i (-.f32 %698 %704)))
(approx %36 (*.f32 cosTheta_i (+.f32 cosTheta_O %709)))
(approx %43 (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) (/.f32 %38 %701) %697)))
(approx %49 %717)
(approx %49 (*.f32 cosTheta_i (-.f32 %720 cosTheta_O)))
(approx %56 %724)
(approx %90 %727)
(approx %122 (*.f32 cosTheta_i (-.f32 %731 %698)))
(approx %133 %735)
(approx %151 %737)
(approx %170 %739)
(approx %210 (/.f32 %739 v))
(approx %232 %745)
(approx %278 %747)
(approx %287 (/.f32 %747 %68))
(approx %305 (pow.f32 %745 #s(literal 2 binary32)))
(approx %314 (*.f32 cosTheta_i (-.f32 %698 %731)))
(approx %319 %756)
(approx %358 %758)
(approx %386 (/.f32 %756 %387))
(approx %409 (exp.f32 %762))
(approx %435 %767)
(approx %477 %744)
(approx %489 (/.f32 %724 %490))
(approx %511 %772)
(approx %553 (pow.f32 %772 #s(literal 2 binary32)))
(approx %561 %777)
(approx %590 (/.f32 #s(literal 1 binary32) %777))
(approx %621 (/.f32 (pow.f32 %756 #s(literal 2 binary32)) %490))
(approx %632 (/.f32 %727 %634))
(approx %655 (/.f32 %767 %634))
(approx %670 (*.f32 %672 %724))
(approx %13 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (-.f32 %790 (*.f32 #s(literal 6931/10000 binary32) %696)))))
(approx %25 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %697 (*.f32 #s(literal -1 binary32) (/.f32 %31 cosTheta_i))))))
(approx %36 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) cosTheta_O %720))))
(approx %43 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %697 %704))))
(approx %49 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (-.f32 %709 (*.f32 #s(literal -1 binary32) cosTheta_O)))))
(approx %122 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %126 cosTheta_i)) %790))))
(approx %314 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %697 (*.f32 #s(literal -1 binary32) (/.f32 %315 cosTheta_i))))))
(approx cosTheta_O cosTheta_O)
(approx %56 (+.f32 %57 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %830 %68) %832))))
(approx %56 (+.f32 %57 (*.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 %839 %80) %842) %832))))
(approx %90 (+.f32 %91 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %849 %68) %851))))
(approx %90 (+.f32 %91 (*.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 %857 %80) (*.f32 #s(literal 1/2 binary32) (/.f32 %848 %68))) %851))))
(approx %133 (fma.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) %866 %59) %134))
(approx %133 (fma.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) %870 (*.f32 #s(literal 1/2 binary32) %871)) %59) %134))
(approx %151 (fma.f32 #s(literal 1/2 binary32) %134 (*.f32 cosTheta_O %878)))
(approx %151 (fma.f32 #s(literal 1/2 binary32) %134 (*.f32 cosTheta_O %885)))
(approx %170 (+.f32 %171 (*.f32 cosTheta_O (fma.f32 #s(literal 1/4 binary32) %889 (*.f32 #s(literal 1/2 binary32) (/.f32 %894 %171))))))
(approx %170 (+.f32 %171 (*.f32 cosTheta_O (fma.f32 #s(literal 1/4 binary32) %889 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %908 %171) (*.f32 #s(literal 1/2 binary32) (/.f32 %893 %171))))))))
(approx %210 (fma.f32 cosTheta_O (fma.f32 #s(literal 1/4 binary32) %918 (*.f32 #s(literal 1/2 binary32) (/.f32 %894 %213))) %211))
(approx %210 (fma.f32 cosTheta_O (fma.f32 #s(literal 1/4 binary32) %918 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %908 %213) (*.f32 #s(literal 1/2 binary32) (/.f32 %893 %213))))) %211))
(approx %232 (+.f32 %235 (*.f32 cosTheta_O (fma.f32 #s(literal 1/4 binary32) %932 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %937) %235))))))
(approx %232 (+.f32 %235 (*.f32 cosTheta_O (fma.f32 #s(literal 1/4 binary32) %932 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal 1/12 binary32) (/.f32 %838 %246)) (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 cosTheta_i (*.f32 %57 %937)) %263)))) %235) (*.f32 #s(literal 1/2 binary32) (/.f32 %937 %235))))))))
(approx %278 (fma.f32 cosTheta_O %878 %181))
(approx %278 (fma.f32 cosTheta_O %885 %181))
(approx %287 (fma.f32 cosTheta_O %969 %288))
(approx %287 (fma.f32 cosTheta_O %975 %288))
(approx %305 (fma.f32 cosTheta_O %969 %247))
(approx %305 (fma.f32 cosTheta_O %975 %247))
(approx %319 (+.f32 %320 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %985 %320) (*.f32 #s(literal 1/2 binary32) %987)))))
(approx %319 (+.f32 %320 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) %987 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %1000 %320) (*.f32 #s(literal 1/2 binary32) (/.f32 %984 %320))))))))
(approx %358 (+.f32 %359 (*.f32 cosTheta_O %1014)))
(approx %358 (+.f32 %359 (*.f32 cosTheta_O %1024)))
(approx %386 (fma.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %985 %390) (*.f32 #s(literal 1/2 binary32) %1029)) %388))
(approx %386 (fma.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) %1029 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %1000 %390) (*.f32 #s(literal 1/2 binary32) (/.f32 %984 %390))))) %388))
(approx %409 (+.f32 %410 (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %412 (*.f32 #s(literal 1/2 binary32) (*.f32 cosTheta_O %1042))))))
(approx %409 (+.f32 %410 (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %412 (*.f32 cosTheta_O (fma.f32 #s(literal -1/6 binary32) (*.f32 cosTheta_O (*.f32 %837 %410)) (*.f32 #s(literal 1/2 binary32) %1042)))))))
(approx %435 (+.f32 %91 (*.f32 cosTheta_O (fma.f32 cosTheta_O %1065 %851))))
(approx %435 (+.f32 %91 (*.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 cosTheta_O %1084 %1065) %851))))
(approx %477 (fma.f32 #s(literal 1/2 binary32) %233 (*.f32 cosTheta_O %969)))
(approx %477 (fma.f32 #s(literal 1/2 binary32) %233 (*.f32 cosTheta_O %975)))
(approx %489 (fma.f32 cosTheta_O %1098 %491))
(approx %489 (fma.f32 cosTheta_O %1105 %491))
(approx %511 (+.f32 %512 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %1111) %512) (*.f32 #s(literal 1/2 binary32) %1114)))))
(approx %511 (+.f32 %512 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) %1114 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal 1/6 binary32) (/.f32 %1018 %80)) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i (*.f32 %359 %1111)) %539)))) %512) (*.f32 #s(literal 1/2 binary32) (/.f32 %1111 %512))))))))
(approx %553 (fma.f32 cosTheta_O %1014 %522))
(approx %553 (fma.f32 cosTheta_O %1024 %522))
(approx %561 (+.f32 %562 (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %1141 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %1142) %68))))))
(approx %561 (+.f32 %562 (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %1141 (*.f32 cosTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %837 %562)) %80) (*.f32 #s(literal 1/2 binary32) (/.f32 %1142 %68))))))))
(approx %590 (fma.f32 cosTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O %1163)) %1167) %591))
(approx %590 (fma.f32 cosTheta_O (-.f32 (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1/6 binary32) %1171 (fma.f32 #s(literal 1/2 binary32) %1171 (/.f32 (*.f32 cosTheta_i %1163) v))))) %1163)) %1167) %591))
(approx %621 (fma.f32 cosTheta_O %1098 %622))
(approx %621 (fma.f32 cosTheta_O %1105 %622))
(approx %632 (fma.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %849 %641) %1188) %635))
(approx %632 (fma.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 %857 %647) (*.f32 #s(literal 1/2 binary32) (/.f32 %848 %641))) %1188) %635))
(approx %655 (fma.f32 cosTheta_O (+.f32 (/.f32 (*.f32 cosTheta_O %1065) %634) %1188) %635))
(approx %655 (fma.f32 cosTheta_O (fma.f32 cosTheta_O (+.f32 (/.f32 (*.f32 cosTheta_O %1084) %634) (/.f32 %1065 %634)) %1188) %635))
(approx %670 (fma.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %1211) %68) %1214) %673))
(approx %670 (fma.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %837 %673)) %80) (*.f32 #s(literal 1/2 binary32) (/.f32 %1211 %68))) %1214) %673))
(approx %13 (*.f32 cosTheta_O %1229))
(approx %25 (*.f32 cosTheta_O (-.f32 %1229 %1235)))
(approx %36 (*.f32 cosTheta_O (+.f32 cosTheta_i %1240)))
(approx %43 (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) (/.f32 %38 %1232) %1228)))
(approx %49 (*.f32 cosTheta_O (-.f32 %1249 cosTheta_i)))
(approx %122 (*.f32 cosTheta_O (-.f32 %1255 %1229)))
(approx %314 (*.f32 cosTheta_O (-.f32 %1229 %1255)))
(approx %13 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (-.f32 %1262 (*.f32 #s(literal 6931/10000 binary32) %1227)))))
(approx %25 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %1228 (*.f32 #s(literal -1 binary32) (/.f32 %31 cosTheta_O))))))
(approx %36 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) cosTheta_i %1249))))
(approx %43 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %1228 %1235))))
(approx %49 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (-.f32 %1240 (*.f32 #s(literal -1 binary32) cosTheta_i)))))
(approx %122 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %126 cosTheta_O)) %1262))))
(approx %314 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %1228 (*.f32 #s(literal -1 binary32) (/.f32 %315 cosTheta_O))))))
(approx sinTheta_i sinTheta_i)
(approx %22 %28)
(approx %23 %29)
(approx %24 %27)
(approx %24 %30)
(approx %25 %1304)
(approx %25 (-.f32 %1307 %27))
(approx %35 #s(literal 1 binary32))
(approx %36 %1311)
(approx %36 (-.f32 (fma.f32 #s(literal -1 binary32) %28 %6) #s(literal 1 binary32)))
(approx %43 %1316)
(approx %43 (-.f32 %1306 %27))
(approx %49 %1320)
(approx %49 %762)
(approx %56 %1323)
(approx %56 (+.f32 %1323 (*.f32 #s(literal -1 binary32) (/.f32 %1326 v))))
(approx %56 (+.f32 %1323 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1332 (*.f32 #s(literal 1/2 binary32) (/.f32 %1334 %68))))))
(approx %56 (+.f32 %1323 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1332 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 %1342 %80) %1346))))))
(approx %90 %1353)
(approx %90 (+.f32 %1353 (*.f32 #s(literal -1 binary32) (/.f32 %1356 v))))
(approx %90 (+.f32 %1353 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1362 (*.f32 #s(literal 1/2 binary32) (/.f32 %1363 %68))))))
(approx %90 (+.f32 %1353 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1362 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 %1370 %80) (*.f32 #s(literal 1/2 binary32) (/.f32 %1372 %68))))))))
(approx %122 %1382)
(approx %122 %776)
(approx %133 %1385)
(approx %133 (fma.f32 #s(literal -1 binary32) %1326 %1385))
(approx %133 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1331 (*.f32 #s(literal 1/2 binary32) %1389)) %1385))
(approx %133 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1331 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) %1394 (*.f32 #s(literal 1/2 binary32) %1395)))) %1385))
(approx %151 %1402)
(approx %151 (fma.f32 #s(literal -1/2 binary32) %1326 %1402))
(approx %151 (fma.f32 #s(literal 1/2 binary32) %1385 (*.f32 sinTheta_i %1407)))
(approx %151 (fma.f32 #s(literal 1/2 binary32) %1385 (*.f32 sinTheta_i %1415)))
(approx %170 %1419)
(approx %170 (+.f32 %1419 (*.f32 #s(literal -1/4 binary32) (/.f32 %1326 %1419))))
(approx %170 (+.f32 %1419 (*.f32 sinTheta_i (fma.f32 #s(literal -1/4 binary32) %1426 (*.f32 #s(literal 1/2 binary32) (/.f32 %1433 %1419))))))
(approx %170 (+.f32 %1419 (*.f32 sinTheta_i (fma.f32 #s(literal -1/4 binary32) %1426 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %1448 %1419) (*.f32 #s(literal 1/2 binary32) (/.f32 %1432 %1419))))))))
(approx %210 %1458)
(approx %210 (fma.f32 #s(literal -1/4 binary32) (/.f32 %1326 %1460) %1458))
(approx %210 (fma.f32 sinTheta_i (fma.f32 #s(literal -1/4 binary32) %1464 (*.f32 #s(literal 1/2 binary32) (/.f32 %1433 %1460))) %1458))
(approx %210 (fma.f32 sinTheta_i (fma.f32 #s(literal -1/4 binary32) %1464 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %1448 %1460) (*.f32 #s(literal 1/2 binary32) (/.f32 %1432 %1460))))) %1458))
(approx %232 %1480)
(approx %232 (+.f32 %1480 (*.f32 #s(literal -1/4 binary32) (/.f32 %1326 %1482))))
(approx %232 (+.f32 %1480 (*.f32 sinTheta_i (fma.f32 #s(literal -1/4 binary32) %1487 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_i %1494) %1480))))))
(approx %232 (+.f32 %1480 (*.f32 sinTheta_i (fma.f32 #s(literal -1/4 binary32) %1487 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1/12 binary32) (/.f32 %1440 %246)) (*.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %1323 %1494)) %1506)))) %1480) (*.f32 #s(literal 1/2 binary32) (/.f32 %1494 %1480))))))))
(approx %278 %1429)
(approx %278 (fma.f32 #s(literal -1/2 binary32) %1326 %1429))
(approx %278 (fma.f32 sinTheta_i %1407 %1429))
(approx %278 (fma.f32 sinTheta_i %1415 %1429))
(approx %287 %1527)
(approx %287 (fma.f32 #s(literal -1/2 binary32) %1529 %1527))
(approx %287 (fma.f32 sinTheta_i %1535 %1527))
(approx %287 (fma.f32 sinTheta_i %1541 %1527))
(approx %305 %1490)
(approx %305 (fma.f32 #s(literal -1/2 binary32) %1529 %1490))
(approx %305 (fma.f32 sinTheta_i %1535 %1490))
(approx %305 (fma.f32 sinTheta_i %1541 %1490))
(approx %314 %1551)
(approx %314 (-.f32 %1307 %1381))
(approx %319 %1555)
(approx %319 (+.f32 %1555 (*.f32 #s(literal -1/2 binary32) (/.f32 %1326 %1557))))
(approx %319 (+.f32 %1555 (*.f32 sinTheta_i (fma.f32 #s(literal -1/2 binary32) %1562 (*.f32 #s(literal 1/2 binary32) (/.f32 %1568 %1555))))))
(approx %319 (+.f32 %1555 (*.f32 sinTheta_i (fma.f32 #s(literal -1/2 binary32) %1562 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %1583 %1555) (*.f32 #s(literal 1/2 binary32) (/.f32 %1567 %1555))))))))
(approx %358 %1593)
(approx %358 (+.f32 %1593 (*.f32 #s(literal -1 binary32) %1597)))
(approx %358 (+.f32 %1593 (*.f32 sinTheta_i %1606)))
(approx %358 (+.f32 %1593 (*.f32 sinTheta_i %1617)))
(approx %386 %1621)
(approx %386 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1326 %1624) %1621))
(approx %386 (fma.f32 sinTheta_i (fma.f32 #s(literal -1/2 binary32) %1628 (*.f32 #s(literal 1/2 binary32) (/.f32 %1568 %1623))) %1621))
(approx %386 (fma.f32 sinTheta_i (fma.f32 #s(literal -1/2 binary32) %1628 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %1583 %1623) (*.f32 #s(literal 1/2 binary32) (/.f32 %1567 %1623))))) %1621))
(approx %409 %1642)
(approx %409 (+.f32 %1642 (*.f32 sinTheta_O %1644)))
(approx %409 (+.f32 %1642 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (*.f32 %1333 %1644) (*.f32 sinTheta_O %1642)))))
(approx %409 (+.f32 %1642 (*.f32 sinTheta_i (fma.f32 sinTheta_O %1642 (*.f32 sinTheta_i (fma.f32 #s(literal 1/6 binary32) (*.f32 %1341 %1644) (*.f32 #s(literal 1/2 binary32) (*.f32 %1333 %1642))))))))
(approx %435 %1665)
(approx %435 (+.f32 %1665 (*.f32 #s(literal -1 binary32) (/.f32 %1668 v))))
(approx %435 (+.f32 %1665 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1674 %1686))))
(approx %435 (+.f32 %1665 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1674 (*.f32 sinTheta_i (fma.f32 sinTheta_i %1708 %1685))))))
(approx %477 %1479)
(approx %477 (fma.f32 #s(literal -1/2 binary32) %1529 %1479))
(approx %477 (fma.f32 #s(literal 1/2 binary32) %1478 (*.f32 sinTheta_i %1535)))
(approx %477 (fma.f32 #s(literal 1/2 binary32) %1478 (*.f32 sinTheta_i %1541)))
(approx %489 %1724)
(approx %489 (fma.f32 #s(literal -1 binary32) %1726 %1724))
(approx %489 (fma.f32 sinTheta_i %1732 %1724))
(approx %489 (fma.f32 sinTheta_i %1740 %1724))
(approx %511 %1743)
(approx %511 (+.f32 %1743 (*.f32 #s(literal -1/2 binary32) (/.f32 %1596 %1745))))
(approx %511 (+.f32 %1743 (*.f32 sinTheta_i (fma.f32 #s(literal -1/2 binary32) %1750 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_i %1757) %1743))))))
(approx %511 (+.f32 %1743 (*.f32 sinTheta_i (fma.f32 #s(literal -1/2 binary32) %1750 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %1341 %1593) %80)) (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %1593 %1757)) %1770)))) %1743) (*.f32 #s(literal 1/2 binary32) (/.f32 %1757 %1743))))))))
(approx %553 %1753)
(approx %553 (fma.f32 #s(literal -1 binary32) %1597 %1753))
(approx %553 (fma.f32 sinTheta_i %1606 %1753))
(approx %553 (fma.f32 sinTheta_i %1617 %1753))
(approx %561 %1791)
(approx %561 (+.f32 %1791 (/.f32 (*.f32 sinTheta_O %1793) v)))
(approx %561 (+.f32 %1791 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1333 %1793) %68) %1801))))
(approx %561 (+.f32 %1791 (*.f32 sinTheta_i (fma.f32 sinTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %1341 %1793) %80) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1333 %1791) %68))) %1801))))
(approx %590 %1816)
(approx %590 (fma.f32 #s(literal -1 binary32) (/.f32 %28 %1818) %1816))
(approx %590 (fma.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i %1825)) %1828) %1816))
(approx %590 (fma.f32 sinTheta_i (-.f32 (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 sinTheta_O %1825) v) (fma.f32 #s(literal -1/2 binary32) %1835 (*.f32 #s(literal 1/6 binary32) %1835))))) %1825)) %1828) %1816))
(approx %621 %1846)
(approx %621 (fma.f32 #s(literal -1 binary32) %1726 %1846))
(approx %621 (fma.f32 sinTheta_i %1732 %1846))
(approx %621 (fma.f32 sinTheta_i %1740 %1846))
(approx %632 %1854)
(approx %632 (fma.f32 #s(literal -1 binary32) (/.f32 %1356 %637) %1854))
(approx %632 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1859 (*.f32 #s(literal 1/2 binary32) (/.f32 %1363 %641))) %1854))
(approx %632 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1859 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 %1370 %647) (*.f32 #s(literal 1/2 binary32) (/.f32 %1372 %641))))) %1854))
(approx %655 %1873)
(approx %655 (fma.f32 #s(literal -1 binary32) (/.f32 %1668 %637) %1873))
(approx %655 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1878 (/.f32 %1686 %634)) %1873))
(approx %655 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1878 (*.f32 sinTheta_i (+.f32 (/.f32 (*.f32 sinTheta_i %1708) %634) (/.f32 %1685 %634)))) %1873))
(approx %670 %1891)
(approx %670 (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 sinTheta_O %1893) v) %1891))
(approx %670 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1899 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1333 %1893) %68))) %1891))
(approx %670 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1899 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %1341 %1893) %80) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1333 %1891) %68))))) %1891))
(approx %24 (*.f32 sinTheta_i %1919))
(approx %25 (*.f32 #s(literal -1 binary32) %29))
(approx %25 (*.f32 sinTheta_i (-.f32 %1926 %1919)))
(approx %35 (*.f32 sinTheta_i %1930))
(approx %36 %1933)
(approx %36 (*.f32 sinTheta_i (-.f32 %1935 %1930)))
(approx %43 (*.f32 sinTheta_i (-.f32 (fma.f32 #s(literal -1 binary32) %1918 %1925) %1917)))
(approx %49 (*.f32 sinTheta_i (-.f32 %1930 %1935)))
(approx %122 (*.f32 sinTheta_i (-.f32 %1948 %1926)))
(approx %314 (*.f32 sinTheta_i (-.f32 %1926 %1948)))
(approx %24 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 %1955 %1917))))
(approx %25 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1304 sinTheta_i)) %1955))))
(approx %35 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 %1966 %1924))))
(approx %36 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1311 sinTheta_i)) %1966))))
(approx %43 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) (/.f32 %1977 sinTheta_i) %1918))))
(approx %49 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) sinTheta_O (*.f32 #s(literal -1 binary32) (/.f32 %1320 sinTheta_i))))))
(approx %122 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1918 (*.f32 #s(literal -1 binary32) (/.f32 %1382 sinTheta_i))))))
(approx %314 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1551 sinTheta_i)) %1955))))
(approx sinTheta_O sinTheta_O)
(approx %56 (+.f32 %1323 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2002 (*.f32 #s(literal 1/2 binary32) (/.f32 %2005 %68))))))
(approx %56 (+.f32 %1323 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2002 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 %2014 %80) %2017))))))
(approx %90 (+.f32 %1353 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2024 (*.f32 #s(literal 1/2 binary32) (/.f32 %2026 %68))))))
(approx %90 (+.f32 %1353 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2024 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 %2034 %80) (*.f32 #s(literal 1/2 binary32) (/.f32 %2025 %68))))))))
(approx %133 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %1325 (*.f32 #s(literal 1/2 binary32) %2044)) %1385))
(approx %133 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %1325 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) %2049 (*.f32 #s(literal 1/2 binary32) %2050)))) %1385))
(approx %151 (fma.f32 #s(literal 1/2 binary32) %1385 (*.f32 sinTheta_O %2058)))
(approx %151 (fma.f32 #s(literal 1/2 binary32) %1385 (*.f32 sinTheta_O %2065)))
(approx %170 (+.f32 %1419 (*.f32 sinTheta_O (fma.f32 #s(literal -1/4 binary32) %2069 (*.f32 #s(literal 1/2 binary32) (/.f32 %2074 %1419))))))
(approx %170 (+.f32 %1419 (*.f32 sinTheta_O (fma.f32 #s(literal -1/4 binary32) %2069 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %2088 %1419) (*.f32 #s(literal 1/2 binary32) (/.f32 %2073 %1419))))))))
(approx %210 (fma.f32 sinTheta_O (fma.f32 #s(literal -1/4 binary32) %2098 (*.f32 #s(literal 1/2 binary32) (/.f32 %2074 %1460))) %1458))
(approx %210 (fma.f32 sinTheta_O (fma.f32 #s(literal -1/4 binary32) %2098 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %2088 %1460) (*.f32 #s(literal 1/2 binary32) (/.f32 %2073 %1460))))) %1458))
(approx %232 (+.f32 %1480 (*.f32 sinTheta_O (fma.f32 #s(literal -1/4 binary32) %2112 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %2117) %1480))))))
(approx %232 (+.f32 %1480 (*.f32 sinTheta_O (fma.f32 #s(literal -1/4 binary32) %2112 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1/12 binary32) (/.f32 %2013 %246)) (*.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 sinTheta_i (*.f32 %1323 %2117)) %1506)))) %1480) (*.f32 #s(literal 1/2 binary32) (/.f32 %2117 %1480))))))))
(approx %278 (fma.f32 sinTheta_O %2058 %1429))
(approx %278 (fma.f32 sinTheta_O %2065 %1429))
(approx %287 (fma.f32 sinTheta_O %2149 %1527))
(approx %287 (fma.f32 sinTheta_O %2155 %1527))
(approx %305 (fma.f32 sinTheta_O %2149 %1490))
(approx %305 (fma.f32 sinTheta_O %2155 %1490))
(approx %319 (+.f32 %1555 (*.f32 sinTheta_O (fma.f32 #s(literal -1/2 binary32) %2162 (*.f32 #s(literal 1/2 binary32) (/.f32 %2166 %1555))))))
(approx %319 (+.f32 %1555 (*.f32 sinTheta_O (fma.f32 #s(literal -1/2 binary32) %2162 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %2180 %1555) (*.f32 #s(literal 1/2 binary32) (/.f32 %2165 %1555))))))))
(approx %358 (+.f32 %1593 (*.f32 sinTheta_O %2195)))
(approx %358 (+.f32 %1593 (*.f32 sinTheta_O %2206)))
(approx %386 (fma.f32 sinTheta_O (fma.f32 #s(literal -1/2 binary32) %2210 (*.f32 #s(literal 1/2 binary32) (/.f32 %2166 %1623))) %1621))
(approx %386 (fma.f32 sinTheta_O (fma.f32 #s(literal -1/2 binary32) %2210 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %2180 %1623) (*.f32 #s(literal 1/2 binary32) (/.f32 %2165 %1623))))) %1621))
(approx %409 (+.f32 %1642 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (*.f32 sinTheta_O %2224) %1644))))
(approx %409 (+.f32 %1642 (*.f32 sinTheta_O (fma.f32 sinTheta_O (fma.f32 #s(literal 1/6 binary32) (*.f32 sinTheta_O (*.f32 %2012 %1642)) (*.f32 #s(literal 1/2 binary32) %2224)) %1644))))
(approx %435 (+.f32 %1665 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2238 %2247))))
(approx %435 (+.f32 %1665 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2238 (*.f32 sinTheta_O (fma.f32 sinTheta_O %2265 %2246))))))
(approx %477 (fma.f32 #s(literal 1/2 binary32) %1478 (*.f32 sinTheta_O %2149)))
(approx %477 (fma.f32 #s(literal 1/2 binary32) %1478 (*.f32 sinTheta_O %2155)))
(approx %489 (fma.f32 sinTheta_O %2281 %1724))
(approx %489 (fma.f32 sinTheta_O %2289 %1724))
(approx %511 (+.f32 %1743 (*.f32 sinTheta_O (fma.f32 #s(literal -1/2 binary32) %2292 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %2296) %1743))))))
(approx %511 (+.f32 %1743 (*.f32 sinTheta_O (fma.f32 #s(literal -1/2 binary32) %2292 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1/6 binary32) (/.f32 %2199 %80)) (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 sinTheta_i (*.f32 %1593 %2296)) %1770)))) %1743) (*.f32 #s(literal 1/2 binary32) (/.f32 %2296 %1743))))))))
(approx %553 (fma.f32 sinTheta_O %2195 %1753))
(approx %553 (fma.f32 sinTheta_O %2206 %1753))
(approx %561 (+.f32 %1791 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %2325) %68) %2328))))
(approx %561 (+.f32 %1791 (*.f32 sinTheta_O (fma.f32 sinTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %2012 %1791)) %80) (*.f32 #s(literal 1/2 binary32) (/.f32 %2325 %68))) %2328))))
(approx %590 (fma.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O %2345)) %2348) %1816))
(approx %590 (fma.f32 sinTheta_O (-.f32 (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 sinTheta_i %2345) v) (fma.f32 #s(literal -1/2 binary32) %2354 (*.f32 #s(literal 1/6 binary32) %2354))))) %2345)) %2348) %1816))
(approx %621 (fma.f32 sinTheta_O %2281 %1846))
(approx %621 (fma.f32 sinTheta_O %2289 %1846))
(approx %632 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2369 (*.f32 #s(literal 1/2 binary32) (/.f32 %2026 %641))) %1854))
(approx %632 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2369 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 %2034 %647) (*.f32 #s(literal 1/2 binary32) (/.f32 %2025 %641))))) %1854))
(approx %655 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2383 (/.f32 %2247 %634)) %1873))
(approx %655 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2383 (*.f32 sinTheta_O (+.f32 (/.f32 (*.f32 sinTheta_O %2265) %634) (/.f32 %2246 %634)))) %1873))
(approx %670 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2396 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %2397) %68))) %1891))
(approx %670 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2396 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %2012 %1891)) %80) (*.f32 #s(literal 1/2 binary32) (/.f32 %2397 %68))))) %1891))
(approx %24 (*.f32 sinTheta_O %2417))
(approx %25 (*.f32 sinTheta_O (-.f32 %2422 %2417)))
(approx %35 (*.f32 sinTheta_O %2426))
(approx %36 (*.f32 sinTheta_O (-.f32 %2429 %2426)))
(approx %43 (*.f32 sinTheta_O (-.f32 (fma.f32 #s(literal -1 binary32) %2416 %2421) %2415)))
(approx %49 (*.f32 sinTheta_O (-.f32 %2426 %2429)))
(approx %122 (*.f32 sinTheta_O (-.f32 %2442 %2422)))
(approx %314 (*.f32 sinTheta_O (-.f32 %2422 %2442)))
(approx %24 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 %2449 %2415))))
(approx %25 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1304 sinTheta_O)) %2449))))
(approx %35 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 %2460 %2420))))
(approx %36 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1311 sinTheta_O)) %2460))))
(approx %43 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) (/.f32 %1977 sinTheta_O) %2416))))
(approx %49 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) sinTheta_i (*.f32 #s(literal -1 binary32) (/.f32 %1320 sinTheta_O))))))
(approx %122 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2416 (*.f32 #s(literal -1 binary32) (/.f32 %1382 sinTheta_O))))))
(approx %314 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1551 sinTheta_O)) %2449))))
(approx v v)
(approx %24 %44)
(approx %13 (/.f32 %2496 v))
(approx %25 %726)
(approx %25 (/.f32 (-.f32 %2496 %38) v))
(approx %476 (/.f32 #s(literal 1/2 binary32) v))
(approx %286 %68)
(approx %2506 (*.f32 #s(literal -1 binary32) %2507))
(approx %434 (/.f32 #s(literal -1 binary32) v))
(approx %120 %123)
(approx %384 %387)
(approx %488 %490)
(approx %121 %2516)
(approx %668 (*.f32 #s(literal -1 binary32) %2516))
(approx %669 %2521)
(approx %630 %2523)
(approx %631 %2525)
(approx %122 %765)
(approx %122 (/.f32 (-.f32 (+.f32 #s(literal 1 binary32) (fma.f32 sinTheta_O sinTheta_i (*.f32 v %2523))) %6) v))
(approx %2534 %2507)
(approx %314 (/.f32 (-.f32 (fma.f32 cosTheta_O cosTheta_i (*.f32 v (-.f32 #s(literal 6931/10000 binary32) %2516))) %38) v))
(approx %385 (/.f32 #s(literal 1 binary32) %387))
(approx %632 (/.f32 %727 %2525))
(approx %655 (/.f32 %767 %2525))
(approx %670 (*.f32 %2521 %724))
(approx %2506 %2550)
(approx %384 %2554)
(approx %488 %2557)
(approx %121 %2560)
(approx %668 (*.f32 #s(literal -1 binary32) %2560))
(approx %669 %2565)
(approx %630 %2567)
(approx %56 %2569)
(approx %56 %2573)
(approx %56 %2579)
(approx %56 %2585)
(approx %90 (-.f32 (+.f32 #s(literal 1 binary32) %10) %30))
(approx %90 (-.f32 (+.f32 #s(literal 1 binary32) %2591) %30))
(approx %90 (-.f32 (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal 1/6 binary32) (/.f32 %2581 %80) %2591)) %30))
(approx %631 %2600)
(approx %122 (-.f32 %2603 %16))
(approx %133 %2606)
(approx %133 (*.f32 v %2573))
(approx %133 (*.f32 v %2579))
(approx %133 (*.f32 v %2585))
(approx %151 (*.f32 #s(literal 1/2 binary32) %2606))
(approx %151 (*.f32 v %2617))
(approx %151 (*.f32 v %2620))
(approx %151 (*.f32 v %2623))
(approx %170 %2629)
(approx %170 (*.f32 v %2634))
(approx %170 (*.f32 v %2641))
(approx %170 (*.f32 v %2656))
(approx %210 %2628)
(approx %210 %2634)
(approx %210 %2641)
(approx %210 %2656)
(approx %278 (*.f32 %68 %2647))
(approx %278 (*.f32 %68 %2666))
(approx %278 (*.f32 %68 %2670))
(approx %278 (*.f32 %68 %2674))
(approx %287 %2647)
(approx %287 %2666)
(approx %287 %2670)
(approx %287 %2674)
(approx %2534 %2559)
(approx %314 %2682)
(approx %314 (-.f32 %16 %2603))
(approx %319 %2686)
(approx %319 (+.f32 %2686 (*.f32 #s(literal 1/2 binary32) %2689)))
(approx %319 (+.f32 %2686 (fma.f32 #s(literal 1/2 binary32) %2689 %2700)))
(approx %319 (+.f32 %2686 (fma.f32 #s(literal 1/2 binary32) %2689 (fma.f32 #s(literal 1/2 binary32) (/.f32 %2709 (*.f32 %80 %2686)) %2700))))
(approx %358 %2716)
(approx %358 (+.f32 %2716 %2719))
(approx %358 (+.f32 %2716 %2724))
(approx %358 (+.f32 %2716 (fma.f32 #s(literal 1/6 binary32) %2728 %2724)))
(approx %385 (/.f32 #s(literal 1 binary32) %2554))
(approx %386 %2734)
(approx %386 %2741)
(approx %386 (/.f32 (fma.f32 #s(literal 1/2 binary32) %2738 %2745) v))
(approx %386 (/.f32 (fma.f32 #s(literal 1/2 binary32) %2738 (fma.f32 #s(literal 1/2 binary32) (/.f32 %2709 (*.f32 %80 %2736)) %2745)) v))
(approx %435 (+.f32 #s(literal 1 binary32) %766))
(approx %435 (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -1 binary32) %765 %2759)))
(approx %435 (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -1 binary32) %765 (fma.f32 #s(literal -1/6 binary32) (/.f32 %2763 %80) %2759))))
(approx %477 %2627)
(approx %477 (/.f32 %2617 v))
(approx %477 (/.f32 %2620 v))
(approx %477 (/.f32 %2623 v))
(approx %489 (/.f32 %2569 %2557))
(approx %489 (/.f32 %2781 %68))
(approx %489 (/.f32 %2785 %68))
(approx %489 (/.f32 (fma.f32 #s(literal 1/6 binary32) %2789 %2785) %68))
(approx %511 %2793)
(approx %511 (+.f32 %2793 (*.f32 #s(literal 1/2 binary32) %2796)))
(approx %511 (+.f32 %2793 (fma.f32 #s(literal 1/2 binary32) %2796 %2809)))
(approx %511 (+.f32 %2793 (fma.f32 #s(literal 1/2 binary32) %2796 (fma.f32 #s(literal 1/2 binary32) (/.f32 (-.f32 (*.f32 #s(literal 1/6 binary32) %2727) (*.f32 #s(literal 1/2 binary32) %2816)) (*.f32 %80 %2793)) %2809))))
(approx %553 %2803)
(approx %553 %2826)
(approx %553 %2828)
(approx %553 (fma.f32 #s(literal 1/6 binary32) %2728 %2828))
(approx %561 (+.f32 %2600 %2833))
(approx %561 (+.f32 %2600 %2838))
(approx %561 (+.f32 %2600 (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %2600 %2763) %80) %2838)))
(approx %590 %2846)
(approx %590 (-.f32 %2850 %2853))
(approx %590 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %2862 %68) %2850) %2853))
(approx %590 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (*.f32 %2862 %762) (fma.f32 #s(literal 1/6 binary32) (/.f32 %2763 %2600) (*.f32 #s(literal 1/2 binary32) (*.f32 %2757 %2860)))) %80) %2850) (fma.f32 #s(literal 1/2 binary32) %2876 (+.f32 %2851 (+.f32 %2852 (/.f32 %2861 %68))))))
(approx %621 (/.f32 %2694 %2557))
(approx %621 (/.f32 %2886 %68))
(approx %621 (/.f32 %2889 %68))
(approx %621 (/.f32 (fma.f32 #s(literal 1/6 binary32) %2789 %2889) %68))
(approx %632 (-.f32 %2896 %2853))
(approx %632 (-.f32 (fma.f32 #s(literal 1/6 binary32) (/.f32 %2581 %2899) %2896) %2853))
(approx %655 (fma.f32 #s(literal -1 binary32) %2904 %2846))
(approx %655 (fma.f32 #s(literal -1 binary32) %2904 %2907))
(approx %655 (fma.f32 #s(literal -1 binary32) %2904 (fma.f32 #s(literal -1/6 binary32) (/.f32 %2763 %2899) %2907)))
(approx %670 %2914)
(approx %670 %2919)
(approx %670 %2924)
(approx %670 (fma.f32 #s(literal 1/6 binary32) (/.f32 %2927 %80) %2924))
(approx %24 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 %1933 #s(literal 1 binary32)) v)))
(approx %25 (+.f32 #s(literal 6931/10000 binary32) (*.f32 #s(literal -1 binary32) (/.f32 %2936 v))))
(approx %384 (*.f32 #s(literal -1 binary32) %2554))
(approx %56 (+.f32 %2569 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %2571 (*.f32 #s(literal -1/2 binary32) %2943)) v))))
(approx %56 (+.f32 %2569 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %2571 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/6 binary32) %2950 %2693) v))) v))))
(approx %90 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %41 (*.f32 #s(literal -1/2 binary32) (/.f32 %2575 v))) v))))
(approx %90 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %41 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/6 binary32) (/.f32 %2581 v) (*.f32 #s(literal 1/2 binary32) %2575)) v))) v))))
(approx %122 (-.f32 (+.f32 %2515 (fma.f32 #s(literal -1 binary32) %2550 (*.f32 #s(literal -1 binary32) %726))) #s(literal 6931/10000 binary32)))
(approx %132 (+.f32 %2569 (*.f32 #s(literal -1 binary32) %2982)))
(approx %132 (+.f32 %2569 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %2988 %2981) v))))
(approx %132 (+.f32 %2569 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/6 binary32) %2996 (*.f32 #s(literal 1/2 binary32) %2987)) v) %2981) v))))
(approx %133 (*.f32 #s(literal -1 binary32) (*.f32 v (fma.f32 #s(literal -1 binary32) %2569 %2982))))
(approx %133 (*.f32 #s(literal -1 binary32) (*.f32 v (fma.f32 #s(literal -1 binary32) %2569 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %2981 (*.f32 #s(literal 1/2 binary32) %2988)) v))))))
(approx %133 (*.f32 #s(literal -1 binary32) (*.f32 v (fma.f32 #s(literal -1 binary32) %2569 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %2981 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %2987 (*.f32 #s(literal 1/6 binary32) %2996)) v))) v))))))
(approx %151 (*.f32 #s(literal -1 binary32) (*.f32 v (fma.f32 #s(literal -1/2 binary32) %2569 (*.f32 #s(literal 1/2 binary32) %2982)))))
(approx %151 (*.f32 #s(literal -1 binary32) (*.f32 v (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %2981 (*.f32 #s(literal 1/4 binary32) %2988)) v) %3036))))
(approx %151 (*.f32 #s(literal -1 binary32) (*.f32 v (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %3042 v) (*.f32 #s(literal -1/2 binary32) %2981)) v) %3036))))
(approx %170 (*.f32 #s(literal -1 binary32) %2629))
(approx %170 (*.f32 #s(literal -1 binary32) (*.f32 v (+.f32 %2628 %3054))))
(approx %170 (*.f32 #s(literal -1 binary32) (*.f32 v (+.f32 %2628 (fma.f32 #s(literal -1/4 binary32) %3053 (*.f32 #s(literal 1/8 binary32) %3059))))))
(approx %170 (*.f32 #s(literal -1 binary32) (*.f32 v (+.f32 %2628 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %3071 (*.f32 #s(literal -1/8 binary32) %3073)) %80) %3054)))))
(approx %210 (*.f32 #s(literal -1 binary32) %2628))
(approx %210 (fma.f32 #s(literal -1 binary32) %2628 %3084))
(approx %210 (fma.f32 #s(literal -1 binary32) %2628 (fma.f32 #s(literal -1/8 binary32) %3059 %3084)))
(approx %210 (fma.f32 #s(literal -1 binary32) %2628 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/8 binary32) %3073 (*.f32 #s(literal 1/2 binary32) %3071)) %80) %3084)))
(approx %232 (+.f32 %2628 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %2650 %2629) (*.f32 #s(literal -1/8 binary32) (/.f32 %2576 %2628))) %80) %2633)))
(approx %278 (*.f32 %68 %3105))
(approx %278 (*.f32 %68 %3110))
(approx %278 (*.f32 %68 %3114))
(approx %287 %3105)
(approx %287 %3110)
(approx %287 %3114)
(approx %305 (fma.f32 #s(literal -1 binary32) (/.f32 %3121 %80) %2666))
(approx %319 (+.f32 %2686 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %3125 (*.f32 #s(literal -1/2 binary32) (/.f32 %2697 %2688))) v))))
(approx %319 (+.f32 %2686 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %3135 %2688) (*.f32 #s(literal 1/2 binary32) (/.f32 %2697 %2686))) v) (*.f32 #s(literal -1/2 binary32) %3125)) v))))
(approx %358 (+.f32 %2716 (*.f32 #s(literal -1 binary32) %3150)))
(approx %358 (+.f32 %2716 (*.f32 #s(literal -1 binary32) %3159)))
(approx %385 (/.f32 #s(literal -1 binary32) %2554))
(approx %386 (*.f32 #s(literal -1 binary32) %2734))
(approx %386 (*.f32 #s(literal -1 binary32) %2741))
(approx %386 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %3169 (*.f32 #s(literal -1/2 binary32) (/.f32 %2697 %2737))) v) %2739) v)))
(approx %386 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %3135 %2737) (*.f32 #s(literal 1/2 binary32) (/.f32 %2697 %2736))) v) (*.f32 #s(literal -1/2 binary32) %3169)) v) %2739) v)))
(approx %435 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -1/2 binary32) (/.f32 %2757 v) %28)) %6) v))))
(approx %435 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/6 binary32) (/.f32 %2763 v) (*.f32 #s(literal 1/2 binary32) %2757)) v) %28)) %6) v))))
(approx %477 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %2569 (*.f32 #s(literal -1/2 binary32) %2572)) v)))
(approx %477 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/4 binary32) %2943 %3214) v) %3036) v)))
(approx %477 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %3121 v) %3214) v) %3036) v)))
(approx %489 (/.f32 (fma.f32 #s(literal -1 binary32) %3232 %2778) %68))
(approx %489 (/.f32 (fma.f32 #s(literal -1 binary32) %3243 %2778) %68))
(approx %511 (+.f32 %2793 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %3247 (*.f32 #s(literal -1/2 binary32) (/.f32 %2806 %2795))) v))))
(approx %511 (+.f32 %2793 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 (-.f32 (*.f32 #s(literal -1/6 binary32) %2727) (*.f32 #s(literal -1/2 binary32) %2816)) %2795) (*.f32 #s(literal 1/2 binary32) (/.f32 %2806 %2793))) v) (*.f32 #s(literal -1/2 binary32) %3247)) v))))
(approx %553 (fma.f32 #s(literal -1 binary32) %3150 %2803))
(approx %553 (fma.f32 #s(literal -1 binary32) %3159 %2803))
(approx %561 (+.f32 %2600 (*.f32 #s(literal -1 binary32) (/.f32 %3273 v))))
(approx %561 (+.f32 %2600 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %3278 v) %3273) v))))
(approx %561 (+.f32 %2600 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %2600 %2581) v) (*.f32 #s(literal 1/2 binary32) %3278)) v) %3273) v))))
(approx %590 (fma.f32 #s(literal -1 binary32) (/.f32 %3295 v) %2846))
(approx %590 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal 1/2 binary32) %3299 (+.f32 %2846 (+.f32 %2858 (/.f32 %3300 v)))) %2857) v) %2846))
(approx %590 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 %3310 %41) v) (fma.f32 #s(literal 1/6 binary32) %3313 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %2575 %3295) v)))) %3310) v) %2859) %2857) v) %2846))
(approx %621 (/.f32 (fma.f32 #s(literal -1 binary32) %3232 %2885) %68))
(approx %621 (/.f32 (fma.f32 #s(literal -1 binary32) %3243 %2885) %68))
(approx %632 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %3332 (*.f32 #s(literal -1/2 binary32) %3299)) v) %2846))
(approx %632 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/6 binary32) %3313 (*.f32 #s(literal 1/2 binary32) %3309)) v) (*.f32 #s(literal -1 binary32) %3332)) v) %2846))
(approx %655 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %2757 %2848) %2859) %2857) v) %2846))
(approx %655 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/6 binary32) (/.f32 %2763 %2848) (*.f32 #s(literal 1/2 binary32) %2856)) v) %2859) %2857) v) %2846))
(approx %670 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %2917 (*.f32 #s(literal -1/2 binary32) (/.f32 %2922 v))) v) %2914))
(approx %670 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %2917 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/6 binary32) (/.f32 %2927 v) (*.f32 #s(literal 1/2 binary32) %2922)) v))) v) %2914))
Calls

15 calls:

TimeVariablePoint
15.0ms
v
0
12.0ms
v
-inf
7.0ms
sinTheta_i
-inf
7.0ms
cosTheta_O
0
6.0ms
sinTheta_i
0

rewrite116.0ms (2.4%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01091404
01901183
17061154
236261154
040591149
043571148
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
96 → 2 141
Calls
Call 1
Inputs
%6 = (/.f32 #s(literal 1 binary32) v)
%9 = (*.f32 cosTheta_O cosTheta_i)
%10 = (/.f32 %9 v)
%12 = (*.f32 sinTheta_O sinTheta_i)
%13 = (/.f32 %12 v)
%14 = (+.f32 %6 %13)
%15 = (+.f32 #s(literal 6931/10000 binary32) %10)
%16 = (-.f32 %15 %14)
%18 = (/.f32 #s(literal 1/2 binary32) v)
%19 = (pow.f32 v #s(literal 2 binary32))
%20 = (log.f32 %6)
%21 = (/.f32 #s(literal -1 binary32) v)
%22 = (+.f32 v v)
%23 = (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))
%24 = (-.f32 %9 %23)
%25 = (/.f32 %24 v)
%26 = (-.f32 %23 %9)
%28 = (-.f32 %25 #s(literal -6931/10000 binary32))
%29 = (sqrt.f32 %22)
%30 = (*.f32 %29 %29)
%31 = (log.f32 #s(literal 2 binary32))
%32 = (log.f32 %22)
%33 = (neg.f32 %32)
%34 = (exp.f32 %33)
%35 = (+.f32 #s(literal -6931/10000 binary32) %32)
%36 = (exp.f32 %28)
%37 = (exp.f32 %25)
%38 = (exp.f32 %35)
%39 = (*.f32 #s(literal -1 binary32) %10)
%40 = (+ v v)
%41 = (log %40)
%45 = (+ (* sinTheta_O sinTheta_i) 1)
%49 = (- (/ (- (* cosTheta_O cosTheta_i) %45) v) -6931/10000)
%50 = (- %41 %49)
%51 = (approx %50 %39)
%52 = (exp.f32 %16)
%53 = (approx %45 #s(literal 1 binary32))
%54 = (approx %50 %13)
%55 = (*.f32 v %52)
%56 = (*.f32 #s(literal 1/2 binary32) %55)
%57 = (sqrt.f32 %56)
%58 = (/.f32 %57 v)
%61 = (sqrt (/ (exp %49) %40))
%62 = (approx %61 %58)
%63 = (pow.f32 %57 #s(literal 2 binary32))
%64 = (/.f32 %63 %19)
%67 = (*.f32 #s(literal -1 binary32) %20)
%68 = (+.f32 %31 %67)
%69 = (approx %41 %68)
%70 = (approx %49 #s(literal 6931/10000 binary32))
%71 = (-.f32 %32 #s(literal 6931/10000 binary32))
%72 = (-.f32 %25 %71)
%73 = (sqrt.f32 %36)
%74 = (exp.f32 %72)
%75 = (/.f32 #s(literal 1 binary32) %29)
%76 = (*.f32 %73 %75)
%77 = (exp.f32 %26)
%78 = (pow.f32 %77 %21)
%79 = (-.f32 %70 %32)
%80 = (exp.f32 %70)
%85 = (sqrt.f32 %74)
%87 = (exp.f32 %54)
%89 = (exp.f32 %51)
%93 = (+.f32 #s(literal -6931/10000 binary32) %69)
%94 = (exp.f32 %93)
%97 = (-.f32 %9 %53)
%98 = (/.f32 %97 v)
%99 = (-.f32 %98 %35)
%101 = (-.f32 %98 #s(literal -6931/10000 binary32))
%102 = (exp.f32 %101)
%105 = (-.f32 %32 %101)
%106 = (exp.f32 %105)
%108 = (exp.f32 %98)
cosTheta_i
cosTheta_O
v
sinTheta_i
sinTheta_O
#s(literal 1 binary32)
%6
#s(literal 6931/10000 binary32)
#s(literal 2 binary32)
%9
%10
#s(literal -1 binary32)
%12
%13
%14
%15
%16
#s(literal 1/2 binary32)
%18
%19
%20
%21
%22
%23
%24
%25
%26
#s(literal -6931/10000 binary32)
%28
%29
%30
%31
%32
%33
%34
%35
%36
%37
%38
%39
%51
%52
%53
%54
%55
%56
%57
%58
%62
%63
%64
(approx (* %61 %61) %64)
%67
%68
%69
%70
%71
%72
%73
%74
%75
%76
%77
%78
%79
%80
(*.f32 %80 %18)
(/.f32 %80 %22)
(exp.f32 %79)
(/.f32 %36 %30)
%85
(*.f32 %85 %85)
%87
(/.f32 #s(literal 1 binary32) %87)
%89
(/.f32 #s(literal 1 binary32) %89)
(*.f32 %62 %62)
(*.f32 %76 %76)
%93
%94
(/.f32 %37 %94)
(/.f32 %78 %38)
%97
%98
%99
(exp.f32 %99)
%101
%102
(*.f32 %102 %18)
(/.f32 %102 %22)
%105
%106
(/.f32 #s(literal 1 binary32) %106)
%108
(/.f32 %108 %38)
(*.f32 %36 %34)
Outputs
%7 = (/.f32 #s(literal -1 binary32) v)
%11 = (/.f32 #s(literal 1/2 binary32) v)
%13 = (/.f32 #s(literal 1 binary32) v)
%19 = (*.f32 #s(literal -2 binary32) v)
%21 = (neg.f32 v)
%23 = (+.f32 v v)
%27 = (neg.f32 %21)
%35 = (*.f32 cosTheta_O cosTheta_i)
%40 = (*.f32 %35 #s(literal 1 binary32))
%42 = (/.f32 cosTheta_i v)
%44 = (neg.f32 %35)
%49 = (*.f32 cosTheta_O %13)
%51 = (/.f32 cosTheta_O v)
%54 = (neg.f32 %44)
%57 = (/.f32 %35 v)
%65 = (neg.f32 %57)
%67 = (*.f32 sinTheta_O sinTheta_i)
%72 = (*.f32 %67 #s(literal 1 binary32))
%74 = (/.f32 sinTheta_i v)
%76 = (neg.f32 %67)
%81 = (*.f32 sinTheta_O %13)
%83 = (/.f32 sinTheta_O v)
%91 = (/.f32 %67 v)
%99 = (/.f32 %76 v)
%101 = (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))
%102 = (*.f32 v %101)
%103 = (*.f32 v v)
%104 = (/.f32 #s(literal 1 binary32) %103)
%121 = (*.f32 %21 v)
%155 = (-.f32 #s(literal -1 binary32) %67)
%158 = (/.f32 %101 v)
%186 = (/.f32 %155 v)
%188 = (fma.f32 #s(literal 6931/10000 binary32) v %35)
%197 = (fma.f32 %42 cosTheta_O #s(literal 6931/10000 binary32))
%215 = (*.f32 #s(literal 1 binary32) %57)
%222 = (-.f32 %101 %35)
%224 = (/.f32 (fma.f32 #s(literal 6931/10000 binary32) %21 %222) %21)
%225 = (-.f32 %35 %101)
%227 = (/.f32 (fma.f32 #s(literal 6931/10000 binary32) v %225) v)
%229 = (/.f32 (-.f32 %188 #s(literal 1 binary32)) v)
%232 = (/.f32 (-.f32 (*.f32 %229 %21) %76) %21)
%235 = (/.f32 (-.f32 (*.f32 %229 v) %67) v)
%238 = (/.f32 (-.f32 (*.f32 %197 %103) %102) %103)
%241 = (/.f32 (-.f32 (*.f32 %197 v) %101) v)
%243 = (/.f32 (-.f32 %188 %101) v)
%245 = (*.f32 v %102)
%247 = (*.f32 v %103)
%248 = (/.f32 (-.f32 (*.f32 %188 %103) %245) %247)
%251 = (/.f32 (-.f32 (*.f32 %188 v) %102) %103)
%252 = (/.f32 %225 v)
%253 = (-.f32 %252 #s(literal -6931/10000 binary32))
%255 = (/.f32 #s(literal 1 binary32) (pow.f32 %253 #s(literal -1 binary32)))
%257 = (-.f32 (-.f32 %197 %91) %13)
%258 = (-.f32 %229 %91)
%259 = (-.f32 %197 %158)
%261 = (-.f32 %57 (+.f32 %158 #s(literal -6931/10000 binary32)))
%263 = (-.f32 %57 (-.f32 %158 #s(literal 6931/10000 binary32)))
%265 = (-.f32 #s(literal 6931/10000 binary32) (-.f32 %65 %186))
%266 = (neg.f32 cosTheta_O)
%268 = (-.f32 #s(literal 6931/10000 binary32) (fma.f32 %266 %42 %158))
%269 = (*.f32 %222 %13)
%270 = (-.f32 #s(literal 6931/10000 binary32) %269)
%272 = (-.f32 #s(literal 6931/10000 binary32) (neg.f32 %252))
%273 = (*.f32 %222 #s(literal -1 binary32))
%274 = (fma.f32 %273 %13 #s(literal 6931/10000 binary32))
%275 = (+.f32 #s(literal 6931/10000 binary32) %186)
%276 = (fma.f32 %40 %13 %275)
%277 = (-.f32 #s(literal 6931/10000 binary32) %158)
%278 = (fma.f32 %40 %13 %277)
%279 = (*.f32 %225 #s(literal 1 binary32))
%280 = (fma.f32 %279 %13 #s(literal 6931/10000 binary32))
%281 = (fma.f32 %42 cosTheta_O %275)
%282 = (fma.f32 %42 cosTheta_O %277)
%283 = (fma.f32 %188 %13 %186)
%284 = (fma.f32 %44 %7 %275)
%285 = (fma.f32 %44 %7 %277)
%286 = (fma.f32 %222 %7 #s(literal 6931/10000 binary32))
%287 = (fma.f32 %225 %13 #s(literal 6931/10000 binary32))
%288 = (fma.f32 %7 %222 #s(literal 6931/10000 binary32))
%289 = (fma.f32 %35 %13 %275)
%290 = (fma.f32 %35 %13 %277)
%291 = (fma.f32 %13 %225 #s(literal 6931/10000 binary32))
%292 = (fma.f32 %13 %35 %275)
%293 = (fma.f32 %13 %35 %277)
%294 = (fma.f32 cosTheta_O %42 %275)
%295 = (fma.f32 cosTheta_O %42 %277)
%296 = (fma.f32 cosTheta_i %49 %275)
%297 = (fma.f32 cosTheta_i %49 %277)
%298 = (fma.f32 cosTheta_i %51 %275)
%299 = (fma.f32 cosTheta_i %51 %277)
%300 = (pow.f32 %253 #s(literal 1 binary32))
%301 = (+.f32 %229 %99)
%302 = (+.f32 %186 %197)
%303 = (+.f32 %252 #s(literal 6931/10000 binary32))
%304 = (+.f32 %197 %186)
%305 = (+.f32 %57 %275)
%306 = (+.f32 %57 %277)
%307 = (+.f32 #s(literal 6931/10000 binary32) %252)
%309 = (neg.f32 (-.f32 %91 %229))
%310 = (-.f32 #s(literal -6931/10000 binary32) %252)
%311 = (neg.f32 %310)
%312 = (sqrt.f32 %23)
%313 = (neg.f32 %312)
%316 = (*.f32 (/.f32 #s(literal 2 binary32) %313) (/.f32 #s(literal 1/2 binary32) %313))
%318 = (/.f32 #s(literal 1/2 binary32) %312)
%319 = (*.f32 (/.f32 #s(literal 2 binary32) %312) %318)
%320 = (/.f32 #s(literal 1 binary32) %312)
%321 = (neg.f32 %320)
%322 = (*.f32 %321 %321)
%324 = (*.f32 #s(literal -1/2 binary32) %7)
%325 = (*.f32 %320 %320)
%326 = (*.f32 #s(literal 1/2 binary32) %13)
%328 = (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1/2 binary32) %23))
%329 = (*.f32 %13 #s(literal 1/2 binary32))
%330 = (*.f32 #s(literal 1 binary32) %11)
%332 = (/.f32 (*.f32 %320 #s(literal -1 binary32)) %313)
%333 = (*.f32 #s(literal -1 binary32) %320)
%334 = (/.f32 %333 %313)
%335 = (/.f32 #s(literal 1 binary32) %313)
%336 = (/.f32 %335 %313)
%337 = (/.f32 #s(literal -1/2 binary32) %21)
%338 = (/.f32 %320 %312)
%339 = (/.f32 #s(literal 1/2 binary32) %27)
%340 = (/.f32 #s(literal -1 binary32) %19)
%342 = (/.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %23))
%344 = (/.f32 #s(literal 1 binary32) (/.f32 %21 #s(literal -1/2 binary32)))
%346 = (/.f32 #s(literal 1 binary32) (/.f32 %23 #s(literal 1 binary32)))
%348 = (/.f32 #s(literal 1 binary32) (pow.f32 %11 #s(literal -1 binary32)))
%350 = (/.f32 #s(literal 1 binary32) (/.f32 v #s(literal 1/2 binary32)))
%351 = (/.f32 #s(literal 1 binary32) %23)
%353 = (sqrt.f32 (*.f32 %11 %11))
%355 = (/.f32 (fma.f32 #s(literal 2 binary32) v %11) #s(literal 2 binary32))
%357 = (/.f32 (-.f32 %23 %11) #s(literal 2 binary32))
%358 = (neg.f32 %357)
%360 = (-.f32 %355 (neg.f32 %358))
%361 = (-.f32 %355 %357)
%362 = (pow.f32 %320 #s(literal 2 binary32))
%363 = (pow.f32 %11 #s(literal 1 binary32))
%364 = (pow.f32 %312 #s(literal -2 binary32))
%365 = (pow.f32 %23 #s(literal -1 binary32))
%366 = (+.f32 %358 %355)
%367 = (+.f32 %355 %358)
%368 = (-.f32 %357 %355)
%369 = (fabs.f32 %368)
%371 = (fabs.f32 (neg.f32 %11))
%372 = (fabs.f32 %11)
%373 = (log.f32 %23)
%374 = (neg.f32 %373)
%376 = (exp.f32 (*.f32 %374 #s(literal 1 binary32)))
%377 = (exp.f32 %374)
%378 = (/.f32 #s(literal 1/2 binary32) %21)
%379 = (neg.f32 %378)
%381 = (neg.f32 (/.f32 #s(literal -1 binary32) %23))
%383 = (neg.f32 (/.f32 #s(literal -1/2 binary32) v))
%384 = (neg.f32 %368)
%386 = (fabs.f32 v)
%394 = (log.f32 v)
%396 = (neg.f32 %394)
%398 = (log.f32 %386)
%404 = (log.f32 (fabs.f32 %13))
%435 = (neg.f32 %313)
%436 = (*.f32 %435 %435)
%437 = (*.f32 %313 %313)
%438 = (*.f32 %312 %312)
%439 = (*.f32 #s(literal 2 binary32) %386)
%440 = (*.f32 #s(literal 2 binary32) v)
%441 = (*.f32 v #s(literal 2 binary32))
%442 = (/.f32 #s(literal 1 binary32) %11)
%444 = (*.f32 #s(literal 4 binary32) %103)
%445 = (sqrt.f32 %444)
%446 = (-.f32 v %21)
%447 = (pow.f32 %313 #s(literal 2 binary32))
%448 = (pow.f32 %444 #s(literal 1/2 binary32))
%449 = (pow.f32 %312 #s(literal 2 binary32))
%450 = (pow.f32 %23 #s(literal 1 binary32))
%451 = (+.f32 %355 %357)
%452 = (+.f32 v %27)
%453 = (fabs.f32 %19)
%454 = (fabs.f32 %23)
%455 = (exp.f32 %373)
%456 = (neg.f32 %19)
%468 = (-.f32 %35 %67)
%477 = (neg.f32 sinTheta_O)
%478 = (-.f32 #s(literal 1 binary32) %35)
%479 = (neg.f32 %478)
%481 = (neg.f32 sinTheta_i)
%507 = (*.f32 %57 v)
%515 = (*.f32 %44 v)
%522 = (*.f32 %35 v)
%525 = (*.f32 %222 #s(literal 1 binary32))
%537 = (-.f32 %57 %13)
%544 = (/.f32 %478 %21)
%585 = (*.f32 #s(literal -1 binary32) cosTheta_O)
%587 = (neg.f32 cosTheta_i)
%609 = (sqrt.f32 %312)
%618 = (log.f32 #s(literal 2 binary32))
%623 = (log.f32 %312)
%624 = (*.f32 #s(literal 2 binary32) %623)
%625 = (*.f32 #s(literal 1 binary32) %373)
%627 = (/.f32 #s(literal 1 binary32) (pow.f32 %373 #s(literal -1 binary32)))
%629 = (-.f32 %394 (neg.f32 %618))
%630 = (-.f32 %618 %396)
%631 = (fma.f32 %396 #s(literal -1 binary32) %618)
%632 = (fma.f32 #s(literal -1 binary32) %404 %618)
%633 = (fma.f32 #s(literal -1 binary32) %396 %618)
%634 = (fma.f32 #s(literal 1 binary32) %398 %618)
%635 = (fma.f32 #s(literal 1 binary32) %618 %398)
%636 = (fma.f32 #s(literal 1 binary32) %618 %394)
%637 = (pow.f32 %373 #s(literal 1 binary32))
%638 = (+.f32 %623 %623)
%639 = (+.f32 %394 %618)
%640 = (+.f32 %618 %398)
%641 = (+.f32 %618 %394)
%643 = (neg.f32 (-.f32 %396 %618))
%649 = (-.f32 %373 #s(literal 6931/10000 binary32))
%651 = (/.f32 #s(literal 1 binary32) (pow.f32 %649 #s(literal -1 binary32)))
%652 = (-.f32 #s(literal -6931/10000 binary32) %374)
%653 = (fma.f32 #s(literal 2 binary32) %623 #s(literal -6931/10000 binary32))
%654 = (fma.f32 #s(literal 1 binary32) %373 #s(literal -6931/10000 binary32))
%655 = (pow.f32 %649 #s(literal 1 binary32))
%656 = (+.f32 %373 #s(literal -6931/10000 binary32))
%657 = (neg.f32 %374)
%658 = (+.f32 #s(literal -6931/10000 binary32) %657)
%659 = (+.f32 #s(literal -6931/10000 binary32) %373)
%660 = (-.f32 #s(literal 6931/10000 binary32) %373)
%661 = (neg.f32 %660)
%662 = (exp.f32 %253)
%663 = (sqrt.f32 %662)
%664 = (neg.f32 %663)
%665 = (*.f32 %664 %664)
%666 = (exp.f32 #s(literal 6931/10000 binary32))
%667 = (exp.f32 %252)
%668 = (*.f32 %666 %667)
%669 = (exp.f32 %197)
%670 = (exp.f32 %158)
%672 = (*.f32 %669 (/.f32 #s(literal 1 binary32) %670))
%674 = (*.f32 %669 (exp.f32 %186))
%675 = (*.f32 %663 %663)
%676 = (exp.f32 #s(literal -6931/10000 binary32))
%677 = (/.f32 #s(literal 1 binary32) %676)
%678 = (*.f32 %667 %677)
%679 = (*.f32 %667 %666)
%682 = (/.f32 (neg.f32 %669) (neg.f32 %670))
%685 = (/.f32 (exp.f32 %229) (exp.f32 %91))
%686 = (neg.f32 %667)
%687 = (neg.f32 %676)
%688 = (/.f32 %686 %687)
%689 = (/.f32 %669 %670)
%690 = (/.f32 %667 %676)
%692 = (/.f32 #s(literal 1 binary32) (/.f32 %676 %667))
%694 = (/.f32 #s(literal 1 binary32) (/.f32 %670 %669))
%696 = (/.f32 #s(literal 1 binary32) (pow.f32 %662 #s(literal -1 binary32)))
%698 = (/.f32 #s(literal 1 binary32) (exp.f32 %310))
%699 = (*.f32 %662 %662)
%700 = (sqrt.f32 %699)
%701 = (cosh.f32 %253)
%703 = (-.f32 %701 (sinh.f32 %310))
%704 = (pow.f32 %699 #s(literal 1/2 binary32))
%705 = (pow.f32 %663 #s(literal 2 binary32))
%706 = (pow.f32 %662 #s(literal 1 binary32))
%707 = (cosh.f32 %252)
%709 = (sinh.f32 %252)
%711 = (+.f32 (/.f32 %707 %676) (/.f32 %709 %676))
%712 = (sinh.f32 %253)
%713 = (+.f32 %712 %701)
%714 = (+.f32 %701 %712)
%715 = (neg.f32 %662)
%716 = (fabs.f32 %715)
%717 = (fabs.f32 %662)
%718 = (*.f32 %253 #s(literal 1/2 binary32))
%720 = (exp.f32 (fma.f32 %253 #s(literal 1/2 binary32) %718))
%722 = (exp.f32 (*.f32 %718 #s(literal 2 binary32)))
%724 = (exp.f32 (*.f32 %253 #s(literal 1 binary32)))
%725 = (exp.f32 %57)
%726 = (/.f32 %725 %670)
%728 = (/.f32 #s(literal 1 binary32) (pow.f32 %667 #s(literal -1 binary32)))
%730 = (sqrt.f32 (*.f32 %667 %667))
%732 = (-.f32 %707 (neg.f32 %709))
%733 = (exp.f32 %225)
%734 = (pow.f32 %733 %13)
%735 = (exp.f32 %222)
%736 = (pow.f32 %735 %7)
%737 = (pow.f32 %667 #s(literal 1 binary32))
%738 = (+.f32 %709 %707)
%739 = (+.f32 %707 %709)
%740 = (fabs.f32 %686)
%741 = (fabs.f32 %667)
%743 = (exp.f32 (*.f32 %252 #s(literal 1 binary32)))
%744 = (*.f32 %676 %23)
%748 = (/.f32 #s(literal 1 binary32) %744)
%752 = (cosh.f32 %649)
%756 = (sinh.f32 %649)
%759 = (*.f32 %676 %19)
%792 = (* 2 v)
%793 = (log %792)
%799 = (- (* sinTheta_O sinTheta_i) -1)
%801 = (/ (- (* cosTheta_O cosTheta_i) %799) v)
%802 = (- (- %793 6931/10000) %801)
%803 = (approx %802 %65)
%807 = (approx %799 #s(literal 1 binary32))
%811 = (approx %802 %91)
%815 = (*.f32 %662 v)
%823 = (*.f32 %712 v)
%825 = (*.f32 v %712)
%832 = (*.f32 #s(literal 1/2 binary32) v)
%833 = (*.f32 %832 %662)
%834 = (sqrt.f32 %833)
%835 = (sqrt.f32 #s(literal 1/2 binary32))
%837 = (*.f32 %386 %662)
%838 = (sqrt.f32 %837)
%839 = (*.f32 (*.f32 %834 %835) %838)
%841 = (*.f32 (*.f32 #s(literal 1/2 binary32) %662) v)
%844 = (*.f32 (*.f32 %835 %835) (*.f32 %838 %838))
%845 = (neg.f32 %834)
%846 = (*.f32 %845 %845)
%848 = (*.f32 %835 (*.f32 %838 %834))
%849 = (*.f32 %834 %834)
%850 = (*.f32 %815 #s(literal 1/2 binary32))
%851 = (*.f32 %662 %832)
%852 = (*.f32 #s(literal 1/2 binary32) %815)
%854 = (*.f32 v (*.f32 %662 #s(literal 1/2 binary32)))
%856 = (/.f32 (*.f32 %832 %669) %670)
%858 = (/.f32 #s(literal 1 binary32) (pow.f32 %833 #s(literal -1 binary32)))
%859 = (*.f32 %833 %833)
%860 = (sqrt.f32 %859)
%861 = (*.f32 %832 %712)
%862 = (fma.f32 %832 %701 %861)
%863 = (*.f32 %712 %832)
%864 = (fma.f32 %701 %832 %863)
%865 = (pow.f32 %859 #s(literal 1/2 binary32))
%866 = (pow.f32 %834 #s(literal 2 binary32))
%867 = (pow.f32 %833 #s(literal 1 binary32))
%869 = (+.f32 (*.f32 %832 %701) %861)
%871 = (+.f32 (*.f32 %701 %832) %863)
%872 = (fabs.f32 %833)
%876 = (sqrt.f32 %834)
%888 = (*.f32 %834 #s(literal 1 binary32))
%903 = (/.f32 %834 v)
%916 = (- %801 -6931/10000)
%918 = (/ (exp %916) %792)
%920 = (approx (sqrt %918) %903)
%927 = (/.f32 %815 v)
%934 = (*.f32 #s(literal -1/2 binary32) %815)
%946 = (*.f32 %815 (/.f32 #s(literal 1/2 binary32) %103))
%972 = (approx %918 %946)
%985 = (approx %793 %373)
%989 = (approx %916 #s(literal 6931/10000 binary32))
%993 = (-.f32 %252 %649)
%996 = (-.f32 %252 %373)
%1017 = (-.f32 %649 %252)
%1019 = (*.f32 %663 #s(literal 2 binary32))
%1024 = (sqrt.f32 %667)
%1041 = (*.f32 %663 #s(literal -1 binary32))
%1043 = (/.f32 %662 %312)
%1044 = (*.f32 %1043 #s(literal 1 binary32))
%1045 = (*.f32 %1044 %320)
%1046 = (/.f32 %662 %23)
%1047 = (sqrt.f32 %1046)
%1048 = (neg.f32 %1047)
%1049 = (neg.f32 %1048)
%1050 = (*.f32 %1049 %1049)
%1052 = (*.f32 (exp.f32 %996) %666)
%1053 = (/.f32 %663 %23)
%1054 = (*.f32 %1053 %663)
%1055 = (*.f32 %1043 %320)
%1056 = (*.f32 %748 %667)
%1057 = (/.f32 #s(literal 1 binary32) %19)
%1058 = (*.f32 %715 %1057)
%1059 = (/.f32 #s(literal 1 binary32) %759)
%1060 = (*.f32 %686 %1059)
%1061 = (*.f32 %1048 %1048)
%1062 = (*.f32 %1047 %1047)
%1063 = (*.f32 %320 %1043)
%1065 = (*.f32 %663 (*.f32 %663 %11))
%1066 = (*.f32 %663 %1053)
%1067 = (*.f32 %667 %748)
%1068 = (*.f32 %662 %11)
%1069 = (*.f32 %11 %662)
%1071 = (/.f32 (*.f32 %1043 #s(literal -1 binary32)) %313)
%1072 = (/.f32 %1044 %312)
%1074 = (/.f32 (*.f32 %11 %667) %676)
%1076 = (/.f32 (*.f32 %662 #s(literal 1 binary32)) %23)
%1078 = (/.f32 (*.f32 #s(literal 1 binary32) %662) %23)
%1080 = (/.f32 (*.f32 %667 %11) %676)
%1082 = (/.f32 (/.f32 %662 %313) %313)
%1084 = (/.f32 (/.f32 %662 #s(literal 2 binary32)) v)
%1086 = (/.f32 (*.f32 #s(literal 1 binary32) %667) %744)
%1087 = (*.f32 %667 #s(literal 1 binary32))
%1088 = (/.f32 %1087 %744)
%1089 = (neg.f32 %686)
%1090 = (neg.f32 %759)
%1091 = (/.f32 %1089 %1090)
%1093 = (/.f32 (neg.f32 %1043) %313)
%1095 = (/.f32 (neg.f32 %715) %23)
%1096 = (/.f32 %1043 %312)
%1097 = (/.f32 %715 %19)
%1098 = (/.f32 %686 %759)
%1099 = (/.f32 %667 %744)
%1101 = (/.f32 #s(literal 1 binary32) (/.f32 %759 %686))
%1103 = (/.f32 #s(literal 1 binary32) (/.f32 %312 %1043))
%1105 = (/.f32 #s(literal 1 binary32) (/.f32 %19 %715))
%1107 = (/.f32 #s(literal 1 binary32) (pow.f32 %1046 #s(literal -1 binary32)))
%1109 = (/.f32 #s(literal 1 binary32) (exp.f32 %1017))
%1111 = (/.f32 #s(literal 1 binary32) (/.f32 %744 %667))
%1113 = (/.f32 #s(literal 1 binary32) (/.f32 %23 %662))
%1115 = (exp.f32 (*.f32 %993 #s(literal 2 binary32)))
%1116 = (sqrt.f32 %1115)
%1117 = (cosh.f32 %993)
%1119 = (-.f32 %1117 (sinh.f32 %1017))
%1120 = (*.f32 %712 %11)
%1121 = (fma.f32 %701 %11 %1120)
%1122 = (*.f32 %358 %662)
%1123 = (fma.f32 %355 %662 %1122)
%1124 = (*.f32 %662 %358)
%1125 = (fma.f32 %662 %355 %1124)
%1126 = (*.f32 %11 %712)
%1127 = (fma.f32 %11 %701 %1126)
%1128 = (pow.f32 %1048 #s(literal 2 binary32))
%1129 = (pow.f32 %1115 #s(literal 1/2 binary32))
%1130 = (pow.f32 %1047 #s(literal 2 binary32))
%1131 = (pow.f32 %1046 #s(literal 1 binary32))
%1133 = (+.f32 (*.f32 %662 %355) %1124)
%1135 = (+.f32 (*.f32 %11 %701) %1126)
%1137 = (+.f32 (*.f32 %355 %662) %1122)
%1139 = (+.f32 (*.f32 %701 %11) %1120)
%1142 = (+.f32 (/.f32 %707 %744) (/.f32 %709 %744))
%1145 = (+.f32 (/.f32 %701 %23) (/.f32 %712 %23))
%1146 = (sinh.f32 %993)
%1147 = (+.f32 %1146 %1117)
%1148 = (+.f32 %1117 %1146)
%1150 = (fabs.f32 (neg.f32 %1046))
%1151 = (fabs.f32 %1046)
%1152 = (*.f32 %993 #s(literal 1/2 binary32))
%1154 = (exp.f32 (fma.f32 %993 #s(literal 1/2 binary32) %1152))
%1156 = (exp.f32 (*.f32 %1152 #s(literal 2 binary32)))
%1158 = (exp.f32 (*.f32 %993 #s(literal 1 binary32)))
%1159 = (exp.f32 %993)
%1161 = (neg.f32 (/.f32 %667 %759))
%1163 = (neg.f32 (/.f32 %662 %19))
%1165 = (neg.f32 (/.f32 %686 %744))
%1167 = (neg.f32 (/.f32 %715 %23))
%1169 = (neg.f32 (*.f32 %1048 %1047))
%1171 = (neg.f32 (*.f32 %1047 %1048))
%1200 = (sqrt.f32 %1047)
%1201 = (*.f32 %1200 %1200)
%1202 = (*.f32 %320 %663)
%1204 = (*.f32 %663 (sqrt.f32 %11))
%1205 = (*.f32 %663 %320)
%1206 = (*.f32 #s(literal 1 binary32) %1047)
%1207 = (/.f32 %1041 %313)
%1209 = (/.f32 (*.f32 #s(literal -1 binary32) %663) %313)
%1210 = (/.f32 %664 %313)
%1212 = (/.f32 (sqrt.f32 %1043) %609)
%1214 = (/.f32 %1024 (sqrt.f32 %744))
%1215 = (/.f32 %663 %312)
%1217 = (/.f32 #s(literal 1 binary32) (/.f32 %312 %663))
%1219 = (/.f32 #s(literal 1 binary32) (pow.f32 %1047 #s(literal -1 binary32)))
%1220 = (pow.f32 %1115 #s(literal 1/4 binary32))
%1221 = (pow.f32 %1047 #s(literal 1 binary32))
%1222 = (pow.f32 %1046 #s(literal 1/2 binary32))
%1225 = (+.f32 (cosh.f32 %1152) (sinh.f32 %1152))
%1226 = (fabs.f32 %1048)
%1227 = (fabs.f32 %1047)
%1229 = (exp.f32 (*.f32 %1152 #s(literal 1 binary32)))
%1230 = (exp.f32 %1152)
%1234 = (exp.f32 %101)
%1235 = (exp.f32 %35)
%1251 = (cosh.f32 %222)
%1255 = (sinh.f32 %222)
%1262 = (-.f32 %989 %373)
%1269 = (-.f32 %373 %989)
%1271 = (exp.f32 %989)
%1276 = (cosh.f32 %989)
%1277 = (sinh.f32 %989)
%1283 = (neg.f32 %1271)
%1288 = (*.f32 %1271 #s(literal 1/2 binary32))
%1289 = (*.f32 %1288 %13)
%1290 = (*.f32 %1283 %1057)
%1291 = (*.f32 %1271 %11)
%1292 = (*.f32 %11 %1271)
%1294 = (*.f32 #s(literal 1/2 binary32) (*.f32 %13 %1271))
%1296 = (/.f32 (*.f32 %1271 #s(literal -1/2 binary32)) %21)
%1298 = (/.f32 (*.f32 %1271 #s(literal 1 binary32)) %23)
%1300 = (/.f32 (*.f32 #s(literal -1/2 binary32) %1271) %21)
%1302 = (/.f32 (/.f32 %1271 %313) %313)
%1304 = (/.f32 (/.f32 %1271 %312) %312)
%1306 = (/.f32 (/.f32 %1271 #s(literal 2 binary32)) v)
%1308 = (/.f32 (neg.f32 %1288) %21)
%1310 = (/.f32 (neg.f32 %1283) %23)
%1311 = (/.f32 %1288 v)
%1312 = (/.f32 %1283 %19)
%1313 = (/.f32 %1271 %23)
%1315 = (/.f32 #s(literal 1 binary32) (/.f32 v %1288))
%1317 = (/.f32 #s(literal 1 binary32) (/.f32 %19 %1283))
%1319 = (/.f32 #s(literal 1 binary32) (pow.f32 %1313 #s(literal -1 binary32)))
%1321 = (/.f32 #s(literal 1 binary32) (exp.f32 %1269))
%1323 = (/.f32 #s(literal 1 binary32) (/.f32 %23 %1271))
%1325 = (sqrt.f32 (*.f32 %1313 %1313))
%1326 = (cosh.f32 %1262)
%1328 = (-.f32 %1326 (sinh.f32 %1269))
%1329 = (*.f32 %1277 %11)
%1330 = (fma.f32 %1276 %11 %1329)
%1331 = (*.f32 %11 %1277)
%1332 = (fma.f32 %11 %1276 %1331)
%1333 = (pow.f32 %1313 #s(literal 1 binary32))
%1335 = (+.f32 (*.f32 %11 %1276) %1331)
%1337 = (+.f32 (*.f32 %1276 %11) %1329)
%1340 = (+.f32 (/.f32 %1276 %23) (/.f32 %1277 %23))
%1341 = (sinh.f32 %1262)
%1342 = (+.f32 %1341 %1326)
%1343 = (+.f32 %1326 %1341)
%1345 = (fabs.f32 (neg.f32 %1313))
%1346 = (fabs.f32 %1313)
%1348 = (exp.f32 (*.f32 %1262 #s(literal 1 binary32)))
%1349 = (exp.f32 %1262)
%1351 = (neg.f32 (/.f32 %1271 %19))
%1353 = (neg.f32 (/.f32 %1283 %23))
%1354 = (neg.f32 %811)
%1355 = (exp.f32 %1354)
%1357 = (exp.f32 %811)
%1360 = (cosh.f32 %811)
%1361 = (sinh.f32 %811)
%1362 = (neg.f32 %1361)
%1367 = (neg.f32 %1357)
%1373 = (/.f32 #s(literal 1 binary32) %1367)
%1414 = (neg.f32 %803)
%1415 = (exp.f32 %1414)
%1417 = (exp.f32 %803)
%1420 = (cosh.f32 %803)
%1421 = (sinh.f32 %803)
%1422 = (neg.f32 %1421)
%1427 = (neg.f32 %1417)
%1433 = (/.f32 #s(literal 1 binary32) %1427)
%1474 = (fabs.f32 %920)
%1475 = (fabs.f32 %1474)
%1477 = (neg.f32 %1474)
%1479 = (neg.f32 %920)
%1480 = (neg.f32 %1479)
%1485 = (pow.f32 %920 #s(literal 2 binary32))
%1496 = (-.f32 %985 #s(literal 6931/10000 binary32))
%1499 = (neg.f32 %985)
%1508 = (exp.f32 %985)
%1514 = (exp.f32 (neg.f32 %1496))
%1516 = (exp.f32 %1496)
%1519 = (cosh.f32 %1496)
%1520 = (sinh.f32 %1496)
%1526 = (neg.f32 %1516)
%1543 = (-.f32 %252 %1496)
%1544 = (exp.f32 %1543)
%1563 = (-.f32 %35 %807)
%1566 = (neg.f32 %807)
%1574 = (-.f32 %807 %35)
%1576 = (*.f32 %1563 #s(literal 1 binary32))
%1594 = (/.f32 %1563 v)
%1601 = (/.f32 %807 v)
%1603 = (neg.f32 %1601)
%1605 = (/.f32 %1566 v)
%1628 = (*.f32 %1574 %13)
%1632 = (-.f32 %1594 %649)
%1635 = (-.f32 %1594 %373)
%1637 = (-.f32 %1594 #s(literal -6931/10000 binary32))
%1648 = (-.f32 %373 %1594)
%1656 = (-.f32 %649 %1594)
%1658 = (exp.f32 %1637)
%1659 = (*.f32 %1658 #s(literal 1/2 binary32))
%1660 = (*.f32 %1659 %13)
%1661 = (exp.f32 %1594)
%1662 = (*.f32 %748 %1661)
%1663 = (neg.f32 %1658)
%1664 = (*.f32 %1663 %1057)
%1665 = (neg.f32 %1661)
%1666 = (*.f32 %1665 %1059)
%1667 = (/.f32 %1658 %23)
%1668 = (*.f32 %1667 #s(literal 1 binary32))
%1669 = (*.f32 %1661 %748)
%1670 = (*.f32 %1658 %11)
%1671 = (*.f32 %11 %1658)
%1673 = (*.f32 #s(literal 1/2 binary32) (*.f32 %13 %1658))
%1674 = (-.f32 #s(literal -6931/10000 binary32) %1594)
%1675 = (exp.f32 %1674)
%1676 = (*.f32 %23 %1675)
%1677 = (neg.f32 %1676)
%1678 = (/.f32 #s(literal 1 binary32) %1677)
%1679 = (*.f32 #s(literal -1 binary32) %1678)
%1681 = (*.f32 #s(literal 2 binary32) (*.f32 #s(literal 1/2 binary32) %1667))
%1683 = (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1/2 binary32) %1676))
%1684 = (*.f32 #s(literal 1 binary32) %1667)
%1686 = (/.f32 (*.f32 %1658 #s(literal 1 binary32)) %23)
%1688 = (/.f32 (*.f32 %1658 #s(literal -1/2 binary32)) %21)
%1690 = (/.f32 (*.f32 %11 %1661) %676)
%1692 = (/.f32 (*.f32 %1661 %11) %676)
%1694 = (/.f32 (*.f32 #s(literal -1/2 binary32) %1658) %21)
%1696 = (/.f32 (*.f32 #s(literal 2 binary32) %1667) #s(literal 2 binary32))
%1698 = (/.f32 (/.f32 %1658 %313) %313)
%1700 = (/.f32 (/.f32 %1658 %312) %312)
%1702 = (/.f32 (/.f32 %1658 #s(literal 2 binary32)) v)
%1704 = (/.f32 (*.f32 %1661 #s(literal 1 binary32)) %744)
%1707 = (/.f32 (*.f32 %1661 #s(literal -1/2 binary32)) (*.f32 %676 %21))
%1710 = (/.f32 (*.f32 %1661 #s(literal 1/2 binary32)) (*.f32 %676 v))
%1713 = (/.f32 (*.f32 #s(literal -1/2 binary32) %1661) (*.f32 %21 %676))
%1716 = (/.f32 (*.f32 #s(literal 1/2 binary32) %1661) (*.f32 v %676))
%1718 = (/.f32 (neg.f32 %1663) %23)
%1720 = (/.f32 (neg.f32 %1659) %21)
%1722 = (/.f32 (neg.f32 %1665) %1090)
%1724 = (/.f32 #s(literal -2 binary32) (*.f32 #s(literal 2 binary32) %1677))
%1725 = (/.f32 %1659 v)
%1726 = (/.f32 %1663 %19)
%1727 = (/.f32 %1665 %759)
%1728 = (/.f32 %1661 %744)
%1729 = (/.f32 #s(literal -1 binary32) %1677)
%1731 = (/.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %1676))
%1733 = (/.f32 #s(literal 1 binary32) (/.f32 %1677 #s(literal -1 binary32)))
%1735 = (/.f32 #s(literal 1 binary32) (/.f32 v %1659))
%1737 = (/.f32 #s(literal 1 binary32) (/.f32 %759 %1665))
%1739 = (/.f32 #s(literal 1 binary32) (neg.f32 %1677))
%1741 = (/.f32 #s(literal 1 binary32) (pow.f32 %1667 #s(literal -1 binary32)))
%1743 = (/.f32 #s(literal 1 binary32) (/.f32 %1676 #s(literal 1 binary32)))
%1745 = (/.f32 #s(literal 1 binary32) (/.f32 %744 %1661))
%1746 = (/.f32 #s(literal 1 binary32) %1676)
%1748 = (sqrt.f32 (*.f32 %1667 %1667))
%1749 = (cosh.f32 %1656)
%1750 = (sinh.f32 %1656)
%1751 = (-.f32 %1749 %1750)
%1752 = (cosh.f32 %1637)
%1753 = (sinh.f32 %1637)
%1754 = (*.f32 %1753 %11)
%1755 = (fma.f32 %1752 %11 %1754)
%1756 = (*.f32 %11 %1753)
%1757 = (fma.f32 %11 %1752 %1756)
%1758 = (pow.f32 %1667 #s(literal 1 binary32))
%1759 = (pow.f32 %1676 #s(literal -1 binary32))
%1761 = (+.f32 (*.f32 %11 %1752) %1756)
%1763 = (+.f32 (*.f32 %1752 %11) %1754)
%1766 = (+.f32 (/.f32 %1752 %23) (/.f32 %1753 %23))
%1767 = (cosh.f32 %1594)
%1769 = (sinh.f32 %1594)
%1771 = (+.f32 (/.f32 %1767 %744) (/.f32 %1769 %744))
%1772 = (sinh.f32 %1632)
%1773 = (+.f32 %1772 %1749)
%1774 = (+.f32 %1749 %1772)
%1776 = (fabs.f32 (neg.f32 %1667))
%1777 = (fabs.f32 %1667)
%1779 = (exp.f32 (+.f32 #s(literal 0 binary32) %1632))
%1781 = (exp.f32 (-.f32 #s(literal 0 binary32) %1656))
%1783 = (exp.f32 (*.f32 %1632 #s(literal 1 binary32)))
%1785 = (exp.f32 (*.f32 %1656 #s(literal -1 binary32)))
%1786 = (exp.f32 %1632)
%1788 = (neg.f32 (*.f32 #s(literal -1 binary32) %1667))
%1790 = (neg.f32 (/.f32 %1658 %19))
%1792 = (neg.f32 (/.f32 %1661 %759))
%1794 = (neg.f32 (/.f32 %1663 %23))
%1796 = (neg.f32 (/.f32 #s(literal -1 binary32) %1676))
%1798 = (neg.f32 (/.f32 %1665 %744))
%1799 = (neg.f32 %1678)
%1854 = (neg.f32 %1594)
cosTheta_i
cosTheta_O
v
sinTheta_i
sinTheta_O
#s(literal 1 binary32)
(*.f32 #s(literal -1 binary32) %7)
(*.f32 #s(literal 2 binary32) %11)
(*.f32 %13 #s(literal 1 binary32))
(*.f32 #s(literal 1 binary32) %13)
(/.f32 (*.f32 #s(literal 2 binary32) %13) #s(literal 2 binary32))
(/.f32 #s(literal -2 binary32) %19)
(/.f32 #s(literal -1 binary32) %21)
(/.f32 #s(literal 2 binary32) %23)
(/.f32 #s(literal 1 binary32) (/.f32 %21 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) %27)
(/.f32 #s(literal 1 binary32) (/.f32 v #s(literal 1 binary32)))
%13
(pow.f32 %13 #s(literal 1 binary32))
(pow.f32 v #s(literal -1 binary32))
(neg.f32 %7)
#s(literal 6931/10000 binary32)
#s(literal 2 binary32)
%35
(*.f32 cosTheta_i cosTheta_O)
(/.f32 #s(literal 1 binary32) (pow.f32 %35 #s(literal -1 binary32)))
(pow.f32 %35 #s(literal 1 binary32))
(*.f32 %40 %13)
(*.f32 %42 cosTheta_O)
(*.f32 %44 %7)
(*.f32 %35 %13)
(*.f32 %13 %35)
(*.f32 cosTheta_O %42)
(*.f32 cosTheta_i %49)
(*.f32 cosTheta_i %51)
(/.f32 %40 v)
(/.f32 %54 %27)
(/.f32 %44 %21)
%57
(/.f32 #s(literal 1 binary32) (/.f32 %21 %44))
(/.f32 #s(literal 1 binary32) (pow.f32 %57 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 v %35))
(pow.f32 %57 #s(literal 1 binary32))
(neg.f32 %65)
#s(literal -1 binary32)
%67
(*.f32 sinTheta_i sinTheta_O)
(/.f32 #s(literal 1 binary32) (pow.f32 %67 #s(literal -1 binary32)))
(pow.f32 %67 #s(literal 1 binary32))
(*.f32 %72 %13)
(*.f32 %74 sinTheta_O)
(*.f32 %76 %7)
(*.f32 %67 %13)
(*.f32 %13 %67)
(*.f32 sinTheta_O %74)
(*.f32 sinTheta_i %81)
(*.f32 sinTheta_i %83)
(/.f32 (*.f32 %67 #s(literal -1 binary32)) %21)
(/.f32 %72 v)
(/.f32 (neg.f32 %76) %27)
(/.f32 %76 %21)
%91
(/.f32 #s(literal 1 binary32) (/.f32 %21 %76))
(/.f32 #s(literal 1 binary32) (pow.f32 %91 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 v %67))
(pow.f32 %91 #s(literal 1 binary32))
(neg.f32 %99)
(*.f32 %102 %104)
(*.f32 %101 %13)
(*.f32 %13 %101)
(/.f32 (/.f32 %102 v) v)
(/.f32 (fma.f32 %91 %21 #s(literal -1 binary32)) %21)
(/.f32 (fma.f32 %91 v #s(literal 1 binary32)) v)
(/.f32 (fma.f32 %13 %21 %76) %21)
(/.f32 (fma.f32 %76 %21 (*.f32 #s(literal -1 binary32) %21)) %103)
(/.f32 (fma.f32 %76 v (*.f32 #s(literal 1 binary32) %21)) %121)
(/.f32 (fma.f32 %67 %21 (*.f32 #s(literal -1 binary32) v)) %121)
(/.f32 (fma.f32 #s(literal -1 binary32) %21 (*.f32 %76 %21)) %103)
(/.f32 (fma.f32 #s(literal -1 binary32) v (*.f32 %67 %21)) %121)
(/.f32 (fma.f32 #s(literal 1 binary32) %21 (*.f32 %76 v)) %121)
(/.f32 (fma.f32 %76 %21 (*.f32 %21 #s(literal -1 binary32))) %103)
(/.f32 (fma.f32 %76 v (*.f32 %21 #s(literal 1 binary32))) %121)
(/.f32 (fma.f32 %67 %21 (*.f32 v #s(literal -1 binary32))) %121)
(/.f32 (fma.f32 #s(literal -1 binary32) %21 (*.f32 %21 %76)) %103)
(/.f32 (fma.f32 #s(literal -1 binary32) v (*.f32 %21 %67)) %121)
(/.f32 (fma.f32 #s(literal 1 binary32) %21 (*.f32 v %76)) %121)
(/.f32 (neg.f32 %102) %121)
(/.f32 %155 %21)
(/.f32 %102 %103)
%158
(/.f32 #s(literal 1 binary32) (/.f32 %103 %102))
(/.f32 #s(literal 1 binary32) (/.f32 v %101))
(/.f32 #s(literal 1 binary32) (pow.f32 %158 #s(literal -1 binary32)))
(-.f32 %91 %7)
(-.f32 %13 %99)
(fma.f32 %72 %13 %13)
(fma.f32 %74 sinTheta_O %13)
(fma.f32 %76 %7 %13)
(fma.f32 %67 %13 %13)
(fma.f32 #s(literal -1 binary32) %7 %91)
(fma.f32 #s(literal 2 binary32) %11 %91)
(fma.f32 %13 %67 %13)
(fma.f32 %13 #s(literal 1 binary32) %91)
(fma.f32 #s(literal 1 binary32) %13 %91)
(fma.f32 sinTheta_O %74 %13)
(fma.f32 sinTheta_i %81 %13)
(fma.f32 sinTheta_i %83 %13)
(pow.f32 %158 #s(literal 1 binary32))
(+.f32 (/.f32 v %103) (/.f32 (*.f32 %67 v) %103))
(+.f32 %91 %13)
(+.f32 %13 %91)
(neg.f32 %186)
(*.f32 %188 %13)
(/.f32 (fma.f32 #s(literal 6931/10000 binary32) %21 %44) %21)
(/.f32 (neg.f32 %188) %21)
(/.f32 %188 v)
(/.f32 #s(literal 1 binary32) (/.f32 v %188))
(/.f32 #s(literal 1 binary32) (pow.f32 %197 #s(literal -1 binary32)))
(-.f32 %57 #s(literal -6931/10000 binary32))
(-.f32 #s(literal 6931/10000 binary32) %65)
(fma.f32 %40 %13 #s(literal 6931/10000 binary32))
%197
(fma.f32 %44 %7 #s(literal 6931/10000 binary32))
(fma.f32 %35 %13 #s(literal 6931/10000 binary32))
(fma.f32 %13 %35 #s(literal 6931/10000 binary32))
(fma.f32 cosTheta_O %42 #s(literal 6931/10000 binary32))
(fma.f32 cosTheta_i %49 #s(literal 6931/10000 binary32))
(fma.f32 cosTheta_i %51 #s(literal 6931/10000 binary32))
(pow.f32 %197 #s(literal 1 binary32))
(+.f32 (/.f32 (*.f32 #s(literal 6931/10000 binary32) v) v) %57)
(+.f32 %57 #s(literal 6931/10000 binary32))
(+.f32 #s(literal 6931/10000 binary32) %215)
(+.f32 #s(literal 6931/10000 binary32) (*.f32 %65 #s(literal -1 binary32)))
(+.f32 #s(literal 6931/10000 binary32) %57)
(neg.f32 (-.f32 %65 #s(literal 6931/10000 binary32)))
%224
%227
%232
%235
%238
%241
%243
%248
%251
%255
%257
%258
%253
%259
%261
%263
%265
%268
%270
%272
%274
%276
%278
%280
%281
%282
%283
%284
%285
%286
%287
%288
%289
%290
%291
%292
%293
%294
%295
%296
%297
%298
%299
%300
%301
%302
%303
%304
%305
%306
%307
%309
%311
#s(literal 1/2 binary32)
%316
%319
%322
%324
%325
%326
%328
%329
%330
%332
%334
%336
%337
%338
%339
%11
%340
%342
%344
%346
%348
%350
%351
%353
%360
%361
%362
%363
%364
%365
%366
%367
%369
%371
%372
%376
%377
%379
%381
%383
%384
(*.f32 %21 %21)
(*.f32 %386 %386)
%103
(/.f32 #s(literal 1 binary32) %104)
(pow.f32 %103 #s(literal 1 binary32))
(pow.f32 v #s(literal 2 binary32))
(log.f32 (/.f32 #s(literal 1 binary32) %386))
(log.f32 %13)
(*.f32 %394 #s(literal -1 binary32))
(*.f32 %396 #s(literal 1 binary32))
(*.f32 #s(literal -1 binary32) %398)
(*.f32 #s(literal -1 binary32) %394)
(*.f32 #s(literal 2 binary32) (*.f32 #s(literal 1/2 binary32) %396))
(*.f32 #s(literal 1 binary32) %404)
(*.f32 #s(literal 1 binary32) %396)
(/.f32 (*.f32 #s(literal 2 binary32) %396) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %396 #s(literal -1 binary32)))
(-.f32 #s(literal 0 binary32) %398)
(pow.f32 %396 #s(literal 1 binary32))
(+.f32 #s(literal 0 binary32) %404)
(+.f32 #s(literal 0 binary32) %396)
(neg.f32 (*.f32 #s(literal 1 binary32) %394))
(neg.f32 %398)
%396
(*.f32 #s(literal -1 binary32) %13)
(*.f32 #s(literal 2 binary32) %378)
(*.f32 %13 #s(literal -1 binary32))
(*.f32 #s(literal 1 binary32) %7)
(/.f32 #s(literal -1 binary32) %27)
%7
(/.f32 #s(literal 2 binary32) %19)
(/.f32 #s(literal 1 binary32) (/.f32 %21 #s(literal 1 binary32)))
(/.f32 #s(literal 1 binary32) (pow.f32 %7 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 v #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) %21)
(pow.f32 %21 #s(literal -1 binary32))
(pow.f32 %7 #s(literal 1 binary32))
(neg.f32 %13)
%436
%437
%438
%439
%440
%441
%442
%445
%446
%447
%448
%449
%450
%451
%452
%23
%453
%454
%455
%456
(/.f32 (fma.f32 %67 #s(literal 2 binary32) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %101 #s(literal -1 binary32)))
(-.f32 %67 #s(literal -1 binary32))
(-.f32 #s(literal 1 binary32) %76)
%101
(fma.f32 sinTheta_i sinTheta_O #s(literal 1 binary32))
(pow.f32 %101 #s(literal 1 binary32))
(+.f32 %67 #s(literal 1 binary32))
(+.f32 #s(literal 1 binary32) %67)
(neg.f32 %155)
(/.f32 (-.f32 (*.f32 %468 #s(literal 2 binary32)) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %225 #s(literal -1 binary32)))
(-.f32 (-.f32 %35 #s(literal 1 binary32)) %67)
(-.f32 %468 #s(literal 1 binary32))
%225
(fma.f32 %477 sinTheta_i %479)
(fma.f32 %481 sinTheta_O %479)
(fma.f32 sinTheta_O %481 %479)
(fma.f32 sinTheta_i %477 %479)
(fma.f32 cosTheta_O cosTheta_i %155)
(fma.f32 cosTheta_i cosTheta_O %155)
(pow.f32 %225 #s(literal 1 binary32))
(+.f32 %468 #s(literal -1 binary32))
(+.f32 %155 %54)
(+.f32 %155 %35)
(+.f32 %76 %479)
(+.f32 %35 %155)
(neg.f32 %222)
(*.f32 %273 %13)
(*.f32 %279 %13)
(*.f32 %222 %7)
(*.f32 %225 %13)
(*.f32 %7 %222)
(*.f32 %13 %225)
(/.f32 %273 v)
(/.f32 (*.f32 %225 #s(literal -1 binary32)) %21)
(/.f32 %279 v)
(/.f32 (-.f32 (*.f32 %57 %103) %102) %103)
(/.f32 (-.f32 %507 %101) v)
(/.f32 (-.f32 (*.f32 %44 %103) (*.f32 %21 %102)) (*.f32 %21 %103))
(/.f32 (-.f32 %515 (*.f32 %21 %101)) %121)
(/.f32 (-.f32 (*.f32 %35 %103) %245) %247)
(/.f32 (-.f32 %522 %102) %103)
(/.f32 %525 %21)
(/.f32 %222 %21)
(/.f32 %225 %27)
%252
(/.f32 #s(literal 1 binary32) (/.f32 %21 %222))
(/.f32 #s(literal 1 binary32) (pow.f32 %252 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 v %225))
(-.f32 (-.f32 %57 %91) %13)
(-.f32 %537 %91)
(-.f32 (/.f32 %468 v) %13)
(-.f32 %186 %65)
(-.f32 %57 %158)
(fma.f32 %40 %13 %186)
(fma.f32 %477 %74 %544)
(fma.f32 %42 cosTheta_O %186)
(fma.f32 %44 %7 %186)
(fma.f32 %76 %13 %544)
(fma.f32 %67 %7 %544)
(fma.f32 %35 %13 %186)
(fma.f32 %13 %35 %186)
(fma.f32 sinTheta_O (neg.f32 %74) %544)
(fma.f32 cosTheta_O %42 %186)
(fma.f32 cosTheta_i %49 %186)
(fma.f32 cosTheta_i %51 %186)
(pow.f32 %252 #s(literal 1 binary32))
(+.f32 %537 %99)
(+.f32 %186 %57)
(+.f32 %99 %544)
(+.f32 %57 %186)
(neg.f32 (*.f32 %225 %7))
(neg.f32 (/.f32 %225 %21))
(neg.f32 (/.f32 %222 v))
(neg.f32 %269)
(neg.f32 (-.f32 %158 %57))
(/.f32 #s(literal 1 binary32) (pow.f32 %222 #s(literal -1 binary32)))
(-.f32 %101 (*.f32 (neg.f32 %266) cosTheta_i))
(-.f32 %101 %54)
%222
(-.f32 %67 (-.f32 #s(literal -1 binary32) %44))
(-.f32 %67 (+.f32 #s(literal -1 binary32) %35))
(-.f32 %67 %479)
(-.f32 #s(literal 1 binary32) %468)
(fma.f32 (*.f32 #s(literal -1 binary32) cosTheta_i) cosTheta_O %101)
(fma.f32 %585 cosTheta_i %101)
(fma.f32 %587 cosTheta_O %101)
(fma.f32 %266 cosTheta_i %101)
(fma.f32 #s(literal -1 binary32) %35 %101)
(fma.f32 %35 #s(literal -1 binary32) %101)
(fma.f32 sinTheta_O sinTheta_i %478)
(fma.f32 sinTheta_i sinTheta_O %478)
(fma.f32 cosTheta_O %587 %101)
(fma.f32 cosTheta_i %266 %101)
(pow.f32 %222 #s(literal 1 binary32))
(+.f32 %478 %67)
(+.f32 %44 %101)
(+.f32 %101 %44)
(+.f32 %67 %478)
(+.f32 #s(literal 1 binary32) (fma.f32 sinTheta_O sinTheta_i %44))
(+.f32 #s(literal 1 binary32) (-.f32 %67 %35))
(neg.f32 %225)
#s(literal -6931/10000 binary32)
%224
%227
%232
%235
%238
%241
%243
%248
%251
%255
%257
%258
%253
%259
%261
%263
%265
%268
%270
%272
%274
%276
%278
%280
%281
%282
%283
%284
%285
%286
%287
%288
%289
%290
%291
%292
%293
%294
%295
%296
%297
%298
%299
%300
%301
%302
%303
%304
%305
%306
%307
%309
%311
(*.f32 (sqrt.f32 #s(literal 2 binary32)) (sqrt.f32 %386))
(*.f32 %609 %609)
(/.f32 #s(literal 1 binary32) %320)
%312
(pow.f32 %444 #s(literal 1/4 binary32))
(pow.f32 %312 #s(literal 1 binary32))
(pow.f32 %23 #s(literal 1/2 binary32))
(fabs.f32 %313)
(fabs.f32 %312)
%436
%437
%438
%439
%440
%441
%442
%445
%446
%447
%448
%449
%450
%451
%452
%23
%453
%454
%455
%456
%618
(*.f32 #s(literal 1 binary32) %618)
(/.f32 #s(literal 1 binary32) (pow.f32 %618 #s(literal -1 binary32)))
(pow.f32 %618 #s(literal 1 binary32))
%373
%624
%625
%627
%629
%630
%631
%632
%633
%634
%635
%636
%637
%638
%639
%640
%641
%643
(log.f32 %11)
(/.f32 #s(literal 1 binary32) (pow.f32 %374 #s(literal -1 binary32)))
(-.f32 #s(literal 0 binary32) %373)
(pow.f32 %374 #s(literal 1 binary32))
%374
%316
%319
%322
%324
%325
%326
%328
%329
%330
%332
%334
%336
%337
%338
%339
%11
%340
%342
%344
%346
%348
%350
%351
%353
%360
%361
%362
%363
%364
%365
%366
%367
%369
%371
%372
%376
%377
%379
%381
%383
%384
%651
%649
%652
%653
%654
%655
%656
%658
%659
%661
%665
%668
%672
%674
%675
%678
%679
%682
%685
%688
%689
%690
%692
%694
%696
%698
%700
%703
%704
%705
%706
%711
%713
%714
%716
%717
%720
%722
%724
%662
%726
%728
%730
%732
%734
%736
%737
%738
%739
%740
%741
%743
%667
%744
(*.f32 %23 %676)
(/.f32 %676 %11)
(/.f32 %23 %666)
(/.f32 #s(literal 1 binary32) %748)
(sqrt.f32 (*.f32 %744 %744))
(-.f32 %752 (sinh.f32 %660))
(pow.f32 %744 #s(literal 1 binary32))
(+.f32 %756 %752)
(+.f32 %752 %756)
(fabs.f32 %759)
(fabs.f32 %744)
(exp.f32 (*.f32 %649 #s(literal 1 binary32)))
(exp.f32 %649)
(*.f32 %585 %42)
(*.f32 %266 %42)
(*.f32 %44 %13)
(*.f32 #s(literal -1 binary32) %57)
(*.f32 %57 #s(literal -1 binary32))
(*.f32 %35 %7)
(*.f32 cosTheta_O (*.f32 %42 #s(literal -1 binary32)))
(*.f32 cosTheta_O (neg.f32 %42))
(/.f32 (*.f32 #s(literal -1 binary32) %44) %21)
(/.f32 (*.f32 %44 #s(literal -1 binary32)) %21)
(/.f32 %54 %21)
(/.f32 %44 %27)
(/.f32 %44 v)
(/.f32 %35 %21)
(/.f32 #s(literal 1 binary32) (/.f32 v %44))
(/.f32 #s(literal 1 binary32) (pow.f32 %65 #s(literal -1 binary32)))
(pow.f32 %65 #s(literal 1 binary32))
(neg.f32 (*.f32 %57 #s(literal 1 binary32)))
(neg.f32 %215)
%65
(/.f32 #s(literal 1 binary32) (pow.f32 %803 #s(literal -1 binary32)))
%803
(pow.f32 %803 #s(literal 1 binary32))
%665
%668
%672
%674
%675
%678
%679
%682
%685
%688
%689
%690
%692
%694
%696
%698
%700
%703
%704
%705
%706
%711
%713
%714
%716
%717
%720
%722
%724
%662
(/.f32 #s(literal 1 binary32) (pow.f32 %807 #s(literal -1 binary32)))
%807
(pow.f32 %807 #s(literal 1 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %811 #s(literal -1 binary32)))
%811
(pow.f32 %811 #s(literal 1 binary32))
%815
(*.f32 v %662)
(/.f32 (*.f32 v %669) %670)
(/.f32 (*.f32 %669 v) %670)
(/.f32 #s(literal 1 binary32) (pow.f32 %815 #s(literal -1 binary32)))
(fma.f32 %701 v %823)
(fma.f32 v %701 %825)
(pow.f32 %815 #s(literal 1 binary32))
(+.f32 (*.f32 v %701) %825)
(+.f32 (*.f32 %701 v) %823)
%839
%841
%844
%833
%846
%848
%849
%850
%851
%852
%854
%856
%858
%860
%862
%864
%865
%866
%867
%869
%871
%872
(*.f32 (sqrt.f32 (fabs.f32 %832)) %663)
(*.f32 %876 %876)
(*.f32 %838 %835)
(*.f32 %835 %838)
(/.f32 #s(literal 1 binary32) (pow.f32 %834 #s(literal -1 binary32)))
(sqrt.f32 (*.f32 #s(literal 1/2 binary32) %837))
%834
(pow.f32 %834 #s(literal 1 binary32))
(pow.f32 %833 #s(literal 1/2 binary32))
(fabs.f32 %845)
(fabs.f32 %834)
(*.f32 %888 %13)
(*.f32 %845 %7)
(*.f32 %835 (*.f32 %838 %13))
(*.f32 %835 (/.f32 %838 v))
(*.f32 %834 %13)
(*.f32 %13 %834)
(/.f32 (*.f32 %834 #s(literal -1 binary32)) %21)
(/.f32 %888 v)
(/.f32 (neg.f32 %845) %27)
(/.f32 %845 %21)
%903
(/.f32 #s(literal 1 binary32) (/.f32 %21 %845))
(/.f32 #s(literal 1 binary32) (pow.f32 %903 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 v %834))
(pow.f32 %903 #s(literal 1 binary32))
(neg.f32 (/.f32 %834 %21))
(neg.f32 (/.f32 %845 v))
(/.f32 #s(literal 1 binary32) (pow.f32 %920 #s(literal -1 binary32)))
%920
(pow.f32 %920 #s(literal 1 binary32))
%839
%841
%844
%833
%846
%848
%849
%850
%851
%852
%854
%856
%858
%860
%862
%864
%865
%866
%867
%869
%871
%872
(*.f32 (/.f32 %832 v) (/.f32 %662 v))
(*.f32 %927 %11)
(*.f32 %832 (*.f32 %662 %104))
(*.f32 %832 (/.f32 %662 %103))
(*.f32 %104 %833)
(*.f32 %934 (/.f32 #s(literal 1 binary32) %121))
(*.f32 %903 %903)
(*.f32 %834 (*.f32 %834 %104))
(*.f32 %834 (/.f32 %834 %103))
(*.f32 %833 %104)
(*.f32 %815 (*.f32 #s(literal 1/2 binary32) %104))
%946
(*.f32 %11 %927)
(*.f32 #s(literal 1/2 binary32) (*.f32 %815 %104))
(*.f32 #s(literal 1/2 binary32) (/.f32 %815 %103))
(/.f32 (*.f32 %833 #s(literal 1 binary32)) %103)
(/.f32 (/.f32 %833 v) v)
(/.f32 (neg.f32 %934) (neg.f32 %121))
(/.f32 %934 %121)
(/.f32 %833 %103)
(/.f32 #s(literal 1 binary32) (/.f32 %121 %934))
(/.f32 #s(literal 1 binary32) (pow.f32 %946 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %103 %833))
(pow.f32 %946 #s(literal 1 binary32))
(neg.f32 (/.f32 %833 %121))
(neg.f32 (/.f32 %934 %103))
(/.f32 #s(literal 1 binary32) (pow.f32 %972 #s(literal -1 binary32)))
%972
(pow.f32 %972 #s(literal 1 binary32))
%394
(*.f32 %396 #s(literal -1 binary32))
(*.f32 #s(literal -1 binary32) %404)
(*.f32 #s(literal -1 binary32) %396)
(*.f32 #s(literal 1 binary32) %398)
(/.f32 #s(literal 1 binary32) (pow.f32 %394 #s(literal -1 binary32)))
(-.f32 %398 #s(literal 0 binary32))
(pow.f32 %394 #s(literal 1 binary32))
(neg.f32 %396)
%373
%624
%625
%627
%629
%630
%631
%632
%633
%634
%635
%636
%637
%638
%639
%640
%641
%643
(/.f32 #s(literal 1 binary32) (pow.f32 %985 #s(literal -1 binary32)))
%985
(pow.f32 %985 #s(literal 1 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %989 #s(literal -1 binary32)))
%989
(pow.f32 %989 #s(literal 1 binary32))
%651
%649
%652
%653
%654
%655
%656
%658
%659
%661
(/.f32 #s(literal 1 binary32) (pow.f32 %993 #s(literal -1 binary32)))
(-.f32 %996 #s(literal -6931/10000 binary32))
(-.f32 %253 %657)
(-.f32 %253 %373)
%993
(-.f32 %57 (-.f32 %158 %660))
(-.f32 %57 (+.f32 %158 %649))
(fma.f32 %273 %13 %660)
(fma.f32 %279 %13 %660)
(fma.f32 %222 %7 %660)
(fma.f32 %225 %13 %660)
(fma.f32 %7 %222 %660)
(fma.f32 %13 %225 %660)
(pow.f32 %993 #s(literal 1 binary32))
(+.f32 %996 #s(literal 6931/10000 binary32))
(+.f32 %660 %252)
(+.f32 %253 %374)
(+.f32 %374 %253)
(+.f32 %252 %660)
(+.f32 #s(literal 6931/10000 binary32) %996)
(neg.f32 %1017)
(*.f32 %1019 #s(literal 1/2 binary32))
(*.f32 %663 #s(literal 1 binary32))
(*.f32 #s(literal 1 binary32) %663)
(/.f32 %1019 #s(literal 2 binary32))
(/.f32 %1024 (sqrt.f32 %676))
(/.f32 #s(literal 1 binary32) (pow.f32 %663 #s(literal -1 binary32)))
%663
(pow.f32 %663 #s(literal 1 binary32))
(pow.f32 %662 #s(literal 1/2 binary32))
(+.f32 (cosh.f32 %718) (sinh.f32 %718))
(fabs.f32 %664)
(fabs.f32 %663)
(exp.f32 (fma.f32 %253 #s(literal 1/2 binary32) #s(literal 0 binary32)))
(exp.f32 (*.f32 %718 #s(literal 1 binary32)))
(exp.f32 %718)
(neg.f32 %1041)
%1045
%1050
%1052
%1054
%1055
%1056
%1058
%1060
%1061
%1062
%1063
%1065
%1066
%1067
%1068
%1069
%1071
%1072
%1074
%1076
%1078
%1080
%1082
%1084
%1086
%1088
%1091
%1093
%1095
%1096
%1097
%1098
%1099
%1046
%1101
%1103
%1105
%1107
%1109
%1111
%1113
%1116
%1119
%1121
%1123
%1125
%1127
%1128
%1129
%1130
%1131
%1133
%1135
%1137
%1139
%1142
%1145
%1147
%1148
%1150
%1151
%1154
%1156
%1158
%1159
%1161
%1163
%1165
%1167
%1169
%1171
(*.f32 %320 #s(literal 1 binary32))
(*.f32 #s(literal -1 binary32) %335)
(*.f32 #s(literal 2 binary32) (*.f32 #s(literal 1/2 binary32) %320))
(*.f32 #s(literal 2 binary32) %318)
(*.f32 #s(literal 1 binary32) %320)
(/.f32 (*.f32 #s(literal 2 binary32) %320) #s(literal 2 binary32))
(/.f32 #s(literal -2 binary32) (*.f32 #s(literal 2 binary32) %313))
(/.f32 #s(literal -1 binary32) %313)
(/.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %312))
(/.f32 #s(literal 1 binary32) (/.f32 %313 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) %435)
(/.f32 #s(literal 1 binary32) (pow.f32 %320 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %312 #s(literal 1 binary32)))
%320
(pow.f32 %320 #s(literal 1 binary32))
(pow.f32 %312 #s(literal -1 binary32))
(pow.f32 %23 #s(literal -1/2 binary32))
(fabs.f32 %320)
(neg.f32 %333)
(neg.f32 (/.f32 #s(literal -1 binary32) %312))
(neg.f32 %335)
%1201
%1202
%1204
%1205
%1206
%1207
%1209
%1210
%1212
%1214
%1215
%1217
%1219
%1047
%1220
%1221
%1222
%1225
%1226
%1227
%1229
%1230
(*.f32 (exp.f32 %67) (exp.f32 %478))
(*.f32 %1234 (/.f32 #s(literal 1 binary32) %1235))
(*.f32 %1234 (exp.f32 %44))
(/.f32 (neg.f32 %1234) (neg.f32 %1235))
(/.f32 %1234 %1235)
(/.f32 #s(literal 1 binary32) (/.f32 %1235 %1234))
(/.f32 #s(literal 1 binary32) (pow.f32 %735 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) %733)
(sqrt.f32 (*.f32 %735 %735))
(-.f32 %1251 (sinh.f32 %225))
(pow.f32 %735 #s(literal 1 binary32))
(+.f32 %1255 %1251)
(+.f32 %1251 %1255)
(fabs.f32 (neg.f32 %735))
(fabs.f32 %735)
(exp.f32 %525)
%735
%726
%728
%730
%732
%734
%736
%737
%738
%739
%740
%741
%743
%667
(/.f32 #s(literal 1 binary32) (pow.f32 %1262 #s(literal -1 binary32)))
(-.f32 %989 %657)
%1262
(pow.f32 %1262 #s(literal 1 binary32))
(+.f32 %989 %374)
(+.f32 %374 %989)
(neg.f32 %1269)
(/.f32 #s(literal 1 binary32) (pow.f32 %1271 #s(literal -1 binary32)))
(sqrt.f32 (*.f32 %1271 %1271))
(-.f32 %1276 (neg.f32 %1277))
(pow.f32 %1271 #s(literal 1 binary32))
(+.f32 %1277 %1276)
(+.f32 %1276 %1277)
(fabs.f32 %1283)
(fabs.f32 %1271)
(exp.f32 (*.f32 %989 #s(literal 1 binary32)))
%1271
%1289
%1290
%1291
%1292
%1294
%1296
%1298
%1300
%1302
%1304
%1306
%1308
%1310
%1311
%1312
%1313
%1315
%1317
%1319
%1321
%1323
%1325
%1328
%1330
%1332
%1333
%1335
%1337
%1340
%1342
%1343
%1345
%1346
%1348
%1349
%1351
%1353
%1289
%1290
%1291
%1292
%1294
%1296
%1298
%1300
%1302
%1304
%1306
%1308
%1310
%1311
%1312
%1313
%1315
%1317
%1319
%1321
%1323
%1325
%1328
%1330
%1332
%1333
%1335
%1337
%1340
%1342
%1343
%1345
%1346
%1348
%1349
%1351
%1353
%1289
%1290
%1291
%1292
%1294
%1296
%1298
%1300
%1302
%1304
%1306
%1308
%1310
%1311
%1312
%1313
%1315
%1317
%1319
%1321
%1323
%1325
%1328
%1330
%1332
%1333
%1335
%1337
%1340
%1342
%1343
%1345
%1346
%1348
%1349
%1351
%1353
%1045
%1050
%1052
%1054
%1055
%1056
%1058
%1060
%1061
%1062
%1063
%1065
%1066
%1067
%1068
%1069
%1071
%1072
%1074
%1076
%1078
%1080
%1082
%1084
%1086
%1088
%1091
%1093
%1095
%1096
%1097
%1098
%1099
%1046
%1101
%1103
%1105
%1107
%1109
%1111
%1113
%1116
%1119
%1121
%1123
%1125
%1127
%1128
%1129
%1130
%1131
%1133
%1135
%1137
%1139
%1142
%1145
%1147
%1148
%1150
%1151
%1154
%1156
%1158
%1159
%1161
%1163
%1165
%1167
%1169
%1171
%1201
%1202
%1204
%1205
%1206
%1207
%1209
%1210
%1212
%1214
%1215
%1217
%1219
%1047
%1220
%1221
%1222
%1225
%1226
%1227
%1229
%1230
%1045
%1050
%1052
%1054
%1055
%1056
%1058
%1060
%1061
%1062
%1063
%1065
%1066
%1067
%1068
%1069
%1071
%1072
%1074
%1076
%1078
%1080
%1082
%1084
%1086
%1088
%1091
%1093
%1095
%1096
%1097
%1098
%1099
%1046
%1101
%1103
%1105
%1107
%1109
%1111
%1113
%1116
%1119
%1121
%1123
%1125
%1127
%1128
%1129
%1130
%1131
%1133
%1135
%1137
%1139
%1142
%1145
%1147
%1148
%1150
%1151
%1154
%1156
%1158
%1159
%1161
%1163
%1165
%1167
%1169
%1171
(/.f32 #s(literal 1 binary32) %1355)
(sqrt.f32 (*.f32 %1357 %1357))
(-.f32 %1360 %1362)
(pow.f32 %1357 #s(literal 1 binary32))
(+.f32 %1361 %1360)
(+.f32 %1360 %1361)
(fabs.f32 %1367)
(fabs.f32 %1357)
(exp.f32 (*.f32 %811 #s(literal 1 binary32)))
%1357
(*.f32 %1355 #s(literal 1 binary32))
(*.f32 #s(literal -1 binary32) %1373)
(*.f32 #s(literal 2 binary32) (*.f32 #s(literal 1/2 binary32) %1355))
(*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1/2 binary32) %1357))
(*.f32 #s(literal 1 binary32) %1355)
(/.f32 (*.f32 #s(literal 2 binary32) %1355) #s(literal 2 binary32))
(/.f32 #s(literal -2 binary32) (*.f32 #s(literal 2 binary32) %1367))
(/.f32 #s(literal -1 binary32) %1367)
(/.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %1357))
(/.f32 #s(literal 1 binary32) (/.f32 %1367 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (neg.f32 %1367))
(/.f32 #s(literal 1 binary32) (pow.f32 %1355 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %1357 #s(literal 1 binary32)))
(/.f32 #s(literal 1 binary32) %1357)
(-.f32 %1360 %1361)
(pow.f32 %1355 #s(literal 1 binary32))
(pow.f32 %1357 #s(literal -1 binary32))
(+.f32 %1360 %1362)
(fabs.f32 %1355)
(exp.f32 (+.f32 #s(literal 0 binary32) %1354))
(exp.f32 (-.f32 #s(literal 0 binary32) %811))
(exp.f32 (*.f32 %1354 #s(literal 1 binary32)))
(exp.f32 (*.f32 %811 #s(literal -1 binary32)))
%1355
(neg.f32 (*.f32 #s(literal -1 binary32) %1355))
(neg.f32 (/.f32 #s(literal -1 binary32) %1357))
(neg.f32 %1373)
(/.f32 #s(literal 1 binary32) %1415)
(sqrt.f32 (*.f32 %1417 %1417))
(-.f32 %1420 %1422)
(pow.f32 %1417 #s(literal 1 binary32))
(+.f32 %1421 %1420)
(+.f32 %1420 %1421)
(fabs.f32 %1427)
(fabs.f32 %1417)
(exp.f32 (*.f32 %803 #s(literal 1 binary32)))
%1417
(*.f32 %1415 #s(literal 1 binary32))
(*.f32 #s(literal -1 binary32) %1433)
(*.f32 #s(literal 2 binary32) (*.f32 #s(literal 1/2 binary32) %1415))
(*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1/2 binary32) %1417))
(*.f32 #s(literal 1 binary32) %1415)
(/.f32 (*.f32 #s(literal 2 binary32) %1415) #s(literal 2 binary32))
(/.f32 #s(literal -2 binary32) (*.f32 #s(literal 2 binary32) %1427))
(/.f32 #s(literal -1 binary32) %1427)
(/.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %1417))
(/.f32 #s(literal 1 binary32) (/.f32 %1427 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (neg.f32 %1427))
(/.f32 #s(literal 1 binary32) (pow.f32 %1415 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %1417 #s(literal 1 binary32)))
(/.f32 #s(literal 1 binary32) %1417)
(-.f32 %1420 %1421)
(pow.f32 %1415 #s(literal 1 binary32))
(pow.f32 %1417 #s(literal -1 binary32))
(+.f32 %1420 %1422)
(fabs.f32 %1415)
(exp.f32 (+.f32 #s(literal 0 binary32) %1414))
(exp.f32 (-.f32 #s(literal 0 binary32) %803))
(exp.f32 (*.f32 %1414 #s(literal 1 binary32)))
(exp.f32 (*.f32 %803 #s(literal -1 binary32)))
%1415
(neg.f32 (*.f32 #s(literal -1 binary32) %1415))
(neg.f32 (/.f32 #s(literal -1 binary32) %1417))
(neg.f32 %1433)
(*.f32 %1475 %1475)
(*.f32 %1477 %1477)
(*.f32 %1480 %1480)
(*.f32 %1474 %1474)
(*.f32 %1479 %1479)
(*.f32 %920 %920)
(/.f32 #s(literal 1 binary32) (pow.f32 %1485 #s(literal -1 binary32)))
(pow.f32 %1474 #s(literal 2 binary32))
(pow.f32 %1479 #s(literal 2 binary32))
(pow.f32 %1485 #s(literal 1 binary32))
%1485
(fabs.f32 %1485)
(neg.f32 (*.f32 %920 %1479))
(neg.f32 (*.f32 %1479 %920))
%1045
%1050
%1052
%1054
%1055
%1056
%1058
%1060
%1061
%1062
%1063
%1065
%1066
%1067
%1068
%1069
%1071
%1072
%1074
%1076
%1078
%1080
%1082
%1084
%1086
%1088
%1091
%1093
%1095
%1096
%1097
%1098
%1099
%1046
%1101
%1103
%1105
%1107
%1109
%1111
%1113
%1116
%1119
%1121
%1123
%1125
%1127
%1128
%1129
%1130
%1131
%1133
%1135
%1137
%1139
%1142
%1145
%1147
%1148
%1150
%1151
%1154
%1156
%1158
%1159
%1161
%1163
%1165
%1167
%1169
%1171
(/.f32 #s(literal 1 binary32) (pow.f32 %1496 #s(literal -1 binary32)))
%1496
(-.f32 #s(literal -6931/10000 binary32) %1499)
(pow.f32 %1496 #s(literal 1 binary32))
(+.f32 %985 #s(literal -6931/10000 binary32))
(+.f32 #s(literal -6931/10000 binary32) (neg.f32 %1499))
(+.f32 #s(literal -6931/10000 binary32) %985)
(neg.f32 (-.f32 %1499 #s(literal -6931/10000 binary32)))
(*.f32 %1508 %676)
(*.f32 %676 %1508)
(/.f32 %676 (exp.f32 %1499))
(/.f32 #s(literal 1 binary32) %1514)
(sqrt.f32 (*.f32 %1516 %1516))
(-.f32 %1519 (neg.f32 %1520))
(pow.f32 %1516 #s(literal 1 binary32))
(+.f32 %1520 %1519)
(+.f32 %1519 %1520)
(fabs.f32 %1526)
(fabs.f32 %1516)
(exp.f32 (*.f32 %1496 #s(literal 1 binary32)))
%1516
(*.f32 %1514 %667)
(*.f32 %686 (/.f32 #s(literal 1 binary32) %1526))
(*.f32 %667 %1514)
(/.f32 %1087 %1516)
(/.f32 %1089 (neg.f32 %1526))
(/.f32 %686 %1526)
(/.f32 %667 %1516)
(/.f32 %662 %1508)
(/.f32 #s(literal 1 binary32) (/.f32 %1526 %686))
(/.f32 #s(literal 1 binary32) (pow.f32 %1544 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %1516 %667))
(pow.f32 %1544 #s(literal 1 binary32))
(+.f32 (/.f32 %707 %1516) (/.f32 %709 %1516))
(+.f32 (cosh.f32 %1543) (sinh.f32 %1543))
(fabs.f32 %1544)
(exp.f32 (*.f32 %1543 #s(literal 1 binary32)))
%1544
(neg.f32 (/.f32 %667 %1526))
(neg.f32 (/.f32 %686 %1516))
%1045
%1050
%1052
%1054
%1055
%1056
%1058
%1060
%1061
%1062
%1063
%1065
%1066
%1067
%1068
%1069
%1071
%1072
%1074
%1076
%1078
%1080
%1082
%1084
%1086
%1088
%1091
%1093
%1095
%1096
%1097
%1098
%1099
%1046
%1101
%1103
%1105
%1107
%1109
%1111
%1113
%1116
%1119
%1121
%1123
%1125
%1127
%1128
%1129
%1130
%1131
%1133
%1135
%1137
%1139
%1142
%1145
%1147
%1148
%1150
%1151
%1154
%1156
%1158
%1159
%1161
%1163
%1165
%1167
%1169
%1171
(/.f32 #s(literal 1 binary32) (pow.f32 %1563 #s(literal -1 binary32)))
(-.f32 %35 (neg.f32 %1566))
%1563
(fma.f32 cosTheta_O cosTheta_i %1566)
(fma.f32 cosTheta_i cosTheta_O %1566)
(pow.f32 %1563 #s(literal 1 binary32))
(+.f32 %1566 %35)
(+.f32 %35 %1566)
(neg.f32 %1574)
(*.f32 %1576 %13)
(*.f32 %1574 %7)
(*.f32 %1563 %13)
(*.f32 %13 %1563)
(/.f32 (*.f32 %1563 #s(literal -1 binary32)) %21)
(/.f32 %1576 v)
(/.f32 (-.f32 %507 %807) v)
(/.f32 (-.f32 %515 (*.f32 %21 %807)) %121)
(/.f32 (-.f32 %522 (*.f32 v %807)) %103)
(/.f32 %1574 %21)
(/.f32 %1563 %27)
%1594
(/.f32 #s(literal 1 binary32) (/.f32 %21 %1574))
(/.f32 #s(literal 1 binary32) (pow.f32 %1594 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 v %1563))
(-.f32 %57 %1601)
(fma.f32 %40 %13 %1603)
(fma.f32 %40 %13 %1605)
(fma.f32 %42 cosTheta_O %1603)
(fma.f32 %42 cosTheta_O %1605)
(fma.f32 %44 %7 %1603)
(fma.f32 %44 %7 %1605)
(fma.f32 %35 %13 %1603)
(fma.f32 %35 %13 %1605)
(fma.f32 %13 %35 %1603)
(fma.f32 %13 %35 %1605)
(fma.f32 cosTheta_O %42 %1603)
(fma.f32 cosTheta_O %42 %1605)
(fma.f32 cosTheta_i %49 %1603)
(fma.f32 cosTheta_i %49 %1605)
(fma.f32 cosTheta_i %51 %1603)
(fma.f32 cosTheta_i %51 %1605)
(pow.f32 %1594 #s(literal 1 binary32))
(+.f32 %57 %1603)
(+.f32 %57 %1605)
(neg.f32 (/.f32 %1563 %21))
(neg.f32 (/.f32 %1574 v))
(neg.f32 %1628)
(neg.f32 (-.f32 %1601 %57))
(/.f32 #s(literal 1 binary32) (pow.f32 %1632 #s(literal -1 binary32)))
(-.f32 %1635 #s(literal -6931/10000 binary32))
(-.f32 %1637 %373)
%1632
(-.f32 %57 (-.f32 %1601 %660))
(-.f32 %57 (+.f32 %1601 %649))
(fma.f32 %1576 %13 %660)
(fma.f32 %1574 %7 %660)
(fma.f32 %1563 %13 %660)
(fma.f32 %13 %1563 %660)
(pow.f32 %1632 #s(literal 1 binary32))
(+.f32 (neg.f32 %1648) #s(literal 6931/10000 binary32))
(+.f32 %1635 #s(literal 6931/10000 binary32))
(+.f32 %660 %1594)
(+.f32 %1637 %374)
(+.f32 %1594 %660)
(+.f32 %374 %1637)
(neg.f32 %1656)
%1660
%1662
%1664
%1666
%1668
%1669
%1670
%1671
%1673
%1679
%1681
%1683
%1684
%1686
%1688
%1690
%1692
%1694
%1696
%1698
%1700
%1702
%1704
%1707
%1710
%1713
%1716
%1718
%1720
%1722
%1724
%1725
%1726
%1727
%1728
%1667
%1729
%1731
%1733
%1735
%1737
%1739
%1741
%1743
%1745
%1746
%1748
%1751
%1755
%1757
%1758
%1759
%1761
%1763
%1766
%1771
%1773
%1774
%1776
%1777
%1779
%1781
%1783
%1785
%1786
%1788
%1790
%1792
%1794
%1796
%1798
%1799
(/.f32 #s(literal 1 binary32) (pow.f32 %1637 #s(literal -1 binary32)))
%1637
(-.f32 %57 (-.f32 %1601 #s(literal 6931/10000 binary32)))
(-.f32 %57 (+.f32 %1601 #s(literal -6931/10000 binary32)))
(fma.f32 %1576 %13 #s(literal 6931/10000 binary32))
(fma.f32 %1574 %7 #s(literal 6931/10000 binary32))
(fma.f32 %1563 %13 #s(literal 6931/10000 binary32))
(fma.f32 %13 %1563 #s(literal 6931/10000 binary32))
(pow.f32 %1637 #s(literal 1 binary32))
(+.f32 %1594 #s(literal 6931/10000 binary32))
(+.f32 #s(literal 6931/10000 binary32) %1594)
(neg.f32 %1674)
(*.f32 %1661 %677)
(*.f32 %1661 %666)
(/.f32 %1665 %687)
(/.f32 %1661 %676)
(/.f32 #s(literal 1 binary32) (/.f32 %676 %1661))
(/.f32 #s(literal 1 binary32) (pow.f32 %1658 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) %1675)
(sqrt.f32 (*.f32 %1658 %1658))
(-.f32 %1752 (sinh.f32 %1674))
(pow.f32 %1658 #s(literal 1 binary32))
(+.f32 (/.f32 %1767 %676) (/.f32 %1769 %676))
(+.f32 %1753 %1752)
(+.f32 %1752 %1753)
(fabs.f32 %1663)
(fabs.f32 %1658)
(exp.f32 (*.f32 %1637 #s(literal 1 binary32)))
%1658
%1660
%1662
%1664
%1666
%1668
%1669
%1670
%1671
%1673
%1679
%1681
%1683
%1684
%1686
%1688
%1690
%1692
%1694
%1696
%1698
%1700
%1702
%1704
%1707
%1710
%1713
%1716
%1718
%1720
%1722
%1724
%1725
%1726
%1727
%1728
%1667
%1729
%1731
%1733
%1735
%1737
%1739
%1741
%1743
%1745
%1746
%1748
%1751
%1755
%1757
%1758
%1759
%1761
%1763
%1766
%1771
%1773
%1774
%1776
%1777
%1779
%1781
%1783
%1785
%1786
%1788
%1790
%1792
%1794
%1796
%1798
%1799
%1660
%1662
%1664
%1666
%1668
%1669
%1670
%1671
%1673
%1679
%1681
%1683
%1684
%1686
%1688
%1690
%1692
%1694
%1696
%1698
%1700
%1702
%1704
%1707
%1710
%1713
%1716
%1718
%1720
%1722
%1724
%1725
%1726
%1727
%1728
%1667
%1729
%1731
%1733
%1735
%1737
%1739
%1741
%1743
%1745
%1746
%1748
%1751
%1755
%1757
%1758
%1759
%1761
%1763
%1766
%1771
%1773
%1774
%1776
%1777
%1779
%1781
%1783
%1785
%1786
%1788
%1790
%1792
%1794
%1796
%1798
%1799
(/.f32 (-.f32 (*.f32 %649 %21) %1574) %21)
(/.f32 (-.f32 (*.f32 %649 v) %1563) v)
(/.f32 #s(literal 1 binary32) (pow.f32 %1656 #s(literal -1 binary32)))
(-.f32 %1648 #s(literal 6931/10000 binary32))
%1656
(-.f32 %373 %1637)
(-.f32 #s(literal -6931/10000 binary32) (+.f32 %374 %1594))
(fma.f32 #s(literal 2 binary32) %623 %1674)
(fma.f32 #s(literal 1 binary32) %373 %1674)
(pow.f32 %1656 #s(literal 1 binary32))
(+.f32 (-.f32 %649 %57) %1601)
(+.f32 %1854 %649)
(+.f32 %1648 #s(literal -6931/10000 binary32))
(+.f32 %1674 %373)
(+.f32 %649 %1628)
(+.f32 %649 %1854)
(+.f32 %373 %1674)
(+.f32 #s(literal -6931/10000 binary32) %1648)
(neg.f32 %1632)
(*.f32 (/.f32 %23 %1661) %676)
(*.f32 (exp.f32 %1648) %676)
(*.f32 %23 (/.f32 #s(literal 1 binary32) %1658))
%1676
(/.f32 %19 %1663)
(/.f32 %23 %1658)
(/.f32 #s(literal 1 binary32) %1667)
(sqrt.f32 (*.f32 %1676 %1676))
(-.f32 %1749 %1772)
(pow.f32 %1676 #s(literal 1 binary32))
(+.f32 %1749 %1750)
(+.f32 %1750 %1749)
(fabs.f32 %1677)
(fabs.f32 %1676)
(exp.f32 (*.f32 %1656 #s(literal 1 binary32)))
(exp.f32 %1656)
%1660
%1662
%1664
%1666
%1668
%1669
%1670
%1671
%1673
%1679
%1681
%1683
%1684
%1686
%1688
%1690
%1692
%1694
%1696
%1698
%1700
%1702
%1704
%1707
%1710
%1713
%1716
%1718
%1720
%1722
%1724
%1725
%1726
%1727
%1728
%1667
%1729
%1731
%1733
%1735
%1737
%1739
%1741
%1743
%1745
%1746
%1748
%1751
%1755
%1757
%1758
%1759
%1761
%1763
%1766
%1771
%1773
%1774
%1776
%1777
%1779
%1781
%1783
%1785
%1786
%1788
%1790
%1792
%1794
%1796
%1798
%1799
(/.f32 %725 (exp.f32 %1601))
(/.f32 #s(literal 1 binary32) (pow.f32 %1661 #s(literal -1 binary32)))
(sqrt.f32 (*.f32 %1661 %1661))
(-.f32 %1767 (neg.f32 %1769))
(pow.f32 (exp.f32 %1563) %13)
(pow.f32 %1661 #s(literal 1 binary32))
(+.f32 %1769 %1767)
(+.f32 %1767 %1769)
(fabs.f32 %1665)
(fabs.f32 %1661)
(exp.f32 (*.f32 %1594 #s(literal 1 binary32)))
%1661
%1660
%1662
%1664
%1666
%1668
%1669
%1670
%1671
%1673
%1679
%1681
%1683
%1684
%1686
%1688
%1690
%1692
%1694
%1696
%1698
%1700
%1702
%1704
%1707
%1710
%1713
%1716
%1718
%1720
%1722
%1724
%1725
%1726
%1727
%1728
%1667
%1729
%1731
%1733
%1735
%1737
%1739
%1741
%1743
%1745
%1746
%1748
%1751
%1755
%1757
%1758
%1759
%1761
%1763
%1766
%1771
%1773
%1774
%1776
%1777
%1779
%1781
%1783
%1785
%1786
%1788
%1790
%1792
%1794
%1796
%1798
%1799
%1045
%1050
%1052
%1054
%1055
%1056
%1058
%1060
%1061
%1062
%1063
%1065
%1066
%1067
%1068
%1069
%1071
%1072
%1074
%1076
%1078
%1080
%1082
%1084
%1086
%1088
%1091
%1093
%1095
%1096
%1097
%1098
%1099
%1046
%1101
%1103
%1105
%1107
%1109
%1111
%1113
%1116
%1119
%1121
%1123
%1125
%1127
%1128
%1129
%1130
%1131
%1133
%1135
%1137
%1139
%1142
%1145
%1147
%1148
%1150
%1151
%1154
%1156
%1158
%1159
%1161
%1163
%1165
%1167
%1169
%1171

reconstruct247.0ms (5.1%)

Counts
2 752 → 1 074
Compiler

Compiled 2 752 to 4 533 computations (-64.7% saved)

eval86.0ms (1.8%)

Compiler

Compiled 1 369 to 5 290 computations (-286.4% saved)

prune19.0ms (0.4%)

Pruning

27 alts after pruning (19 fresh and 8 done)

PrunedKeptTotal
New1 350191 369
Fresh000
Picked10818
Done000
Total1 360271 387
Accuracy
99.9%
Counts
1 387 → 27
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(/.f32 (pow.f32 (exp.f32 (-.f32 (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32)) (*.f32 cosTheta_O cosTheta_i))) (/.f32 #s(literal -1 binary32) v)) (*.f32 (exp.f32 #s(literal -6931/10000 binary32)) (+.f32 v v)))
99.5%
(/.f32 (pow.f32 (exp.f32 (-.f32 (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32)) (*.f32 cosTheta_O cosTheta_i))) (/.f32 #s(literal -1 binary32) v)) (exp.f32 (+.f32 #s(literal -6931/10000 binary32) (log.f32 (+.f32 v v)))))
99.6%
(/.f32 (exp.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v)) (exp.f32 (+.f32 #s(literal -6931/10000 binary32) (log.f32 (+.f32 v v)))))
99.6%
(/.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (+.f32 v v))
99.6%
%111 = (sqrt.f32 (+.f32 v v))
(/.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (*.f32 %111 %111))
4.8%
(/.f32 (exp.f32 (approx (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000) #s(literal 6931/10000 binary32))) (+.f32 v v))
12.9%
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) (exp.f32 (neg.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v)) (/.f32 (*.f32 sinTheta_O sinTheta_i) v))))))
99.5%
(/.f32 #s(literal 1 binary32) (exp.f32 (-.f32 (log.f32 (+.f32 v v)) (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32)))))
14.6%
(/.f32 #s(literal 1 binary32) (exp.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v)) (neg.f32 (/.f32 (*.f32 cosTheta_O cosTheta_i) v)))))
14.6%
(/.f32 #s(literal 1 binary32) (exp.f32 (approx (- (log (+ v v)) (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000)) (/.f32 #s(literal 1 binary32) (/.f32 v (neg.f32 (*.f32 cosTheta_O cosTheta_i)))))))
12.9%
(/.f32 #s(literal 1 binary32) (exp.f32 (approx (- (log (+ v v)) (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000)) (*.f32 (*.f32 sinTheta_O sinTheta_i) (/.f32 #s(literal 1 binary32) v)))))
12.9%
(/.f32 #s(literal 1 binary32) (exp.f32 (approx (- (log (+ v v)) (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000)) (*.f32 sinTheta_i (/.f32 sinTheta_O v)))))
6.5%
(/.f32 #s(literal 1 binary32) (exp.f32 (approx (- (log (+ v v)) (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000)) (*.f32 #s(literal -1 binary32) (/.f32 (*.f32 cosTheta_O (approx cosTheta_i #s(literal 0 binary32))) v)))))
99.6%
(*.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (exp.f32 (log.f32 (/.f32 #s(literal 1/2 binary32) v))))
99.6%
(*.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (/.f32 #s(literal 1/2 binary32) v))
99.6%
%112 = (/.f32 #s(literal 1 binary32) (sqrt.f32 (+.f32 v v)))
(*.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (*.f32 %112 %112))
99.6%
(*.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (exp.f32 (neg.f32 (log.f32 (+.f32 v v)))))
4.8%
(*.f32 (exp.f32 (approx (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000) #s(literal 6931/10000 binary32))) (/.f32 #s(literal 1/2 binary32) v))
99.6%
(exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) (+.f32 #s(literal -6931/10000 binary32) (log.f32 (+.f32 v v)))))
4.8%
(exp.f32 (-.f32 (approx (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000) #s(literal 6931/10000 binary32)) (log.f32 (+.f32 v v))))
12.9%
(exp.f32 (neg.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v)) (/.f32 (*.f32 sinTheta_O sinTheta_i) v))))
14.6%
(exp.f32 (neg.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v)) (neg.f32 (/.f32 (*.f32 cosTheta_O cosTheta_i) v)))))
60.5%
%38 = (sqrt (/ (exp (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000)) (+ v v)))
(approx (* %38 %38) (/.f32 (pow.f32 (/.f32 #s(literal 1 binary32) (pow.f32 (sqrt.f32 (*.f32 (*.f32 #s(literal 1/2 binary32) v) (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))))) #s(literal -1 binary32))) #s(literal 2 binary32)) (pow.f32 v #s(literal 2 binary32))))
60.4%
%38 = (sqrt (/ (exp (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000)) (+ v v)))
%55 = (sqrt.f32 #s(literal 1/2 binary32))
%59 = (sqrt.f32 (*.f32 (fabs.f32 v) (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32)))))
(approx (* %38 %38) (/.f32 (pow.f32 (sqrt.f32 (*.f32 (*.f32 %55 %55) (*.f32 %59 %59))) #s(literal 2 binary32)) (pow.f32 v #s(literal 2 binary32))))
60.4%
%38 = (sqrt (/ (exp (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000)) (+ v v)))
(approx (* %38 %38) (/.f32 (*.f32 (*.f32 #s(literal 1/2 binary32) v) (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32)))) (*.f32 v v)))
53.0%
%38 = (sqrt (/ (exp (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000)) (+ v v)))
(approx (* %38 %38) (*.f32 (*.f32 (*.f32 #s(literal 1/2 binary32) v) (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32)))) (/.f32 #s(literal 1 binary32) (*.f32 v v))))
99.6%
%17 = (sqrt (exp (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) (- (log (+ v v)) 6931/10000))))
(approx (* %17 %17) (pow.f32 (sqrt.f32 (exp.f32 (-.f32 (+.f32 #s(literal 6931/10000 binary32) (/.f32 (*.f32 cosTheta_O cosTheta_i) v)) (+.f32 (log.f32 (*.f32 #s(literal 2 binary32) v)) (/.f32 #s(literal 1 binary32) v))))) #s(literal 2 binary32)))
Compiler

Compiled 27 to 124 computations (-359.3% saved)

sample1.0ms (0.0%)

Calls
Call 1
Inputs
%3 = (sqrt 1/2)
(exp -6931/10000)
%3
(* %3 %3)
Outputs
#s(literal 2097251/4194304 binary32)
#s(literal 11863283/16777216 binary32)
#s(literal 1/2 binary32)
Samples
0.0ms0valid
Compiler

Compiled 11 to 7 computations (36.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
adjust: 0.0ms (0.0% of total, 0.0 MiB)

series213.0ms (4.4%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0436562504
Stop Event
iter-limit
Counts
123 → 693
Calls
Call 1
Inputs
%6 = (/.f32 #s(literal 1 binary32) v)
%9 = (*.f32 #s(literal 2 binary32) v)
%11 = (approx cosTheta_i #s(literal 0 binary32))
%12 = (*.f32 cosTheta_O cosTheta_i)
%13 = (/.f32 %12 v)
%15 = (*.f32 sinTheta_O sinTheta_i)
%16 = (/.f32 %15 v)
%17 = (+.f32 #s(literal 6931/10000 binary32) %13)
%19 = (/.f32 #s(literal 1/2 binary32) v)
%20 = (log.f32 %19)
%21 = (pow.f32 v #s(literal 2 binary32))
%22 = (/.f32 sinTheta_O v)
%23 = (neg.f32 %12)
%24 = (/.f32 #s(literal -1 binary32) v)
%25 = (*.f32 %15 %6)
%26 = (*.f32 sinTheta_i %22)
%27 = (*.f32 v v)
%28 = (/.f32 #s(literal 1 binary32) %27)
%29 = (fabs.f32 v)
%30 = (+.f32 v v)
%31 = (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))
%32 = (-.f32 %12 %31)
%33 = (/.f32 %32 v)
%34 = (-.f32 %31 %12)
%36 = (-.f32 %33 #s(literal -6931/10000 binary32))
%37 = (sqrt.f32 %30)
%38 = (*.f32 %37 %37)
%39 = (log.f32 %30)
%40 = (neg.f32 %39)
%41 = (exp.f32 %40)
%42 = (+.f32 #s(literal -6931/10000 binary32) %39)
%43 = (exp.f32 %36)
%44 = (exp.f32 #s(literal -6931/10000 binary32))
%45 = (*.f32 %44 %30)
%46 = (exp.f32 %42)
%47 = (log.f32 %9)
%48 = (* sinTheta_O sinTheta_i)
%50 = (+ %48 1)
%51 = (approx %50 #s(literal 1 binary32))
%52 = (+.f32 %47 %6)
%53 = (-.f32 %17 %52)
%54 = (exp.f32 %53)
%55 = (/.f32 #s(literal 1 binary32) %37)
%56 = (exp.f32 %34)
%57 = (pow.f32 %56 %24)
%58 = (-.f32 %12 %51)
%59 = (/.f32 %58 v)
%60 = (-.f32 %59 #s(literal -6931/10000 binary32))
%61 = (exp.f32 %60)
%62 = (*.f32 cosTheta_O %11)
%63 = (sqrt.f32 %54)
%64 = (pow.f32 %63 #s(literal 2 binary32))
%65 = (* cosTheta_O cosTheta_i)
%67 = (/ (- %65 %50) v)
%68 = (+ v v)
%69 = (log %68)
%74 = (sqrt (exp (- %67 (- %69 6931/10000))))
%77 = (neg.f32 %13)
%78 = (*.f32 %55 %55)
%79 = (/.f32 v %23)
%80 = (/.f32 #s(literal 1 binary32) %79)
%89 = (- (- (log (* 2 v)) 6931/10000) (/ (- %65 (- %48 -1)) v))
%90 = (approx %89 %77)
%91 = (approx %89 %16)
%92 = (*.f32 #s(literal 1/2 binary32) v)
%93 = (*.f32 %92 %43)
%94 = (sqrt.f32 %93)
%95 = (sqrt.f32 #s(literal 1/2 binary32))
%96 = (*.f32 %29 %43)
%97 = (sqrt.f32 %96)
%98 = (*.f32 %95 %95)
%99 = (*.f32 %97 %97)
%100 = (*.f32 %98 %99)
%101 = (pow.f32 %94 #s(literal -1 binary32))
%102 = (/.f32 #s(literal 1 binary32) %101)
%103 = (*.f32 %93 %28)
%104 = (/.f32 %93 %27)
%105 = (neg.f32 %91)
%106 = (exp.f32 %105)
%107 = (/.f32 #s(literal 1 binary32) %106)
%108 = (neg.f32 %90)
%110 = (exp.f32 %90)
%115 = (- %67 -6931/10000)
%118 = (sqrt (/ (exp %115) %68))
%119 = (* %118 %118)
%123 = (pow.f32 %102 #s(literal 2 binary32))
%124 = (/.f32 %123 %21)
%126 = (- %69 %115)
%127 = (approx %126 %26)
%128 = (exp.f32 %127)
%130 = (approx %126 %25)
%131 = (exp.f32 %130)
%135 = (approx %126 %80)
%136 = (exp.f32 %135)
%138 = (-.f32 %51 %12)
%139 = (exp.f32 %138)
%140 = (pow.f32 %139 %24)
%142 = (sqrt.f32 %100)
%143 = (pow.f32 %142 #s(literal 2 binary32))
%144 = (/.f32 %143 %21)
%146 = (exp.f32 %20)
%148 = (/.f32 %62 v)
%149 = (*.f32 #s(literal -1 binary32) %148)
%150 = (approx %126 %149)
%151 = (exp.f32 %150)
cosTheta_i
cosTheta_O
v
sinTheta_i
sinTheta_O
#s(literal 1 binary32)
%6
#s(literal 6931/10000 binary32)
#s(literal 2 binary32)
%9
#s(literal 0 binary32)
%11
%12
%13
#s(literal -1 binary32)
%15
%16
%17
#s(literal 1/2 binary32)
%19
%20
%21
%22
%23
%24
%25
%26
%27
%28
%29
%30
%31
%32
%33
%34
#s(literal -6931/10000 binary32)
%36
%37
%38
%39
%40
%41
%42
%43
%44
%45
%46
%47
%51
%52
%53
%54
%55
%56
%57
%58
%59
%60
%61
%62
%63
%64
(approx (* %74 %74) %64)
%77
%78
%79
%80
%90
%91
%92
%93
%94
%95
%96
%97
%98
%99
%100
%101
%102
%103
%104
%105
%106
%107
%108
(exp.f32 %108)
%110
(/.f32 #s(literal 1 binary32) %110)
(/.f32 %61 %38)
(/.f32 #s(literal 1 binary32) %107)
(approx %119 %103)
(approx %119 %104)
(/.f32 %57 %45)
%123
%124
(approx %119 %124)
%127
%128
(/.f32 #s(literal 1 binary32) %128)
%130
%131
(/.f32 #s(literal 1 binary32) %131)
(*.f32 %61 %78)
(*.f32 %61 %41)
%135
%136
(/.f32 #s(literal 1 binary32) %136)
%138
%139
%140
(/.f32 %140 %46)
%142
%143
%144
(approx %119 %144)
%146
(*.f32 %43 %146)
%148
%149
%150
%151
(/.f32 #s(literal 1 binary32) %151)
Outputs
%5 = (* cosTheta_O cosTheta_i)
%6 = (*.f32 cosTheta_O cosTheta_i)
%9 = (/ %5 v)
%10 = (/.f32 %6 v)
%13 = (+ 6931/10000 %9)
%16 = (+.f32 #s(literal 6931/10000 binary32) %10)
%18 = (neg %5)
%20 = (*.f32 #s(literal -1 binary32) %6)
%24 = (* sinTheta_O sinTheta_i)
%26 = (+ %24 1)
%27 = (- %5 %26)
%29 = (*.f32 sinTheta_O sinTheta_i)
%30 = (+.f32 #s(literal 1 binary32) %29)
%33 = (-.f32 %6 %30)
%35 = (/ %27 v)
%36 = (/.f32 %30 v)
%37 = (*.f32 #s(literal -1 binary32) %36)
%41 = (- %26 %5)
%47 = (- %35 -6931/10000)
%48 = (/.f32 #s(literal 1 binary32) v)
%49 = (/.f32 %29 v)
%50 = (+.f32 %48 %49)
%51 = (-.f32 #s(literal 6931/10000 binary32) %50)
%53 = (-.f32 %16 %50)
%55 = (exp %47)
%56 = (exp.f32 %51)
%58 = (*.f32 cosTheta_i %56)
%59 = (*.f32 cosTheta_O %58)
%65 = (pow.f32 cosTheta_O #s(literal 2 binary32))
%66 = (*.f32 %65 %58)
%67 = (pow.f32 v #s(literal 2 binary32))
%69 = (*.f32 cosTheta_O %56)
%70 = (/.f32 %69 v)
%77 = (pow.f32 cosTheta_O #s(literal 3 binary32))
%78 = (*.f32 %77 %58)
%79 = (pow.f32 v #s(literal 3 binary32))
%81 = (*.f32 %65 %56)
%90 = (* 2 v)
%91 = (log %90)
%92 = (/ 1 v)
%93 = (+ %91 %92)
%94 = (- %13 %93)
%95 = (*.f32 #s(literal 2 binary32) v)
%96 = (log.f32 %95)
%97 = (+.f32 %96 %48)
%98 = (-.f32 #s(literal 6931/10000 binary32) %97)
%100 = (-.f32 %16 %97)
%102 = (exp %94)
%103 = (exp.f32 %98)
%105 = (*.f32 cosTheta_i %103)
%106 = (*.f32 cosTheta_O %105)
%107 = (/.f32 %106 v)
%112 = (*.f32 cosTheta_O %103)
%113 = (/.f32 %112 v)
%114 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %65 %105) %67) %113)
%122 = (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %65 %103) %67))
%124 = (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %77 %105) %79) %122) %113)
%128 = (exp %41)
%129 = (exp.f32 %30)
%131 = (*.f32 cosTheta_i %129)
%136 = (*.f32 cosTheta_O %129)
%154 = (/ -1 v)
%155 = (pow %128 %154)
%156 = (exp.f32 %37)
%158 = (*.f32 cosTheta_i %156)
%159 = (*.f32 cosTheta_O %158)
%164 = (pow.f32 %129 #s(literal 2 binary32))
%167 = (exp.f32 (*.f32 #s(literal 2 binary32) %30))
%169 = (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 %65 %164) %167) %65)
%174 = (*.f32 %156 (fma.f32 #s(literal -1/2 binary32) (/.f32 %169 v) (*.f32 #s(literal 1/2 binary32) (/.f32 %65 %67))))
%175 = (*.f32 cosTheta_O %156)
%176 = (/.f32 %175 v)
%184 = (pow.f32 %129 #s(literal 3 binary32))
%187 = (exp.f32 (*.f32 #s(literal 3 binary32) %30))
%199 = (*.f32 %156 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 cosTheta_O %169) %67) (fma.f32 #s(literal -1/6 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) (/.f32 (*.f32 %77 %184) %187) (fma.f32 #s(literal -1 binary32) %77 (*.f32 #s(literal 3 binary32) (/.f32 (*.f32 %77 %164) %167)))) v) (*.f32 #s(literal 1/6 binary32) (/.f32 %77 %79)))))
%205 = (sqrt %102)
%206 = (sqrt.f32 %103)
%208 = (*.f32 v %206)
%213 = (/.f32 %112 %208)
%215 = (pow.f32 %103 #s(literal 2 binary32))
%217 = (pow.f32 %206 #s(literal 2 binary32))
%218 = (*.f32 %67 %217)
%221 = (-.f32 %122 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %65 %215) %218)))
%234 = (*.f32 v %217)
%248 = (pow %205 2)
%256 = (+ v v)
%257 = (log %256)
%261 = (sqrt (exp (- %35 (- %257 6931/10000))))
%262 = (* %261 %261)
%263 = (+.f32 %96 %50)
%264 = (-.f32 #s(literal 6931/10000 binary32) %263)
%265 = (exp.f32 %264)
%267 = (pow.f32 (sqrt.f32 %265) #s(literal 2 binary32))
%269 = (*.f32 cosTheta_i %265)
%271 = (/.f32 (*.f32 cosTheta_O %269) v)
%277 = (/.f32 (*.f32 cosTheta_O %265) v)
%278 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %65 %269) %67) %277)
%287 = (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %77 %269) %79) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %65 %265) %67))) %277)
%301 = (- (- %91 6931/10000) (/ (- %5 (- %24 -1)) v))
%302 = (-.f32 %263 #s(literal 6931/10000 binary32))
%309 = (* 1/2 v)
%310 = (* %309 %55)
%311 = (*.f32 v %56)
%312 = (*.f32 #s(literal 1/2 binary32) %311)
%318 = (fma.f32 #s(literal 1/4 binary32) (/.f32 %66 v) (*.f32 #s(literal 1/2 binary32) %69))
%325 = (*.f32 #s(literal 1/4 binary32) (/.f32 %81 v))
%328 = (fma.f32 #s(literal 1/2 binary32) %69 (*.f32 cosTheta_i (fma.f32 #s(literal 1/12 binary32) (/.f32 %78 %67) %325)))
%332 = (sqrt %310)
%333 = (sqrt.f32 %312)
%339 = (/.f32 %69 %333)
%341 = (pow.f32 %56 #s(literal 2 binary32))
%342 = (*.f32 %65 %341)
%343 = (pow.f32 %333 #s(literal 2 binary32))
%346 = (-.f32 %325 (*.f32 #s(literal 1/16 binary32) (/.f32 %342 %343)))
%358 = (*.f32 cosTheta_O (*.f32 %56 %346))
%361 = (-.f32 (*.f32 #s(literal 1/12 binary32) (/.f32 (*.f32 %77 %56) %67)) (*.f32 #s(literal 1/4 binary32) (/.f32 %358 %343)))
%372 = (fabs v)
%373 = (* %372 %55)
%374 = (fabs.f32 v)
%375 = (*.f32 %56 %374)
%377 = (*.f32 cosTheta_i %375)
%378 = (*.f32 cosTheta_O %377)
%379 = (/.f32 %378 v)
%384 = (*.f32 cosTheta_O %375)
%385 = (/.f32 %384 v)
%386 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %65 %377) %67) %385)
%393 = (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %65 %375) %67))
%395 = (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %77 %377) %79) %393) %385)
%398 = (sqrt %373)
%399 = (sqrt.f32 %375)
%401 = (*.f32 v %399)
%406 = (/.f32 %384 %401)
%407 = (pow.f32 %374 #s(literal 2 binary32))
%408 = (*.f32 %341 %407)
%410 = (pow.f32 %399 #s(literal 2 binary32))
%411 = (*.f32 %67 %410)
%414 = (-.f32 %393 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %65 %408) %411)))
%428 = (*.f32 v %410)
%442 = (* %398 %398)
%450 = (sqrt 1/2)
%452 = (* (* %450 %450) %442)
%453 = (sqrt.f32 #s(literal 1/2 binary32))
%454 = (pow.f32 %453 #s(literal 2 binary32))
%455 = (*.f32 %454 %410)
%457 = (*.f32 %374 %454)
%458 = (*.f32 %56 %457)
%459 = (*.f32 cosTheta_i %458)
%460 = (*.f32 cosTheta_O %459)
%461 = (/.f32 %460 v)
%464 = (*.f32 %65 %459)
%466 = (*.f32 cosTheta_O %458)
%467 = (/.f32 %466 v)
%468 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %464 %67) %467)
%471 = (*.f32 %77 %459)
%473 = (*.f32 %65 %458)
%475 = (*.f32 #s(literal 1/2 binary32) (/.f32 %473 %67))
%477 = (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 %471 %79) %475) %467)
%480 = (pow %332 -1)
%481 = (/.f32 #s(literal 1 binary32) %333)
%484 = (pow.f32 %333 #s(literal 3 binary32))
%490 = (pow.f32 %333 #s(literal 5 binary32))
%494 = (fma.f32 #s(literal -1/16 binary32) (/.f32 %342 %490) (*.f32 #s(literal 1/2 binary32) (/.f32 %346 %484)))
%498 = (*.f32 #s(literal 1/4 binary32) (/.f32 %69 %484))
%519 = (/ 1 (* v v))
%520 = (* %310 %519)
%521 = (/.f32 %56 v)
%522 = (*.f32 #s(literal 1/2 binary32) %521)
%524 = (/.f32 %59 %67)
%529 = (/.f32 %69 %67)
%531 = (fma.f32 #s(literal 1/4 binary32) (/.f32 %66 %79) (*.f32 #s(literal 1/2 binary32) %529))
%536 = (pow.f32 v #s(literal 4 binary32))
%542 = (fma.f32 #s(literal 1/2 binary32) %529 (*.f32 cosTheta_i (fma.f32 #s(literal 1/12 binary32) (/.f32 %78 %536) (*.f32 #s(literal 1/4 binary32) (/.f32 %81 %79)))))
%546 = (neg %301)
%548 = (-.f32 %16 %263)
%550 = (exp %546)
%560 = (/ 1 %550)
%561 = (/.f32 #s(literal 1 binary32) %265)
%563 = (*.f32 v %265)
%567 = (*.f32 %67 %265)
%568 = (/.f32 %65 %567)
%570 = (fma.f32 #s(literal -1 binary32) %568 (*.f32 #s(literal 1/2 binary32) %568))
%573 = (/.f32 cosTheta_O %563)
%579 = (*.f32 %79 %265)
%580 = (/.f32 %77 %579)
%591 = (exp %301)
%592 = (exp.f32 %302)
%594 = (*.f32 cosTheta_i %592)
%601 = (/.f32 (*.f32 cosTheta_O %592) v)
%620 = (/ 1 %591)
%621 = (/.f32 #s(literal 1 binary32) %592)
%623 = (*.f32 v %592)
%627 = (*.f32 %67 %592)
%628 = (/.f32 %65 %627)
%630 = (fma.f32 #s(literal -1 binary32) %628 (*.f32 #s(literal 1/2 binary32) %628))
%634 = (*.f32 #s(literal -1 binary32) (/.f32 cosTheta_O %623))
%638 = (*.f32 %79 %592)
%639 = (/.f32 %77 %638)
%651 = (sqrt %256)
%652 = (* %651 %651)
%653 = (/ %55 %652)
%654 = (sqrt.f32 %95)
%655 = (pow.f32 %654 #s(literal 2 binary32))
%656 = (/.f32 %56 %655)
%658 = (*.f32 v %655)
%662 = (*.f32 %67 %655)
%664 = (/.f32 %69 %658)
%668 = (*.f32 %79 %655)
%677 = (sqrt (/ %55 %256))
%678 = (* %677 %677)
%680 = (pow.f32 (sqrt.f32 %522) #s(literal 2 binary32))
%689 = (* (exp -6931/10000) %256)
%690 = (/ %155 %689)
%692 = (exp.f32 #s(literal -6931/10000 binary32))
%693 = (*.f32 v %692)
%694 = (/.f32 %156 %693)
%697 = (*.f32 %67 %692)
%702 = (/.f32 %175 %697)
%703 = (*.f32 cosTheta_i %174)
%710 = (*.f32 cosTheta_i %199)
%721 = (pow (/ 1 %480) 2)
%729 = (pow v 2)
%730 = (/ %721 %729)
%731 = (/.f32 %343 %67)
%739 = (neg %257)
%740 = (exp %739)
%741 = (* %55 %740)
%743 = (exp.f32 (neg.f32 %96))
%744 = (*.f32 %743 %56)
%746 = (*.f32 cosTheta_i %744)
%754 = (/.f32 (*.f32 cosTheta_O %744) v)
%767 = (+ -6931/10000 %257)
%768 = (exp %767)
%769 = (/ %155 %768)
%771 = (exp.f32 (-.f32 %96 #s(literal 6931/10000 binary32)))
%772 = (/.f32 %156 %771)
%774 = (*.f32 v %771)
%778 = (/.f32 %175 %774)
%789 = (sqrt %452)
%790 = (sqrt.f32 %455)
%792 = (*.f32 v %790)
%797 = (/.f32 %466 %792)
%798 = (pow.f32 %453 #s(literal 4 binary32))
%799 = (*.f32 %407 %798)
%800 = (*.f32 %341 %799)
%802 = (pow.f32 %790 #s(literal 2 binary32))
%803 = (*.f32 %67 %802)
%806 = (-.f32 %475 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %65 %800) %803)))
%821 = (*.f32 v %802)
%835 = (pow %789 2)
%843 = (/ %835 %729)
%844 = (/.f32 %802 %67)
%850 = (/.f32 %466 %79)
%854 = (pow.f32 v #s(literal 5 binary32))
%862 = (/.f32 #s(literal 1 binary32) cosTheta_i)
%863 = (/.f32 cosTheta_O v)
%864 = (fma.f32 #s(literal 6931/10000 binary32) %862 %863)
%868 = (*.f32 #s(literal -1 binary32) (/.f32 %30 cosTheta_i))
%872 = (*.f32 cosTheta_i v)
%878 = (+.f32 %862 (/.f32 %29 cosTheta_i))
%882 = (/.f32 #s(literal 1 binary32) %872)
%883 = (/.f32 %29 %872)
%884 = (+.f32 %882 %883)
%888 = (exp.f32 %53)
%890 = (/.f32 %96 cosTheta_i)
%895 = (exp.f32 %100)
%897 = (-.f32 %30 %6)
%900 = (/.f32 %897 v)
%901 = (*.f32 #s(literal -1 binary32) %900)
%902 = (exp.f32 %901)
%904 = (sqrt.f32 %895)
%906 = (pow.f32 %904 #s(literal 2 binary32))
%908 = (exp.f32 %548)
%913 = (+.f32 %882 (+.f32 %890 %883))
%918 = (*.f32 #s(literal 1/2 binary32) (*.f32 v %888))
%920 = (sqrt.f32 %918)
%922 = (*.f32 %888 %374)
%924 = (sqrt.f32 %922)
%926 = (pow.f32 %924 #s(literal 2 binary32))
%928 = (*.f32 %454 %926)
%933 = (*.f32 #s(literal 1/2 binary32) (/.f32 %888 v))
%941 = (-.f32 %263 %16)
%942 = (exp.f32 %941)
%954 = (pow.f32 %920 #s(literal 2 binary32))
%962 = (sqrt.f32 %928)
%964 = (pow.f32 %962 #s(literal 2 binary32))
%968 = (*.f32 #s(literal -1 binary32) %863)
%1012 = (pow.f32 cosTheta_i #s(literal 2 binary32))
%1013 = (*.f32 %1012 %56)
%1014 = (*.f32 cosTheta_O %1013)
%1016 = (/.f32 %58 v)
%1021 = (pow.f32 cosTheta_i #s(literal 3 binary32))
%1022 = (*.f32 %1021 %56)
%1023 = (*.f32 cosTheta_O %1022)
%1032 = (*.f32 %1012 %103)
%1035 = (/.f32 %105 v)
%1036 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %1032) %67) %1035)
%1040 = (*.f32 %1021 %103)
%1044 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1032 %67))
%1046 = (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 cosTheta_O %1040) %79) %1044) %1035)
%1050 = (*.f32 %1012 %129)
%1068 = (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 %1012 %164) %167) %1012)
%1073 = (*.f32 %156 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1068 v) (*.f32 #s(literal 1/2 binary32) (/.f32 %1012 %67))))
%1074 = (/.f32 %158 v)
%1093 = (*.f32 %156 (fma.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 cosTheta_i %1068) %67) (fma.f32 #s(literal -1/6 binary32) (/.f32 (fma.f32 #s(literal -2 binary32) (/.f32 (*.f32 %1021 %184) %187) (fma.f32 #s(literal -1 binary32) %1021 (*.f32 #s(literal 3 binary32) (/.f32 (*.f32 %1021 %164) %167)))) v) (*.f32 #s(literal 1/6 binary32) (/.f32 %1021 %79)))))
%1102 = (-.f32 %1044 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %1012 %215) %218)))
%1105 = (/.f32 %105 %208)
%1132 = (*.f32 %1012 %265)
%1135 = (/.f32 %269 v)
%1136 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %1132) %67) %1135)
%1145 = (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %1021 %265)) %79) (*.f32 #s(literal 1/2 binary32) (/.f32 %1132 %67))) %1135)
%1150 = (fma.f32 #s(literal 1/4 binary32) (/.f32 %1014 v) (*.f32 #s(literal 1/2 binary32) %58))
%1156 = (*.f32 #s(literal 1/4 binary32) (/.f32 %1013 v))
%1159 = (fma.f32 #s(literal 1/2 binary32) %58 (*.f32 cosTheta_O (fma.f32 #s(literal 1/12 binary32) (/.f32 %1023 %67) %1156)))
%1163 = (/.f32 %58 %333)
%1164 = (*.f32 %1012 %341)
%1167 = (-.f32 %1156 (*.f32 #s(literal 1/16 binary32) (/.f32 %1164 %343)))
%1178 = (*.f32 cosTheta_i (*.f32 %56 %1167))
%1181 = (-.f32 (*.f32 #s(literal 1/12 binary32) (/.f32 %1022 %67)) (*.f32 #s(literal 1/4 binary32) (/.f32 %1178 %343)))
%1192 = (*.f32 %1012 %375)
%1195 = (/.f32 %377 v)
%1196 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %1192) %67) %1195)
%1199 = (*.f32 %1021 %375)
%1203 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1192 %67))
%1205 = (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 cosTheta_O %1199) %79) %1203) %1195)
%1211 = (-.f32 %1203 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %1012 %408) %411)))
%1214 = (/.f32 %377 %401)
%1242 = (*.f32 %1012 %458)
%1243 = (*.f32 cosTheta_O %1242)
%1245 = (/.f32 %459 v)
%1246 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %1243 %67) %1245)
%1249 = (*.f32 %1021 %458)
%1250 = (*.f32 cosTheta_O %1249)
%1253 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1242 %67))
%1255 = (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 %1250 %79) %1253) %1245)
%1261 = (fma.f32 #s(literal -1/16 binary32) (/.f32 %1164 %490) (*.f32 #s(literal 1/2 binary32) (/.f32 %1167 %484)))
%1265 = (*.f32 #s(literal 1/4 binary32) (/.f32 %58 %484))
%1285 = (/.f32 %58 %67)
%1287 = (fma.f32 #s(literal 1/4 binary32) (/.f32 %1014 %79) (*.f32 #s(literal 1/2 binary32) %1285))
%1296 = (fma.f32 #s(literal 1/2 binary32) %1285 (*.f32 cosTheta_O (fma.f32 #s(literal 1/12 binary32) (/.f32 %1023 %536) (*.f32 #s(literal 1/4 binary32) (/.f32 %1013 %79)))))
%1306 = (/.f32 %1012 %567)
%1308 = (fma.f32 #s(literal -1 binary32) %1306 (*.f32 #s(literal 1/2 binary32) %1306))
%1311 = (/.f32 cosTheta_i %563)
%1317 = (/.f32 %1021 %579)
%1328 = (/.f32 %594 v)
%1329 = (*.f32 %1012 %592)
%1348 = (/.f32 %1012 %627)
%1350 = (fma.f32 #s(literal -1 binary32) %1348 (*.f32 #s(literal 1/2 binary32) %1348))
%1354 = (*.f32 #s(literal -1 binary32) (/.f32 cosTheta_i %623))
%1358 = (/.f32 %1021 %638)
%1371 = (/.f32 %58 %658)
%1386 = (*.f32 cosTheta_O %1073)
%1388 = (/.f32 %158 %697)
%1394 = (*.f32 cosTheta_O %1093)
%1412 = (*.f32 %1012 %744)
%1415 = (/.f32 %746 v)
%1429 = (/.f32 %158 %774)
%1442 = (-.f32 %1253 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %1012 %800) %803)))
%1445 = (/.f32 %459 %792)
%1475 = (/.f32 %459 %79)
%1486 = (/.f32 #s(literal 1 binary32) cosTheta_O)
%1487 = (/.f32 cosTheta_i v)
%1488 = (fma.f32 #s(literal 6931/10000 binary32) %1486 %1487)
%1492 = (*.f32 #s(literal -1 binary32) (/.f32 %30 cosTheta_O))
%1496 = (*.f32 cosTheta_O v)
%1502 = (+.f32 %1486 (/.f32 %29 cosTheta_O))
%1506 = (/.f32 #s(literal 1 binary32) %1496)
%1507 = (/.f32 %29 %1496)
%1508 = (+.f32 %1506 %1507)
%1512 = (/.f32 %96 cosTheta_O)
%1518 = (+.f32 %1506 (+.f32 %1512 %1507))
%1525 = (*.f32 #s(literal -1 binary32) %1487)
%1573 = (-.f32 %6 #s(literal 1 binary32))
%1580 = (fma.f32 #s(literal -1 binary32) %49 %10)
%1583 = (-.f32 #s(literal 1 binary32) %6)
%1586 = (-.f32 %16 %48)
%1588 = (+.f32 #s(literal 6931/10000 binary32) %1580)
%1591 = (exp.f32 %1586)
%1593 = (*.f32 sinTheta_i %1591)
%1594 = (*.f32 sinTheta_O %1593)
%1599 = (*.f32 sinTheta_O %1591)
%1600 = (/.f32 %1599 v)
%1601 = (pow.f32 sinTheta_O #s(literal 2 binary32))
%1602 = (*.f32 %1601 %1593)
%1609 = (pow.f32 sinTheta_O #s(literal 3 binary32))
%1610 = (*.f32 %1609 %1593)
%1612 = (*.f32 %1601 %1591)
%1621 = (exp.f32 %1583)
%1623 = (*.f32 sinTheta_i %1621)
%1644 = (exp.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1583 v)))
%1646 = (*.f32 sinTheta_i %1644)
%1647 = (*.f32 sinTheta_O %1646)
%1652 = (*.f32 sinTheta_O %1644)
%1653 = (/.f32 %1652 v)
%1654 = (pow.f32 %1621 #s(literal 2 binary32))
%1657 = (exp.f32 (*.f32 #s(literal 2 binary32) %1583))
%1659 = (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 %1601 %1654) %1657) %1601)
%1664 = (*.f32 %1644 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1659 v) (*.f32 #s(literal 1/2 binary32) (/.f32 %1601 %67))))
%1665 = (*.f32 sinTheta_i %1664)
%1673 = (pow.f32 %1621 #s(literal 3 binary32))
%1676 = (exp.f32 (*.f32 #s(literal 3 binary32) %1583))
%1687 = (*.f32 %1644 (fma.f32 #s(literal -1/6 binary32) (/.f32 (fma.f32 #s(literal -3 binary32) (/.f32 (*.f32 %1609 %1654) %1657) (fma.f32 #s(literal 2 binary32) (/.f32 (*.f32 %1609 %1673) %1676) %1609)) v) (fma.f32 #s(literal -1/6 binary32) (/.f32 %1609 %79) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %1659) %67)))))
%1694 = (*.f32 sinTheta_i %895)
%1696 = (/.f32 (*.f32 sinTheta_O %1694) v)
%1700 = (/.f32 (*.f32 sinTheta_O %895) v)
%1704 = (fma.f32 #s(literal -1 binary32) %1700 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1601 %1694) %67)))
%1714 = (fma.f32 #s(literal -1 binary32) %1700 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %1609 %1694) %79) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1601 %895) %67)))))
%1717 = (-.f32 %97 %16)
%1720 = (*.f32 v %1591)
%1721 = (*.f32 #s(literal 1/2 binary32) %1720)
%1727 = (fma.f32 #s(literal -1/2 binary32) %1599 (*.f32 #s(literal 1/4 binary32) (/.f32 %1602 v)))
%1734 = (*.f32 #s(literal 1/4 binary32) (/.f32 %1612 v))
%1737 = (fma.f32 #s(literal -1/2 binary32) %1599 (*.f32 sinTheta_i (fma.f32 #s(literal -1/12 binary32) (/.f32 %1610 %67) %1734)))
%1741 = (sqrt.f32 %1721)
%1747 = (/.f32 %1599 %1741)
%1748 = (pow.f32 %1591 #s(literal 2 binary32))
%1749 = (*.f32 %1601 %1748)
%1750 = (pow.f32 %1741 #s(literal 2 binary32))
%1753 = (-.f32 %1734 (*.f32 #s(literal 1/16 binary32) (/.f32 %1749 %1750)))
%1765 = (*.f32 sinTheta_O (*.f32 %1591 %1753))
%1768 = (-.f32 (*.f32 #s(literal -1/12 binary32) (/.f32 (*.f32 %1609 %1591) %67)) (*.f32 #s(literal -1/4 binary32) (/.f32 %1765 %1750)))
%1779 = (*.f32 %1591 %374)
%1781 = (*.f32 sinTheta_i %1779)
%1782 = (*.f32 sinTheta_O %1781)
%1783 = (/.f32 %1782 v)
%1786 = (*.f32 sinTheta_O %1779)
%1787 = (/.f32 %1786 v)
%1791 = (fma.f32 #s(literal -1 binary32) %1787 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1601 %1781) %67)))
%1798 = (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1601 %1779) %67))
%1801 = (fma.f32 #s(literal -1 binary32) %1787 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %1609 %1781) %79) %1798)))
%1804 = (sqrt.f32 %1779)
%1806 = (*.f32 v %1804)
%1811 = (/.f32 %1786 %1806)
%1812 = (*.f32 %1748 %407)
%1814 = (pow.f32 %1804 #s(literal 2 binary32))
%1815 = (*.f32 %67 %1814)
%1818 = (-.f32 %1798 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %1601 %1812) %1815)))
%1832 = (*.f32 v %1814)
%1853 = (*.f32 %454 %1814)
%1855 = (*.f32 %1591 %457)
%1856 = (*.f32 sinTheta_i %1855)
%1857 = (*.f32 sinTheta_O %1856)
%1858 = (/.f32 %1857 v)
%1861 = (*.f32 sinTheta_O %1855)
%1862 = (/.f32 %1861 v)
%1863 = (*.f32 %1601 %1856)
%1866 = (fma.f32 #s(literal -1 binary32) %1862 (*.f32 #s(literal 1/2 binary32) (/.f32 %1863 %67)))
%1869 = (*.f32 %1609 %1856)
%1871 = (*.f32 %1601 %1855)
%1873 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1871 %67))
%1876 = (fma.f32 #s(literal -1 binary32) %1862 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 %1869 %79) %1873)))
%1879 = (/.f32 #s(literal 1 binary32) %1741)
%1881 = (pow.f32 %1741 #s(literal 3 binary32))
%1885 = (pow.f32 %1741 #s(literal 5 binary32))
%1889 = (fma.f32 #s(literal -1/16 binary32) (/.f32 %1749 %1885) (*.f32 #s(literal 1/2 binary32) (/.f32 %1753 %1881)))
%1893 = (*.f32 #s(literal -1/4 binary32) (/.f32 %1599 %1881))
%1913 = (/.f32 %1591 v)
%1914 = (*.f32 #s(literal 1/2 binary32) %1913)
%1916 = (/.f32 %1594 %67)
%1919 = (/.f32 %1599 %67)
%1922 = (fma.f32 #s(literal -1/2 binary32) %1919 (*.f32 #s(literal 1/4 binary32) (/.f32 %1602 %79)))
%1931 = (fma.f32 #s(literal -1/2 binary32) %1919 (*.f32 sinTheta_i (fma.f32 #s(literal -1/12 binary32) (/.f32 %1610 %536) (*.f32 #s(literal 1/4 binary32) (/.f32 %1612 %79)))))
%1946 = (/.f32 #s(literal 1 binary32) %895)
%1948 = (*.f32 v %895)
%1952 = (*.f32 %67 %895)
%1953 = (/.f32 %1601 %1952)
%1955 = (fma.f32 #s(literal -1 binary32) %1953 (*.f32 #s(literal 1/2 binary32) %1953))
%1959 = (*.f32 #s(literal -1 binary32) (/.f32 sinTheta_O %1948))
%1963 = (*.f32 %79 %895)
%1964 = (/.f32 %1609 %1963)
%1976 = (exp.f32 %1717)
%1978 = (*.f32 sinTheta_i %1976)
%1986 = (/.f32 (*.f32 sinTheta_O %1976) v)
%2001 = (/.f32 #s(literal 1 binary32) %1976)
%2003 = (*.f32 v %1976)
%2007 = (*.f32 %67 %1976)
%2008 = (/.f32 %1601 %2007)
%2010 = (fma.f32 #s(literal -1 binary32) %2008 (*.f32 #s(literal 1/2 binary32) %2008))
%2013 = (/.f32 sinTheta_O %2003)
%2019 = (*.f32 %79 %1976)
%2020 = (/.f32 %1609 %2019)
%2031 = (/.f32 %1591 %655)
%2036 = (/.f32 %1599 %658)
%2051 = (pow.f32 (sqrt.f32 %1914) #s(literal 2 binary32))
%2059 = (/.f32 %1644 %693)
%2060 = (*.f32 #s(literal 1/2 binary32) %2059)
%2065 = (/.f32 %1652 %697)
%2072 = (*.f32 sinTheta_i %1687)
%2089 = (/.f32 %1750 %67)
%2097 = (*.f32 %743 %1591)
%2099 = (*.f32 sinTheta_i %2097)
%2105 = (/.f32 (*.f32 sinTheta_O %2097) v)
%2122 = (/.f32 %1644 %771)
%2127 = (/.f32 %1652 %774)
%2139 = (sqrt.f32 %1853)
%2141 = (*.f32 v %2139)
%2146 = (/.f32 %1861 %2141)
%2147 = (*.f32 %1748 %799)
%2149 = (pow.f32 %2139 #s(literal 2 binary32))
%2150 = (*.f32 %67 %2149)
%2153 = (-.f32 %1873 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %1601 %2147) %2150)))
%2168 = (*.f32 v %2149)
%2189 = (/.f32 %2149 %67)
%2194 = (/.f32 %1861 %79)
%2208 = (/.f32 #s(literal 1 binary32) sinTheta_i)
%2209 = (+.f32 sinTheta_O %2208)
%2214 = (/.f32 %6 sinTheta_i)
%2220 = (/.f32 sinTheta_O v)
%2221 = (*.f32 sinTheta_i v)
%2222 = (/.f32 %6 %2221)
%2224 = (/.f32 #s(literal 1 binary32) %2221)
%2231 = (fma.f32 #s(literal 6931/10000 binary32) %2208 %2222)
%2238 = (+.f32 %2224 (+.f32 %2220 (/.f32 %96 sinTheta_i)))
%2245 = (*.f32 #s(literal -1 binary32) sinTheta_O)
%2256 = (-.f32 %10 %48)
%2270 = (*.f32 #s(literal -1 binary32) %2220)
%2290 = (/.f32 %1593 v)
%2291 = (pow.f32 sinTheta_i #s(literal 2 binary32))
%2292 = (*.f32 %2291 %1591)
%2293 = (*.f32 sinTheta_O %2292)
%2300 = (pow.f32 sinTheta_i #s(literal 3 binary32))
%2301 = (*.f32 %2300 %1591)
%2302 = (*.f32 sinTheta_O %2301)
%2312 = (*.f32 %2291 %1621)
%2326 = (/.f32 %1646 v)
%2329 = (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 %2291 %1654) %1657) %2291)
%2334 = (*.f32 %1644 (fma.f32 #s(literal -1/2 binary32) (/.f32 %2329 v) (*.f32 #s(literal 1/2 binary32) (/.f32 %2291 %67))))
%2335 = (*.f32 sinTheta_O %2334)
%2353 = (*.f32 %1644 (fma.f32 #s(literal -1/6 binary32) (/.f32 (fma.f32 #s(literal -3 binary32) (/.f32 (*.f32 %2300 %1654) %1657) (fma.f32 #s(literal 2 binary32) (/.f32 (*.f32 %2300 %1673) %1676) %2300)) v) (fma.f32 #s(literal -1/6 binary32) (/.f32 %2300 %79) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_i %2329) %67)))))
%2360 = (/.f32 %1694 v)
%2361 = (*.f32 %2291 %895)
%2365 = (fma.f32 #s(literal -1 binary32) %2360 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %2361) %67)))
%2375 = (fma.f32 #s(literal -1 binary32) %2360 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %2300 %895)) %79) (*.f32 #s(literal 1/2 binary32) (/.f32 %2361 %67)))))
%2380 = (fma.f32 #s(literal -1/2 binary32) %1593 (*.f32 #s(literal 1/4 binary32) (/.f32 %2293 v)))
%2386 = (*.f32 #s(literal 1/4 binary32) (/.f32 %2292 v))
%2389 = (fma.f32 #s(literal -1/2 binary32) %1593 (*.f32 sinTheta_O (fma.f32 #s(literal -1/12 binary32) (/.f32 %2302 %67) %2386)))
%2393 = (/.f32 %1593 %1741)
%2394 = (*.f32 %2291 %1748)
%2397 = (-.f32 %2386 (*.f32 #s(literal 1/16 binary32) (/.f32 %2394 %1750)))
%2408 = (*.f32 sinTheta_i (*.f32 %1591 %2397))
%2411 = (-.f32 (*.f32 #s(literal -1/12 binary32) (/.f32 %2301 %67)) (*.f32 #s(literal -1/4 binary32) (/.f32 %2408 %1750)))
%2422 = (/.f32 %1781 v)
%2423 = (*.f32 %2291 %1779)
%2427 = (fma.f32 #s(literal -1 binary32) %2422 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %2423) %67)))
%2430 = (*.f32 %2300 %1779)
%2434 = (*.f32 #s(literal 1/2 binary32) (/.f32 %2423 %67))
%2437 = (fma.f32 #s(literal -1 binary32) %2422 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 sinTheta_O %2430) %79) %2434)))
%2440 = (/.f32 %1781 %1806)
%2444 = (-.f32 %2434 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %2291 %1812) %1815)))
%2474 = (/.f32 %1856 v)
%2475 = (*.f32 %2291 %1855)
%2476 = (*.f32 sinTheta_O %2475)
%2479 = (fma.f32 #s(literal -1 binary32) %2474 (*.f32 #s(literal 1/2 binary32) (/.f32 %2476 %67)))
%2482 = (*.f32 %2300 %1855)
%2483 = (*.f32 sinTheta_O %2482)
%2486 = (*.f32 #s(literal 1/2 binary32) (/.f32 %2475 %67))
%2489 = (fma.f32 #s(literal -1 binary32) %2474 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 %2483 %79) %2486)))
%2495 = (fma.f32 #s(literal -1/16 binary32) (/.f32 %2394 %1885) (*.f32 #s(literal 1/2 binary32) (/.f32 %2397 %1881)))
%2499 = (*.f32 #s(literal -1/4 binary32) (/.f32 %1593 %1881))
%2518 = (/.f32 %1593 %67)
%2521 = (fma.f32 #s(literal -1/2 binary32) %2518 (*.f32 #s(literal 1/4 binary32) (/.f32 %2293 %79)))
%2530 = (fma.f32 #s(literal -1/2 binary32) %2518 (*.f32 sinTheta_O (fma.f32 #s(literal -1/12 binary32) (/.f32 %2302 %536) (*.f32 #s(literal 1/4 binary32) (/.f32 %2292 %79)))))
%2540 = (/.f32 %2291 %1952)
%2542 = (fma.f32 #s(literal -1 binary32) %2540 (*.f32 #s(literal 1/2 binary32) %2540))
%2546 = (*.f32 #s(literal -1 binary32) (/.f32 sinTheta_i %1948))
%2550 = (/.f32 %2300 %1963)
%2562 = (*.f32 %2291 %1976)
%2565 = (/.f32 %1978 v)
%2580 = (/.f32 %2291 %2007)
%2582 = (fma.f32 #s(literal -1 binary32) %2580 (*.f32 #s(literal 1/2 binary32) %2580))
%2585 = (/.f32 sinTheta_i %2003)
%2591 = (/.f32 %2300 %2019)
%2602 = (/.f32 %1593 %658)
%2620 = (/.f32 %1646 %697)
%2627 = (*.f32 sinTheta_O %2353)
%2645 = (/.f32 %2099 v)
%2646 = (*.f32 %2291 %2097)
%2663 = (/.f32 %1646 %774)
%2675 = (/.f32 %1856 %2141)
%2679 = (-.f32 %2486 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %2291 %2147) %2150)))
%2710 = (/.f32 %1856 %79)
%2724 = (/.f32 #s(literal 1 binary32) sinTheta_O)
%2725 = (+.f32 sinTheta_i %2724)
%2728 = (/.f32 %6 sinTheta_O)
%2732 = (/.f32 sinTheta_i v)
%2733 = (*.f32 sinTheta_O v)
%2734 = (/.f32 %6 %2733)
%2736 = (/.f32 #s(literal 1 binary32) %2733)
%2743 = (fma.f32 #s(literal 6931/10000 binary32) %2724 %2734)
%2750 = (+.f32 %2736 (+.f32 %2732 (/.f32 %96 sinTheta_O)))
%2757 = (*.f32 #s(literal -1 binary32) sinTheta_i)
%2781 = (*.f32 #s(literal -1 binary32) %2732)
%2801 = (fma.f32 #s(literal 6931/10000 binary32) v %6)
%2804 = (/ 1/2 v)
%2807 = (log %2804)
%2808 = (log.f32 #s(literal 1/2 binary32))
%2809 = (log.f32 v)
%2814 = (/.f32 #s(literal -1 binary32) v)
%2819 = (/.f32 %33 v)
%2826 = (log.f32 #s(literal 2 binary32))
%2827 = (+.f32 %2826 %2809)
%2832 = (exp.f32 (neg.f32 %2827))
%2834 = (-.f32 %2827 #s(literal 6931/10000 binary32))
%2838 = (exp.f32 %2834)
%2846 = (fma.f32 cosTheta_O cosTheta_i (*.f32 v (-.f32 #s(literal 6931/10000 binary32) %2827)))
%2850 = (/ 1 %651)
%2853 = (* %2850 %2850)
%2872 = (log.f32 %48)
%2875 = (fabs.f32 %48)
%2879 = (sqrt.f32 (/.f32 #s(literal 2 binary32) v))
%2880 = (*.f32 v %2879)
%2882 = (pow.f32 %2879 #s(literal 2 binary32))
%2883 = (*.f32 %67 %2882)
%2886 = (+.f32 %2826 (*.f32 #s(literal -1 binary32) %2872))
%2891 = (exp.f32 (neg.f32 %2886))
%2893 = (-.f32 %2886 #s(literal 6931/10000 binary32))
%2895 = (exp.f32 #s(literal 6931/10000 binary32))
%2897 = (*.f32 %2895 %33)
%2898 = (/.f32 %2897 v)
%2901 = (pow.f32 %33 #s(literal 2 binary32))
%2902 = (*.f32 %2895 %2901)
%2903 = (/.f32 %2902 %67)
%2904 = (fma.f32 #s(literal 1/2 binary32) %2903 %2898)
%2907 = (pow.f32 %33 #s(literal 3 binary32))
%2908 = (*.f32 %2895 %2907)
%2909 = (/.f32 %2908 %79)
%2913 = (exp.f32 %2893)
%2916 = (+.f32 %2826 (fma.f32 #s(literal -1 binary32) %2872 %48))
%2918 = (-.f32 #s(literal 6931/10000 binary32) %2886)
%2922 = (exp.f32 %2918)
%2924 = (*.f32 %2922 %1573)
%2925 = (/.f32 %2924 v)
%2928 = (pow.f32 %1573 #s(literal 2 binary32))
%2929 = (*.f32 %2922 %2928)
%2930 = (/.f32 %2929 %67)
%2931 = (fma.f32 #s(literal 1/2 binary32) %2930 %2925)
%2935 = (*.f32 %2922 (pow.f32 %1573 #s(literal 3 binary32)))
%2936 = (/.f32 %2935 %79)
%2944 = (pow.f32 %897 #s(literal 2 binary32))
%2946 = (*.f32 #s(literal 1/2 binary32) (/.f32 %2944 %67))
%2950 = (pow.f32 %897 #s(literal 3 binary32))
%2956 = (sqrt.f32 %2922)
%2958 = (*.f32 v %2956)
%2959 = (/.f32 %2924 %2958)
%2964 = (pow.f32 %2922 #s(literal 2 binary32))
%2966 = (pow.f32 %2956 #s(literal 2 binary32))
%2969 = (-.f32 (*.f32 #s(literal 1/2 binary32) %2929) (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %2964 %2928) %2966)))
%2972 = (*.f32 #s(literal 1/2 binary32) (/.f32 %2969 (*.f32 %67 %2956)))
%2989 = (+.f32 %2925 %2966)
%2991 = (fma.f32 #s(literal 1/2 binary32) %2930 %2989)
%2995 = (*.f32 %2922 %33)
%2996 = (/.f32 %2995 v)
%2997 = (+.f32 %2996 %2966)
%2999 = (*.f32 %2922 %2901)
%3000 = (/.f32 %2999 %67)
%3001 = (fma.f32 #s(literal 1/2 binary32) %3000 %2997)
%3003 = (*.f32 %2922 %2907)
%3004 = (/.f32 %3003 %79)
%3010 = (+.f32 %2826 (fma.f32 #s(literal -1 binary32) %2872 %50))
%3017 = (fma.f32 #s(literal 1/2 binary32) %2895 (*.f32 #s(literal 1/2 binary32) %2898))
%3020 = (fma.f32 #s(literal 1/4 binary32) %2903 %3017)
%3023 = (fma.f32 #s(literal 1/12 binary32) %2909 %3020)
%3027 = (*.f32 #s(literal 1/2 binary32) (/.f32 %2895 v))
%3028 = (sqrt.f32 %3027)
%3029 = (*.f32 v %3028)
%3032 = (/.f32 %2897 (*.f32 %67 %3028))
%3033 = (*.f32 #s(literal 1/4 binary32) %3032)
%3035 = (*.f32 v (+.f32 %3028 %3033))
%3038 = (/.f32 %2902 (*.f32 %79 %3028))
%3041 = (*.f32 v (+.f32 %3028 (fma.f32 #s(literal 1/8 binary32) %3038 %3033)))
%3044 = (pow.f32 %2895 #s(literal 2 binary32))
%3045 = (*.f32 %3044 %2901)
%3046 = (pow.f32 %3028 #s(literal 2 binary32))
%3049 = (-.f32 (*.f32 #s(literal 1/12 binary32) %2908) (*.f32 #s(literal 1/16 binary32) (/.f32 %3045 %3046)))
%3058 = (*.f32 %2895 %2875)
%3062 = (*.f32 %2895 (*.f32 %2875 %33))
%3063 = (/.f32 %3062 v)
%3064 = (fma.f32 %2895 %2875 %3063)
%3068 = (*.f32 %2895 (*.f32 %2875 %2901))
%3069 = (/.f32 %3068 %67)
%3070 = (fma.f32 #s(literal 1/2 binary32) %3069 %3064)
%3074 = (*.f32 %2895 (*.f32 %2875 %2907))
%3075 = (/.f32 %3074 %79)
%3079 = (sqrt.f32 %3058)
%3080 = (*.f32 v %3079)
%3082 = (/.f32 %3062 %3080)
%3088 = (pow.f32 %2875 #s(literal 2 binary32))
%3091 = (pow.f32 %3079 #s(literal 2 binary32))
%3094 = (-.f32 (*.f32 #s(literal 1/2 binary32) %3068) (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %3044 (*.f32 %3088 %2901)) %3091)))
%3097 = (*.f32 #s(literal 1/2 binary32) (/.f32 %3094 (*.f32 %67 %3079)))
%3118 = (+.f32 %3063 %3091)
%3121 = (fma.f32 #s(literal 1/2 binary32) %3069 %3118)
%3127 = (*.f32 %454 %3091)
%3130 = (*.f32 %454 %33)
%3132 = (*.f32 %2895 (*.f32 %2875 %3130))
%3133 = (/.f32 %3132 v)
%3134 = (fma.f32 %454 %3091 %3133)
%3137 = (*.f32 %454 %2901)
%3139 = (*.f32 %2895 (*.f32 %2875 %3137))
%3140 = (/.f32 %3139 %67)
%3141 = (fma.f32 #s(literal 1/2 binary32) %3140 %3134)
%3144 = (*.f32 %454 %2907)
%3146 = (*.f32 %2895 (*.f32 %2875 %3144))
%3147 = (/.f32 %3146 %79)
%3153 = (pow.f32 %3028 #s(literal 3 binary32))
%3155 = (/.f32 %2897 (*.f32 %67 %3153))
%3156 = (/.f32 #s(literal 1 binary32) %3028)
%3158 = (/.f32 (fma.f32 #s(literal -1/4 binary32) %3155 %3156) v)
%3161 = (/.f32 %2902 (*.f32 %79 %3153))
%3163 = (*.f32 #s(literal 1/4 binary32) %3155)
%3165 = (/.f32 (-.f32 (fma.f32 #s(literal -1/8 binary32) %3161 %3156) %3163) v)
%3167 = (pow.f32 %3028 #s(literal 5 binary32))
%3189 = (fma.f32 #s(literal 1/2 binary32) %3000 %2996)
%3195 = (/.f32 #s(literal 1 binary32) %2922)
%3197 = (*.f32 v %2922)
%3201 = (+.f32 %3195 (+.f32 (/.f32 #s(literal 1 binary32) %3197) (/.f32 %29 %3197)))
%3202 = (/.f32 %6 %3197)
%3205 = (/.f32 %2901 %2922)
%3209 = (-.f32 (+.f32 %3195 (/.f32 %29 %2922)) (/.f32 %6 %2922))
%3210 = (*.f32 %33 %3209)
%3211 = (fma.f32 #s(literal 1/2 binary32) %3205 %3210)
%3232 = (/.f32 (*.f32 %2913 %897) v)
%3237 = (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %2913 %2944) %67) %3232)
%3245 = (/.f32 #s(literal 1 binary32) %2913)
%3247 = (*.f32 v %2913)
%3249 = (+.f32 %3245 (/.f32 %6 %3247))
%3250 = (/.f32 #s(literal 1 binary32) %3247)
%3251 = (/.f32 %29 %3247)
%3252 = (+.f32 %3250 %3251)
%3255 = (/.f32 %2944 %2913)
%3256 = (/.f32 %6 %2913)
%3257 = (/.f32 %29 %2913)
%3258 = (+.f32 %3245 %3257)
%3259 = (-.f32 %3256 %3258)
%3260 = (*.f32 %897 %3259)
%3261 = (fma.f32 #s(literal 1/2 binary32) %3255 %3260)
%3275 = (/.f32 %2944 (*.f32 %67 %2913))
%3284 = (/.f32 %2895 %2882)
%3285 = (*.f32 v %2882)
%3287 = (+.f32 %3284 (/.f32 %2897 %3285))
%3291 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %2902 %2883) %3287)
%3301 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %2897 %67) %3046)
%3304 = (fma.f32 #s(literal 1/4 binary32) (/.f32 %2902 %79) %3301)
%3307 = (fma.f32 #s(literal 1/12 binary32) (/.f32 %2908 %536) %3304)
%3311 = (/.f32 %897 %693)
%3312 = (/.f32 #s(literal 1 binary32) %692)
%3313 = (*.f32 #s(literal 1/2 binary32) %3312)
%3318 = (fma.f32 #s(literal 1/4 binary32) (/.f32 %2944 %697) %3313)
%3336 = (*.f32 %2895 %2891)
%3339 = (*.f32 %2895 (*.f32 %2891 %33))
%3341 = (fma.f32 %2895 %2891 (/.f32 %3339 v))
%3344 = (*.f32 %2895 (*.f32 %2891 %2901))
%3346 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %3344 %67) %3341)
%3349 = (*.f32 %2895 (*.f32 %2891 %2907))
%3353 = (/.f32 %897 %3247)
%3356 = (fma.f32 #s(literal 1/2 binary32) %3275 %3245)
%3364 = (sqrt.f32 %3127)
%3365 = (*.f32 v %3364)
%3367 = (/.f32 %3132 %3365)
%3373 = (*.f32 %798 %2901)
%3376 = (pow.f32 %3364 #s(literal 2 binary32))
%3379 = (-.f32 (*.f32 #s(literal 1/2 binary32) %3139) (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %3044 (*.f32 %3088 %3373)) %3376)))
%3382 = (*.f32 #s(literal 1/2 binary32) (/.f32 %3379 (*.f32 %67 %3364)))
%3404 = (+.f32 %3133 %3376)
%3407 = (fma.f32 #s(literal 1/2 binary32) %3140 %3404)
%3410 = (fma.f32 #s(literal 1/6 binary32) %3147 %3407)
%3417 = (fabs.f32 %2814)
%3423 = (/.f32 %2902 v)
%3430 = (/.f32 %2908 v)
%3440 = (+.f32 #s(literal 1 binary32) %20)
%3446 = (*.f32 %2922 %3440)
%3447 = (/.f32 %3446 v)
%3451 = (pow.f32 %3440 #s(literal 2 binary32))
%3452 = (*.f32 %2922 %3451)
%3455 = (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %3452 v) %3446) v)
%3460 = (*.f32 %2922 (pow.f32 %3440 #s(literal 3 binary32)))
%3462 = (*.f32 #s(literal 1/2 binary32) %3452)
%3466 = (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/6 binary32) (/.f32 %3460 v) %3462) v) %3446) v)
%3498 = (-.f32 %3462 (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %2964 %3451) %2966)))
%3501 = (*.f32 #s(literal 1/2 binary32) (/.f32 %3446 %2956))
%3532 = (/.f32 (fma.f32 #s(literal -1 binary32) %2995 (*.f32 #s(literal -1/2 binary32) (/.f32 %2999 v))) v)
%3541 = (/.f32 (fma.f32 #s(literal -1 binary32) %2995 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/6 binary32) (/.f32 %3003 v) (*.f32 #s(literal 1/2 binary32) %2999)) v))) v)
%3550 = (fma.f32 #s(literal -1/2 binary32) %2895 (*.f32 #s(literal -1/2 binary32) %2898))
%3554 = (*.f32 #s(literal 1/2 binary32) %2897)
%3557 = (*.f32 #s(literal -1/2 binary32) %2895)
%3558 = (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/4 binary32) %3423 %3554) v) %3557)
%3563 = (fma.f32 #s(literal -1/4 binary32) %2902 (*.f32 #s(literal -1/12 binary32) %3430))
%3567 = (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %3563 v) %3554) v) %3557)
%3587 = (*.f32 %2895 %3417)
%3592 = (*.f32 %2895 (*.f32 %3417 %33))
%3593 = (/.f32 %3592 v)
%3599 = (*.f32 %2895 (*.f32 %3417 %2901))
%3602 = (/.f32 (fma.f32 #s(literal 1/2 binary32) (/.f32 %3599 v) %3592) v)
%3608 = (*.f32 %2895 (*.f32 %3417 %2907))
%3614 = (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %3599 (*.f32 #s(literal -1/6 binary32) (/.f32 %3608 v))) v) %3592) v)
%3620 = (sqrt.f32 (*.f32 #s(literal -1 binary32) %3587))
%3621 = (*.f32 v %3620)
%3631 = (pow.f32 %3417 #s(literal 2 binary32))
%3634 = (pow.f32 %3620 #s(literal 2 binary32))
%3637 = (-.f32 (*.f32 #s(literal -1/2 binary32) %3599) (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %3044 (*.f32 %3631 %2901)) %3634)))
%3640 = (*.f32 #s(literal 1/2 binary32) (/.f32 %3592 %3620))
%3678 = (*.f32 %454 %3634)
%3682 = (*.f32 %2895 (*.f32 %3417 %3130))
%3683 = (/.f32 %3682 v)
%3688 = (*.f32 %2895 (*.f32 %3417 %3137))
%3691 = (/.f32 (fma.f32 #s(literal 1/2 binary32) (/.f32 %3688 v) %3682) v)
%3696 = (*.f32 %2895 (*.f32 %3417 %3144))
%3702 = (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %3688 (*.f32 #s(literal -1/6 binary32) (/.f32 %3696 v))) v) %3682) v)
%3745 = (/.f32 %2901 %3197)
%3749 = (*.f32 #s(literal -1 binary32) (/.f32 %33 %2922))
%3754 = (/.f32 %2907 %3197)
%3756 = (fma.f32 #s(literal -1 binary32) %3205 (*.f32 #s(literal 1/2 binary32) %3205))
%3768 = (*.f32 %2913 %33)
%3773 = (*.f32 %2913 %2901)
%3790 = (-.f32 %3258 %3256)
%3795 = (*.f32 %33 %3790)
%3805 = (fma.f32 #s(literal 1/2 binary32) (/.f32 %2901 %2913) %3795)
%3821 = (/.f32 %2897 %2882)
%3841 = (fma.f32 #s(literal -1 binary32) (/.f32 %3563 %79) %3301)
%3846 = (-.f32 (+.f32 %3312 (/.f32 %29 %692)) (/.f32 %6 %692))
%3907 = (sqrt.f32 %3678)
%3908 = (*.f32 v %3907)
%3920 = (pow.f32 %3907 #s(literal 2 binary32))
%3923 = (-.f32 (*.f32 #s(literal -1/2 binary32) %3688) (*.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 %3044 (*.f32 %3631 %3373)) %3920)))
%3926 = (*.f32 #s(literal 1/2 binary32) (/.f32 %3682 %3907))
%3956 = (fma.f32 #s(literal -1 binary32) %3683 %3920)
%3959 = (fma.f32 #s(literal -1 binary32) %3691 %3920)
%3962 = (fma.f32 #s(literal -1 binary32) %3702 %3920)
(approx cosTheta_i #s(literal 0 binary32))
(approx cosTheta_i cosTheta_i)
(approx %5 %6)
(approx %9 %10)
(approx %13 #s(literal 6931/10000 binary32))
(approx %13 %16)
(approx %18 %20)
(approx %27 (*.f32 #s(literal -1 binary32) %30))
(approx %27 %33)
(approx %35 %37)
(approx %35 (fma.f32 #s(literal -1 binary32) %36 %10))
(approx %41 %30)
(approx %41 (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -1 binary32) %6 %29)))
(approx %47 %51)
(approx %47 %53)
(approx %55 %56)
(approx %55 (+.f32 %56 (/.f32 %59 v)))
(approx %55 (+.f32 %56 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %66 %67) %70))))
(approx %55 (+.f32 %56 (*.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 %78 %79) (*.f32 #s(literal 1/2 binary32) (/.f32 %81 %67))) %70))))
(approx %94 %98)
(approx %94 %100)
(approx %102 %103)
(approx %102 (+.f32 %103 %107))
(approx %102 (+.f32 %103 (*.f32 cosTheta_i %114)))
(approx %102 (+.f32 %103 (*.f32 cosTheta_i %124)))
(approx %128 %129)
(approx %128 (+.f32 %129 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O %131))))
(approx %128 (+.f32 %129 (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %136 (*.f32 #s(literal 1/2 binary32) (*.f32 %65 %131))))))
(approx %128 (+.f32 %129 (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %136 (*.f32 cosTheta_i (fma.f32 #s(literal -1/6 binary32) (*.f32 %77 %131) (*.f32 #s(literal 1/2 binary32) (*.f32 %65 %129))))))))
(approx %155 %156)
(approx %155 (+.f32 %156 (/.f32 %159 v)))
(approx %155 (+.f32 %156 (*.f32 cosTheta_i (fma.f32 cosTheta_i %174 %176))))
(approx %155 (+.f32 %156 (*.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 cosTheta_i %199 %174) %176))))
(approx %205 %206)
(approx %205 (+.f32 %206 (*.f32 #s(literal 1/2 binary32) (/.f32 %106 %208))))
(approx %205 (+.f32 %206 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) %213 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i %221) %206))))))
(approx %205 (+.f32 %206 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) %213 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %77 %103) %79)) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %103 %221)) %234)))) %206) (*.f32 #s(literal 1/2 binary32) (/.f32 %221 %206))))))))
(approx %248 %217)
(approx %248 (+.f32 %107 %217))
(approx %248 (fma.f32 cosTheta_i %114 %217))
(approx %248 (fma.f32 cosTheta_i %124 %217))
(approx %262 %267)
(approx %262 (+.f32 %271 %267))
(approx %262 (fma.f32 cosTheta_i %278 %267))
(approx %262 (fma.f32 cosTheta_i %287 %267))
(approx (neg %9) (*.f32 #s(literal -1 binary32) %10))
(approx (/ v %18) (*.f32 #s(literal -1 binary32) (/.f32 v %6)))
(approx %301 %302)
(approx %301 (-.f32 (+.f32 %96 (fma.f32 #s(literal -1 binary32) %10 %50)) #s(literal 6931/10000 binary32)))
(approx %310 %312)
(approx %310 (fma.f32 #s(literal 1/2 binary32) %59 %312))
(approx %310 (fma.f32 #s(literal 1/2 binary32) %311 (*.f32 cosTheta_i %318)))
(approx %310 (fma.f32 #s(literal 1/2 binary32) %311 (*.f32 cosTheta_i %328)))
(approx %332 %333)
(approx %332 (+.f32 %333 (*.f32 #s(literal 1/4 binary32) (/.f32 %59 %333))))
(approx %332 (+.f32 %333 (*.f32 cosTheta_i (fma.f32 #s(literal 1/4 binary32) %339 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i %346) %333))))))
(approx %332 (+.f32 %333 (*.f32 cosTheta_i (fma.f32 #s(literal 1/4 binary32) %339 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i %361) %333) (*.f32 #s(literal 1/2 binary32) (/.f32 %346 %333))))))))
(approx %373 %375)
(approx %373 (fma.f32 %56 %374 %379))
(approx %373 (fma.f32 cosTheta_i %386 %375))
(approx %373 (fma.f32 cosTheta_i %395 %375))
(approx %398 %399)
(approx %398 (+.f32 %399 (*.f32 #s(literal 1/2 binary32) (/.f32 %378 %401))))
(approx %398 (+.f32 %399 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) %406 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i %414) %399))))))
(approx %398 (+.f32 %399 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) %406 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %77 %375) %79)) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %56 (*.f32 %374 %414))) %428)))) %399) (*.f32 #s(literal 1/2 binary32) (/.f32 %414 %399))))))))
(approx %442 %410)
(approx %442 (+.f32 %379 %410))
(approx %442 (fma.f32 cosTheta_i %386 %410))
(approx %442 (fma.f32 cosTheta_i %395 %410))
(approx %452 %455)
(approx %452 (fma.f32 %454 %410 %461))
(approx %452 (fma.f32 cosTheta_i %468 %455))
(approx %452 (fma.f32 cosTheta_i %477 %455))
(approx %480 %481)
(approx %480 (fma.f32 #s(literal -1/4 binary32) (/.f32 %59 %484) %481))
(approx %480 (fma.f32 cosTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i %494)) %498) %481))
(approx %480 (fma.f32 cosTheta_i (-.f32 (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %56 %494)) %343) (fma.f32 #s(literal -1/8 binary32) (/.f32 %358 %490) (*.f32 #s(literal 1/2 binary32) (/.f32 %361 %484)))))) %494)) %498) %481))
(approx %520 %522)
(approx %520 (fma.f32 #s(literal 1/2 binary32) %521 (*.f32 #s(literal 1/2 binary32) %524)))
(approx %520 (fma.f32 #s(literal 1/2 binary32) %521 (*.f32 cosTheta_i %531)))
(approx %520 (fma.f32 #s(literal 1/2 binary32) %521 (*.f32 cosTheta_i %542)))
(approx %546 %264)
(approx %546 %548)
(approx %550 %265)
(approx %550 (+.f32 %265 %271))
(approx %550 (+.f32 %265 (*.f32 cosTheta_i %278)))
(approx %550 (+.f32 %265 (*.f32 cosTheta_i %287)))
(approx %560 %561)
(approx %560 (fma.f32 #s(literal -1 binary32) (/.f32 %6 %563) %561))
(approx %560 (fma.f32 cosTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i %570)) %573) %561))
(approx %560 (fma.f32 cosTheta_i (-.f32 (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 cosTheta_O %570) v) (fma.f32 #s(literal -1/2 binary32) %580 (*.f32 #s(literal 1/6 binary32) %580))))) %570)) %573) %561))
(approx %591 %592)
(approx %591 (+.f32 %592 (*.f32 #s(literal -1 binary32) (/.f32 (*.f32 cosTheta_O %594) v))))
(approx %591 (+.f32 %592 (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %601 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %65 %594) %67))))))
(approx %591 (+.f32 %592 (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %601 (*.f32 cosTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %77 %594) %79) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %65 %592) %67))))))))
(approx %620 %621)
(approx %620 (+.f32 %621 (/.f32 %6 %623)))
(approx %620 (fma.f32 cosTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i %630)) %634) %621))
(approx %620 (fma.f32 cosTheta_i (-.f32 (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1/6 binary32) %639 (fma.f32 #s(literal 1/2 binary32) %639 (/.f32 (*.f32 cosTheta_O %630) v))))) %630)) %634) %621))
(approx %653 %656)
(approx %653 (+.f32 %656 (/.f32 %59 %658)))
(approx %653 (fma.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %66 %662) %664) %656))
(approx %653 (fma.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 %78 %668) (*.f32 #s(literal 1/2 binary32) (/.f32 %81 %662))) %664) %656))
(approx %678 %680)
(approx %678 (fma.f32 #s(literal 1/2 binary32) %524 %680))
(approx %678 (fma.f32 cosTheta_i %531 %680))
(approx %678 (fma.f32 cosTheta_i %542 %680))
(approx %690 (*.f32 #s(literal 1/2 binary32) %694))
(approx %690 (fma.f32 #s(literal 1/2 binary32) %694 (*.f32 #s(literal 1/2 binary32) (/.f32 %159 %697))))
(approx %690 (fma.f32 #s(literal 1/2 binary32) %694 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) %702 (*.f32 #s(literal 1/2 binary32) (/.f32 %703 %693))))))
(approx %690 (fma.f32 #s(literal 1/2 binary32) %694 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) %702 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %710 %693) (*.f32 #s(literal 1/2 binary32) (/.f32 %174 %693))))))))
(approx %721 %343)
(approx %721 (fma.f32 #s(literal 1/2 binary32) %59 %343))
(approx %721 (fma.f32 cosTheta_i %318 %343))
(approx %721 (fma.f32 cosTheta_i %328 %343))
(approx %730 %731)
(approx %730 (fma.f32 #s(literal 1/2 binary32) %524 %731))
(approx %730 (fma.f32 cosTheta_i %531 %731))
(approx %730 (fma.f32 cosTheta_i %542 %731))
(approx %741 %744)
(approx %741 (fma.f32 %743 %56 (/.f32 (*.f32 cosTheta_O %746) v)))
(approx %741 (fma.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %65 %746) %67) %754) %744))
(approx %741 (fma.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %77 %746) %79) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %65 %744) %67))) %754) %744))
(approx %769 %772)
(approx %769 (+.f32 %772 (/.f32 %159 %774)))
(approx %769 (fma.f32 cosTheta_i (+.f32 %778 (/.f32 %703 %771)) %772))
(approx %769 (fma.f32 cosTheta_i (fma.f32 cosTheta_i (+.f32 (/.f32 %710 %771) (/.f32 %174 %771)) %778) %772))
(approx %789 %790)
(approx %789 (+.f32 %790 (*.f32 #s(literal 1/2 binary32) (/.f32 %460 %792))))
(approx %789 (+.f32 %790 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) %797 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i %806) %790))))))
(approx %789 (+.f32 %790 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) %797 (*.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %77 %458) %79)) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %56 (*.f32 %374 (*.f32 %454 %806)))) %821)))) %790) (*.f32 #s(literal 1/2 binary32) (/.f32 %806 %790))))))))
(approx %835 %802)
(approx %835 (+.f32 %461 %802))
(approx %835 (fma.f32 cosTheta_i %468 %802))
(approx %835 (fma.f32 cosTheta_i %477 %802))
(approx %843 %844)
(approx %843 (+.f32 (/.f32 %460 %79) %844))
(approx %843 (fma.f32 cosTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %464 %536) %850) %844))
(approx %843 (fma.f32 cosTheta_i (fma.f32 cosTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 %471 %854) (*.f32 #s(literal 1/2 binary32) (/.f32 %473 %536))) %850) %844))
(approx %13 (*.f32 cosTheta_i %864))
(approx %27 (*.f32 cosTheta_i (+.f32 cosTheta_O %868)))
(approx %35 (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) (/.f32 %30 %872) %863)))
(approx %41 (*.f32 cosTheta_i (-.f32 %878 cosTheta_O)))
(approx %47 (*.f32 cosTheta_i (-.f32 %864 %884)))
(approx %55 %888)
(approx %94 (*.f32 cosTheta_i (-.f32 %864 (+.f32 %882 %890))))
(approx %102 %895)
(approx %128 (exp.f32 %897))
(approx %155 %902)
(approx %205 %904)
(approx %248 %906)
(approx %262 (pow.f32 (sqrt.f32 %908) #s(literal 2 binary32)))
(approx %301 (*.f32 cosTheta_i (-.f32 %913 %864)))
(approx %310 %918)
(approx %332 %920)
(approx %373 %922)
(approx %398 %924)
(approx %442 %926)
(approx %452 %928)
(approx %480 (/.f32 #s(literal 1 binary32) %920))
(approx %520 %933)
(approx %546 (*.f32 cosTheta_i (-.f32 %864 %913)))
(approx %550 %908)
(approx %560 (/.f32 #s(literal 1 binary32) %908))
(approx %591 %942)
(approx %620 (/.f32 #s(literal 1 binary32) %942))
(approx %653 (/.f32 %888 %655))
(approx %678 (pow.f32 (sqrt.f32 %933) #s(literal 2 binary32)))
(approx %690 (*.f32 #s(literal 1/2 binary32) (/.f32 %902 %693)))
(approx %721 %954)
(approx %730 (/.f32 %954 %67))
(approx %741 (*.f32 %743 %888))
(approx %769 (/.f32 %902 %771))
(approx %789 %962)
(approx %835 %964)
(approx %843 (/.f32 %964 %67))
(approx %13 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (-.f32 %968 (*.f32 #s(literal 6931/10000 binary32) %862)))))
(approx %27 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) cosTheta_O %878))))
(approx %35 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %863 %884))))
(approx %41 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (-.f32 %868 (*.f32 #s(literal -1 binary32) cosTheta_O)))))
(approx %47 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %863 (*.f32 #s(literal -1 binary32) (/.f32 %51 cosTheta_i))))))
(approx %94 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %863 (*.f32 #s(literal -1 binary32) (/.f32 %98 cosTheta_i))))))
(approx %301 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %302 cosTheta_i)) %968))))
(approx %546 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_i (fma.f32 #s(literal -1 binary32) %863 (*.f32 #s(literal -1 binary32) (/.f32 %264 cosTheta_i))))))
(approx cosTheta_O cosTheta_O)
(approx %55 (+.f32 %56 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %1014 %67) %1016))))
(approx %55 (+.f32 %56 (*.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 %1023 %79) (*.f32 #s(literal 1/2 binary32) (/.f32 %1013 %67))) %1016))))
(approx %102 (+.f32 %103 (*.f32 cosTheta_O %1036)))
(approx %102 (+.f32 %103 (*.f32 cosTheta_O %1046)))
(approx %128 (+.f32 %129 (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %131 (*.f32 #s(literal 1/2 binary32) (*.f32 cosTheta_O %1050))))))
(approx %128 (+.f32 %129 (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %131 (*.f32 cosTheta_O (fma.f32 #s(literal -1/6 binary32) (*.f32 cosTheta_O (*.f32 %1021 %129)) (*.f32 #s(literal 1/2 binary32) %1050)))))))
(approx %155 (+.f32 %156 (*.f32 cosTheta_O (fma.f32 cosTheta_O %1073 %1074))))
(approx %155 (+.f32 %156 (*.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 cosTheta_O %1093 %1073) %1074))))
(approx %205 (+.f32 %206 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %1102) %206) (*.f32 #s(literal 1/2 binary32) %1105)))))
(approx %205 (+.f32 %206 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) %1105 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal 1/6 binary32) (/.f32 %1040 %79)) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i (*.f32 %103 %1102)) %234)))) %206) (*.f32 #s(literal 1/2 binary32) (/.f32 %1102 %206))))))))
(approx %248 (fma.f32 cosTheta_O %1036 %217))
(approx %248 (fma.f32 cosTheta_O %1046 %217))
(approx %262 (fma.f32 cosTheta_O %1136 %267))
(approx %262 (fma.f32 cosTheta_O %1145 %267))
(approx %310 (fma.f32 #s(literal 1/2 binary32) %311 (*.f32 cosTheta_O %1150)))
(approx %310 (fma.f32 #s(literal 1/2 binary32) %311 (*.f32 cosTheta_O %1159)))
(approx %332 (+.f32 %333 (*.f32 cosTheta_O (fma.f32 #s(literal 1/4 binary32) %1163 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %1167) %333))))))
(approx %332 (+.f32 %333 (*.f32 cosTheta_O (fma.f32 #s(literal 1/4 binary32) %1163 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %1181) %333) (*.f32 #s(literal 1/2 binary32) (/.f32 %1167 %333))))))))
(approx %373 (fma.f32 cosTheta_O %1196 %375))
(approx %373 (fma.f32 cosTheta_O %1205 %375))
(approx %398 (+.f32 %399 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %1211) %399) (*.f32 #s(literal 1/2 binary32) %1214)))))
(approx %398 (+.f32 %399 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) %1214 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal 1/6 binary32) (/.f32 %1199 %79)) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i (*.f32 %56 (*.f32 %374 %1211))) %428)))) %399) (*.f32 #s(literal 1/2 binary32) (/.f32 %1211 %399))))))))
(approx %442 (fma.f32 cosTheta_O %1196 %410))
(approx %442 (fma.f32 cosTheta_O %1205 %410))
(approx %452 (fma.f32 cosTheta_O %1246 %455))
(approx %452 (fma.f32 cosTheta_O %1255 %455))
(approx %480 (fma.f32 cosTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O %1261)) %1265) %481))
(approx %480 (fma.f32 cosTheta_O (-.f32 (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1/4 binary32) (/.f32 (*.f32 cosTheta_i (*.f32 %56 %1261)) %343) (fma.f32 #s(literal -1/8 binary32) (/.f32 %1178 %490) (*.f32 #s(literal 1/2 binary32) (/.f32 %1181 %484)))))) %1261)) %1265) %481))
(approx %520 (fma.f32 #s(literal 1/2 binary32) %521 (*.f32 cosTheta_O %1287)))
(approx %520 (fma.f32 #s(literal 1/2 binary32) %521 (*.f32 cosTheta_O %1296)))
(approx %550 (+.f32 %265 (*.f32 cosTheta_O %1136)))
(approx %550 (+.f32 %265 (*.f32 cosTheta_O %1145)))
(approx %560 (fma.f32 cosTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O %1308)) %1311) %561))
(approx %560 (fma.f32 cosTheta_O (-.f32 (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 cosTheta_i %1308) v) (fma.f32 #s(literal -1/2 binary32) %1317 (*.f32 #s(literal 1/6 binary32) %1317))))) %1308)) %1311) %561))
(approx %591 (+.f32 %592 (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %1328 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %1329) %67))))))
(approx %591 (+.f32 %592 (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %1328 (*.f32 cosTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %1021 %592)) %79) (*.f32 #s(literal 1/2 binary32) (/.f32 %1329 %67))))))))
(approx %620 (fma.f32 cosTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O %1350)) %1354) %621))
(approx %620 (fma.f32 cosTheta_O (-.f32 (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1/6 binary32) %1358 (fma.f32 #s(literal 1/2 binary32) %1358 (/.f32 (*.f32 cosTheta_i %1350) v))))) %1350)) %1354) %621))
(approx %653 (fma.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %1014 %662) %1371) %656))
(approx %653 (fma.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 %1023 %668) (*.f32 #s(literal 1/2 binary32) (/.f32 %1013 %662))) %1371) %656))
(approx %678 (fma.f32 cosTheta_O %1287 %680))
(approx %678 (fma.f32 cosTheta_O %1296 %680))
(approx %690 (fma.f32 #s(literal 1/2 binary32) %694 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %1386 %693) (*.f32 #s(literal 1/2 binary32) %1388)))))
(approx %690 (fma.f32 #s(literal 1/2 binary32) %694 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) %1388 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %1394 %693) (*.f32 #s(literal 1/2 binary32) (/.f32 %1073 %693))))))))
(approx %721 (fma.f32 cosTheta_O %1150 %343))
(approx %721 (fma.f32 cosTheta_O %1159 %343))
(approx %730 (fma.f32 cosTheta_O %1287 %731))
(approx %730 (fma.f32 cosTheta_O %1296 %731))
(approx %741 (fma.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %1412) %67) %1415) %744))
(approx %741 (fma.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 cosTheta_O (*.f32 %1021 %744)) %79) (*.f32 #s(literal 1/2 binary32) (/.f32 %1412 %67))) %1415) %744))
(approx %769 (fma.f32 cosTheta_O (+.f32 (/.f32 %1386 %771) %1429) %772))
(approx %769 (fma.f32 cosTheta_O (fma.f32 cosTheta_O (+.f32 (/.f32 %1394 %771) (/.f32 %1073 %771)) %1429) %772))
(approx %789 (+.f32 %790 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O %1442) %790) (*.f32 #s(literal 1/2 binary32) %1445)))))
(approx %789 (+.f32 %790 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) %1445 (*.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal 1/6 binary32) (/.f32 %1249 %79)) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 cosTheta_i (*.f32 %56 (*.f32 %374 (*.f32 %454 %1442)))) %821)))) %790) (*.f32 #s(literal 1/2 binary32) (/.f32 %1442 %790))))))))
(approx %835 (fma.f32 cosTheta_O %1246 %802))
(approx %835 (fma.f32 cosTheta_O %1255 %802))
(approx %843 (fma.f32 cosTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %1243 %536) %1475) %844))
(approx %843 (fma.f32 cosTheta_O (fma.f32 cosTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 %1250 %854) (*.f32 #s(literal 1/2 binary32) (/.f32 %1242 %536))) %1475) %844))
(approx %13 (*.f32 cosTheta_O %1488))
(approx %27 (*.f32 cosTheta_O (+.f32 cosTheta_i %1492)))
(approx %35 (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) (/.f32 %30 %1496) %1487)))
(approx %41 (*.f32 cosTheta_O (-.f32 %1502 cosTheta_i)))
(approx %47 (*.f32 cosTheta_O (-.f32 %1488 %1508)))
(approx %94 (*.f32 cosTheta_O (-.f32 %1488 (+.f32 %1506 %1512))))
(approx %301 (*.f32 cosTheta_O (-.f32 %1518 %1488)))
(approx %546 (*.f32 cosTheta_O (-.f32 %1488 %1518)))
(approx %13 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (-.f32 %1525 (*.f32 #s(literal 6931/10000 binary32) %1486)))))
(approx %27 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) cosTheta_i %1502))))
(approx %35 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %1487 %1508))))
(approx %41 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (-.f32 %1492 (*.f32 #s(literal -1 binary32) cosTheta_i)))))
(approx %47 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %1487 (*.f32 #s(literal -1 binary32) (/.f32 %51 cosTheta_O))))))
(approx %94 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %1487 (*.f32 #s(literal -1 binary32) (/.f32 %98 cosTheta_O))))))
(approx %301 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %302 cosTheta_O)) %1525))))
(approx %546 (*.f32 #s(literal -1 binary32) (*.f32 cosTheta_O (fma.f32 #s(literal -1 binary32) %1487 (*.f32 #s(literal -1 binary32) (/.f32 %264 cosTheta_O))))))
(approx sinTheta_i sinTheta_i)
(approx %24 %29)
(approx (/ %24 v) %49)
(approx %26 #s(literal 1 binary32))
(approx %27 %1573)
(approx %27 (-.f32 (fma.f32 #s(literal -1 binary32) %29 %6) #s(literal 1 binary32)))
(approx %35 (/.f32 %1573 v))
(approx %35 (-.f32 %1580 %48))
(approx %41 %1583)
(approx %41 %897)
(approx %47 %1586)
(approx %47 (-.f32 %1588 %48))
(approx %55 %1591)
(approx %55 (+.f32 %1591 (*.f32 #s(literal -1 binary32) (/.f32 %1594 v))))
(approx %55 (+.f32 %1591 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1600 (*.f32 #s(literal 1/2 binary32) (/.f32 %1602 %67))))))
(approx %55 (+.f32 %1591 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1600 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 %1610 %79) (*.f32 #s(literal 1/2 binary32) (/.f32 %1612 %67))))))))
(approx %128 %1621)
(approx %128 (+.f32 %1621 (*.f32 sinTheta_O %1623)))
(approx %128 (+.f32 %1621 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (*.f32 %1601 %1623) (*.f32 sinTheta_O %1621)))))
(approx %128 (+.f32 %1621 (*.f32 sinTheta_i (fma.f32 sinTheta_O %1621 (*.f32 sinTheta_i (fma.f32 #s(literal 1/6 binary32) (*.f32 %1609 %1623) (*.f32 #s(literal 1/2 binary32) (*.f32 %1601 %1621))))))))
(approx %155 %1644)
(approx %155 (+.f32 %1644 (*.f32 #s(literal -1 binary32) (/.f32 %1647 v))))
(approx %155 (+.f32 %1644 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1653 %1665))))
(approx %155 (+.f32 %1644 (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %1653 (*.f32 sinTheta_i (fma.f32 sinTheta_i %1687 %1664))))))
(approx %262 (fma.f32 #s(literal -1 binary32) %1696 %906))
(approx %262 (fma.f32 sinTheta_i %1704 %906))
(approx %262 (fma.f32 sinTheta_i %1714 %906))
(approx %301 %1717)
(approx %301 %941)
(approx %310 %1721)
(approx %310 (fma.f32 #s(literal -1/2 binary32) %1594 %1721))
(approx %310 (fma.f32 #s(literal 1/2 binary32) %1720 (*.f32 sinTheta_i %1727)))
(approx %310 (fma.f32 #s(literal 1/2 binary32) %1720 (*.f32 sinTheta_i %1737)))
(approx %332 %1741)
(approx %332 (+.f32 %1741 (*.f32 #s(literal -1/4 binary32) (/.f32 %1594 %1741))))
(approx %332 (+.f32 %1741 (*.f32 sinTheta_i (fma.f32 #s(literal -1/4 binary32) %1747 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_i %1753) %1741))))))
(approx %332 (+.f32 %1741 (*.f32 sinTheta_i (fma.f32 #s(literal -1/4 binary32) %1747 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_i %1768) %1741) (*.f32 #s(literal 1/2 binary32) (/.f32 %1753 %1741))))))))
(approx %373 %1779)
(approx %373 (fma.f32 #s(literal -1 binary32) %1783 %1779))
(approx %373 (fma.f32 sinTheta_i %1791 %1779))
(approx %373 (fma.f32 sinTheta_i %1801 %1779))
(approx %398 %1804)
(approx %398 (+.f32 %1804 (*.f32 #s(literal -1/2 binary32) (/.f32 %1782 %1806))))
(approx %398 (+.f32 %1804 (*.f32 sinTheta_i (fma.f32 #s(literal -1/2 binary32) %1811 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_i %1818) %1804))))))
(approx %398 (+.f32 %1804 (*.f32 sinTheta_i (fma.f32 #s(literal -1/2 binary32) %1811 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %1609 %1779) %79)) (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %1591 (*.f32 %374 %1818))) %1832)))) %1804) (*.f32 #s(literal 1/2 binary32) (/.f32 %1818 %1804))))))))
(approx %442 %1814)
(approx %442 (fma.f32 #s(literal -1 binary32) %1783 %1814))
(approx %442 (fma.f32 sinTheta_i %1791 %1814))
(approx %442 (fma.f32 sinTheta_i %1801 %1814))
(approx %452 %1853)
(approx %452 (fma.f32 #s(literal -1 binary32) %1858 %1853))
(approx %452 (fma.f32 sinTheta_i %1866 %1853))
(approx %452 (fma.f32 sinTheta_i %1876 %1853))
(approx %480 %1879)
(approx %480 (fma.f32 #s(literal 1/4 binary32) (/.f32 %1594 %1881) %1879))
(approx %480 (fma.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i %1889)) %1893) %1879))
(approx %480 (fma.f32 sinTheta_i (-.f32 (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (fma.f32 #s(literal 1/8 binary32) (/.f32 %1765 %1885) (fma.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %1591 %1889)) %1750) (*.f32 #s(literal 1/2 binary32) (/.f32 %1768 %1881)))))) %1889)) %1893) %1879))
(approx %520 %1914)
(approx %520 (fma.f32 #s(literal -1/2 binary32) %1916 %1914))
(approx %520 (fma.f32 #s(literal 1/2 binary32) %1913 (*.f32 sinTheta_i %1922)))
(approx %520 (fma.f32 #s(literal 1/2 binary32) %1913 (*.f32 sinTheta_i %1931)))
(approx %546 (-.f32 %1588 %97))
(approx %550 (+.f32 %895 (*.f32 #s(literal -1 binary32) %1696)))
(approx %550 (+.f32 %895 (*.f32 sinTheta_i %1704)))
(approx %550 (+.f32 %895 (*.f32 sinTheta_i %1714)))
(approx %560 %1946)
(approx %560 (+.f32 %1946 (/.f32 %29 %1948)))
(approx %560 (fma.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i %1955)) %1959) %1946))
(approx %560 (fma.f32 sinTheta_i (-.f32 (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) %1964 (fma.f32 #s(literal 1/2 binary32) %1964 (/.f32 (*.f32 sinTheta_O %1955) v))))) %1955)) %1959) %1946))
(approx %591 %1976)
(approx %591 (+.f32 %1976 (/.f32 (*.f32 sinTheta_O %1978) v)))
(approx %591 (+.f32 %1976 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1601 %1978) %67) %1986))))
(approx %591 (+.f32 %1976 (*.f32 sinTheta_i (fma.f32 sinTheta_i (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %1609 %1978) %79) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1601 %1976) %67))) %1986))))
(approx %620 %2001)
(approx %620 (fma.f32 #s(literal -1 binary32) (/.f32 %29 %2003) %2001))
(approx %620 (fma.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i %2010)) %2013) %2001))
(approx %620 (fma.f32 sinTheta_i (-.f32 (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 sinTheta_O %2010) v) (fma.f32 #s(literal -1/2 binary32) %2020 (*.f32 #s(literal 1/6 binary32) %2020))))) %2010)) %2013) %2001))
(approx %653 %2031)
(approx %653 (fma.f32 #s(literal -1 binary32) (/.f32 %1594 %658) %2031))
(approx %653 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %2036 (*.f32 #s(literal 1/2 binary32) (/.f32 %1602 %662))) %2031))
(approx %653 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %2036 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 %1610 %668) (*.f32 #s(literal 1/2 binary32) (/.f32 %1612 %662))))) %2031))
(approx %678 %2051)
(approx %678 (fma.f32 #s(literal -1/2 binary32) %1916 %2051))
(approx %678 (fma.f32 sinTheta_i %1922 %2051))
(approx %678 (fma.f32 sinTheta_i %1931 %2051))
(approx %690 %2060)
(approx %690 (fma.f32 #s(literal -1/2 binary32) (/.f32 %1647 %697) %2060))
(approx %690 (fma.f32 #s(literal 1/2 binary32) %2059 (*.f32 sinTheta_i (fma.f32 #s(literal -1/2 binary32) %2065 (*.f32 #s(literal 1/2 binary32) (/.f32 %1665 %693))))))
(approx %690 (fma.f32 #s(literal 1/2 binary32) %2059 (*.f32 sinTheta_i (fma.f32 #s(literal -1/2 binary32) %2065 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 %2072 %693) (*.f32 #s(literal 1/2 binary32) (/.f32 %1664 %693))))))))
(approx %721 %1750)
(approx %721 (fma.f32 #s(literal -1/2 binary32) %1594 %1750))
(approx %721 (fma.f32 sinTheta_i %1727 %1750))
(approx %721 (fma.f32 sinTheta_i %1737 %1750))
(approx %730 %2089)
(approx %730 (fma.f32 #s(literal -1/2 binary32) %1916 %2089))
(approx %730 (fma.f32 sinTheta_i %1922 %2089))
(approx %730 (fma.f32 sinTheta_i %1931 %2089))
(approx %741 %2097)
(approx %741 (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 sinTheta_O %2099) v) %2097))
(approx %741 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %2105 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1601 %2099) %67))) %2097))
(approx %741 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %2105 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %1609 %2099) %79) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %1601 %2097) %67))))) %2097))
(approx %769 %2122)
(approx %769 (fma.f32 #s(literal -1 binary32) (/.f32 %1647 %774) %2122))
(approx %769 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %2127 (/.f32 %1665 %771)) %2122))
(approx %769 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %2127 (*.f32 sinTheta_i (+.f32 (/.f32 %2072 %771) (/.f32 %1664 %771)))) %2122))
(approx %789 %2139)
(approx %789 (+.f32 %2139 (*.f32 #s(literal -1/2 binary32) (/.f32 %1857 %2141))))
(approx %789 (+.f32 %2139 (*.f32 sinTheta_i (fma.f32 #s(literal -1/2 binary32) %2146 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_i %2153) %2139))))))
(approx %789 (+.f32 %2139 (*.f32 sinTheta_i (fma.f32 #s(literal -1/2 binary32) %2146 (*.f32 sinTheta_i (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %1609 %1855) %79)) (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %1591 (*.f32 %374 (*.f32 %454 %2153)))) %2168)))) %2139) (*.f32 #s(literal 1/2 binary32) (/.f32 %2153 %2139))))))))
(approx %835 %2149)
(approx %835 (fma.f32 #s(literal -1 binary32) %1858 %2149))
(approx %835 (fma.f32 sinTheta_i %1866 %2149))
(approx %835 (fma.f32 sinTheta_i %1876 %2149))
(approx %843 %2189)
(approx %843 (fma.f32 #s(literal -1 binary32) (/.f32 %1857 %79) %2189))
(approx %843 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %2194 (*.f32 #s(literal 1/2 binary32) (/.f32 %1863 %536))) %2189))
(approx %843 (fma.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %2194 (*.f32 sinTheta_i (fma.f32 #s(literal -1/6 binary32) (/.f32 %1869 %854) (*.f32 #s(literal 1/2 binary32) (/.f32 %1871 %536))))) %2189))
(approx %26 (*.f32 sinTheta_i %2209))
(approx %27 (*.f32 #s(literal -1 binary32) %29))
(approx %27 (*.f32 sinTheta_i (-.f32 %2214 %2209)))
(approx %35 (*.f32 #s(literal -1 binary32) %49))
(approx %35 (*.f32 sinTheta_i (-.f32 (fma.f32 #s(literal -1 binary32) %2220 %2222) %2224)))
(approx %41 (*.f32 sinTheta_i (-.f32 %2209 %2214)))
(approx %47 (*.f32 sinTheta_i (-.f32 %2231 (+.f32 %2224 %2220))))
(approx %301 (*.f32 sinTheta_i (-.f32 %2238 %2231)))
(approx %546 (*.f32 sinTheta_i (-.f32 %2231 %2238)))
(approx %26 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 %2245 %2208))))
(approx %27 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1573 sinTheta_i)) %2245))))
(approx %35 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) (/.f32 %2256 sinTheta_i) %2220))))
(approx %41 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) sinTheta_O (*.f32 #s(literal -1 binary32) (/.f32 %1583 sinTheta_i))))))
(approx %47 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1586 sinTheta_i)) %2270))))
(approx %301 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (fma.f32 #s(literal -1 binary32) %2220 (*.f32 #s(literal -1 binary32) (/.f32 %1717 sinTheta_i))))))
(approx %546 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_i (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %100 sinTheta_i)) %2270))))
(approx sinTheta_O sinTheta_O)
(approx (/ sinTheta_O v) %2220)
(approx %55 (+.f32 %1591 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2290 (*.f32 #s(literal 1/2 binary32) (/.f32 %2293 %67))))))
(approx %55 (+.f32 %1591 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2290 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 %2302 %79) (*.f32 #s(literal 1/2 binary32) (/.f32 %2292 %67))))))))
(approx %128 (+.f32 %1621 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (*.f32 sinTheta_O %2312) %1623))))
(approx %128 (+.f32 %1621 (*.f32 sinTheta_O (fma.f32 sinTheta_O (fma.f32 #s(literal 1/6 binary32) (*.f32 sinTheta_O (*.f32 %2300 %1621)) (*.f32 #s(literal 1/2 binary32) %2312)) %1623))))
(approx %155 (+.f32 %1644 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2326 %2335))))
(approx %155 (+.f32 %1644 (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2326 (*.f32 sinTheta_O (fma.f32 sinTheta_O %2353 %2334))))))
(approx %262 (fma.f32 sinTheta_O %2365 %906))
(approx %262 (fma.f32 sinTheta_O %2375 %906))
(approx %310 (fma.f32 #s(literal 1/2 binary32) %1720 (*.f32 sinTheta_O %2380)))
(approx %310 (fma.f32 #s(literal 1/2 binary32) %1720 (*.f32 sinTheta_O %2389)))
(approx %332 (+.f32 %1741 (*.f32 sinTheta_O (fma.f32 #s(literal -1/4 binary32) %2393 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %2397) %1741))))))
(approx %332 (+.f32 %1741 (*.f32 sinTheta_O (fma.f32 #s(literal -1/4 binary32) %2393 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %2411) %1741) (*.f32 #s(literal 1/2 binary32) (/.f32 %2397 %1741))))))))
(approx %373 (fma.f32 sinTheta_O %2427 %1779))
(approx %373 (fma.f32 sinTheta_O %2437 %1779))
(approx %398 (+.f32 %1804 (*.f32 sinTheta_O (fma.f32 #s(literal -1/2 binary32) %2440 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %2444) %1804))))))
(approx %398 (+.f32 %1804 (*.f32 sinTheta_O (fma.f32 #s(literal -1/2 binary32) %2440 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1/6 binary32) (/.f32 %2430 %79)) (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 sinTheta_i (*.f32 %1591 (*.f32 %374 %2444))) %1832)))) %1804) (*.f32 #s(literal 1/2 binary32) (/.f32 %2444 %1804))))))))
(approx %442 (fma.f32 sinTheta_O %2427 %1814))
(approx %442 (fma.f32 sinTheta_O %2437 %1814))
(approx %452 (fma.f32 sinTheta_O %2479 %1853))
(approx %452 (fma.f32 sinTheta_O %2489 %1853))
(approx %480 (fma.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O %2495)) %2499) %1879))
(approx %480 (fma.f32 sinTheta_O (-.f32 (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (fma.f32 #s(literal 1/8 binary32) (/.f32 %2408 %1885) (fma.f32 #s(literal 1/4 binary32) (/.f32 (*.f32 sinTheta_i (*.f32 %1591 %2495)) %1750) (*.f32 #s(literal 1/2 binary32) (/.f32 %2411 %1881)))))) %2495)) %2499) %1879))
(approx %520 (fma.f32 #s(literal 1/2 binary32) %1913 (*.f32 sinTheta_O %2521)))
(approx %520 (fma.f32 #s(literal 1/2 binary32) %1913 (*.f32 sinTheta_O %2530)))
(approx %550 (+.f32 %895 (*.f32 sinTheta_O %2365)))
(approx %550 (+.f32 %895 (*.f32 sinTheta_O %2375)))
(approx %560 (fma.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O %2542)) %2546) %1946))
(approx %560 (fma.f32 sinTheta_O (-.f32 (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) %2550 (fma.f32 #s(literal 1/2 binary32) %2550 (/.f32 (*.f32 sinTheta_i %2542) v))))) %2542)) %2546) %1946))
(approx %591 (+.f32 %1976 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %2562) %67) %2565))))
(approx %591 (+.f32 %1976 (*.f32 sinTheta_O (fma.f32 sinTheta_O (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %2300 %1976)) %79) (*.f32 #s(literal 1/2 binary32) (/.f32 %2562 %67))) %2565))))
(approx %620 (fma.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O %2582)) %2585) %2001))
(approx %620 (fma.f32 sinTheta_O (-.f32 (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 sinTheta_i %2582) v) (fma.f32 #s(literal -1/2 binary32) %2591 (*.f32 #s(literal 1/6 binary32) %2591))))) %2582)) %2585) %2001))
(approx %653 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2602 (*.f32 #s(literal 1/2 binary32) (/.f32 %2293 %662))) %2031))
(approx %653 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2602 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 %2302 %668) (*.f32 #s(literal 1/2 binary32) (/.f32 %2292 %662))))) %2031))
(approx %678 (fma.f32 sinTheta_O %2521 %2051))
(approx %678 (fma.f32 sinTheta_O %2530 %2051))
(approx %690 (fma.f32 #s(literal 1/2 binary32) %2059 (*.f32 sinTheta_O (fma.f32 #s(literal -1/2 binary32) %2620 (*.f32 #s(literal 1/2 binary32) (/.f32 %2335 %693))))))
(approx %690 (fma.f32 #s(literal 1/2 binary32) %2059 (*.f32 sinTheta_O (fma.f32 #s(literal -1/2 binary32) %2620 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 %2627 %693) (*.f32 #s(literal 1/2 binary32) (/.f32 %2334 %693))))))))
(approx %721 (fma.f32 sinTheta_O %2380 %1750))
(approx %721 (fma.f32 sinTheta_O %2389 %1750))
(approx %730 (fma.f32 sinTheta_O %2521 %2089))
(approx %730 (fma.f32 sinTheta_O %2530 %2089))
(approx %741 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2645 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %2646) %67))) %2097))
(approx %741 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2645 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 sinTheta_O (*.f32 %2300 %2097)) %79) (*.f32 #s(literal 1/2 binary32) (/.f32 %2646 %67))))) %2097))
(approx %769 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2663 (/.f32 %2335 %771)) %2122))
(approx %769 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2663 (*.f32 sinTheta_O (+.f32 (/.f32 %2627 %771) (/.f32 %2334 %771)))) %2122))
(approx %789 (+.f32 %2139 (*.f32 sinTheta_O (fma.f32 #s(literal -1/2 binary32) %2675 (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O %2679) %2139))))))
(approx %789 (+.f32 %2139 (*.f32 sinTheta_O (fma.f32 #s(literal -1/2 binary32) %2675 (*.f32 sinTheta_O (fma.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1/6 binary32) (/.f32 %2482 %79)) (*.f32 #s(literal -1/2 binary32) (/.f32 (*.f32 sinTheta_i (*.f32 %1591 (*.f32 %374 (*.f32 %454 %2679)))) %2168)))) %2139) (*.f32 #s(literal 1/2 binary32) (/.f32 %2679 %2139))))))))
(approx %835 (fma.f32 sinTheta_O %2479 %2149))
(approx %835 (fma.f32 sinTheta_O %2489 %2149))
(approx %843 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2710 (*.f32 #s(literal 1/2 binary32) (/.f32 %2476 %536))) %2189))
(approx %843 (fma.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2710 (*.f32 sinTheta_O (fma.f32 #s(literal -1/6 binary32) (/.f32 %2483 %854) (*.f32 #s(literal 1/2 binary32) (/.f32 %2475 %536))))) %2189))
(approx %26 (*.f32 sinTheta_O %2725))
(approx %27 (*.f32 sinTheta_O (-.f32 %2728 %2725)))
(approx %35 (*.f32 sinTheta_O (-.f32 (fma.f32 #s(literal -1 binary32) %2732 %2734) %2736)))
(approx %41 (*.f32 sinTheta_O (-.f32 %2725 %2728)))
(approx %47 (*.f32 sinTheta_O (-.f32 %2743 (+.f32 %2736 %2732))))
(approx %301 (*.f32 sinTheta_O (-.f32 %2750 %2743)))
(approx %546 (*.f32 sinTheta_O (-.f32 %2743 %2750)))
(approx %26 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 %2757 %2724))))
(approx %27 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1573 sinTheta_O)) %2757))))
(approx %35 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) (/.f32 %2256 sinTheta_O) %2732))))
(approx %41 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) sinTheta_i (*.f32 #s(literal -1 binary32) (/.f32 %1583 sinTheta_O))))))
(approx %47 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %1586 sinTheta_O)) %2781))))
(approx %301 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (fma.f32 #s(literal -1 binary32) %2732 (*.f32 #s(literal -1 binary32) (/.f32 %1717 sinTheta_O))))))
(approx %546 (*.f32 #s(literal -1 binary32) (*.f32 sinTheta_O (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 %100 sinTheta_O)) %2781))))
(approx v v)
(approx %92 %48)
(approx %90 %95)
(approx %13 (/.f32 %2801 v))
(approx %2804 (/.f32 #s(literal 1/2 binary32) v))
(approx %2807 (+.f32 %2808 (*.f32 #s(literal -1 binary32) %2809)))
(approx %729 %67)
(approx %154 %2814)
(approx %519 (/.f32 #s(literal 1 binary32) %67))
(approx %372 %374)
(approx %35 %2819)
(approx %47 (/.f32 (-.f32 %2801 %30) v))
(approx %651 %654)
(approx %652 %655)
(approx %257 %2827)
(approx %739 (*.f32 #s(literal -1 binary32) %2827))
(approx %740 %2832)
(approx %767 %2834)
(approx %689 (*.f32 #s(literal 2 binary32) %693))
(approx %768 %2838)
(approx %93 (/.f32 (+.f32 #s(literal 1 binary32) (*.f32 v %2827)) v))
(approx %94 (/.f32 (-.f32 %2846 #s(literal 1 binary32)) v))
(approx %2850 (/.f32 #s(literal 1 binary32) %654))
(approx %2853 (/.f32 #s(literal 1 binary32) %655))
(approx %301 %900)
(approx %301 (/.f32 (-.f32 (+.f32 #s(literal 1 binary32) (fma.f32 sinTheta_O sinTheta_i (*.f32 v %2834))) %6) v))
(approx %309 (*.f32 #s(literal 1/2 binary32) v))
(approx %546 (/.f32 (-.f32 %2846 %30) v))
(approx %741 (*.f32 %2832 %888))
(approx %769 (/.f32 %902 %2838))
(approx %2807 (+.f32 %2808 %2872))
(approx %372 (*.f32 %67 %2875))
(approx %651 %2880)
(approx %652 %2883)
(approx %257 %2886)
(approx %739 (*.f32 #s(literal -1 binary32) %2886))
(approx %740 %2891)
(approx %767 %2893)
(approx %55 %2895)
(approx %55 (+.f32 %2895 %2898))
(approx %55 (+.f32 %2895 %2904))
(approx %55 (+.f32 %2895 (fma.f32 #s(literal 1/6 binary32) %2909 %2904)))
(approx %768 %2913)
(approx %93 %2916)
(approx %94 %2918)
(approx %94 (-.f32 %16 %2916))
(approx %102 %2922)
(approx %102 (+.f32 %2922 %2925))
(approx %102 (+.f32 %2922 %2931))
(approx %102 (+.f32 %2922 (fma.f32 #s(literal 1/6 binary32) %2936 %2931)))
(approx %2850 (/.f32 #s(literal 1 binary32) %2880))
(approx %155 (+.f32 #s(literal 1 binary32) %901))
(approx %155 (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -1 binary32) %900 %2946)))
(approx %155 (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -1 binary32) %900 (fma.f32 #s(literal -1/6 binary32) (/.f32 %2950 %79) %2946))))
(approx %205 %2956)
(approx %205 (+.f32 %2956 (*.f32 #s(literal 1/2 binary32) %2959)))
(approx %205 (+.f32 %2956 (fma.f32 #s(literal 1/2 binary32) %2959 %2972)))
(approx %205 (+.f32 %2956 (fma.f32 #s(literal 1/2 binary32) %2959 (fma.f32 #s(literal 1/2 binary32) (/.f32 (-.f32 (*.f32 #s(literal 1/6 binary32) %2935) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %2922 (*.f32 %2969 %1573)) %2966))) (*.f32 %79 %2956)) %2972))))
(approx %248 %2966)
(approx %248 %2989)
(approx %248 %2991)
(approx %248 (fma.f32 #s(literal 1/6 binary32) %2936 %2991))
(approx %262 %2997)
(approx %262 %3001)
(approx %262 (fma.f32 #s(literal 1/6 binary32) %3004 %3001))
(approx %2853 (/.f32 #s(literal 1 binary32) %2883))
(approx %301 (-.f32 %3010 %16))
(approx %310 (*.f32 #s(literal 1/2 binary32) (*.f32 v %2895)))
(approx %310 (*.f32 v %3017))
(approx %310 (*.f32 v %3020))
(approx %310 (*.f32 v %3023))
(approx %332 %3029)
(approx %332 %3035)
(approx %332 %3041)
(approx %332 (*.f32 v (+.f32 %3028 (fma.f32 #s(literal 1/8 binary32) %3038 (fma.f32 #s(literal 1/4 binary32) %3032 (*.f32 #s(literal 1/2 binary32) (/.f32 %3049 (*.f32 %536 %3028))))))))
(approx %373 (*.f32 %67 %3058))
(approx %373 (*.f32 %67 %3064))
(approx %373 (*.f32 %67 %3070))
(approx %373 (*.f32 %67 (fma.f32 #s(literal 1/6 binary32) %3075 %3070)))
(approx %398 %3080)
(approx %398 (*.f32 v (+.f32 %3079 (*.f32 #s(literal 1/2 binary32) %3082))))
(approx %398 (*.f32 v (+.f32 %3079 (fma.f32 #s(literal 1/2 binary32) %3082 %3097))))
(approx %398 (*.f32 v (+.f32 %3079 (fma.f32 #s(literal 1/2 binary32) %3082 (fma.f32 #s(literal 1/2 binary32) (/.f32 (-.f32 (*.f32 #s(literal 1/6 binary32) %3074) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %2895 (*.f32 %2875 (*.f32 %3094 %33))) %3091))) (*.f32 %79 %3079)) %3097)))))
(approx %442 (*.f32 %67 %3091))
(approx %442 (*.f32 %67 %3118))
(approx %442 (*.f32 %67 %3121))
(approx %442 (*.f32 %67 (fma.f32 #s(literal 1/6 binary32) %3075 %3121)))
(approx %452 (*.f32 %67 %3127))
(approx %452 (*.f32 %67 %3134))
(approx %452 (*.f32 %67 %3141))
(approx %452 (*.f32 %67 (fma.f32 #s(literal 1/6 binary32) %3147 %3141)))
(approx %480 (/.f32 #s(literal 1 binary32) %3029))
(approx %480 %3158)
(approx %480 %3165)
(approx %480 (/.f32 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/16 binary32) (/.f32 %3045 %3167) (*.f32 #s(literal 1/2 binary32) (/.f32 %3049 %3153))) %536) %3156) (fma.f32 #s(literal 1/8 binary32) %3161 %3163)) v))
(approx %520 %3027)
(approx %520 (/.f32 %3017 v))
(approx %520 (/.f32 %3020 v))
(approx %520 (/.f32 %3023 v))
(approx %546 (-.f32 %16 %3010))
(approx %550 (+.f32 %2922 %2996))
(approx %550 (+.f32 %2922 %3189))
(approx %550 (+.f32 %2922 (fma.f32 #s(literal 1/6 binary32) %3004 %3189)))
(approx %560 %3195)
(approx %560 (-.f32 %3201 %3202))
(approx %560 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %3211 %67) %3201) %3202))
(approx %560 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (*.f32 %3211 %33) (fma.f32 #s(literal 1/6 binary32) (/.f32 %2907 %2922) (*.f32 #s(literal 1/2 binary32) (*.f32 %2901 %3209)))) %79) %3201) (fma.f32 #s(literal 1/2 binary32) (/.f32 %2901 (*.f32 %67 %2922)) (+.f32 %3202 (/.f32 %3210 %67)))))
(approx %591 (+.f32 %2913 %3232))
(approx %591 (+.f32 %2913 %3237))
(approx %591 (+.f32 %2913 (fma.f32 #s(literal 1/6 binary32) (/.f32 (*.f32 %2913 %2950) %79) %3237)))
(approx %620 %3245)
(approx %620 (-.f32 %3249 %3252))
(approx %620 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 %3261 %67) %3249) %3252))
(approx %620 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (*.f32 %3261 %897) (fma.f32 #s(literal 1/6 binary32) (/.f32 %2950 %2913) (*.f32 #s(literal 1/2 binary32) (*.f32 %2944 %3259)))) %79) %3249) (fma.f32 #s(literal 1/2 binary32) %3275 (+.f32 %3250 (+.f32 %3251 (/.f32 %3260 %67))))))
(approx %653 (/.f32 %2895 %2883))
(approx %653 (/.f32 %3287 %67))
(approx %653 (/.f32 %3291 %67))
(approx %653 (/.f32 (fma.f32 #s(literal 1/6 binary32) (/.f32 %2908 (*.f32 %79 %2882)) %3291) %67))
(approx %678 %3046)
(approx %678 %3301)
(approx %678 %3304)
(approx %678 %3307)
(approx %690 (/.f32 #s(literal 1/2 binary32) %693))
(approx %690 (/.f32 (fma.f32 #s(literal -1/2 binary32) %3311 %3313) v))
(approx %690 (/.f32 (fma.f32 #s(literal -1/2 binary32) %3311 %3318) v))
(approx %690 (/.f32 (fma.f32 #s(literal -1/2 binary32) %3311 (fma.f32 #s(literal -1/12 binary32) (/.f32 %2950 (*.f32 %79 %692)) %3318)) v))
(approx %721 (*.f32 %67 %3046))
(approx %721 (*.f32 %67 %3301))
(approx %721 (*.f32 %67 %3304))
(approx %721 (*.f32 %67 %3307))
(approx %741 %3336)
(approx %741 %3341)
(approx %741 %3346)
(approx %741 (fma.f32 #s(literal 1/6 binary32) (/.f32 %3349 %79) %3346))
(approx %769 (fma.f32 #s(literal -1 binary32) %3353 %3245))
(approx %769 (fma.f32 #s(literal -1 binary32) %3353 %3356))
(approx %769 (fma.f32 #s(literal -1 binary32) %3353 (fma.f32 #s(literal -1/6 binary32) (/.f32 %2950 (*.f32 %79 %2913)) %3356)))
(approx %789 %3365)
(approx %789 (*.f32 v (+.f32 %3364 (*.f32 #s(literal 1/2 binary32) %3367))))
(approx %789 (*.f32 v (+.f32 %3364 (fma.f32 #s(literal 1/2 binary32) %3367 %3382))))
(approx %789 (*.f32 v (+.f32 %3364 (fma.f32 #s(literal 1/2 binary32) %3367 (fma.f32 #s(literal 1/2 binary32) (/.f32 (-.f32 (*.f32 #s(literal 1/6 binary32) %3146) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %2895 (*.f32 %2875 (*.f32 %454 (*.f32 %3379 %33)))) %3376))) (*.f32 %79 %3364)) %3382)))))
(approx %835 (*.f32 %67 %3376))
(approx %835 (*.f32 %67 %3404))
(approx %835 (*.f32 %67 %3407))
(approx %835 (*.f32 %67 %3410))
(approx %843 %3376)
(approx %843 %3404)
(approx %843 %3407)
(approx %843 %3410)
(approx %372 (*.f32 #s(literal -1 binary32) (*.f32 %67 %3417)))
(approx %651 (*.f32 #s(literal -1 binary32) %2880))
(approx %55 (+.f32 %2895 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %2897 (*.f32 #s(literal -1/2 binary32) %3423)) v))))
(approx %55 (+.f32 %2895 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %2897 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/6 binary32) %3430 (*.f32 #s(literal 1/2 binary32) %2902)) v))) v))))
(approx %94 (-.f32 (+.f32 #s(literal 6931/10000 binary32) (*.f32 #s(literal -1 binary32) (/.f32 %3440 v))) %2886))
(approx %102 (+.f32 %2922 (*.f32 #s(literal -1 binary32) %3447)))
(approx %102 (+.f32 %2922 (*.f32 #s(literal -1 binary32) %3455)))
(approx %102 (+.f32 %2922 (*.f32 #s(literal -1 binary32) %3466)))
(approx %2850 (/.f32 #s(literal -1 binary32) %2880))
(approx %155 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -1/2 binary32) (/.f32 %2944 v) %29)) %6) v))))
(approx %155 (+.f32 #s(literal 1 binary32) (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (+.f32 #s(literal 1 binary32) (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/6 binary32) (/.f32 %2950 v) (*.f32 #s(literal 1/2 binary32) %2944)) v) %29)) %6) v))))
(approx %205 (+.f32 %2956 (*.f32 #s(literal -1/2 binary32) (/.f32 %3446 %2958))))
(approx %205 (+.f32 %2956 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %3498 %2958) %3501) v))))
(approx %205 (+.f32 %2956 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 (-.f32 (*.f32 #s(literal 1/6 binary32) %3460) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %2922 (*.f32 %3440 %3498)) %2966))) %2958) (*.f32 #s(literal 1/2 binary32) (/.f32 %3498 %2956))) v) %3501) v))))
(approx %248 (fma.f32 #s(literal -1 binary32) %3447 %2966))
(approx %248 (fma.f32 #s(literal -1 binary32) %3455 %2966))
(approx %248 (fma.f32 #s(literal -1 binary32) %3466 %2966))
(approx %262 (fma.f32 #s(literal -1 binary32) %3532 %2966))
(approx %262 (fma.f32 #s(literal -1 binary32) %3541 %2966))
(approx %301 (-.f32 (+.f32 %2826 (fma.f32 #s(literal -1 binary32) %2872 (*.f32 #s(literal -1 binary32) %2819))) #s(literal 6931/10000 binary32)))
(approx %310 (*.f32 #s(literal -1 binary32) (*.f32 v %3550)))
(approx %310 (*.f32 #s(literal -1 binary32) (*.f32 v %3558)))
(approx %310 (*.f32 #s(literal -1 binary32) (*.f32 v %3567)))
(approx %332 (*.f32 #s(literal -1 binary32) %3029))
(approx %332 (*.f32 #s(literal -1 binary32) %3035))
(approx %332 (*.f32 #s(literal -1 binary32) %3041))
(approx %332 (*.f32 #s(literal -1 binary32) (*.f32 v (+.f32 %3028 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %3049 %3029) (*.f32 #s(literal -1/8 binary32) (/.f32 %2902 %3028))) %79) %3033)))))
(approx %373 (*.f32 #s(literal -1 binary32) (*.f32 %67 %3587)))
(approx %373 (*.f32 %67 (fma.f32 #s(literal -1 binary32) %3587 (*.f32 #s(literal -1 binary32) %3593))))
(approx %373 (*.f32 %67 (fma.f32 #s(literal -1 binary32) %3587 (*.f32 #s(literal -1 binary32) %3602))))
(approx %373 (*.f32 %67 (fma.f32 #s(literal -1 binary32) %3587 (*.f32 #s(literal -1 binary32) %3614))))
(approx %398 (*.f32 #s(literal -1 binary32) %3621))
(approx %398 (*.f32 #s(literal -1 binary32) (*.f32 v (+.f32 %3620 (*.f32 #s(literal -1/2 binary32) (/.f32 %3592 %3621))))))
(approx %398 (*.f32 #s(literal -1 binary32) (*.f32 v (+.f32 %3620 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %3637 %3621) %3640) v))))))
(approx %398 (*.f32 #s(literal -1 binary32) (*.f32 v (+.f32 %3620 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 (-.f32 (*.f32 #s(literal 1/6 binary32) %3608) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %2895 (*.f32 %3417 (*.f32 %3637 %33))) %3634))) %3621) (*.f32 #s(literal 1/2 binary32) (/.f32 %3637 %3620))) v) %3640) v))))))
(approx %442 (*.f32 %67 %3634))
(approx %442 (*.f32 %67 (fma.f32 #s(literal -1 binary32) %3593 %3634)))
(approx %442 (*.f32 %67 (fma.f32 #s(literal -1 binary32) %3602 %3634)))
(approx %442 (*.f32 %67 (fma.f32 #s(literal -1 binary32) %3614 %3634)))
(approx %452 (*.f32 %67 %3678))
(approx %452 (*.f32 %67 (fma.f32 #s(literal -1 binary32) %3683 %3678)))
(approx %452 (*.f32 %67 (fma.f32 #s(literal -1 binary32) %3691 %3678)))
(approx %452 (*.f32 %67 (fma.f32 #s(literal -1 binary32) %3702 %3678)))
(approx %480 (/.f32 #s(literal -1 binary32) %3029))
(approx %480 (*.f32 #s(literal -1 binary32) %3158))
(approx %480 (*.f32 #s(literal -1 binary32) %3165))
(approx %480 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal -1/16 binary32) (/.f32 %3045 (*.f32 v %3167)) (*.f32 #s(literal 1/2 binary32) (/.f32 %3049 (*.f32 v %3153)))) (*.f32 #s(literal -1/8 binary32) (/.f32 %2902 %3153))) %79) %3156) %3163) v)))
(approx %520 (*.f32 #s(literal -1 binary32) (/.f32 %3550 v)))
(approx %520 (*.f32 #s(literal -1 binary32) (/.f32 %3558 v)))
(approx %520 (*.f32 #s(literal -1 binary32) (/.f32 %3567 v)))
(approx %550 (+.f32 %2922 (*.f32 #s(literal -1 binary32) %3532)))
(approx %550 (+.f32 %2922 (*.f32 #s(literal -1 binary32) %3541)))
(approx %560 (fma.f32 #s(literal -1 binary32) (/.f32 %33 %3197) %3195))
(approx %560 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal -1 binary32) %3745 (*.f32 #s(literal 1/2 binary32) %3745)) %3749) v) %3195))
(approx %560 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal -1/6 binary32) %3754 (fma.f32 #s(literal 1/2 binary32) %3754 (/.f32 (*.f32 %3756 %33) v))) %3756) v)) %3749) v) %3195))
(approx %591 (+.f32 %2913 (*.f32 #s(literal -1 binary32) (/.f32 %3768 v))))
(approx %591 (+.f32 %2913 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %3773 v) %3768) v))))
(approx %591 (+.f32 %2913 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/6 binary32) (/.f32 (*.f32 %2913 %2907) v) (*.f32 #s(literal 1/2 binary32) %3773)) v) %3768) v))))
(approx %620 (fma.f32 #s(literal -1 binary32) (/.f32 %3790 v) %3245))
(approx %620 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal 1/2 binary32) (/.f32 %2901 %3247) (+.f32 %3245 (+.f32 %3257 (/.f32 %3795 v)))) %3256) v) %3245))
(approx %620 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (*.f32 %3805 %33) v) (fma.f32 #s(literal 1/6 binary32) (/.f32 %2907 %3247) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %2901 %3790) v)))) %3805) v) %3258) %3256) v) %3245))
(approx %653 (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %3821 (*.f32 #s(literal -1/2 binary32) (/.f32 %2902 %3285))) v) %3284) %67))
(approx %653 (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %3821 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/6 binary32) (/.f32 %2908 %3285) (*.f32 #s(literal 1/2 binary32) (/.f32 %2902 %2882))) v))) v) %3284) %67))
(approx %678 %3841)
(approx %690 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (*.f32 #s(literal 1/2 binary32) (/.f32 %3846 v)) %3313) v)))
(approx %690 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) %3846 (*.f32 #s(literal 1/4 binary32) (/.f32 %2944 %693))) v)) %3313) v)))
(approx %690 (*.f32 #s(literal -1 binary32) (/.f32 (-.f32 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/4 binary32) (/.f32 %2944 %692) (*.f32 #s(literal 1/12 binary32) (/.f32 %2950 %693))) v) (*.f32 #s(literal -1/2 binary32) %3846)) v)) %3313) v)))
(approx %721 (*.f32 %67 %3841))
(approx %741 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %3339 (*.f32 #s(literal -1/2 binary32) (/.f32 %3344 v))) v) %3336))
(approx %741 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) %3339 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal 1/6 binary32) (/.f32 %3349 v) (*.f32 #s(literal 1/2 binary32) %3344)) v))) v) %3336))
(approx %769 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %2944 %3247) %3258) %3256) v) %3245))
(approx %769 (fma.f32 #s(literal -1 binary32) (/.f32 (-.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/6 binary32) (/.f32 %2950 %3247) (*.f32 #s(literal 1/2 binary32) %3255)) v) %3258) %3256) v) %3245))
(approx %789 (*.f32 #s(literal -1 binary32) %3908))
(approx %789 (*.f32 #s(literal -1 binary32) (*.f32 v (+.f32 %3907 (*.f32 #s(literal -1/2 binary32) (/.f32 %3682 %3908))))))
(approx %789 (*.f32 #s(literal -1 binary32) (*.f32 v (+.f32 %3907 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 %3923 %3908) %3926) v))))))
(approx %789 (*.f32 #s(literal -1 binary32) (*.f32 v (+.f32 %3907 (*.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1 binary32) (/.f32 (fma.f32 #s(literal -1/2 binary32) (/.f32 (-.f32 (*.f32 #s(literal 1/6 binary32) %3696) (*.f32 #s(literal 1/2 binary32) (/.f32 (*.f32 %2895 (*.f32 %3417 (*.f32 %454 (*.f32 %3923 %33)))) %3920))) %3908) (*.f32 #s(literal 1/2 binary32) (/.f32 %3923 %3907))) v) %3926) v))))))
(approx %835 (*.f32 %67 %3920))
(approx %835 (*.f32 %67 %3956))
(approx %835 (*.f32 %67 %3959))
(approx %835 (*.f32 %67 %3962))
(approx %843 %3920)
(approx %843 %3956)
(approx %843 %3959)
(approx %843 %3962)
Calls

15 calls:

TimeVariablePoint
15.0ms
v
inf
8.0ms
cosTheta_O
0
8.0ms
v
-inf
7.0ms
sinTheta_O
0
6.0ms
cosTheta_i
0

rewrite95.0ms (2.0%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01481936
02531566
19591545
041911545
045311539
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
123 → 2 535
Calls
Call 1
Inputs
%6 = (/.f32 #s(literal 1 binary32) v)
%9 = (*.f32 #s(literal 2 binary32) v)
%11 = (approx cosTheta_i #s(literal 0 binary32))
%12 = (*.f32 cosTheta_O cosTheta_i)
%13 = (/.f32 %12 v)
%15 = (*.f32 sinTheta_O sinTheta_i)
%16 = (/.f32 %15 v)
%17 = (+.f32 #s(literal 6931/10000 binary32) %13)
%19 = (/.f32 #s(literal 1/2 binary32) v)
%20 = (log.f32 %19)
%21 = (pow.f32 v #s(literal 2 binary32))
%22 = (/.f32 sinTheta_O v)
%23 = (neg.f32 %12)
%24 = (/.f32 #s(literal -1 binary32) v)
%25 = (*.f32 %15 %6)
%26 = (*.f32 sinTheta_i %22)
%27 = (*.f32 v v)
%28 = (/.f32 #s(literal 1 binary32) %27)
%29 = (fabs.f32 v)
%30 = (+.f32 v v)
%31 = (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))
%32 = (-.f32 %12 %31)
%33 = (/.f32 %32 v)
%34 = (-.f32 %31 %12)
%36 = (-.f32 %33 #s(literal -6931/10000 binary32))
%37 = (sqrt.f32 %30)
%38 = (*.f32 %37 %37)
%39 = (log.f32 %30)
%40 = (neg.f32 %39)
%41 = (exp.f32 %40)
%42 = (+.f32 #s(literal -6931/10000 binary32) %39)
%43 = (exp.f32 %36)
%44 = (exp.f32 #s(literal -6931/10000 binary32))
%45 = (*.f32 %44 %30)
%46 = (exp.f32 %42)
%47 = (log.f32 %9)
%48 = (* sinTheta_O sinTheta_i)
%50 = (+ %48 1)
%51 = (approx %50 #s(literal 1 binary32))
%52 = (+.f32 %47 %6)
%53 = (-.f32 %17 %52)
%54 = (exp.f32 %53)
%55 = (/.f32 #s(literal 1 binary32) %37)
%56 = (exp.f32 %34)
%57 = (pow.f32 %56 %24)
%58 = (-.f32 %12 %51)
%59 = (/.f32 %58 v)
%60 = (-.f32 %59 #s(literal -6931/10000 binary32))
%61 = (exp.f32 %60)
%62 = (*.f32 cosTheta_O %11)
%63 = (sqrt.f32 %54)
%64 = (pow.f32 %63 #s(literal 2 binary32))
%65 = (* cosTheta_O cosTheta_i)
%67 = (/ (- %65 %50) v)
%68 = (+ v v)
%69 = (log %68)
%74 = (sqrt (exp (- %67 (- %69 6931/10000))))
%77 = (neg.f32 %13)
%78 = (*.f32 %55 %55)
%79 = (/.f32 v %23)
%80 = (/.f32 #s(literal 1 binary32) %79)
%89 = (- (- (log (* 2 v)) 6931/10000) (/ (- %65 (- %48 -1)) v))
%90 = (approx %89 %77)
%91 = (approx %89 %16)
%92 = (*.f32 #s(literal 1/2 binary32) v)
%93 = (*.f32 %92 %43)
%94 = (sqrt.f32 %93)
%95 = (sqrt.f32 #s(literal 1/2 binary32))
%96 = (*.f32 %29 %43)
%97 = (sqrt.f32 %96)
%98 = (*.f32 %95 %95)
%99 = (*.f32 %97 %97)
%100 = (*.f32 %98 %99)
%101 = (pow.f32 %94 #s(literal -1 binary32))
%102 = (/.f32 #s(literal 1 binary32) %101)
%103 = (*.f32 %93 %28)
%104 = (/.f32 %93 %27)
%105 = (neg.f32 %91)
%106 = (exp.f32 %105)
%107 = (/.f32 #s(literal 1 binary32) %106)
%108 = (neg.f32 %90)
%110 = (exp.f32 %90)
%115 = (- %67 -6931/10000)
%118 = (sqrt (/ (exp %115) %68))
%119 = (* %118 %118)
%123 = (pow.f32 %102 #s(literal 2 binary32))
%124 = (/.f32 %123 %21)
%126 = (- %69 %115)
%127 = (approx %126 %26)
%128 = (exp.f32 %127)
%130 = (approx %126 %25)
%131 = (exp.f32 %130)
%135 = (approx %126 %80)
%136 = (exp.f32 %135)
%138 = (-.f32 %51 %12)
%139 = (exp.f32 %138)
%140 = (pow.f32 %139 %24)
%142 = (sqrt.f32 %100)
%143 = (pow.f32 %142 #s(literal 2 binary32))
%144 = (/.f32 %143 %21)
%146 = (exp.f32 %20)
%148 = (/.f32 %62 v)
%149 = (*.f32 #s(literal -1 binary32) %148)
%150 = (approx %126 %149)
%151 = (exp.f32 %150)
cosTheta_i
cosTheta_O
v
sinTheta_i
sinTheta_O
#s(literal 1 binary32)
%6
#s(literal 6931/10000 binary32)
#s(literal 2 binary32)
%9
#s(literal 0 binary32)
%11
%12
%13
#s(literal -1 binary32)
%15
%16
%17
#s(literal 1/2 binary32)
%19
%20
%21
%22
%23
%24
%25
%26
%27
%28
%29
%30
%31
%32
%33
%34
#s(literal -6931/10000 binary32)
%36
%37
%38
%39
%40
%41
%42
%43
%44
%45
%46
%47
%51
%52
%53
%54
%55
%56
%57
%58
%59
%60
%61
%62
%63
%64
(approx (* %74 %74) %64)
%77
%78
%79
%80
%90
%91
%92
%93
%94
%95
%96
%97
%98
%99
%100
%101
%102
%103
%104
%105
%106
%107
%108
(exp.f32 %108)
%110
(/.f32 #s(literal 1 binary32) %110)
(/.f32 %61 %38)
(/.f32 #s(literal 1 binary32) %107)
(approx %119 %103)
(approx %119 %104)
(/.f32 %57 %45)
%123
%124
(approx %119 %124)
%127
%128
(/.f32 #s(literal 1 binary32) %128)
%130
%131
(/.f32 #s(literal 1 binary32) %131)
(*.f32 %61 %78)
(*.f32 %61 %41)
%135
%136
(/.f32 #s(literal 1 binary32) %136)
%138
%139
%140
(/.f32 %140 %46)
%142
%143
%144
(approx %119 %144)
%146
(*.f32 %43 %146)
%148
%149
%150
%151
(/.f32 #s(literal 1 binary32) %151)
Outputs
%7 = (/.f32 #s(literal -1 binary32) v)
%11 = (/.f32 #s(literal 1/2 binary32) v)
%13 = (/.f32 #s(literal 1 binary32) v)
%15 = (*.f32 #s(literal 2 binary32) %13)
%18 = (*.f32 #s(literal -2 binary32) v)
%20 = (neg.f32 v)
%21 = (*.f32 #s(literal 1 binary32) %20)
%24 = (+.f32 v v)
%29 = (*.f32 #s(literal 1 binary32) v)
%31 = (neg.f32 %20)
%41 = (sqrt.f32 %24)
%42 = (neg.f32 %41)
%43 = (neg.f32 %42)
%44 = (*.f32 %43 %43)
%45 = (log.f32 #s(literal 2 binary32))
%47 = (fabs.f32 v)
%48 = (log.f32 %47)
%49 = (exp.f32 %48)
%50 = (*.f32 (exp.f32 %45) %49)
%51 = (*.f32 %42 %42)
%52 = (*.f32 %41 %41)
%53 = (*.f32 %47 #s(literal 2 binary32))
%54 = (*.f32 #s(literal 2 binary32) %47)
%55 = (*.f32 #s(literal 2 binary32) v)
%56 = (*.f32 v #s(literal 2 binary32))
%57 = (/.f32 #s(literal 1 binary32) %11)
%59 = (*.f32 v v)
%60 = (*.f32 #s(literal 4 binary32) %59)
%61 = (sqrt.f32 %60)
%62 = (-.f32 v %20)
%63 = (fma.f32 #s(literal 1 binary32) v %29)
%64 = (*.f32 v #s(literal 1 binary32))
%65 = (fma.f32 v #s(literal 1 binary32) %64)
%66 = (pow.f32 %42 #s(literal 2 binary32))
%67 = (pow.f32 %60 #s(literal 1/2 binary32))
%68 = (pow.f32 %41 #s(literal 2 binary32))
%69 = (pow.f32 %24 #s(literal 1 binary32))
%70 = (+.f32 %64 %64)
%71 = (+.f32 %29 %29)
%73 = (/.f32 (fma.f32 #s(literal 2 binary32) v %11) #s(literal 2 binary32))
%75 = (/.f32 (-.f32 %24 %11) #s(literal 2 binary32))
%76 = (+.f32 %73 %75)
%77 = (+.f32 v %31)
%78 = (fabs.f32 %18)
%79 = (fabs.f32 %24)
%80 = (log.f32 %24)
%81 = (exp.f32 %80)
%82 = (neg.f32 %18)
%84 = (approx cosTheta_i #s(literal 0 binary32))
%88 = (neg.f32 cosTheta_O)
%89 = (neg.f32 %88)
%91 = (neg.f32 cosTheta_i)
%93 = (neg.f32 %91)
%95 = (*.f32 cosTheta_O cosTheta_i)
%100 = (neg.f32 %95)
%102 = (/.f32 cosTheta_i %20)
%106 = (/.f32 cosTheta_i v)
%108 = (/.f32 cosTheta_O v)
%116 = (/.f32 %95 v)
%119 = (/.f32 v %95)
%122 = (/.f32 %100 v)
%124 = (*.f32 sinTheta_O sinTheta_i)
%133 = (*.f32 %124 #s(literal -1 binary32))
%135 = (neg.f32 sinTheta_O)
%136 = (*.f32 %135 sinTheta_i)
%137 = (*.f32 %136 %7)
%138 = (/.f32 sinTheta_O v)
%139 = (*.f32 %138 sinTheta_i)
%140 = (*.f32 %124 %13)
%141 = (*.f32 %13 %124)
%143 = (*.f32 sinTheta_O (/.f32 sinTheta_i v))
%144 = (*.f32 sinTheta_i %138)
%146 = (/.f32 (*.f32 #s(literal -1 binary32) %124) %20)
%148 = (/.f32 (*.f32 #s(literal 1 binary32) %124) v)
%149 = (/.f32 %133 %20)
%151 = (/.f32 (neg.f32 %136) %31)
%152 = (/.f32 %136 %20)
%153 = (/.f32 %124 v)
%155 = (/.f32 #s(literal 1 binary32) (/.f32 %20 %136))
%157 = (/.f32 #s(literal 1 binary32) (pow.f32 %153 #s(literal -1 binary32)))
%159 = (/.f32 #s(literal 1 binary32) (/.f32 v %124))
%160 = (pow.f32 %153 #s(literal 1 binary32))
%162 = (neg.f32 (/.f32 %136 v))
%163 = (/.f32 %124 %20)
%164 = (neg.f32 %163)
%165 = (fma.f32 #s(literal 6931/10000 binary32) v %95)
%175 = (/.f32 v %100)
%184 = (fma.f32 cosTheta_O %106 #s(literal 6931/10000 binary32))
%201 = (*.f32 #s(literal -1 binary32) %122)
%208 = (*.f32 (/.f32 #s(literal 2 binary32) %42) (/.f32 #s(literal 1/2 binary32) %42))
%210 = (/.f32 #s(literal 1/2 binary32) %41)
%211 = (*.f32 (/.f32 #s(literal 2 binary32) %41) %210)
%212 = (/.f32 #s(literal 2 binary32) v)
%214 = (*.f32 %212 #s(literal 1/4 binary32))
%215 = (sqrt.f32 %11)
%216 = (neg.f32 %215)
%217 = (*.f32 %216 %216)
%218 = (sqrt.f32 #s(literal 1/2 binary32))
%219 = (neg.f32 %218)
%221 = (*.f32 %219 (/.f32 %219 v))
%223 = (*.f32 #s(literal -1/2 binary32) %7)
%224 = (/.f32 %218 v)
%225 = (*.f32 %218 %224)
%226 = (*.f32 %215 %215)
%227 = (fabs.f32 %13)
%228 = (*.f32 #s(literal 1/2 binary32) %227)
%229 = (*.f32 #s(literal 1/2 binary32) %13)
%231 = (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1/2 binary32) %24))
%232 = (*.f32 %13 #s(literal 1/2 binary32))
%233 = (*.f32 #s(literal 1 binary32) %11)
%234 = (*.f32 %215 #s(literal -1 binary32))
%235 = (/.f32 %234 %42)
%236 = (log.f32 #s(literal 1/2 binary32))
%238 = (/.f32 (exp.f32 %236) %49)
%239 = (/.f32 %216 %42)
%240 = (/.f32 #s(literal -1/2 binary32) %20)
%241 = (/.f32 %215 %41)
%242 = (/.f32 #s(literal 1/2 binary32) %31)
%243 = (/.f32 #s(literal 1/2 binary32) %47)
%244 = (/.f32 #s(literal -1 binary32) %18)
%246 = (/.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %24))
%247 = (/.f32 %13 #s(literal 2 binary32))
%249 = (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 1 binary32) %24))
%251 = (/.f32 #s(literal 1 binary32) (/.f32 %41 %215))
%253 = (/.f32 #s(literal 1 binary32) (/.f32 %24 #s(literal 1 binary32)))
%255 = (/.f32 #s(literal 1 binary32) (/.f32 %20 #s(literal -1/2 binary32)))
%257 = (/.f32 #s(literal 1 binary32) (pow.f32 %11 #s(literal -1 binary32)))
%259 = (/.f32 #s(literal 1 binary32) (/.f32 v #s(literal 1/2 binary32)))
%260 = (/.f32 #s(literal 1 binary32) %24)
%262 = (sqrt.f32 (*.f32 %11 %11))
%263 = (neg.f32 %75)
%265 = (-.f32 %73 (neg.f32 %263))
%266 = (-.f32 %73 %75)
%267 = (pow.f32 %216 #s(literal 2 binary32))
%268 = (pow.f32 %215 #s(literal 2 binary32))
%269 = (pow.f32 %11 #s(literal 1 binary32))
%270 = (pow.f32 %41 #s(literal -2 binary32))
%271 = (pow.f32 %24 #s(literal -1 binary32))
%272 = (+.f32 %73 %263)
%273 = (-.f32 %75 %73)
%274 = (fabs.f32 %273)
%276 = (fabs.f32 (neg.f32 %11))
%277 = (fabs.f32 %11)
%278 = (neg.f32 %80)
%280 = (exp.f32 (*.f32 %278 #s(literal 1 binary32)))
%281 = (exp.f32 %278)
%283 = (neg.f32 (*.f32 %215 %216))
%285 = (neg.f32 (*.f32 %216 %215))
%287 = (neg.f32 (/.f32 #s(literal -1 binary32) %24))
%289 = (neg.f32 (/.f32 #s(literal -1/2 binary32) v))
%290 = (/.f32 #s(literal 1/2 binary32) %20)
%291 = (neg.f32 %290)
%292 = (neg.f32 %273)
%293 = (log.f32 %11)
%294 = (log.f32 %215)
%295 = (*.f32 #s(literal 2 binary32) %294)
%296 = (*.f32 #s(literal 1 binary32) %278)
%298 = (/.f32 #s(literal 1 binary32) (pow.f32 %278 #s(literal -1 binary32)))
%299 = (log.f32 %41)
%300 = (-.f32 %294 %299)
%301 = (-.f32 %236 %48)
%302 = (-.f32 #s(literal 0 binary32) %80)
%303 = (log.f32 %218)
%304 = (neg.f32 %48)
%305 = (fma.f32 #s(literal 2 binary32) %303 %304)
%306 = (log.f32 %227)
%307 = (fma.f32 #s(literal 2 binary32) %303 %306)
%308 = (fma.f32 #s(literal 1 binary32) %236 %304)
%309 = (fma.f32 #s(literal 1 binary32) %236 %306)
%310 = (pow.f32 %278 #s(literal 1 binary32))
%312 = (+.f32 (neg.f32 %45) %304)
%313 = (+.f32 %294 %294)
%314 = (+.f32 %236 %304)
%315 = (+.f32 %236 %306)
%317 = (neg.f32 (-.f32 %48 %236))
%318 = (*.f32 %31 %31)
%319 = (neg.f32 %47)
%320 = (*.f32 %319 %319)
%321 = (*.f32 %20 %20)
%322 = (*.f32 %47 %47)
%323 = (/.f32 #s(literal 1 binary32) %59)
%324 = (/.f32 #s(literal 1 binary32) %323)
%326 = (sqrt.f32 (*.f32 %59 %59))
%327 = (pow.f32 %20 #s(literal 2 binary32))
%328 = (pow.f32 %47 #s(literal 2 binary32))
%329 = (pow.f32 %59 #s(literal 1 binary32))
%330 = (pow.f32 v #s(literal 2 binary32))
%331 = (*.f32 %20 v)
%332 = (fabs.f32 %331)
%333 = (fabs.f32 %59)
%334 = (neg.f32 %331)
%359 = (/.f32 #s(literal -1 binary32) %95)
%383 = (/.f32 #s(literal 1 binary32) %47)
%386 = (/.f32 #s(literal 1 binary32) %331)
%388 = (/.f32 #s(literal 1/2 binary32) %59)
%425 = (sqrt.f32 %47)
%438 = (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32))
%449 = (-.f32 #s(literal -1 binary32) %124)
%451 = (-.f32 %95 %124)
%458 = (-.f32 %95 %438)
%463 = (neg.f32 sinTheta_i)
%464 = (-.f32 #s(literal 1 binary32) %95)
%465 = (neg.f32 %464)
%479 = (-.f32 %438 %95)
%489 = (*.f32 %116 v)
%492 = (*.f32 %100 v)
%496 = (*.f32 %95 v)
%500 = (*.f32 %479 #s(literal 1 binary32))
%504 = (/.f32 %458 v)
%511 = (/.f32 %438 %20)
%513 = (/.f32 %451 v)
%515 = (/.f32 %438 v)
%517 = (/.f32 %449 v)
%519 = (neg.f32 %515)
%556 = (-.f32 %504 #s(literal -6931/10000 binary32))
%563 = (-.f32 #s(literal -6931/10000 binary32) %504)
%565 = (sqrt.f32 %41)
%567 = (sqrt.f32 #s(literal 2 binary32))
%576 = (*.f32 #s(literal 2 binary32) %299)
%577 = (*.f32 #s(literal 1 binary32) %80)
%579 = (/.f32 #s(literal 1 binary32) (pow.f32 %80 #s(literal -1 binary32)))
%580 = (-.f32 %45 %304)
%581 = (fma.f32 #s(literal 1 binary32) %45 %48)
%582 = (fma.f32 #s(literal 1 binary32) %48 %45)
%583 = (pow.f32 %80 #s(literal 1 binary32))
%584 = (+.f32 %299 %299)
%585 = (+.f32 %45 %48)
%586 = (+.f32 %48 %45)
%587 = (-.f32 %80 #s(literal 6931/10000 binary32))
%598 = (-.f32 #s(literal 6931/10000 binary32) %80)
%600 = (exp.f32 %504)
%601 = (exp.f32 #s(literal -6931/10000 binary32))
%602 = (/.f32 #s(literal 1 binary32) %601)
%604 = (exp.f32 #s(literal 6931/10000 binary32))
%606 = (neg.f32 %600)
%607 = (neg.f32 %601)
%612 = (exp.f32 %556)
%619 = (cosh.f32 %556)
%620 = (sinh.f32 %556)
%627 = (neg.f32 %612)
%637 = (cosh.f32 #s(literal -6931/10000 binary32))
%638 = (sinh.f32 #s(literal -6931/10000 binary32))
%647 = (*.f32 %601 %24)
%648 = (*.f32 %24 %601)
%649 = (*.f32 %601 v)
%650 = (*.f32 #s(literal 2 binary32) %649)
%651 = (*.f32 v %601)
%652 = (*.f32 #s(literal 2 binary32) %651)
%654 = (*.f32 v (+.f32 %601 %601))
%655 = (/.f32 %601 %11)
%656 = (/.f32 %24 %604)
%657 = (/.f32 %11 %601)
%658 = (/.f32 #s(literal 1 binary32) %657)
%660 = (sqrt.f32 (*.f32 %647 %647))
%662 = (-.f32 %649 (*.f32 %607 v))
%664 = (-.f32 %649 (neg.f32 %649))
%666 = (-.f32 %651 (neg.f32 %651))
%667 = (*.f32 %20 %601)
%668 = (-.f32 %651 %667)
%669 = (cosh.f32 %587)
%670 = (sinh.f32 %587)
%672 = (-.f32 %669 (neg.f32 %670))
%674 = (-.f32 %669 (sinh.f32 %598))
%675 = (*.f32 %638 %24)
%676 = (fma.f32 %637 %24 %675)
%677 = (fma.f32 %601 v %649)
%678 = (*.f32 %24 %638)
%679 = (fma.f32 %24 %637 %678)
%680 = (fma.f32 v %601 %651)
%681 = (pow.f32 %647 #s(literal 1 binary32))
%683 = (+.f32 (*.f32 %24 %637) %678)
%685 = (+.f32 (*.f32 %637 %24) %675)
%686 = (+.f32 %649 %649)
%687 = (+.f32 %651 %651)
%688 = (+.f32 %669 %670)
%689 = (*.f32 %18 %601)
%690 = (fabs.f32 %689)
%691 = (fabs.f32 %647)
%693 = (exp.f32 (*.f32 %587 #s(literal 1 binary32)))
%694 = (exp.f32 %587)
%697 = (- (* sinTheta_O sinTheta_i) -1)
%698 = (approx %697 #s(literal 1 binary32))
%702 = (fma.f32 %80 v #s(literal 1 binary32))
%711 = (-.f32 %80 %7)
%726 = (-.f32 %7 %80)
%728 = (-.f32 %184 %80)
%745 = (/.f32 (-.f32 %95 %702) v)
%746 = (+.f32 #s(literal 6931/10000 binary32) %745)
%759 = (-.f32 %711 %184)
%761 = (exp.f32 %746)
%762 = (sqrt.f32 %761)
%763 = (neg.f32 %762)
%764 = (*.f32 %763 %763)
%766 = (*.f32 %604 (exp.f32 %745))
%767 = (exp.f32 %184)
%768 = (exp.f32 %13)
%769 = (*.f32 %768 %24)
%771 = (*.f32 %767 (/.f32 #s(literal 1 binary32) %769))
%773 = (*.f32 %767 (exp.f32 %726))
%774 = (*.f32 %762 %762)
%777 = (/.f32 (neg.f32 %767) (neg.f32 %769))
%779 = (/.f32 (exp.f32 %728) %768)
%780 = (/.f32 %767 %769)
%782 = (/.f32 #s(literal 1 binary32) (/.f32 %769 %767))
%784 = (/.f32 #s(literal 1 binary32) (pow.f32 %761 #s(literal -1 binary32)))
%786 = (/.f32 #s(literal 1 binary32) (exp.f32 %759))
%787 = (*.f32 %761 %761)
%788 = (sqrt.f32 %787)
%789 = (cosh.f32 %746)
%790 = (sinh.f32 %746)
%792 = (-.f32 %789 (neg.f32 %790))
%794 = (-.f32 %789 (sinh.f32 %759))
%795 = (pow.f32 %787 #s(literal 1/2 binary32))
%796 = (pow.f32 %762 #s(literal 2 binary32))
%797 = (pow.f32 %761 #s(literal 1 binary32))
%798 = (+.f32 %789 %790)
%800 = (fabs.f32 (neg.f32 %761))
%801 = (fabs.f32 %761)
%802 = (*.f32 %746 #s(literal 1/2 binary32))
%804 = (exp.f32 (fma.f32 %746 #s(literal 1/2 binary32) %802))
%806 = (exp.f32 (*.f32 %802 #s(literal 2 binary32)))
%808 = (exp.f32 (*.f32 %746 #s(literal 1 binary32)))
%853 = (exp.f32 %438)
%854 = (exp.f32 %95)
%855 = (/.f32 #s(literal 1 binary32) %854)
%857 = (exp.f32 %100)
%860 = (neg.f32 %854)
%865 = (exp.f32 %479)
%868 = (exp.f32 %458)
%872 = (cosh.f32 %479)
%873 = (sinh.f32 %479)
%884 = (exp.f32 %116)
%898 = (-.f32 %95 %698)
%901 = (neg.f32 %698)
%902 = (neg.f32 %901)
%912 = (-.f32 %698 %95)
%930 = (*.f32 %912 #s(literal 1 binary32))
%934 = (/.f32 %898 v)
%941 = (/.f32 %698 %20)
%943 = (/.f32 %698 v)
%945 = (neg.f32 %943)
%947 = (/.f32 %901 v)
%971 = (-.f32 %934 #s(literal -6931/10000 binary32))
%978 = (-.f32 #s(literal -6931/10000 binary32) %934)
%980 = (exp.f32 %934)
%983 = (neg.f32 %980)
%988 = (exp.f32 %971)
%995 = (cosh.f32 %971)
%996 = (sinh.f32 %971)
%1003 = (neg.f32 %988)
%1008 = (*.f32 %84 cosTheta_O)
%1013 = (sqrt.f32 %762)
%1032 = (/ (- (* cosTheta_O cosTheta_i) %697) v)
%1037 = (* 2 v)
%1038 = (/ (exp (- %1032 -6931/10000)) %1037)
%1039 = (approx %1038 %761)
%1044 = (*.f32 %212 (/.f32 #s(literal 1/2 binary32) %359))
%1045 = (*.f32 %88 %106)
%1046 = (*.f32 %7 %95)
%1047 = (*.f32 %100 %13)
%1048 = (*.f32 #s(literal -1 binary32) %116)
%1049 = (*.f32 %95 %7)
%1051 = (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1/2 binary32) %175))
%1052 = (*.f32 %13 %100)
%1053 = (*.f32 #s(literal 1 binary32) %122)
%1055 = (*.f32 cosTheta_O (/.f32 %91 v))
%1056 = (*.f32 cosTheta_O %102)
%1058 = (*.f32 cosTheta_O (neg.f32 %106))
%1060 = (*.f32 cosTheta_i (/.f32 cosTheta_O %20))
%1062 = (/.f32 (*.f32 #s(literal -1 binary32) %100) %20)
%1064 = (/.f32 (*.f32 #s(literal 2 binary32) %122) #s(literal 2 binary32))
%1066 = (/.f32 (*.f32 #s(literal 2 binary32) %100) %24)
%1068 = (/.f32 (*.f32 #s(literal 2 binary32) %95) %18)
%1069 = (*.f32 #s(literal 1 binary32) %100)
%1070 = (/.f32 %1069 %29)
%1071 = (/.f32 %1069 v)
%1072 = (*.f32 #s(literal 1 binary32) %95)
%1073 = (/.f32 %1072 %21)
%1074 = (/.f32 %1072 %20)
%1076 = (/.f32 #s(literal -2 binary32) (*.f32 #s(literal 2 binary32) %119))
%1077 = (/.f32 %122 #s(literal 1 binary32))
%1078 = (/.f32 %100 %31)
%1080 = (/.f32 #s(literal -1 binary32) (*.f32 #s(literal 1 binary32) %119))
%1081 = (/.f32 #s(literal -1 binary32) %119)
%1082 = (/.f32 %95 %20)
%1084 = (/.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %175))
%1085 = (/.f32 %13 %359)
%1087 = (/.f32 #s(literal 1 binary32) (/.f32 %119 #s(literal -1 binary32)))
%1089 = (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 1 binary32) %175))
%1091 = (/.f32 #s(literal 1 binary32) (pow.f32 %122 #s(literal -1 binary32)))
%1093 = (/.f32 #s(literal 1 binary32) (/.f32 %175 #s(literal 1 binary32)))
%1094 = (/.f32 #s(literal 1 binary32) %175)
%1095 = (pow.f32 %122 #s(literal 1 binary32))
%1096 = (pow.f32 %175 #s(literal -1 binary32))
%1098 = (neg.f32 (*.f32 %13 %95))
%1100 = (neg.f32 (*.f32 #s(literal 1 binary32) %116))
%1102 = (neg.f32 (/.f32 #s(literal -1 binary32) %175))
%1103 = (neg.f32 %201)
%1104 = (neg.f32 %116)
%1121 = (- (- (log %1037) 6931/10000) %1032)
%1122 = (approx %1121 %122)
%1124 = (/.f32 #s(literal 1 binary32) (pow.f32 %1122 #s(literal -1 binary32)))
%1125 = (pow.f32 %1122 #s(literal 1 binary32))
%1126 = (approx %1121 %153)
%1128 = (/.f32 #s(literal 1 binary32) (pow.f32 %1126 #s(literal -1 binary32)))
%1129 = (pow.f32 %1126 #s(literal 1 binary32))
%1130 = (neg.f32 %1126)
%1131 = (neg.f32 %1130)
%1132 = (*.f32 #s(literal 1/2 binary32) v)
%1137 = (*.f32 %47 #s(literal 1/2 binary32))
%1138 = (sqrt.f32 %1137)
%1140 = (sqrt.f32 %612)
%1141 = (*.f32 %1140 %1140)
%1142 = (*.f32 (*.f32 %1138 %1138) %1141)
%1143 = (*.f32 %612 %47)
%1144 = (sqrt.f32 %1143)
%1145 = (neg.f32 %1144)
%1146 = (*.f32 %1145 %219)
%1147 = (*.f32 %1146 %1146)
%1148 = (*.f32 %1145 %218)
%1149 = (*.f32 %1148 %1148)
%1150 = (*.f32 %1144 %219)
%1151 = (*.f32 %1150 %1150)
%1152 = (*.f32 %219 %1145)
%1153 = (*.f32 %1152 %1152)
%1154 = (*.f32 %219 %1144)
%1155 = (*.f32 %1154 %1154)
%1156 = (*.f32 %218 %1145)
%1157 = (*.f32 %1156 %1156)
%1158 = (*.f32 %1132 %612)
%1159 = (sqrt.f32 %1158)
%1160 = (neg.f32 %1159)
%1161 = (*.f32 %1160 %1160)
%1162 = (*.f32 #s(literal 1/2 binary32) %1144)
%1163 = (*.f32 %1162 %1144)
%1164 = (*.f32 %1159 %1159)
%1165 = (*.f32 %1143 #s(literal 1/2 binary32))
%1166 = (*.f32 %218 %1143)
%1167 = (*.f32 %218 %1166)
%1168 = (*.f32 %1158 #s(literal 1 binary32))
%1169 = (*.f32 %612 %1132)
%1170 = (*.f32 v %612)
%1171 = (*.f32 #s(literal 1/2 binary32) %1170)
%1172 = (*.f32 #s(literal 1/2 binary32) %1143)
%1173 = (*.f32 #s(literal 1 binary32) %1158)
%1175 = (/.f32 (*.f32 %1132 %600) %601)
%1177 = (/.f32 (*.f32 %1158 #s(literal 2 binary32)) #s(literal 2 binary32))
%1179 = (/.f32 #s(literal -1 binary32) %1159)
%1180 = (/.f32 (*.f32 %1159 #s(literal -1 binary32)) %1179)
%1182 = (/.f32 #s(literal 1 binary32) %1159)
%1183 = (/.f32 (*.f32 %1159 #s(literal 1 binary32)) %1182)
%1185 = (/.f32 (*.f32 %600 %1132) %601)
%1186 = (*.f32 #s(literal -1 binary32) %1159)
%1187 = (/.f32 %1186 %1179)
%1188 = (/.f32 %1159 %1182)
%1189 = (/.f32 %1158 #s(literal 1 binary32))
%1191 = (/.f32 #s(literal -1 binary32) (*.f32 %1179 %1182))
%1193 = (/.f32 #s(literal -1 binary32) (*.f32 %1182 %1179))
%1195 = (/.f32 #s(literal 1 binary32) (*.f32 %1179 %1179))
%1196 = (*.f32 %1182 %1182)
%1197 = (/.f32 #s(literal 1 binary32) %1196)
%1199 = (/.f32 #s(literal 1 binary32) (pow.f32 %1158 #s(literal -1 binary32)))
%1200 = (pow.f32 %1143 #s(literal 2 binary32))
%1202 = (sqrt.f32 (*.f32 %1200 #s(literal 1/4 binary32)))
%1204 = (sqrt.f32 (*.f32 #s(literal 1/4 binary32) %1200))
%1205 = (*.f32 %1158 %1158)
%1206 = (sqrt.f32 %1205)
%1207 = (*.f32 %620 %1132)
%1208 = (fma.f32 %619 %1132 %1207)
%1209 = (*.f32 %1132 %620)
%1210 = (fma.f32 %1132 %619 %1209)
%1211 = (pow.f32 %1196 #s(literal -1 binary32))
%1212 = (pow.f32 %1205 #s(literal 1/2 binary32))
%1213 = (pow.f32 %1159 #s(literal 2 binary32))
%1214 = (pow.f32 %1182 #s(literal -2 binary32))
%1215 = (pow.f32 %1158 #s(literal 1 binary32))
%1217 = (+.f32 (*.f32 %1132 %619) %1209)
%1219 = (+.f32 (*.f32 %619 %1132) %1207)
%1220 = (fabs.f32 %1158)
%1221 = (*.f32 %1158 #s(literal -1 binary32))
%1222 = (neg.f32 %1221)
%1224 = (sqrt.f32 %1144)
%1225 = (*.f32 (sqrt.f32 %1162) %1224)
%1226 = (sqrt.f32 %1159)
%1227 = (*.f32 %1226 %1226)
%1228 = (sqrt.f32 %218)
%1231 = (*.f32 %1228 (sqrt.f32 (fabs.f32 %1166)))
%1232 = (*.f32 %1138 %1140)
%1233 = (*.f32 %1140 %1138)
%1234 = (*.f32 %1144 %218)
%1235 = (*.f32 %218 %1144)
%1236 = (/.f32 #s(literal 1 binary32) %1179)
%1237 = (*.f32 #s(literal -1 binary32) %1236)
%1239 = (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1/2 binary32) %1182))
%1240 = (*.f32 #s(literal 1 binary32) %1159)
%1241 = (*.f32 #s(literal 2 binary32) %1159)
%1242 = (/.f32 %1241 #s(literal 2 binary32))
%1244 = (/.f32 #s(literal -2 binary32) (*.f32 #s(literal 2 binary32) %1179))
%1245 = (/.f32 %1159 #s(literal 1 binary32))
%1247 = (/.f32 #s(literal -1 binary32) (*.f32 #s(literal 1 binary32) %1179))
%1248 = (/.f32 #s(literal -1 binary32) %1179)
%1250 = (/.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %1182))
%1252 = (/.f32 #s(literal 1 binary32) (fabs.f32 %1179))
%1254 = (/.f32 #s(literal 1 binary32) (fabs.f32 %1182))
%1255 = (/.f32 #s(literal 1 binary32) %1182)
%1257 = (sqrt.f32 (*.f32 %1137 %612))
%1258 = (pow.f32 %1159 #s(literal 1 binary32))
%1259 = (pow.f32 %1182 #s(literal -1 binary32))
%1260 = (pow.f32 %1158 #s(literal 1/2 binary32))
%1261 = (fabs.f32 %1160)
%1262 = (fabs.f32 %1159)
%1263 = (neg.f32 %1186)
%1265 = (neg.f32 (/.f32 #s(literal -1 binary32) %1182))
%1266 = (neg.f32 %1236)
%1275 = (neg.f32 %1145)
%1276 = (*.f32 %1275 %1275)
%1277 = (*.f32 %1145 %1145)
%1278 = (*.f32 %1144 %1144)
%1279 = (*.f32 %47 %1141)
%1280 = (*.f32 %47 %612)
%1282 = (/.f32 (*.f32 %47 %600) %601)
%1284 = (/.f32 (*.f32 %600 %47) %601)
%1286 = (/.f32 #s(literal 1 binary32) (pow.f32 %1143 #s(literal -1 binary32)))
%1287 = (sqrt.f32 %1200)
%1288 = (*.f32 %620 %47)
%1289 = (fma.f32 %619 %47 %1288)
%1290 = (*.f32 %47 %620)
%1291 = (fma.f32 %47 %619 %1290)
%1292 = (pow.f32 %1145 #s(literal 2 binary32))
%1293 = (pow.f32 %1200 #s(literal 1/2 binary32))
%1294 = (pow.f32 %1144 #s(literal 2 binary32))
%1295 = (pow.f32 %1143 #s(literal 1 binary32))
%1297 = (+.f32 (*.f32 %47 %619) %1290)
%1299 = (+.f32 (*.f32 %619 %47) %1288)
%1301 = (fabs.f32 (neg.f32 %1143))
%1303 = (fabs.f32 (*.f32 %612 %20))
%1305 = (fabs.f32 (*.f32 %612 v))
%1307 = (fabs.f32 (*.f32 %20 %612))
%1308 = (fabs.f32 %1170)
%1309 = (fabs.f32 %1143)
%1311 = (neg.f32 (*.f32 %1145 %1144))
%1313 = (neg.f32 (*.f32 %1144 %1145))
%1327 = (/.f32 #s(literal 1 binary32) %1138)
%1345 = (*.f32 (/.f32 %1162 %20) (/.f32 %1144 %20))
%1348 = (*.f32 (/.f32 %1162 %47) (/.f32 %1144 %47))
%1351 = (*.f32 (/.f32 %1162 v) (/.f32 %1144 v))
%1354 = (*.f32 (/.f32 %218 %20) (/.f32 %1166 %20))
%1357 = (*.f32 (/.f32 %218 %47) (/.f32 %1166 %47))
%1359 = (*.f32 %224 (/.f32 %1166 v))
%1360 = (/.f32 %1143 %20)
%1361 = (*.f32 %1360 %290)
%1362 = (/.f32 %1143 %47)
%1363 = (*.f32 %1362 %11)
%1364 = (/.f32 %1143 v)
%1365 = (*.f32 %1364 %11)
%1366 = (/.f32 %1159 %20)
%1367 = (*.f32 %1366 %1366)
%1368 = (/.f32 %1159 %47)
%1369 = (*.f32 %1368 %1368)
%1370 = (/.f32 %1159 v)
%1371 = (*.f32 %1370 %1370)
%1372 = (/.f32 %1158 %20)
%1373 = (*.f32 %1372 %7)
%1374 = (/.f32 %1158 %47)
%1375 = (*.f32 %1374 %383)
%1376 = (/.f32 %1132 %20)
%1377 = (/.f32 %612 %20)
%1378 = (*.f32 %1376 %1377)
%1379 = (*.f32 %1377 %1376)
%1380 = (/.f32 %1132 %47)
%1381 = (/.f32 %612 %47)
%1382 = (*.f32 %1380 %1381)
%1383 = (*.f32 %1381 %1380)
%1384 = (*.f32 %290 %1360)
%1386 = (*.f32 %290 (/.f32 %1170 %20))
%1388 = (*.f32 %1162 (/.f32 %1144 %59))
%1389 = (/.f32 %612 v)
%1390 = (*.f32 %1132 %1389)
%1391 = (*.f32 %1390 %13)
%1392 = (*.f32 v %11)
%1393 = (*.f32 %1389 %1392)
%1394 = (*.f32 %1392 %1389)
%1395 = (*.f32 #s(literal -1/2 binary32) %1170)
%1396 = (*.f32 %1395 %386)
%1398 = (*.f32 %1159 (/.f32 %1159 %59))
%1399 = (*.f32 %1143 %388)
%1401 = (*.f32 %218 (/.f32 %1166 %59))
%1402 = (*.f32 %1158 %323)
%1404 = (*.f32 %1132 (/.f32 %612 %59))
%1406 = (*.f32 %612 (/.f32 %1132 %59))
%1407 = (*.f32 %11 %1362)
%1408 = (*.f32 %11 %1364)
%1410 = (*.f32 %11 (/.f32 %1170 %47))
%1412 = (*.f32 %11 (/.f32 %1170 v))
%1413 = (*.f32 %323 %1158)
%1415 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1143 %59))
%1417 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1170 %59))
%1419 = (/.f32 (*.f32 %1392 %612) v)
%1421 = (/.f32 (*.f32 #s(literal -1 binary32) %1158) %331)
%1423 = (/.f32 (*.f32 %13 %1158) v)
%1424 = (/.f32 %1221 %331)
%1425 = (/.f32 %1372 %20)
%1426 = (/.f32 %1374 %47)
%1428 = (/.f32 (neg.f32 %1390) %20)
%1430 = (/.f32 (neg.f32 %1395) %59)
%1431 = (/.f32 %1390 v)
%1432 = (/.f32 %1395 %331)
%1433 = (/.f32 %1158 %59)
%1435 = (/.f32 #s(literal 1 binary32) (/.f32 v %1390))
%1437 = (/.f32 #s(literal 1 binary32) (/.f32 %331 %1395))
%1439 = (/.f32 #s(literal 1 binary32) (pow.f32 %1433 #s(literal -1 binary32)))
%1441 = (/.f32 #s(literal 1 binary32) (/.f32 %59 %1158))
%1442 = (pow.f32 %1433 #s(literal 1 binary32))
%1444 = (neg.f32 (/.f32 %1158 %331))
%1446 = (neg.f32 (/.f32 %1395 %59))
%1450 = (exp.f32 %1130)
%1451 = (/.f32 %1450 #s(literal 2 binary32))
%1452 = (*.f32 %1451 #s(literal 2 binary32))
%1453 = (*.f32 %1450 #s(literal 1 binary32))
%1455 = (*.f32 #s(literal 1/2 binary32) (/.f32 %1450 #s(literal 1/2 binary32)))
%1456 = (neg.f32 %1450)
%1457 = (*.f32 #s(literal -1 binary32) %1456)
%1458 = (exp.f32 %1126)
%1460 = (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1/2 binary32) %1458))
%1461 = (*.f32 #s(literal 1 binary32) %1450)
%1462 = (/.f32 %1451 #s(literal 1/2 binary32))
%1463 = (*.f32 #s(literal 2 binary32) %1450)
%1464 = (/.f32 %1463 #s(literal 2 binary32))
%1465 = (neg.f32 %1458)
%1467 = (/.f32 #s(literal -2 binary32) (*.f32 #s(literal 2 binary32) %1465))
%1468 = (/.f32 %1456 #s(literal -1 binary32))
%1469 = (/.f32 %1450 #s(literal 1 binary32))
%1471 = (/.f32 #s(literal -1 binary32) (*.f32 %1465 #s(literal 1 binary32)))
%1472 = (/.f32 #s(literal -1 binary32) %1465)
%1473 = (*.f32 #s(literal 2 binary32) %1458)
%1474 = (/.f32 #s(literal 2 binary32) %1473)
%1475 = (/.f32 #s(literal 1 binary32) %1458)
%1477 = (sqrt.f32 (*.f32 %1450 %1450))
%1478 = (cosh.f32 %1126)
%1479 = (/.f32 %1478 #s(literal 1 binary32))
%1480 = (sinh.f32 %1126)
%1482 = (-.f32 %1479 (/.f32 %1480 #s(literal 1 binary32)))
%1483 = (neg.f32 %1480)
%1485 = (-.f32 %1478 (neg.f32 %1483))
%1486 = (-.f32 %1478 %1480)
%1487 = (*.f32 %1483 #s(literal 1 binary32))
%1488 = (fma.f32 %1478 #s(literal 1 binary32) %1487)
%1489 = (*.f32 #s(literal 1 binary32) %1483)
%1490 = (fma.f32 #s(literal 1 binary32) %1478 %1489)
%1491 = (pow.f32 %1458 #s(literal -1 binary32))
%1492 = (pow.f32 %1450 #s(literal 1 binary32))
%1494 = (+.f32 (*.f32 #s(literal 1 binary32) %1478) %1489)
%1496 = (+.f32 (*.f32 %1478 #s(literal 1 binary32)) %1487)
%1498 = (+.f32 %1479 (/.f32 %1483 #s(literal 1 binary32)))
%1499 = (+.f32 %1478 %1483)
%1500 = (fabs.f32 %1456)
%1501 = (fabs.f32 %1450)
%1503 = (exp.f32 (+.f32 #s(literal 0 binary32) %1130))
%1505 = (exp.f32 (-.f32 %1130 #s(literal 0 binary32)))
%1507 = (exp.f32 (-.f32 #s(literal 0 binary32) %1126))
%1509 = (exp.f32 (*.f32 %1126 #s(literal -1 binary32)))
%1511 = (exp.f32 (*.f32 %1130 #s(literal 1 binary32)))
%1512 = (neg.f32 %1456)
%1513 = (*.f32 %1458 #s(literal 1 binary32))
%1514 = (*.f32 #s(literal -1 binary32) %1465)
%1516 = (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1/2 binary32) %1450))
%1517 = (*.f32 #s(literal 1 binary32) %1458)
%1518 = (/.f32 %1473 #s(literal 2 binary32))
%1520 = (/.f32 #s(literal -2 binary32) (*.f32 #s(literal 2 binary32) %1456))
%1521 = (/.f32 %1465 #s(literal -1 binary32))
%1522 = (/.f32 %1458 #s(literal 1 binary32))
%1523 = (/.f32 #s(literal -1 binary32) %1456)
%1524 = (/.f32 #s(literal 2 binary32) %1463)
%1525 = (/.f32 #s(literal 1 binary32) %1450)
%1527 = (sqrt.f32 (*.f32 %1458 %1458))
%1528 = (-.f32 %1478 %1483)
%1529 = (pow.f32 %1458 #s(literal 1 binary32))
%1530 = (pow.f32 %1450 #s(literal -1 binary32))
%1531 = (+.f32 %1478 %1480)
%1532 = (fabs.f32 %1465)
%1533 = (fabs.f32 %1458)
%1535 = (exp.f32 (+.f32 #s(literal 0 binary32) %1126))
%1537 = (exp.f32 (-.f32 #s(literal 0 binary32) %1130))
%1539 = (exp.f32 (*.f32 %1126 #s(literal 1 binary32)))
%1541 = (exp.f32 (*.f32 %1130 #s(literal -1 binary32)))
%1542 = (neg.f32 %1465)
%1543 = (neg.f32 %1122)
%1547 = (exp.f32 %1122)
%1548 = (neg.f32 %1547)
%1549 = (/.f32 #s(literal 1 binary32) %1548)
%1550 = (*.f32 #s(literal -1 binary32) %1549)
%1552 = (*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1/2 binary32) %1547))
%1553 = (exp.f32 %1543)
%1554 = (*.f32 #s(literal 1 binary32) %1553)
%1556 = (/.f32 (*.f32 #s(literal 2 binary32) %1553) #s(literal 2 binary32))
%1558 = (/.f32 #s(literal -2 binary32) (*.f32 #s(literal 2 binary32) %1548))
%1559 = (/.f32 %1553 #s(literal 1 binary32))
%1561 = (/.f32 #s(literal -1 binary32) (*.f32 #s(literal 1 binary32) %1548))
%1562 = (/.f32 #s(literal -1 binary32) %1548)
%1564 = (/.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %1547))
%1566 = (/.f32 #s(literal 1 binary32) (/.f32 %1548 #s(literal -1 binary32)))
%1568 = (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 1 binary32) %1547))
%1570 = (/.f32 #s(literal 1 binary32) (neg.f32 %1548))
%1572 = (/.f32 #s(literal 1 binary32) (pow.f32 %1553 #s(literal -1 binary32)))
%1574 = (/.f32 #s(literal 1 binary32) (/.f32 %1547 #s(literal 1 binary32)))
%1575 = (/.f32 #s(literal 1 binary32) %1547)
%1577 = (sqrt.f32 (*.f32 %1553 %1553))
%1578 = (cosh.f32 %1122)
%1579 = (sinh.f32 %1122)
%1580 = (neg.f32 %1579)
%1582 = (-.f32 %1578 (neg.f32 %1580))
%1583 = (-.f32 %1578 %1579)
%1584 = (*.f32 %1580 #s(literal 1 binary32))
%1585 = (fma.f32 %1578 #s(literal 1 binary32) %1584)
%1586 = (*.f32 #s(literal 1 binary32) %1580)
%1587 = (fma.f32 #s(literal 1 binary32) %1578 %1586)
%1588 = (pow.f32 %1553 #s(literal 1 binary32))
%1589 = (pow.f32 %1547 #s(literal -1 binary32))
%1591 = (+.f32 (*.f32 #s(literal 1 binary32) %1578) %1586)
%1593 = (+.f32 (*.f32 %1578 #s(literal 1 binary32)) %1584)
%1594 = (+.f32 %1578 %1580)
%1595 = (-.f32 %1579 %1578)
%1596 = (fabs.f32 %1595)
%1598 = (fabs.f32 (neg.f32 %1553))
%1599 = (fabs.f32 %1553)
%1601 = (exp.f32 (+.f32 #s(literal 0 binary32) %1543))
%1603 = (exp.f32 (-.f32 #s(literal 0 binary32) %1122))
%1605 = (exp.f32 (*.f32 %1543 #s(literal 1 binary32)))
%1607 = (exp.f32 (*.f32 %1122 #s(literal -1 binary32)))
%1609 = (neg.f32 (*.f32 #s(literal -1 binary32) %1553))
%1611 = (neg.f32 (/.f32 #s(literal -1 binary32) %1547))
%1612 = (neg.f32 %1549)
%1613 = (neg.f32 %1595)
%1614 = (/.f32 #s(literal 1 binary32) %1553)
%1616 = (sqrt.f32 (*.f32 %1547 %1547))
%1617 = (-.f32 %1578 %1580)
%1618 = (pow.f32 %1547 #s(literal 1 binary32))
%1619 = (+.f32 %1578 %1579)
%1620 = (fabs.f32 %1548)
%1621 = (fabs.f32 %1547)
%1623 = (exp.f32 (*.f32 %1122 #s(literal 1 binary32)))
%1624 = (/.f32 %988 %41)
%1625 = (*.f32 %1624 %215)
%1626 = (/.f32 #s(literal 1 binary32) %689)
%1627 = (*.f32 %983 %1626)
%1628 = (/.f32 #s(literal 1 binary32) %18)
%1629 = (*.f32 %1003 %1628)
%1630 = (*.f32 %980 %657)
%1631 = (*.f32 %988 %11)
%1632 = (*.f32 %11 %988)
%1634 = (/.f32 (*.f32 %1624 #s(literal -1 binary32)) %42)
%1636 = (/.f32 (*.f32 %1624 #s(literal 1 binary32)) %41)
%1638 = (/.f32 (*.f32 %11 %980) %601)
%1640 = (/.f32 (*.f32 %988 #s(literal 1 binary32)) %24)
%1642 = (/.f32 (*.f32 %215 %988) %41)
%1644 = (/.f32 (*.f32 %980 %11) %601)
%1646 = (/.f32 (*.f32 #s(literal 1 binary32) %988) %24)
%1648 = (/.f32 (/.f32 %988 %42) %42)
%1650 = (/.f32 (/.f32 %988 #s(literal 2 binary32)) v)
%1652 = (/.f32 (/.f32 %988 v) #s(literal 2 binary32))
%1655 = (/.f32 (*.f32 %215 %980) (*.f32 %41 %601))
%1657 = (*.f32 %601 %41)
%1658 = (/.f32 (*.f32 %980 %215) %1657)
%1660 = (/.f32 (*.f32 #s(literal 1 binary32) %980) %647)
%1662 = (/.f32 (*.f32 %980 #s(literal 1 binary32)) %647)
%1664 = (/.f32 (neg.f32 %1624) %42)
%1666 = (/.f32 (neg.f32 %1003) %24)
%1668 = (neg.f32 %689)
%1669 = (/.f32 (neg.f32 %983) %1668)
%1670 = (/.f32 %1624 %41)
%1671 = (/.f32 %983 %689)
%1672 = (/.f32 %1003 %18)
%1673 = (/.f32 %980 %647)
%1674 = (/.f32 %988 %24)
%1676 = (/.f32 #s(literal 1 binary32) (/.f32 %41 %1624))
%1678 = (/.f32 #s(literal 1 binary32) (/.f32 %18 %1003))
%1680 = (/.f32 #s(literal 1 binary32) (/.f32 %689 %983))
%1682 = (/.f32 #s(literal 1 binary32) (pow.f32 %1674 #s(literal -1 binary32)))
%1684 = (/.f32 #s(literal 1 binary32) (/.f32 %647 %980))
%1686 = (/.f32 #s(literal 1 binary32) (/.f32 %24 %988))
%1687 = (*.f32 %996 %11)
%1688 = (fma.f32 %995 %11 %1687)
%1689 = (*.f32 %263 %988)
%1690 = (fma.f32 %73 %988 %1689)
%1691 = (*.f32 %988 %263)
%1692 = (fma.f32 %988 %73 %1691)
%1693 = (*.f32 %11 %996)
%1694 = (fma.f32 %11 %995 %1693)
%1695 = (pow.f32 %1674 #s(literal 1 binary32))
%1697 = (+.f32 (*.f32 %988 %73) %1691)
%1699 = (+.f32 (*.f32 %11 %995) %1693)
%1701 = (+.f32 (*.f32 %73 %988) %1689)
%1703 = (+.f32 (*.f32 %995 %11) %1687)
%1706 = (+.f32 (/.f32 %995 %24) (/.f32 %996 %24))
%1707 = (-.f32 %971 %80)
%1710 = (+.f32 (cosh.f32 %1707) (sinh.f32 %1707))
%1711 = (fabs.f32 %1674)
%1713 = (exp.f32 (+.f32 %278 %971))
%1715 = (exp.f32 (-.f32 %934 %587))
%1717 = (exp.f32 (*.f32 %1707 #s(literal 1 binary32)))
%1718 = (exp.f32 %1707)
%1720 = (neg.f32 (/.f32 %988 %18))
%1722 = (neg.f32 (/.f32 %980 %689))
%1724 = (neg.f32 (/.f32 %1003 %24))
%1726 = (neg.f32 (/.f32 %983 %647))
%1727 = (approx %1038 %1433)
%1729 = (/.f32 #s(literal 1 binary32) (pow.f32 %1727 #s(literal -1 binary32)))
%1730 = (pow.f32 %1727 #s(literal 1 binary32))
%1731 = (/.f32 %612 %24)
%1732 = (sqrt.f32 %1731)
%1733 = (neg.f32 %1732)
%1734 = (neg.f32 %1733)
%1735 = (*.f32 %1734 %1734)
%1738 = (*.f32 (exp.f32 (-.f32 %504 %80)) %604)
%1739 = (*.f32 %627 %1628)
%1740 = (*.f32 %606 %1626)
%1741 = (*.f32 %1733 %1733)
%1742 = (*.f32 %600 %657)
%1743 = (*.f32 %1732 %1732)
%1744 = (*.f32 %612 %11)
%1745 = (*.f32 %11 %612)
%1747 = (/.f32 (*.f32 %1732 %1140) %41)
%1749 = (/.f32 (*.f32 %612 %215) %41)
%1751 = (/.f32 (*.f32 %11 %600) %601)
%1753 = (/.f32 (*.f32 %612 #s(literal -1/2 binary32)) %20)
%1755 = (/.f32 (*.f32 %612 #s(literal 1/2 binary32)) v)
%1757 = (/.f32 (*.f32 %612 #s(literal 1 binary32)) %24)
%1759 = (/.f32 (*.f32 %1140 %1732) %41)
%1761 = (/.f32 (*.f32 #s(literal -1/2 binary32) %612) %20)
%1763 = (/.f32 (*.f32 #s(literal 1/2 binary32) %612) v)
%1765 = (/.f32 (*.f32 %600 %11) %601)
%1767 = (/.f32 (/.f32 %612 %42) %42)
%1769 = (/.f32 (/.f32 %612 %41) %41)
%1771 = (/.f32 (/.f32 %612 #s(literal 2 binary32)) v)
%1773 = (/.f32 (/.f32 %600 %24) %601)
%1774 = (/.f32 %1141 %24)
%1776 = (/.f32 (*.f32 %600 %215) %1657)
%1778 = (/.f32 (*.f32 #s(literal -1/2 binary32) %600) %667)
%1780 = (/.f32 (*.f32 #s(literal 1/2 binary32) %600) %651)
%1783 = (/.f32 (*.f32 %600 #s(literal -1/2 binary32)) (*.f32 %601 %20))
%1785 = (/.f32 (*.f32 %600 #s(literal 1/2 binary32)) %649)
%1787 = (/.f32 (*.f32 %600 #s(literal 1 binary32)) %647)
%1789 = (/.f32 (neg.f32 %627) %24)
%1791 = (/.f32 (neg.f32 %606) %1668)
%1792 = (/.f32 %1389 #s(literal 2 binary32))
%1793 = (/.f32 %627 %18)
%1794 = (/.f32 %606 %689)
%1795 = (/.f32 %600 %647)
%1797 = (/.f32 #s(literal 1 binary32) (/.f32 %18 %627))
%1799 = (/.f32 #s(literal 1 binary32) (/.f32 %689 %606))
%1801 = (/.f32 #s(literal 1 binary32) (pow.f32 %1731 #s(literal -1 binary32)))
%1802 = (-.f32 %587 %504)
%1804 = (/.f32 #s(literal 1 binary32) (exp.f32 %1802))
%1806 = (/.f32 #s(literal 1 binary32) (/.f32 %24 %612))
%1808 = (/.f32 #s(literal 1 binary32) (/.f32 %647 %600))
%1809 = (-.f32 %504 %587)
%1811 = (exp.f32 (*.f32 %1809 #s(literal 2 binary32)))
%1812 = (sqrt.f32 %1811)
%1813 = (cosh.f32 %1802)
%1814 = (sinh.f32 %1809)
%1816 = (-.f32 %1813 (neg.f32 %1814))
%1818 = (-.f32 %1813 (sinh.f32 %1802))
%1819 = (*.f32 %620 %11)
%1820 = (fma.f32 %619 %11 %1819)
%1821 = (*.f32 %263 %612)
%1822 = (fma.f32 %73 %612 %1821)
%1823 = (*.f32 %612 %263)
%1824 = (fma.f32 %612 %73 %1823)
%1825 = (*.f32 %11 %620)
%1826 = (fma.f32 %11 %619 %1825)
%1827 = (pow.f32 %1733 #s(literal 2 binary32))
%1828 = (pow.f32 %1811 #s(literal 1/2 binary32))
%1829 = (pow.f32 %1731 #s(literal 1 binary32))
%1830 = (pow.f32 %1732 #s(literal 2 binary32))
%1832 = (+.f32 (*.f32 %11 %619) %1825)
%1834 = (+.f32 (*.f32 %612 %73) %1823)
%1836 = (+.f32 (*.f32 %619 %11) %1819)
%1838 = (+.f32 (*.f32 %73 %612) %1821)
%1841 = (+.f32 (/.f32 %619 %24) (/.f32 %620 %24))
%1842 = (+.f32 %1813 %1814)
%1844 = (fabs.f32 (neg.f32 %1731))
%1845 = (fabs.f32 %1731)
%1846 = (*.f32 %1809 #s(literal 1/2 binary32))
%1848 = (exp.f32 (fma.f32 %1809 #s(literal 1/2 binary32) %1846))
%1850 = (exp.f32 (+.f32 %278 %556))
%1852 = (exp.f32 (*.f32 %1846 #s(literal 2 binary32)))
%1854 = (exp.f32 (*.f32 %1809 #s(literal 1 binary32)))
%1855 = (exp.f32 %1809)
%1857 = (neg.f32 (/.f32 %612 %18))
%1859 = (neg.f32 (/.f32 %600 %689))
%1861 = (neg.f32 (/.f32 %627 %24))
%1863 = (neg.f32 (/.f32 %606 %647))
%1865 = (neg.f32 (*.f32 %1733 %1732))
%1867 = (neg.f32 (*.f32 %1732 %1733))
%1878 = (exp.f32 %698)
%1886 = (exp.f32 %912)
%1889 = (exp.f32 %898)
%1893 = (cosh.f32 %912)
%1894 = (sinh.f32 %912)
%1918 = (neg.f32 %1008)
%1922 = (/.f32 %84 v)
%1926 = (*.f32 %1008 #s(literal -1 binary32))
%1928 = (neg.f32 %1918)
%1931 = (/.f32 %1008 v)
%1939 = (neg.f32 %1931)
%1966 = (approx %1121 %1939)
%1970 = (neg.f32 %1966)
%1971 = (exp.f32 %1970)
%1973 = (exp.f32 %1966)
%1976 = (cosh.f32 %1966)
%1977 = (sinh.f32 %1966)
%1982 = (neg.f32 %1973)
%1987 = (/.f32 #s(literal 1 binary32) %1982)
cosTheta_i
cosTheta_O
v
sinTheta_i
sinTheta_O
#s(literal 1 binary32)
(*.f32 #s(literal -1 binary32) %7)
(*.f32 #s(literal 2 binary32) %11)
(*.f32 #s(literal 1 binary32) %13)
(/.f32 %15 #s(literal 2 binary32))
(/.f32 #s(literal -2 binary32) %18)
(/.f32 #s(literal -1 binary32) %21)
(/.f32 #s(literal -1 binary32) %20)
(/.f32 #s(literal 2 binary32) %24)
(/.f32 %13 #s(literal 1 binary32))
(/.f32 #s(literal 1 binary32) (/.f32 %20 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) %29)
(/.f32 #s(literal 1 binary32) %31)
(/.f32 #s(literal 1 binary32) (pow.f32 %13 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 v #s(literal 1 binary32)))
%13
(pow.f32 %13 #s(literal 1 binary32))
(pow.f32 v #s(literal -1 binary32))
(neg.f32 %7)
#s(literal 6931/10000 binary32)
#s(literal 2 binary32)
%44
%50
%51
%52
%53
%54
%55
%56
%57
%61
%62
%63
%65
%66
%67
%68
%69
%70
%71
%76
%77
%24
%78
%79
%81
%82
#s(literal 0 binary32)
(/.f32 #s(literal 1 binary32) (pow.f32 %84 #s(literal -1 binary32)))
%84
(pow.f32 %84 #s(literal 1 binary32))
(*.f32 %89 cosTheta_i)
(*.f32 %88 %91)
(*.f32 cosTheta_O %93)
%95
(*.f32 cosTheta_i cosTheta_O)
(/.f32 #s(literal 1 binary32) (pow.f32 %95 #s(literal -1 binary32)))
(pow.f32 %95 #s(literal 1 binary32))
(neg.f32 %100)
(*.f32 %88 %102)
(*.f32 %100 %7)
(*.f32 %95 %13)
(*.f32 cosTheta_O %106)
(*.f32 cosTheta_i %108)
(/.f32 (*.f32 %95 #s(literal -1 binary32)) %20)
(/.f32 (*.f32 %95 #s(literal 1 binary32)) v)
(/.f32 %100 %20)
(/.f32 %95 %31)
%116
(/.f32 #s(literal 1 binary32) (pow.f32 %116 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) %119)
(pow.f32 %116 #s(literal 1 binary32))
(neg.f32 %122)
#s(literal -1 binary32)
(*.f32 %124 #s(literal 1 binary32))
%124
(*.f32 sinTheta_i sinTheta_O)
(/.f32 (*.f32 %124 #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 %124 #s(literal 1 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %124 #s(literal -1 binary32)))
(pow.f32 %124 #s(literal 1 binary32))
(neg.f32 %133)
%137
%139
%140
%141
%143
%144
%146
%148
%149
%151
%152
%153
%155
%157
%159
%160
%162
%164
(*.f32 %165 %13)
(/.f32 (fma.f32 #s(literal 6931/10000 binary32) %20 %100) %20)
(/.f32 (-.f32 (*.f32 #s(literal 6931/10000 binary32) %119) #s(literal -1 binary32)) %119)
(/.f32 (-.f32 (*.f32 #s(literal 6931/10000 binary32) %20) %95) %20)
(/.f32 (-.f32 (*.f32 #s(literal 6931/10000 binary32) %175) #s(literal 1 binary32)) %175)
(/.f32 (neg.f32 %165) %20)
(/.f32 %165 v)
(/.f32 #s(literal 1 binary32) (/.f32 v %165))
(/.f32 #s(literal 1 binary32) (pow.f32 %184 #s(literal -1 binary32)))
(-.f32 %116 #s(literal -6931/10000 binary32))
(-.f32 #s(literal 6931/10000 binary32) %122)
(fma.f32 %88 %102 #s(literal 6931/10000 binary32))
(fma.f32 %100 %7 #s(literal 6931/10000 binary32))
(fma.f32 %95 %13 #s(literal 6931/10000 binary32))
%184
(fma.f32 cosTheta_i %108 #s(literal 6931/10000 binary32))
(pow.f32 %184 #s(literal 1 binary32))
(+.f32 (/.f32 (*.f32 #s(literal 6931/10000 binary32) v) v) %116)
(+.f32 %116 #s(literal 6931/10000 binary32))
(+.f32 #s(literal 6931/10000 binary32) (*.f32 %7 %100))
(+.f32 #s(literal 6931/10000 binary32) %201)
(+.f32 #s(literal 6931/10000 binary32) %116)
(neg.f32 (-.f32 %122 #s(literal 6931/10000 binary32)))
#s(literal 1/2 binary32)
%208
%211
%214
%217
%221
%223
%225
%226
%228
%229
%231
%232
%233
%235
%238
%239
%240
%241
%242
%243
%11
%244
%246
%247
%249
%251
%253
%255
%257
%259
%260
%262
%265
%266
%267
%268
%269
%270
%271
%272
%274
%276
%277
%280
%281
%283
%285
%287
%289
%291
%292
%293
%295
%296
%298
%300
%301
%302
%305
%307
%308
%309
%310
%312
%313
%314
%315
%317
%278
%318
%320
%321
%322
%59
%324
%326
%327
%328
%329
%330
%332
%333
%334
(*.f32 %135 %7)
(*.f32 sinTheta_O %13)
(/.f32 (*.f32 sinTheta_O #s(literal -1 binary32)) %20)
(/.f32 (*.f32 sinTheta_O #s(literal 1 binary32)) v)
(/.f32 (neg.f32 %135) %31)
(/.f32 %135 %20)
(/.f32 #s(literal 1 binary32) (/.f32 %20 %135))
(/.f32 #s(literal 1 binary32) (pow.f32 %138 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 v sinTheta_O))
%138
(pow.f32 %138 #s(literal 1 binary32))
(neg.f32 (/.f32 sinTheta_O %20))
(neg.f32 (/.f32 %135 v))
(*.f32 %91 cosTheta_O)
(*.f32 %88 cosTheta_i)
(*.f32 cosTheta_O %91)
(*.f32 cosTheta_i %88)
(/.f32 #s(literal 1 binary32) %359)
(pow.f32 %100 #s(literal 1 binary32))
%100
(*.f32 #s(literal -1 binary32) %13)
(*.f32 #s(literal 2 binary32) %290)
(*.f32 #s(literal 1 binary32) %7)
(/.f32 #s(literal -1 binary32) %31)
%7
(/.f32 #s(literal 2 binary32) %18)
(/.f32 #s(literal 1 binary32) (/.f32 %20 #s(literal 1 binary32)))
(/.f32 #s(literal 1 binary32) %21)
(/.f32 #s(literal 1 binary32) (pow.f32 %7 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 v #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) %20)
(pow.f32 %20 #s(literal -1 binary32))
(pow.f32 %7 #s(literal 1 binary32))
(neg.f32 %13)
%137
%139
%140
%141
%143
%144
%146
%148
%149
%151
%152
%153
%155
%157
%159
%160
%162
%164
%137
%139
%140
%141
%143
%144
%146
%148
%149
%151
%152
%153
%155
%157
%159
%160
%162
%164
%318
%320
%321
%322
%59
%324
%326
%327
%328
%329
%330
%332
%333
%334
(*.f32 (/.f32 #s(literal 2 binary32) %20) %290)
(*.f32 (/.f32 #s(literal 2 binary32) %47) %11)
(*.f32 %212 %11)
(*.f32 %383 %383)
(*.f32 %7 %7)
(*.f32 #s(literal -1 binary32) %386)
(*.f32 #s(literal 2 binary32) %388)
(*.f32 %13 %13)
(*.f32 #s(literal 1 binary32) %323)
(/.f32 (*.f32 #s(literal 2 binary32) %323) #s(literal 2 binary32))
(/.f32 %383 %47)
(/.f32 %15 %24)
(/.f32 #s(literal -2 binary32) (*.f32 #s(literal 2 binary32) %331))
(/.f32 %323 #s(literal 1 binary32))
(/.f32 %7 %20)
(/.f32 #s(literal -1 binary32) (*.f32 #s(literal 1 binary32) %331))
(/.f32 #s(literal -1 binary32) %331)
(/.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %59))
(/.f32 %13 %29)
(/.f32 %13 v)
(/.f32 #s(literal 1 binary32) (/.f32 %331 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 v %13))
(/.f32 #s(literal 1 binary32) (*.f32 #s(literal 1 binary32) %59))
(/.f32 #s(literal 1 binary32) (pow.f32 %323 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %59 #s(literal 1 binary32)))
%323
(pow.f32 %323 #s(literal 1 binary32))
(pow.f32 %59 #s(literal -1 binary32))
(pow.f32 v #s(literal -2 binary32))
(neg.f32 (*.f32 #s(literal -1 binary32) %323))
(neg.f32 (/.f32 #s(literal -1 binary32) %59))
(neg.f32 %386)
(*.f32 %425 %425)
(/.f32 #s(literal 1 binary32) (pow.f32 %47 #s(literal -1 binary32)))
(sqrt.f32 %59)
(pow.f32 %47 #s(literal 1 binary32))
(pow.f32 %59 #s(literal 1/2 binary32))
(fabs.f32 %31)
(fabs.f32 %319)
(fabs.f32 %20)
(fabs.f32 %47)
%47
%44
%50
%51
%52
%53
%54
%55
%56
%57
%61
%62
%63
%65
%66
%67
%68
%69
%70
%71
%76
%77
%24
%78
%79
%81
%82
(/.f32 (fma.f32 %124 #s(literal 2 binary32) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 %438 #s(literal 1 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %438 #s(literal -1 binary32)))
(-.f32 %124 #s(literal -1 binary32))
(-.f32 #s(literal 1 binary32) %136)
(fma.f32 %124 #s(literal 1 binary32) #s(literal 1 binary32))
%438
(fma.f32 sinTheta_i sinTheta_O #s(literal 1 binary32))
(pow.f32 %438 #s(literal 1 binary32))
(+.f32 %124 #s(literal 1 binary32))
(+.f32 #s(literal 1 binary32) %124)
(neg.f32 %449)
(/.f32 (-.f32 (*.f32 %451 #s(literal 2 binary32)) #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 (-.f32 (*.f32 %451 #s(literal 1 binary32)) #s(literal 1 binary32)) #s(literal 1 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %458 #s(literal -1 binary32)))
(-.f32 %451 #s(literal 1 binary32))
%458
(fma.f32 %89 cosTheta_i %449)
(fma.f32 %463 sinTheta_O %465)
(fma.f32 %88 %91 %449)
(fma.f32 %135 sinTheta_i %465)
(fma.f32 sinTheta_O %463 %465)
(fma.f32 sinTheta_i %135 %465)
(fma.f32 cosTheta_O %93 %449)
(fma.f32 cosTheta_O cosTheta_i %449)
(fma.f32 cosTheta_i cosTheta_O %449)
(pow.f32 %458 #s(literal 1 binary32))
(+.f32 %451 #s(literal -1 binary32))
(+.f32 %449 %95)
(+.f32 %136 %465)
(+.f32 %95 %449)
(neg.f32 %479)
(*.f32 %479 %7)
(*.f32 %458 %13)
(/.f32 (*.f32 %479 #s(literal -1 binary32)) v)
(/.f32 (*.f32 %458 #s(literal -1 binary32)) %20)
(/.f32 (*.f32 %458 #s(literal 1 binary32)) v)
(/.f32 (-.f32 %489 %438) v)
(/.f32 (-.f32 %492 (*.f32 %20 %438)) %331)
(/.f32 (-.f32 %496 (*.f32 v %438)) %59)
(/.f32 %500 %20)
(/.f32 %479 %20)
(/.f32 %458 %31)
%504
(/.f32 #s(literal 1 binary32) (/.f32 %20 %479))
(/.f32 #s(literal 1 binary32) (pow.f32 %504 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 v %458))
(-.f32 %511 %122)
(-.f32 %513 %13)
(-.f32 %116 %515)
(fma.f32 %88 %102 %517)
(fma.f32 %88 %102 %519)
(fma.f32 %100 %7 %517)
(fma.f32 %100 %7 %519)
(fma.f32 %95 %13 %517)
(fma.f32 %95 %13 %519)
(fma.f32 cosTheta_O %106 %517)
(fma.f32 cosTheta_O %106 %519)
(fma.f32 cosTheta_i %108 %517)
(fma.f32 cosTheta_i %108 %519)
(pow.f32 %504 #s(literal 1 binary32))
(+.f32 %511 %116)
(+.f32 %163 (/.f32 %464 %20))
(+.f32 %513 %7)
(+.f32 %116 %517)
(+.f32 %116 %519)
(neg.f32 (/.f32 %479 v))
(/.f32 #s(literal 1 binary32) (pow.f32 %479 #s(literal -1 binary32)))
%479
(-.f32 %124 %465)
(-.f32 #s(literal 1 binary32) %451)
(fma.f32 %91 cosTheta_O %438)
(fma.f32 %88 cosTheta_i %438)
(fma.f32 %124 #s(literal 1 binary32) %464)
(fma.f32 sinTheta_O sinTheta_i %464)
(fma.f32 sinTheta_i sinTheta_O %464)
(fma.f32 cosTheta_O %91 %438)
(fma.f32 cosTheta_i %88 %438)
(pow.f32 %479 #s(literal 1 binary32))
(+.f32 (neg.f32 %451) #s(literal 1 binary32))
(+.f32 %438 %100)
(+.f32 %100 %438)
(+.f32 %124 %464)
(neg.f32 %458)
#s(literal -6931/10000 binary32)
(/.f32 #s(literal 1 binary32) (pow.f32 %556 #s(literal -1 binary32)))
%556
(fma.f32 %479 %7 #s(literal 6931/10000 binary32))
(fma.f32 %458 %13 #s(literal 6931/10000 binary32))
(pow.f32 %556 #s(literal 1 binary32))
(+.f32 %504 #s(literal 6931/10000 binary32))
(neg.f32 %563)
(*.f32 %565 %565)
(*.f32 %567 %425)
(*.f32 %425 %567)
(/.f32 #s(literal 1 binary32) %215)
%41
(pow.f32 %60 #s(literal 1/4 binary32))
(pow.f32 %41 #s(literal 1 binary32))
(pow.f32 %24 #s(literal 1/2 binary32))
(fabs.f32 %42)
(fabs.f32 %41)
%44
%50
%51
%52
%53
%54
%55
%56
%57
%61
%62
%63
%65
%66
%67
%68
%69
%70
%71
%76
%77
%24
%78
%79
%81
%82
%80
%576
%577
%579
%580
%581
%582
%583
%584
%585
%586
%293
%295
%296
%298
%300
%301
%302
%305
%307
%308
%309
%310
%312
%313
%314
%315
%317
%278
%208
%211
%214
%217
%221
%223
%225
%226
%228
%229
%231
%232
%233
%235
%238
%239
%240
%241
%242
%243
%11
%244
%246
%247
%249
%251
%253
%255
%257
%259
%260
%262
%265
%266
%267
%268
%269
%270
%271
%272
%274
%276
%277
%280
%281
%283
%285
%287
%289
%291
%292
(/.f32 #s(literal 1 binary32) (pow.f32 %587 #s(literal -1 binary32)))
%587
(-.f32 #s(literal -6931/10000 binary32) %278)
(fma.f32 #s(literal 2 binary32) %299 #s(literal -6931/10000 binary32))
(fma.f32 #s(literal 1 binary32) %80 #s(literal -6931/10000 binary32))
(pow.f32 %587 #s(literal 1 binary32))
(+.f32 %80 #s(literal -6931/10000 binary32))
(+.f32 #s(literal -6931/10000 binary32) (neg.f32 %278))
(+.f32 #s(literal -6931/10000 binary32) %80)
(neg.f32 %598)
(*.f32 %600 %602)
(*.f32 %600 %604)
(/.f32 %606 %607)
(/.f32 %600 %601)
(/.f32 #s(literal 1 binary32) (/.f32 %601 %600))
(/.f32 #s(literal 1 binary32) (pow.f32 %612 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (exp.f32 %563))
(sqrt.f32 (*.f32 %612 %612))
(-.f32 %619 (neg.f32 %620))
(-.f32 %619 (sinh.f32 %563))
(pow.f32 %612 #s(literal 1 binary32))
(+.f32 %619 %620)
(fabs.f32 %627)
(fabs.f32 %612)
(exp.f32 (*.f32 %556 #s(literal 1 binary32)))
%612
(/.f32 #s(literal 1 binary32) (pow.f32 %601 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) %604)
(sqrt.f32 (*.f32 %601 %601))
(-.f32 %637 (neg.f32 %638))
(-.f32 %637 (sinh.f32 #s(literal 6931/10000 binary32)))
(pow.f32 %601 #s(literal 1 binary32))
(+.f32 %637 %638)
(fabs.f32 %607)
(fabs.f32 %601)
%601
%647
%648
%650
%652
%654
%655
%656
%658
%660
%662
%664
%666
%668
%672
%674
%676
%677
%679
%680
%681
%683
%685
%686
%687
%688
%690
%691
%693
%694
%647
%648
%650
%652
%654
%655
%656
%658
%660
%662
%664
%666
%668
%672
%674
%676
%677
%679
%680
%681
%683
%685
%686
%687
%688
%690
%691
%693
%694
%80
%576
%577
%579
%580
%581
%582
%583
%584
%585
%586
(/.f32 #s(literal 1 binary32) (pow.f32 %698 #s(literal -1 binary32)))
%698
(pow.f32 %698 #s(literal 1 binary32))
(*.f32 %702 %13)
(/.f32 (fma.f32 %80 %20 #s(literal -1 binary32)) %20)
(/.f32 (neg.f32 %702) %20)
(/.f32 %702 v)
(/.f32 #s(literal 1 binary32) (/.f32 v %702))
(/.f32 #s(literal 1 binary32) (pow.f32 %711 #s(literal -1 binary32)))
%711
(-.f32 %13 %278)
(fma.f32 #s(literal -1 binary32) %7 %80)
(fma.f32 #s(literal 2 binary32) %299 %13)
(fma.f32 #s(literal 2 binary32) %11 %80)
(fma.f32 #s(literal 1 binary32) %80 %13)
(fma.f32 #s(literal 1 binary32) %13 %80)
(pow.f32 %711 #s(literal 1 binary32))
(+.f32 (/.f32 (*.f32 %80 v) v) %13)
(+.f32 %80 %13)
(+.f32 %13 %80)
(neg.f32 %726)
(/.f32 (-.f32 (*.f32 %728 %20) #s(literal -1 binary32)) %20)
(/.f32 (-.f32 (*.f32 %728 v) #s(literal 1 binary32)) v)
(/.f32 (-.f32 (*.f32 %184 v) %702) v)
(/.f32 (-.f32 %165 %702) v)
(/.f32 (-.f32 (*.f32 %165 v) (*.f32 v %702)) %59)
(/.f32 #s(literal 1 binary32) (pow.f32 %746 #s(literal -1 binary32)))
(-.f32 %728 %13)
(-.f32 %184 %711)
(-.f32 #s(literal 6931/10000 binary32) (neg.f32 %745))
(fma.f32 %165 %13 %726)
(pow.f32 %746 #s(literal 1 binary32))
(+.f32 %728 %7)
(+.f32 %184 %726)
%746
(neg.f32 (-.f32 %13 %728))
(neg.f32 %759)
%764
%766
%771
%773
%774
%777
%779
%780
%782
%784
%786
%788
%792
%794
%795
%796
%797
%798
%800
%801
%804
%806
%808
%761
(*.f32 %215 #s(literal 1 binary32))
(*.f32 #s(literal -1 binary32) %216)
(*.f32 #s(literal 2 binary32) %210)
(*.f32 #s(literal 1 binary32) %215)
(/.f32 (*.f32 %215 #s(literal 2 binary32)) #s(literal 2 binary32))
(/.f32 (*.f32 #s(literal 2 binary32) %215) #s(literal 2 binary32))
(/.f32 #s(literal -2 binary32) (*.f32 #s(literal 2 binary32) %42))
(/.f32 #s(literal -2 binary32) (*.f32 %42 #s(literal 2 binary32)))
(/.f32 %215 #s(literal 1 binary32))
(/.f32 #s(literal -1 binary32) (*.f32 #s(literal 1 binary32) %42))
(/.f32 #s(literal -1 binary32) (*.f32 %42 #s(literal 1 binary32)))
(/.f32 #s(literal -1 binary32) %42)
(/.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %41))
(/.f32 #s(literal 2 binary32) (*.f32 %41 #s(literal 2 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %42 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (*.f32 #s(literal 1 binary32) %41))
(/.f32 #s(literal 1 binary32) (*.f32 %41 #s(literal 1 binary32)))
(/.f32 #s(literal 1 binary32) %43)
(/.f32 #s(literal 1 binary32) (pow.f32 %215 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %41 #s(literal 1 binary32)))
(/.f32 #s(literal 1 binary32) %41)
%215
(pow.f32 %215 #s(literal 1 binary32))
(pow.f32 %41 #s(literal -1 binary32))
(pow.f32 %24 #s(literal -1/2 binary32))
(fabs.f32 %216)
(fabs.f32 %215)
(neg.f32 %234)
(neg.f32 %216)
(*.f32 (exp.f32 %124) (exp.f32 %464))
(*.f32 %853 %855)
(*.f32 %853 %857)
(/.f32 (neg.f32 %853) %860)
(/.f32 %853 %854)
(/.f32 #s(literal 1 binary32) (/.f32 %854 %853))
(/.f32 #s(literal 1 binary32) (pow.f32 %865 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) %868)
(sqrt.f32 (*.f32 %865 %865))
(-.f32 %872 (neg.f32 %873))
(-.f32 %872 (sinh.f32 %458))
(pow.f32 %865 #s(literal 1 binary32))
(+.f32 %872 %873)
(fabs.f32 (neg.f32 %865))
(fabs.f32 %865)
(exp.f32 %500)
%865
(/.f32 %884 (exp.f32 %515))
(/.f32 #s(literal 1 binary32) (pow.f32 %600 #s(literal -1 binary32)))
(pow.f32 %868 %13)
(pow.f32 %600 #s(literal 1 binary32))
(pow.f32 %865 %7)
(+.f32 (cosh.f32 %504) (sinh.f32 %504))
(fabs.f32 %600)
(exp.f32 (*.f32 %504 #s(literal 1 binary32)))
%600
(/.f32 #s(literal 1 binary32) (pow.f32 %898 #s(literal -1 binary32)))
(-.f32 %95 %902)
%898
(fma.f32 %89 cosTheta_i %901)
(fma.f32 %88 %91 %901)
(fma.f32 cosTheta_O %93 %901)
(fma.f32 cosTheta_O cosTheta_i %901)
(fma.f32 cosTheta_i cosTheta_O %901)
(pow.f32 %898 #s(literal 1 binary32))
(+.f32 %901 %95)
(+.f32 %95 %901)
(neg.f32 %912)
(*.f32 %912 %7)
(*.f32 %898 %13)
(/.f32 (*.f32 %912 #s(literal -1 binary32)) v)
(/.f32 (*.f32 %898 #s(literal -1 binary32)) %20)
(/.f32 (*.f32 %898 #s(literal 1 binary32)) v)
(/.f32 (-.f32 %489 %698) v)
(/.f32 (-.f32 %492 (*.f32 %20 %698)) %331)
(/.f32 (-.f32 %496 (*.f32 v %698)) %59)
(/.f32 %930 %20)
(/.f32 %912 %20)
(/.f32 %898 %31)
%934
(/.f32 #s(literal 1 binary32) (/.f32 %20 %912))
(/.f32 #s(literal 1 binary32) (pow.f32 %934 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 v %898))
(-.f32 %941 %122)
(-.f32 %116 %943)
(fma.f32 %88 %102 %945)
(fma.f32 %88 %102 %947)
(fma.f32 %100 %7 %945)
(fma.f32 %100 %7 %947)
(fma.f32 %95 %13 %945)
(fma.f32 %95 %13 %947)
(fma.f32 cosTheta_O %106 %945)
(fma.f32 cosTheta_O %106 %947)
(fma.f32 cosTheta_i %108 %945)
(fma.f32 cosTheta_i %108 %947)
(pow.f32 %934 #s(literal 1 binary32))
(+.f32 %941 %116)
(+.f32 %116 %945)
(+.f32 %116 %947)
(neg.f32 (*.f32 %898 %7))
(neg.f32 (/.f32 %898 %20))
(neg.f32 (/.f32 %912 v))
(neg.f32 (*.f32 %912 %13))
(neg.f32 (-.f32 %943 %116))
(/.f32 #s(literal 1 binary32) (pow.f32 %971 #s(literal -1 binary32)))
%971
(fma.f32 %912 %7 #s(literal 6931/10000 binary32))
(fma.f32 %898 %13 #s(literal 6931/10000 binary32))
(pow.f32 %971 #s(literal 1 binary32))
(+.f32 %934 #s(literal 6931/10000 binary32))
(neg.f32 %978)
(*.f32 %980 %602)
(*.f32 %980 %604)
(/.f32 %983 %607)
(/.f32 %980 %601)
(/.f32 #s(literal 1 binary32) (/.f32 %601 %980))
(/.f32 #s(literal 1 binary32) (pow.f32 %988 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (exp.f32 %978))
(sqrt.f32 (*.f32 %988 %988))
(-.f32 %995 (neg.f32 %996))
(-.f32 %995 (sinh.f32 %978))
(pow.f32 %988 #s(literal 1 binary32))
(+.f32 %995 %996)
(fabs.f32 %1003)
(fabs.f32 %988)
(exp.f32 (*.f32 %971 #s(literal 1 binary32)))
%988
%1008
(*.f32 cosTheta_O %84)
(/.f32 #s(literal 1 binary32) (pow.f32 %1008 #s(literal -1 binary32)))
(pow.f32 %1008 #s(literal 1 binary32))
(*.f32 %1013 %1013)
(/.f32 (sqrt.f32 %767) (sqrt.f32 %769))
(/.f32 #s(literal 1 binary32) (pow.f32 %762 #s(literal -1 binary32)))
%762
(pow.f32 %762 #s(literal 1 binary32))
(pow.f32 %761 #s(literal 1/2 binary32))
(+.f32 (cosh.f32 %802) (sinh.f32 %802))
(fabs.f32 %763)
(fabs.f32 %762)
(exp.f32 (*.f32 %802 #s(literal 1 binary32)))
(exp.f32 %802)
%764
%766
%771
%773
%774
%777
%779
%780
%782
%784
%786
%788
%792
%794
%795
%796
%797
%798
%800
%801
%804
%806
%808
%761
(/.f32 #s(literal 1 binary32) (pow.f32 %1039 #s(literal -1 binary32)))
%1039
(pow.f32 %1039 #s(literal 1 binary32))
%1044
%1045
%1046
%1047
%1048
%1049
%1051
%1052
%1053
%1055
%1056
%1058
%1060
%1062
%1064
%1066
%1068
%1070
%1071
%1073
%1074
%1076
%1077
%1078
%122
%1080
%1081
%1082
%1084
%1085
%1087
%1089
%1091
%1093
%1094
%1095
%1096
%1098
%1100
%1102
%1103
%1104
%208
%211
%214
%217
%221
%223
%225
%226
%228
%229
%231
%232
%233
%235
%238
%239
%240
%241
%242
%243
%11
%244
%246
%247
%249
%251
%253
%255
%257
%259
%260
%262
%265
%266
%267
%268
%269
%270
%271
%272
%274
%276
%277
%280
%281
%283
%285
%287
%289
%291
%292
(*.f32 %20 (/.f32 #s(literal 1 binary32) %95))
(*.f32 v %359)
(/.f32 (/.f32 v %88) cosTheta_i)
(/.f32 (/.f32 v cosTheta_O) %91)
(/.f32 %64 %100)
(/.f32 %31 %100)
(/.f32 %20 %95)
(/.f32 #s(literal 1 binary32) %122)
%175
(pow.f32 %175 #s(literal 1 binary32))
(neg.f32 %119)
%1044
%1045
%1046
%1047
%1048
%1049
%1051
%1052
%1053
%1055
%1056
%1058
%1060
%1062
%1064
%1066
%1068
%1070
%1071
%1073
%1074
%1076
%1077
%1078
%122
%1080
%1081
%1082
%1084
%1085
%1087
%1089
%1091
%1093
%1094
%1095
%1096
%1098
%1100
%1102
%1103
%1104
%1124
%1122
%1125
%1128
%1126
%1129
%1131
%1132
(*.f32 v #s(literal 1/2 binary32))
(/.f32 #s(literal 1 binary32) (pow.f32 %1132 #s(literal -1 binary32)))
(pow.f32 %1132 #s(literal 1 binary32))
%1142
%1147
%1149
%1151
%1153
%1155
%1157
%1161
%1163
%1164
%1165
%1167
%1168
%1158
%1169
%1171
%1172
%1173
%1175
%1177
%1180
%1183
%1185
%1187
%1188
%1189
%1191
%1193
%1195
%1197
%1199
%1202
%1204
%1206
%1208
%1210
%1211
%1212
%1213
%1214
%1215
%1217
%1219
%1220
%1222
%1225
%1227
%1231
%1232
%1233
%1234
%1235
%1237
%1239
%1240
%1242
%1244
%1245
%1247
%1248
%1250
%1252
%1254
%1255
%1257
%1159
%1258
%1259
%1260
%1261
%1262
%1263
%1265
%1266
(*.f32 %1228 %1228)
(/.f32 #s(literal 1 binary32) (pow.f32 %218 #s(literal -1 binary32)))
%218
(pow.f32 #s(literal 1/4 binary32) #s(literal 1/4 binary32))
(pow.f32 %218 #s(literal 1 binary32))
(pow.f32 #s(literal 1/2 binary32) #s(literal 1/2 binary32))
(fabs.f32 %219)
(fabs.f32 %218)
%1276
%1277
%1278
%1143
%1279
%1280
%1282
%1284
%1286
%1287
%1289
%1291
%1292
%1293
%1294
%1295
%1297
%1299
%1301
%1303
%1305
%1307
%1308
%1309
%1311
%1313
(*.f32 %1224 %1224)
(*.f32 %425 %1140)
(*.f32 %1140 %425)
(/.f32 #s(literal 1 binary32) (pow.f32 %1144 #s(literal -1 binary32)))
%1144
(pow.f32 %1200 #s(literal 1/4 binary32))
(pow.f32 %1144 #s(literal 1 binary32))
(pow.f32 %1143 #s(literal 1/2 binary32))
(fabs.f32 %1145)
(fabs.f32 %1144)
#s(literal 1/2 binary32)
%1276
%1277
%1278
%1143
%1279
%1280
%1282
%1284
%1286
%1287
%1289
%1291
%1292
%1293
%1294
%1295
%1297
%1299
%1301
%1303
%1305
%1307
%1308
%1309
%1311
%1313
%1142
%1147
%1149
%1151
%1153
%1155
%1157
%1161
%1163
%1164
%1165
%1167
%1168
%1158
%1169
%1171
%1172
%1173
%1175
%1177
%1180
%1183
%1185
%1187
%1188
%1189
%1191
%1193
%1195
%1197
%1199
%1202
%1204
%1206
%1208
%1210
%1211
%1212
%1213
%1214
%1215
%1217
%1219
%1220
%1222
(*.f32 (/.f32 #s(literal 2 binary32) %1138) (/.f32 #s(literal 1/2 binary32) %1140))
(*.f32 %1327 (/.f32 #s(literal 1 binary32) %1140))
(*.f32 #s(literal -1 binary32) %1179)
(*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1/2 binary32) %1159))
(*.f32 #s(literal 1 binary32) %1182)
(/.f32 %1327 %1140)
(/.f32 %1179 #s(literal -1 binary32))
(/.f32 %1182 #s(literal 1 binary32))
(/.f32 #s(literal -1 binary32) %1160)
(/.f32 #s(literal 2 binary32) %1241)
%1182
(pow.f32 %1159 #s(literal -1 binary32))
(pow.f32 %1182 #s(literal 1 binary32))
(pow.f32 %1158 #s(literal -1/2 binary32))
(neg.f32 %1179)
%1225
%1227
%1231
%1232
%1233
%1234
%1235
%1237
%1239
%1240
%1242
%1244
%1245
%1247
%1248
%1250
%1252
%1254
%1255
%1257
%1159
%1258
%1259
%1260
%1261
%1262
%1263
%1265
%1266
%1345
%1348
%1351
%1354
%1357
%1359
%1361
%1363
%1365
%1367
%1369
%1371
%1373
%1375
%1378
%1379
%1382
%1383
%1384
%1386
%1388
%1391
%1393
%1394
%1396
%1398
%1399
%1401
%1402
%1404
%1406
%1407
%1408
%1410
%1412
%1413
%1415
%1417
%1419
%1421
%1423
%1424
%1425
%1426
%1428
%1430
%1431
%1432
%1433
%1435
%1437
%1439
%1441
%1442
%1444
%1446
%1345
%1348
%1351
%1354
%1357
%1359
%1361
%1363
%1365
%1367
%1369
%1371
%1373
%1375
%1378
%1379
%1382
%1383
%1384
%1386
%1388
%1391
%1393
%1394
%1396
%1398
%1399
%1401
%1402
%1404
%1406
%1407
%1408
%1410
%1412
%1413
%1415
%1417
%1419
%1421
%1423
%1424
%1425
%1426
%1428
%1430
%1431
%1432
%1433
%1435
%1437
%1439
%1441
%1442
%1444
%1446
(/.f32 #s(literal 1 binary32) (pow.f32 %1130 #s(literal -1 binary32)))
(pow.f32 %1130 #s(literal 1 binary32))
%1130
%1452
%1453
%1455
%1457
%1460
%1461
%1462
%1464
%1467
%1468
%1469
%1471
%1472
%1474
%1475
%1477
%1482
%1485
%1486
%1488
%1490
%1491
%1492
%1494
%1496
%1498
%1499
%1500
%1501
%1503
%1505
%1507
%1509
%1511
%1450
%1512
%1513
%1514
%1516
%1517
%1518
%1520
%1521
%1522
%1523
%1524
%1525
%1527
%1528
%1529
%1530
%1531
%1532
%1533
%1535
%1537
%1539
%1541
%1458
%1542
(/.f32 #s(literal 1 binary32) (pow.f32 %1543 #s(literal -1 binary32)))
(pow.f32 %1543 #s(literal 1 binary32))
%1543
%1550
%1552
%1554
%1556
%1558
%1559
%1561
%1562
%1564
%1566
%1568
%1570
%1572
%1574
%1575
%1577
%1582
%1583
%1585
%1587
%1588
%1589
%1591
%1593
%1594
%1596
%1598
%1599
%1601
%1603
%1605
%1607
%1553
%1609
%1611
%1612
%1613
%1614
%1616
%1617
%1618
%1619
%1620
%1621
%1623
%1547
%1550
%1552
%1554
%1556
%1558
%1559
%1561
%1562
%1564
%1566
%1568
%1570
%1572
%1574
%1575
%1577
%1582
%1583
%1585
%1587
%1588
%1589
%1591
%1593
%1594
%1596
%1598
%1599
%1601
%1603
%1605
%1607
%1553
%1609
%1611
%1612
%1613
%1625
%1627
%1629
%1630
%1631
%1632
%1634
%1636
%1638
%1640
%1642
%1644
%1646
%1648
%1650
%1652
%1655
%1658
%1660
%1662
%1664
%1666
%1669
%1670
%1671
%1672
%1673
%1674
%1676
%1678
%1680
%1682
%1684
%1686
%1688
%1690
%1692
%1694
%1695
%1697
%1699
%1701
%1703
%1706
%1710
%1711
%1713
%1715
%1717
%1718
%1720
%1722
%1724
%1726
%1452
%1453
%1455
%1457
%1460
%1461
%1462
%1464
%1467
%1468
%1469
%1471
%1472
%1474
%1475
%1477
%1482
%1485
%1486
%1488
%1490
%1491
%1492
%1494
%1496
%1498
%1499
%1500
%1501
%1503
%1505
%1507
%1509
%1511
%1450
%1512
%1729
%1727
%1730
%1729
%1727
%1730
%1735
%1738
%1739
%1740
%1741
%1742
%1743
%1744
%1745
%1747
%1749
%1751
%1753
%1755
%1757
%1759
%1761
%1763
%1765
%1767
%1769
%1771
%1773
%1774
%1776
%1778
%1780
%1783
%1785
%1787
%1789
%1791
%1792
%1793
%1794
%1795
%1731
%1797
%1799
%1801
%1804
%1806
%1808
%1812
%1816
%1818
%1820
%1822
%1824
%1826
%1827
%1828
%1829
%1830
%1832
%1834
%1836
%1838
%1841
%1842
%1844
%1845
%1848
%1850
%1852
%1854
%1855
%1857
%1859
%1861
%1863
%1865
%1867
%1142
%1147
%1149
%1151
%1153
%1155
%1157
%1161
%1163
%1164
%1165
%1167
%1168
%1158
%1169
%1171
%1172
%1173
%1175
%1177
%1180
%1183
%1185
%1187
%1188
%1189
%1191
%1193
%1195
%1197
%1199
%1202
%1204
%1206
%1208
%1210
%1211
%1212
%1213
%1214
%1215
%1217
%1219
%1220
%1222
%1345
%1348
%1351
%1354
%1357
%1359
%1361
%1363
%1365
%1367
%1369
%1371
%1373
%1375
%1378
%1379
%1382
%1383
%1384
%1386
%1388
%1391
%1393
%1394
%1396
%1398
%1399
%1401
%1402
%1404
%1406
%1407
%1408
%1410
%1412
%1413
%1415
%1417
%1419
%1421
%1423
%1424
%1425
%1426
%1428
%1430
%1431
%1432
%1433
%1435
%1437
%1439
%1441
%1442
%1444
%1446
%1729
%1727
%1730
%1128
%1126
%1129
%1131
%1513
%1514
%1516
%1517
%1518
%1520
%1521
%1522
%1523
%1524
%1525
%1527
%1528
%1529
%1530
%1531
%1532
%1533
%1535
%1537
%1539
%1541
%1458
%1542
%1452
%1453
%1455
%1457
%1460
%1461
%1462
%1464
%1467
%1468
%1469
%1471
%1472
%1474
%1475
%1477
%1482
%1485
%1486
%1488
%1490
%1491
%1492
%1494
%1496
%1498
%1499
%1500
%1501
%1503
%1505
%1507
%1509
%1511
%1450
%1512
%1128
%1126
%1129
%1131
%1513
%1514
%1516
%1517
%1518
%1520
%1521
%1522
%1523
%1524
%1525
%1527
%1528
%1529
%1530
%1531
%1532
%1533
%1535
%1537
%1539
%1541
%1458
%1542
%1452
%1453
%1455
%1457
%1460
%1461
%1462
%1464
%1467
%1468
%1469
%1471
%1472
%1474
%1475
%1477
%1482
%1485
%1486
%1488
%1490
%1491
%1492
%1494
%1496
%1498
%1499
%1500
%1501
%1503
%1505
%1507
%1509
%1511
%1450
%1512
%1625
%1627
%1629
%1630
%1631
%1632
%1634
%1636
%1638
%1640
%1642
%1644
%1646
%1648
%1650
%1652
%1655
%1658
%1660
%1662
%1664
%1666
%1669
%1670
%1671
%1672
%1673
%1674
%1676
%1678
%1680
%1682
%1684
%1686
%1688
%1690
%1692
%1694
%1695
%1697
%1699
%1701
%1703
%1706
%1710
%1711
%1713
%1715
%1717
%1718
%1720
%1722
%1724
%1726
%1625
%1627
%1629
%1630
%1631
%1632
%1634
%1636
%1638
%1640
%1642
%1644
%1646
%1648
%1650
%1652
%1655
%1658
%1660
%1662
%1664
%1666
%1669
%1670
%1671
%1672
%1673
%1674
%1676
%1678
%1680
%1682
%1684
%1686
%1688
%1690
%1692
%1694
%1695
%1697
%1699
%1701
%1703
%1706
%1710
%1711
%1713
%1715
%1717
%1718
%1720
%1722
%1724
%1726
%1124
%1122
%1125
%1614
%1616
%1617
%1618
%1619
%1620
%1621
%1623
%1547
%1550
%1552
%1554
%1556
%1558
%1559
%1561
%1562
%1564
%1566
%1568
%1570
%1572
%1574
%1575
%1577
%1582
%1583
%1585
%1587
%1588
%1589
%1591
%1593
%1594
%1596
%1598
%1599
%1601
%1603
%1605
%1607
%1553
%1609
%1611
%1612
%1613
(/.f32 #s(literal 1 binary32) (pow.f32 %912 #s(literal -1 binary32)))
%912
(fma.f32 %91 cosTheta_O %902)
(fma.f32 %88 cosTheta_i %902)
(fma.f32 cosTheta_O %91 %902)
(fma.f32 cosTheta_i %88 %902)
(pow.f32 %912 #s(literal 1 binary32))
(+.f32 %698 %100)
(+.f32 %100 %902)
(neg.f32 %898)
(*.f32 %1878 %855)
(*.f32 %1878 %857)
(/.f32 (neg.f32 %1878) %860)
(/.f32 %1878 %854)
(/.f32 #s(literal 1 binary32) (/.f32 %854 %1878))
(/.f32 #s(literal 1 binary32) (pow.f32 %1886 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) %1889)
(sqrt.f32 (*.f32 %1886 %1886))
(-.f32 %1893 (neg.f32 %1894))
(-.f32 %1893 (sinh.f32 %898))
(pow.f32 %1886 #s(literal 1 binary32))
(+.f32 %1893 %1894)
(fabs.f32 (neg.f32 %1886))
(fabs.f32 %1886)
(exp.f32 %930)
%1886
(/.f32 %884 (exp.f32 %943))
(/.f32 #s(literal 1 binary32) (pow.f32 %980 #s(literal -1 binary32)))
(pow.f32 %1889 %13)
(pow.f32 %980 #s(literal 1 binary32))
(pow.f32 %1886 %7)
(+.f32 (cosh.f32 %934) (sinh.f32 %934))
(fabs.f32 %980)
(exp.f32 (*.f32 %934 #s(literal 1 binary32)))
%980
%1625
%1627
%1629
%1630
%1631
%1632
%1634
%1636
%1638
%1640
%1642
%1644
%1646
%1648
%1650
%1652
%1655
%1658
%1660
%1662
%1664
%1666
%1669
%1670
%1671
%1672
%1673
%1674
%1676
%1678
%1680
%1682
%1684
%1686
%1688
%1690
%1692
%1694
%1695
%1697
%1699
%1701
%1703
%1706
%1710
%1711
%1713
%1715
%1717
%1718
%1720
%1722
%1724
%1726
%1225
%1227
%1231
%1232
%1233
%1234
%1235
%1237
%1239
%1240
%1242
%1244
%1245
%1247
%1248
%1250
%1252
%1254
%1255
%1257
%1159
%1258
%1259
%1260
%1261
%1262
%1263
%1265
%1266
%1142
%1147
%1149
%1151
%1153
%1155
%1157
%1161
%1163
%1164
%1165
%1167
%1168
%1158
%1169
%1171
%1172
%1173
%1175
%1177
%1180
%1183
%1185
%1187
%1188
%1189
%1191
%1193
%1195
%1197
%1199
%1202
%1204
%1206
%1208
%1210
%1211
%1212
%1213
%1214
%1215
%1217
%1219
%1220
%1222
%1345
%1348
%1351
%1354
%1357
%1359
%1361
%1363
%1365
%1367
%1369
%1371
%1373
%1375
%1378
%1379
%1382
%1383
%1384
%1386
%1388
%1391
%1393
%1394
%1396
%1398
%1399
%1401
%1402
%1404
%1406
%1407
%1408
%1410
%1412
%1413
%1415
%1417
%1419
%1421
%1423
%1424
%1425
%1426
%1428
%1430
%1431
%1432
%1433
%1435
%1437
%1439
%1441
%1442
%1444
%1446
%1729
%1727
%1730
%208
%211
%214
%217
%221
%223
%225
%226
%228
%229
%231
%232
%233
%235
%238
%239
%240
%241
%242
%243
%11
%244
%246
%247
%249
%251
%253
%255
%257
%259
%260
%262
%265
%266
%267
%268
%269
%270
%271
%272
%274
%276
%277
%280
%281
%283
%285
%287
%289
%291
%292
%1735
%1738
%1739
%1740
%1741
%1742
%1743
%1744
%1745
%1747
%1749
%1751
%1753
%1755
%1757
%1759
%1761
%1763
%1765
%1767
%1769
%1771
%1773
%1774
%1776
%1778
%1780
%1783
%1785
%1787
%1789
%1791
%1792
%1793
%1794
%1795
%1731
%1797
%1799
%1801
%1804
%1806
%1808
%1812
%1816
%1818
%1820
%1822
%1824
%1826
%1827
%1828
%1829
%1830
%1832
%1834
%1836
%1838
%1841
%1842
%1844
%1845
%1848
%1850
%1852
%1854
%1855
%1857
%1859
%1861
%1863
%1865
%1867
(*.f32 %1918 %7)
(*.f32 %1008 %13)
(*.f32 %84 %108)
(*.f32 cosTheta_O %1922)
(/.f32 (*.f32 %1008 #s(literal 1 binary32)) v)
(/.f32 %1926 %20)
(/.f32 %1928 %31)
(/.f32 %1918 %20)
%1931
(/.f32 #s(literal 1 binary32) (/.f32 %20 %1918))
(/.f32 #s(literal 1 binary32) (pow.f32 %1931 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 v %1008))
(pow.f32 %1931 #s(literal 1 binary32))
(neg.f32 %1939)
(*.f32 %88 %1922)
(*.f32 %1918 %13)
(*.f32 %1931 #s(literal -1 binary32))
(*.f32 %1008 %7)
(*.f32 #s(literal -1 binary32) %1931)
(*.f32 cosTheta_O (neg.f32 %1922))
(/.f32 (*.f32 #s(literal -1 binary32) %1918) %20)
(/.f32 (*.f32 %1918 #s(literal -1 binary32)) %20)
(/.f32 %1926 v)
(/.f32 %1928 %20)
(/.f32 %1918 %31)
(/.f32 %1918 v)
(/.f32 %1008 %20)
(/.f32 #s(literal 1 binary32) (/.f32 v %1918))
(/.f32 #s(literal 1 binary32) (pow.f32 %1939 #s(literal -1 binary32)))
(pow.f32 %1939 #s(literal 1 binary32))
(neg.f32 (*.f32 #s(literal 1 binary32) %1931))
(neg.f32 (*.f32 %1931 #s(literal 1 binary32)))
%1939
(/.f32 #s(literal 1 binary32) (pow.f32 %1966 #s(literal -1 binary32)))
%1966
(pow.f32 %1966 #s(literal 1 binary32))
(/.f32 #s(literal 1 binary32) %1971)
(sqrt.f32 (*.f32 %1973 %1973))
(-.f32 %1976 (neg.f32 %1977))
(pow.f32 %1973 #s(literal 1 binary32))
(+.f32 %1976 %1977)
(fabs.f32 %1982)
(fabs.f32 %1973)
(exp.f32 (*.f32 %1966 #s(literal 1 binary32)))
%1973
(*.f32 #s(literal -1 binary32) %1987)
(*.f32 #s(literal 2 binary32) (/.f32 #s(literal 1/2 binary32) %1973))
(*.f32 #s(literal 1 binary32) %1971)
(/.f32 (*.f32 #s(literal 2 binary32) %1971) #s(literal 2 binary32))
(/.f32 #s(literal -2 binary32) (*.f32 #s(literal 2 binary32) %1982))
(/.f32 %1971 #s(literal 1 binary32))
(/.f32 #s(literal -1 binary32) (*.f32 #s(literal 1 binary32) %1982))
(/.f32 #s(literal -1 binary32) %1982)
(/.f32 #s(literal 2 binary32) (*.f32 #s(literal 2 binary32) %1973))
(/.f32 #s(literal 1 binary32) (/.f32 %1982 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (*.f32 #s(literal 1 binary32) %1973))
(/.f32 #s(literal 1 binary32) (neg.f32 %1982))
(/.f32 #s(literal 1 binary32) (pow.f32 %1971 #s(literal -1 binary32)))
(/.f32 #s(literal 1 binary32) (/.f32 %1973 #s(literal 1 binary32)))
(/.f32 #s(literal 1 binary32) %1973)
(-.f32 %1976 %1977)
(pow.f32 %1971 #s(literal 1 binary32))
(pow.f32 %1973 #s(literal -1 binary32))
(+.f32 %1976 (sinh.f32 %1970))
(fabs.f32 %1971)
(exp.f32 (+.f32 #s(literal 0 binary32) %1970))
(exp.f32 (-.f32 #s(literal 0 binary32) %1966))
(exp.f32 (*.f32 %1970 #s(literal 1 binary32)))
(exp.f32 (*.f32 %1966 #s(literal -1 binary32)))
%1971
(neg.f32 (*.f32 #s(literal -1 binary32) %1971))
(neg.f32 (/.f32 #s(literal -1 binary32) %1973))
(neg.f32 %1987)

reconstruct293.0ms (6.0%)

Counts
3 230 → 1 229
Compiler

Compiled 3 230 to 5 147 computations (-59.3% saved)

eval87.0ms (1.8%)

Compiler

Compiled 1 457 to 6 086 computations (-317.7% saved)

prune25.0ms (0.5%)

Pruning

31 alts after pruning (18 fresh and 13 done)

PrunedKeptTotal
New1 439181 457
Fresh000
Picked13619
Done178
Total1 453311 484
Accuracy
99.9%
Counts
1 484 → 31
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(/.f32 (pow.f32 (exp.f32 (-.f32 (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32)) (*.f32 cosTheta_O cosTheta_i))) (/.f32 #s(literal -1 binary32) v)) (*.f32 (exp.f32 #s(literal -6931/10000 binary32)) (exp.f32 (log.f32 (+.f32 v v)))))
99.5%
(/.f32 (pow.f32 (exp.f32 (-.f32 (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32)) (*.f32 cosTheta_O cosTheta_i))) (/.f32 #s(literal -1 binary32) v)) (*.f32 #s(literal 2097251/4194304 binary32) (+.f32 v v)))
99.5%
(/.f32 (pow.f32 (exp.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (fma.f32 sinTheta_O sinTheta_i #s(literal 1 binary32)))) (/.f32 #s(literal 1 binary32) v)) (*.f32 (exp.f32 #s(literal -6931/10000 binary32)) (+.f32 v v)))
99.6%
(/.f32 (exp.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v)) (exp.f32 (+.f32 #s(literal -6931/10000 binary32) (log.f32 (+.f32 v v)))))
99.6%
(/.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (+.f32 v v))
99.5%
%186 = (*.f32 (sqrt.f32 #s(literal 2 binary32)) (sqrt.f32 (fabs.f32 v)))
(/.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (*.f32 %186 %186))
4.8%
(/.f32 (exp.f32 (approx (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000) #s(literal 6931/10000 binary32))) (+.f32 v v))
12.9%
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) (exp.f32 (neg.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v)) (/.f32 (*.f32 sinTheta_O sinTheta_i) v))))))
99.5%
(/.f32 #s(literal 1 binary32) (exp.f32 (-.f32 (log.f32 (+.f32 v v)) (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32)))))
14.6%
(/.f32 #s(literal 1 binary32) (exp.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v)) (neg.f32 (/.f32 (*.f32 cosTheta_O cosTheta_i) v)))))
12.9%
(/.f32 #s(literal 1 binary32) (exp.f32 (approx (- (log (+ v v)) (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000)) (*.f32 sinTheta_i (/.f32 sinTheta_O v)))))
99.6%
(*.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (/.f32 #s(literal 1/2 binary32) v))
99.6%
%168 = (/.f32 #s(literal 1 binary32) (sqrt.f32 (+.f32 v v)))
(*.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (*.f32 %168 %168))
99.6%
%164 = (sqrt.f32 (/.f32 #s(literal 1/2 binary32) v))
(*.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (*.f32 %164 %164))
99.6%
%56 = (sqrt.f32 #s(literal 1/2 binary32))
(*.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (*.f32 %56 (/.f32 %56 v)))
99.6%
(*.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (exp.f32 (log.f32 (/.f32 #s(literal 1/2 binary32) v))))
4.8%
(*.f32 (exp.f32 (approx (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000) #s(literal 6931/10000 binary32))) (/.f32 #s(literal 1/2 binary32) v))
99.6%
(exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) (+.f32 #s(literal -6931/10000 binary32) (log.f32 (+.f32 v v)))))
96.5%
(exp.f32 (neg.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v)) (/.f32 (-.f32 (+.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_i)) (*.f32 cosTheta_O cosTheta_i)) v))))
12.9%
(exp.f32 (neg.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v)) (/.f32 (*.f32 sinTheta_O sinTheta_i) v))))
14.6%
(exp.f32 (neg.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v)) (/.f32 #s(literal -1 binary32) (/.f32 v (*.f32 cosTheta_O cosTheta_i))))))
12.9%
(exp.f32 (neg.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v)) (*.f32 (*.f32 sinTheta_O sinTheta_i) (/.f32 #s(literal 1 binary32) v)))))
12.9%
(exp.f32 (neg.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v)) (*.f32 sinTheta_i (/.f32 sinTheta_O v)))))
6.5%
(exp.f32 (neg.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v)) (neg.f32 (/.f32 (*.f32 (approx cosTheta_i #s(literal 0 binary32)) cosTheta_O) v)))))
14.6%
(exp.f32 (neg.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v)) (neg.f32 (/.f32 (*.f32 cosTheta_O cosTheta_i) v)))))
4.8%
(approx (/ (pow (exp (- (+ (* sinTheta_O sinTheta_i) 1) (* cosTheta_O cosTheta_i))) (/ -1 v)) (* (exp -6931/10000) (+ v v))) (/.f32 #s(literal 1/2 binary32) (*.f32 v (exp.f32 #s(literal -6931/10000 binary32)))))
60.5%
%36 = (exp (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000))
%38 = (sqrt (/ %36 (+ v v)))
(approx (* %38 %38) (/.f32 (pow.f32 (/.f32 #s(literal 1 binary32) (approx (pow (sqrt (* (* 1/2 v) %36)) -1) (/.f32 #s(literal 1 binary32) (sqrt.f32 (*.f32 #s(literal 1/2 binary32) (*.f32 v (exp.f32 (-.f32 (+.f32 #s(literal 6931/10000 binary32) (/.f32 (*.f32 cosTheta_O cosTheta_i) v)) (/.f32 #s(literal 1 binary32) v))))))))) #s(literal 2 binary32)) (pow.f32 v #s(literal 2 binary32))))
60.4%
%36 = (exp (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000))
%38 = (sqrt (/ %36 (+ v v)))
%56 = (sqrt.f32 #s(literal 1/2 binary32))
%60 = (sqrt (* (fabs v) %36))
(approx (* %38 %38) (/.f32 (pow.f32 (sqrt.f32 (*.f32 (*.f32 %56 %56) (approx (* %60 %60) (pow.f32 (sqrt.f32 (*.f32 (exp.f32 (-.f32 (+.f32 #s(literal 6931/10000 binary32) (/.f32 (*.f32 cosTheta_O cosTheta_i) v)) (/.f32 #s(literal 1 binary32) v))) (fabs.f32 v))) #s(literal 2 binary32))))) #s(literal 2 binary32)) (pow.f32 v #s(literal 2 binary32))))
60.4%
%7 = (+ (* sinTheta_O sinTheta_i) 1)
%38 = (sqrt (/ (exp (- (/ (- (* cosTheta_O cosTheta_i) %7) v) -6931/10000)) (+ v v)))
(approx (* %38 %38) (/.f32 (*.f32 (*.f32 #s(literal 1/2 binary32) v) (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx %7 #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32)))) (*.f32 v v)))
53.0%
%7 = (+ (* sinTheta_O sinTheta_i) 1)
%38 = (sqrt (/ (exp (- (/ (- (* cosTheta_O cosTheta_i) %7) v) -6931/10000)) (+ v v)))
(approx (* %38 %38) (*.f32 (*.f32 (*.f32 #s(literal 1/2 binary32) v) (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx %7 #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32)))) (/.f32 #s(literal 1 binary32) (*.f32 v v))))
99.4%
%2 = (* cosTheta_O cosTheta_i)
%17 = (sqrt (exp (- (/ (- %2 (+ (* sinTheta_O sinTheta_i) 1)) v) (- (log (+ v v)) 6931/10000))))
(approx (* %17 %17) (pow.f32 (sqrt.f32 (exp.f32 (-.f32 (approx (+ 6931/10000 (/ %2 v)) #s(literal 6931/10000 binary32)) (+.f32 (log.f32 (*.f32 #s(literal 2 binary32) v)) (/.f32 #s(literal 1 binary32) v))))) #s(literal 2 binary32)))
Compiler

Compiled 31 to 141 computations (-354.8% saved)

regimes416.0ms (8.6%)

Accuracy

Total 0.3b remaining (0.2%)

Threshold costs 0.3b (0.2%)

0.1b96.4%
0.1b96.4%
0.1b96.7%
0.0b-0.0%
0.0b0.0%

Counts
1 → 1
4 → 1
6 → 2
12 → 2
13 → 2
20 → 1
21 → 1
22 → 1
24 → 1
Calls
Call 1
Inputs
(/.f32 (exp.f32 (approx (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000) #s(literal 6931/10000 binary32))) (+.f32 v v))
Outputs
(/.f32 (exp.f32 (approx (- (/ (- (* cosTheta_O cosTheta_i) (+ (* sinTheta_O sinTheta_i) 1)) v) -6931/10000) #s(literal 6931/10000 binary32))) (+.f32 v v))
Call 2
Inputs
%2 = (* cosTheta_O cosTheta_i)
%5 = (* sinTheta_O sinTheta_i)
%7 = (+ %5 1)
%15 = (exp.f32 (approx (- (/ (- %2 %7) v) -6931/10000) #s(literal 6931/10000 binary32)))
(/.f32 %15 (+.f32 v v))
(approx (/ (pow (exp (- %7 %2)) (/ -1 v)) (* (exp -6931/10000) (+ v v))) (/.f32 #s(literal 1/2 binary32) (*.f32 v (exp.f32 #s(literal -6931/10000 binary32)))))
(*.f32 %15 (/.f32 #s(literal 1/2 binary32) v))
(exp.f32 (neg.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- %2 (- %5 -1)) v)) (*.f32 sinTheta_i (/.f32 sinTheta_O v)))))
Outputs
(exp.f32 (neg.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v)) (*.f32 sinTheta_i (/.f32 sinTheta_O v)))))
Call 3
Inputs
%2 = (* cosTheta_O cosTheta_i)
%5 = (* sinTheta_O sinTheta_i)
%7 = (+ %5 1)
%15 = (exp.f32 (approx (- (/ (- %2 %7) v) -6931/10000) #s(literal 6931/10000 binary32)))
%43 = (- (- (log (* 2 v)) 6931/10000) (/ (- %2 (- %5 -1)) v))
(/.f32 %15 (+.f32 v v))
(approx (/ (pow (exp (- %7 %2)) (/ -1 v)) (* (exp -6931/10000) (+ v v))) (/.f32 #s(literal 1/2 binary32) (*.f32 v (exp.f32 #s(literal -6931/10000 binary32)))))
(*.f32 %15 (/.f32 #s(literal 1/2 binary32) v))
(exp.f32 (neg.f32 (approx %43 (*.f32 sinTheta_i (/.f32 sinTheta_O v)))))
(exp.f32 (neg.f32 (approx %43 (/.f32 (*.f32 sinTheta_O sinTheta_i) v))))
(exp.f32 (neg.f32 (approx %43 (neg.f32 (/.f32 (*.f32 cosTheta_O cosTheta_i) v)))))
Outputs
%16 = (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v))
(exp.f32 (neg.f32 (approx %16 (neg.f32 (/.f32 (*.f32 cosTheta_O cosTheta_i) v)))))
(exp.f32 (neg.f32 (approx %16 (*.f32 sinTheta_i (/.f32 sinTheta_O v)))))
Call 4
Inputs
%2 = (* cosTheta_O cosTheta_i)
%5 = (* sinTheta_O sinTheta_i)
%7 = (+ %5 1)
%12 = (- (/ (- %2 %7) v) -6931/10000)
%14 = (approx %12 #s(literal 6931/10000 binary32))
%15 = (exp.f32 %14)
%16 = (+.f32 v v)
%24 = (+ v v)
%43 = (- (- (log (* 2 v)) 6931/10000) (/ (- %2 (- %5 -1)) v))
%45 = (*.f32 sinTheta_i (/.f32 sinTheta_O v))
%49 = (*.f32 sinTheta_O sinTheta_i)
%50 = (/.f32 %49 v)
%54 = (*.f32 cosTheta_O cosTheta_i)
%70 = (- (log %24) %12)
(/.f32 %15 %16)
(approx (/ (pow (exp (- %7 %2)) (/ -1 v)) (* (exp -6931/10000) %24)) (/.f32 #s(literal 1/2 binary32) (*.f32 v (exp.f32 #s(literal -6931/10000 binary32)))))
(*.f32 %15 (/.f32 #s(literal 1/2 binary32) v))
(exp.f32 (neg.f32 (approx %43 %45)))
(exp.f32 (neg.f32 (approx %43 %50)))
(exp.f32 (neg.f32 (approx %43 (neg.f32 (/.f32 %54 v)))))
(exp.f32 (neg.f32 (approx %43 (neg.f32 (/.f32 (*.f32 (approx cosTheta_i #s(literal 0 binary32)) cosTheta_O) v)))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %45)))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %50)))
(exp.f32 (neg.f32 (approx %43 (*.f32 %49 (/.f32 #s(literal 1 binary32) v)))))
(exp.f32 (-.f32 %14 (log.f32 %16)))
(exp.f32 (neg.f32 (approx %43 (/.f32 #s(literal -1 binary32) (/.f32 v %54)))))
Outputs
%16 = (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v))
(exp.f32 (neg.f32 (approx %16 (/.f32 #s(literal -1 binary32) (/.f32 v (*.f32 cosTheta_O cosTheta_i))))))
(exp.f32 (neg.f32 (approx %16 (*.f32 sinTheta_i (/.f32 sinTheta_O v)))))
Call 5
Inputs
%2 = (* cosTheta_O cosTheta_i)
%5 = (* sinTheta_O sinTheta_i)
%7 = (+ %5 1)
%12 = (- (/ (- %2 %7) v) -6931/10000)
%14 = (approx %12 #s(literal 6931/10000 binary32))
%15 = (exp.f32 %14)
%16 = (+.f32 v v)
%24 = (+ v v)
%43 = (- (- (log (* 2 v)) 6931/10000) (/ (- %2 (- %5 -1)) v))
%45 = (*.f32 sinTheta_i (/.f32 sinTheta_O v))
%49 = (*.f32 sinTheta_O sinTheta_i)
%50 = (/.f32 %49 v)
%54 = (*.f32 cosTheta_O cosTheta_i)
%57 = (approx %43 (neg.f32 (/.f32 %54 v)))
%70 = (- (log %24) %12)
(/.f32 %15 %16)
(approx (/ (pow (exp (- %7 %2)) (/ -1 v)) (* (exp -6931/10000) %24)) (/.f32 #s(literal 1/2 binary32) (*.f32 v (exp.f32 #s(literal -6931/10000 binary32)))))
(*.f32 %15 (/.f32 #s(literal 1/2 binary32) v))
(exp.f32 (neg.f32 (approx %43 %45)))
(exp.f32 (neg.f32 (approx %43 %50)))
(exp.f32 (neg.f32 %57))
(exp.f32 (neg.f32 (approx %43 (neg.f32 (/.f32 (*.f32 (approx cosTheta_i #s(literal 0 binary32)) cosTheta_O) v)))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %45)))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %50)))
(exp.f32 (neg.f32 (approx %43 (*.f32 %49 (/.f32 #s(literal 1 binary32) v)))))
(exp.f32 (-.f32 %14 (log.f32 %16)))
(exp.f32 (neg.f32 (approx %43 (/.f32 #s(literal -1 binary32) (/.f32 v %54)))))
(/.f32 #s(literal 1 binary32) (exp.f32 %57))
Outputs
%17 = (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %17 (neg.f32 (/.f32 (*.f32 cosTheta_O cosTheta_i) v)))))
(exp.f32 (neg.f32 (approx %17 (*.f32 sinTheta_i (/.f32 sinTheta_O v)))))
Call 6
Inputs
%2 = (* cosTheta_O cosTheta_i)
%5 = (* sinTheta_O sinTheta_i)
%7 = (+ %5 1)
%12 = (- (/ (- %2 %7) v) -6931/10000)
%14 = (approx %12 #s(literal 6931/10000 binary32))
%15 = (exp.f32 %14)
%16 = (+.f32 v v)
%24 = (+ v v)
%43 = (- (- (log (* 2 v)) 6931/10000) (/ (- %2 (- %5 -1)) v))
%45 = (*.f32 sinTheta_i (/.f32 sinTheta_O v))
%49 = (*.f32 sinTheta_O sinTheta_i)
%50 = (/.f32 %49 v)
%53 = (exp.f32 (neg.f32 (approx %43 %50)))
%54 = (*.f32 cosTheta_O cosTheta_i)
%55 = (/.f32 %54 v)
%57 = (approx %43 (neg.f32 %55))
%61 = (approx cosTheta_i #s(literal 0 binary32))
%70 = (- (log %24) %12)
%78 = (*.f32 %49 (/.f32 #s(literal 1 binary32) v))
(/.f32 %15 %16)
(approx (/ (pow (exp (- %7 %2)) (/ -1 v)) (* (exp -6931/10000) %24)) (/.f32 #s(literal 1/2 binary32) (*.f32 v (exp.f32 #s(literal -6931/10000 binary32)))))
(*.f32 %15 (/.f32 #s(literal 1/2 binary32) v))
(exp.f32 (neg.f32 (approx %43 %45)))
%53
(exp.f32 (neg.f32 %57))
(exp.f32 (neg.f32 (approx %43 (neg.f32 (/.f32 (*.f32 %61 cosTheta_O) v)))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %45)))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %50)))
(exp.f32 (neg.f32 (approx %43 %78)))
(exp.f32 (-.f32 %14 (log.f32 %16)))
(exp.f32 (neg.f32 (approx %43 (/.f32 #s(literal -1 binary32) (/.f32 v %54)))))
(/.f32 #s(literal 1 binary32) (exp.f32 %57))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 (*.f32 #s(literal -1 binary32) %55))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 (*.f32 #s(literal -1 binary32) (/.f32 (*.f32 cosTheta_O %61) v)))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %78)))
(exp.f32 (+.f32 (approx (+ (- (- (/ (* cosTheta_i cosTheta_O) v) (/ (* sinTheta_i sinTheta_O) v)) (/ 1 v)) 6931/10000) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v)))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 (/.f32 #s(literal 1 binary32) (/.f32 v (neg.f32 %54))))))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) %53))
(exp.f32 (neg.f32 (approx %43 (/.f32 (-.f32 (+.f32 #s(literal 1 binary32) %49) %54) v))))
Outputs
(exp.f32 (neg.f32 (approx (- (- (log (* 2 v)) 6931/10000) (/ (- (* cosTheta_O cosTheta_i) (- (* sinTheta_O sinTheta_i) -1)) v)) (/.f32 (-.f32 (+.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_i)) (*.f32 cosTheta_O cosTheta_i)) v))))
Call 7
Inputs
%2 = (* cosTheta_O cosTheta_i)
%5 = (* sinTheta_O sinTheta_i)
%7 = (+ %5 1)
%12 = (- (/ (- %2 %7) v) -6931/10000)
%14 = (approx %12 #s(literal 6931/10000 binary32))
%15 = (exp.f32 %14)
%16 = (+.f32 v v)
%24 = (+ v v)
%43 = (- (- (log (* 2 v)) 6931/10000) (/ (- %2 (- %5 -1)) v))
%45 = (*.f32 sinTheta_i (/.f32 sinTheta_O v))
%49 = (*.f32 sinTheta_O sinTheta_i)
%50 = (/.f32 %49 v)
%53 = (exp.f32 (neg.f32 (approx %43 %50)))
%54 = (*.f32 cosTheta_O cosTheta_i)
%55 = (/.f32 %54 v)
%57 = (approx %43 (neg.f32 %55))
%61 = (approx cosTheta_i #s(literal 0 binary32))
%70 = (- (log %24) %12)
%78 = (*.f32 %49 (/.f32 #s(literal 1 binary32) v))
(/.f32 %15 %16)
(approx (/ (pow (exp (- %7 %2)) (/ -1 v)) (* (exp -6931/10000) %24)) (/.f32 #s(literal 1/2 binary32) (*.f32 v (exp.f32 #s(literal -6931/10000 binary32)))))
(*.f32 %15 (/.f32 #s(literal 1/2 binary32) v))
(exp.f32 (neg.f32 (approx %43 %45)))
%53
(exp.f32 (neg.f32 %57))
(exp.f32 (neg.f32 (approx %43 (neg.f32 (/.f32 (*.f32 %61 cosTheta_O) v)))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %45)))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %50)))
(exp.f32 (neg.f32 (approx %43 %78)))
(exp.f32 (-.f32 %14 (log.f32 %16)))
(exp.f32 (neg.f32 (approx %43 (/.f32 #s(literal -1 binary32) (/.f32 v %54)))))
(/.f32 #s(literal 1 binary32) (exp.f32 %57))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 (*.f32 #s(literal -1 binary32) %55))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 (*.f32 #s(literal -1 binary32) (/.f32 (*.f32 cosTheta_O %61) v)))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %78)))
(exp.f32 (+.f32 (approx (+ (- (- (/ (* cosTheta_i cosTheta_O) v) (/ (* sinTheta_i sinTheta_O) v)) (/ 1 v)) 6931/10000) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v)))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 (/.f32 #s(literal 1 binary32) (/.f32 v (neg.f32 %54))))))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) %53))
(exp.f32 (neg.f32 (approx %43 (/.f32 (-.f32 (+.f32 #s(literal 1 binary32) %49) %54) v))))
(/.f32 (exp.f32 (-.f32 (/.f32 (-.f32 %54 (approx %7 #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) %16)
Outputs
(/.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (+.f32 v v))
Call 8
Inputs
%2 = (* cosTheta_O cosTheta_i)
%5 = (* sinTheta_O sinTheta_i)
%7 = (+ %5 1)
%12 = (- (/ (- %2 %7) v) -6931/10000)
%14 = (approx %12 #s(literal 6931/10000 binary32))
%15 = (exp.f32 %14)
%16 = (+.f32 v v)
%24 = (+ v v)
%33 = (/.f32 #s(literal 1/2 binary32) v)
%43 = (- (- (log (* 2 v)) 6931/10000) (/ (- %2 (- %5 -1)) v))
%45 = (*.f32 sinTheta_i (/.f32 sinTheta_O v))
%49 = (*.f32 sinTheta_O sinTheta_i)
%50 = (/.f32 %49 v)
%53 = (exp.f32 (neg.f32 (approx %43 %50)))
%54 = (*.f32 cosTheta_O cosTheta_i)
%55 = (/.f32 %54 v)
%57 = (approx %43 (neg.f32 %55))
%61 = (approx cosTheta_i #s(literal 0 binary32))
%70 = (- (log %24) %12)
%78 = (*.f32 %49 (/.f32 #s(literal 1 binary32) v))
%139 = (exp.f32 (-.f32 (/.f32 (-.f32 %54 (approx %7 #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32)))
(/.f32 %15 %16)
(approx (/ (pow (exp (- %7 %2)) (/ -1 v)) (* (exp -6931/10000) %24)) (/.f32 #s(literal 1/2 binary32) (*.f32 v (exp.f32 #s(literal -6931/10000 binary32)))))
(*.f32 %15 %33)
(exp.f32 (neg.f32 (approx %43 %45)))
%53
(exp.f32 (neg.f32 %57))
(exp.f32 (neg.f32 (approx %43 (neg.f32 (/.f32 (*.f32 %61 cosTheta_O) v)))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %45)))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %50)))
(exp.f32 (neg.f32 (approx %43 %78)))
(exp.f32 (-.f32 %14 (log.f32 %16)))
(exp.f32 (neg.f32 (approx %43 (/.f32 #s(literal -1 binary32) (/.f32 v %54)))))
(/.f32 #s(literal 1 binary32) (exp.f32 %57))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 (*.f32 #s(literal -1 binary32) %55))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 (*.f32 #s(literal -1 binary32) (/.f32 (*.f32 cosTheta_O %61) v)))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %78)))
(exp.f32 (+.f32 (approx (+ (- (- (/ (* cosTheta_i cosTheta_O) v) (/ (* sinTheta_i sinTheta_O) v)) (/ 1 v)) 6931/10000) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v)))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 (/.f32 #s(literal 1 binary32) (/.f32 v (neg.f32 %54))))))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) %53))
(exp.f32 (neg.f32 (approx %43 (/.f32 (-.f32 (+.f32 #s(literal 1 binary32) %49) %54) v))))
(/.f32 %139 %16)
(*.f32 %139 %33)
Outputs
(*.f32 (exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) #s(literal -6931/10000 binary32))) (/.f32 #s(literal 1/2 binary32) v))
Call 9
Inputs
%2 = (* cosTheta_O cosTheta_i)
%5 = (* sinTheta_O sinTheta_i)
%7 = (+ %5 1)
%12 = (- (/ (- %2 %7) v) -6931/10000)
%14 = (approx %12 #s(literal 6931/10000 binary32))
%15 = (exp.f32 %14)
%16 = (+.f32 v v)
%24 = (+ v v)
%33 = (/.f32 #s(literal 1/2 binary32) v)
%36 = (* 2 v)
%43 = (- (- (log %36) 6931/10000) (/ (- %2 (- %5 -1)) v))
%45 = (*.f32 sinTheta_i (/.f32 sinTheta_O v))
%49 = (*.f32 sinTheta_O sinTheta_i)
%50 = (/.f32 %49 v)
%53 = (exp.f32 (neg.f32 (approx %43 %50)))
%54 = (*.f32 cosTheta_O cosTheta_i)
%55 = (/.f32 %54 v)
%57 = (approx %43 (neg.f32 %55))
%61 = (approx cosTheta_i #s(literal 0 binary32))
%70 = (- (log %24) %12)
%77 = (/.f32 #s(literal 1 binary32) v)
%78 = (*.f32 %49 %77)
%82 = (log.f32 %16)
%113 = (+ (- (- (/ (* cosTheta_i cosTheta_O) v) (/ (* sinTheta_i sinTheta_O) v)) (/ 1 v)) 6931/10000)
%137 = (/.f32 (-.f32 %54 (approx %7 #s(literal 1 binary32))) v)
%139 = (exp.f32 (-.f32 %137 #s(literal -6931/10000 binary32)))
(/.f32 %15 %16)
(approx (/ (pow (exp (- %7 %2)) (/ -1 v)) (* (exp -6931/10000) %24)) (/.f32 #s(literal 1/2 binary32) (*.f32 v (exp.f32 #s(literal -6931/10000 binary32)))))
(*.f32 %15 %33)
(exp.f32 (neg.f32 (approx %43 %45)))
%53
(exp.f32 (neg.f32 %57))
(exp.f32 (neg.f32 (approx %43 (neg.f32 (/.f32 (*.f32 %61 cosTheta_O) v)))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %45)))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %50)))
(exp.f32 (neg.f32 (approx %43 %78)))
(exp.f32 (-.f32 %14 %82))
(exp.f32 (neg.f32 (approx %43 (/.f32 #s(literal -1 binary32) (/.f32 v %54)))))
(/.f32 #s(literal 1 binary32) (exp.f32 %57))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 (*.f32 #s(literal -1 binary32) %55))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 (*.f32 #s(literal -1 binary32) (/.f32 (*.f32 cosTheta_O %61) v)))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 %78)))
(exp.f32 (+.f32 (approx %113 #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v)))))
(/.f32 #s(literal 1 binary32) (exp.f32 (approx %70 (/.f32 #s(literal 1 binary32) (/.f32 v (neg.f32 %54))))))
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) %53))
(exp.f32 (neg.f32 (approx %43 (/.f32 (-.f32 (+.f32 #s(literal 1 binary32) %49) %54) v))))
(/.f32 %139 %16)
(*.f32 %139 %33)
(exp.f32 (approx (+ %113 (log (/ 1 %36))) (+.f32 #s(literal 6931/10000 binary32) (+.f32 (log.f32 #s(literal 1/2 binary32)) (log.f32 %77)))))
(exp.f32 (-.f32 %137 (+.f32 #s(literal -6931/10000 binary32) %82)))
Outputs
(exp.f32 (-.f32 (/.f32 (-.f32 (*.f32 cosTheta_O cosTheta_i) (approx (+ (* sinTheta_O sinTheta_i) 1) #s(literal 1 binary32))) v) (+.f32 #s(literal -6931/10000 binary32) (log.f32 (+.f32 v v)))))
Calls

9 calls:

101.0ms
cosTheta_i
65.0ms
cosTheta_O
64.0ms
sinTheta_i
62.0ms
sinTheta_O
57.0ms
(+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))))
Results
AccuracySegmentsBranch
4.8%1
v
4.8%1
sinTheta_O
4.8%1
sinTheta_i
4.8%1
cosTheta_O
4.8%1
cosTheta_i
4.8%1
(exp.f32 (+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v)))))
4.8%1
(+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))))
4.8%1
(*.f32 cosTheta_i cosTheta_O)
4.8%1
(*.f32 sinTheta_i sinTheta_O)
Compiler

Compiled 73 to 270 computations (-269.9% saved)

bsearch0.0ms (0.0%)

bsearch0.0ms (0.0%)

bsearch0.0ms (0.0%)

bsearch0.0ms (0.0%)

bsearch1.0ms (0.0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.373425882486932e-38
9.943075804238601e-38
Compiler

Compiled 1 to 3 computations (-200.0% saved)

bsearch0.0ms (0.0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.373425882486932e-38
9.943075804238601e-38
Compiler

Compiled 1 to 3 computations (-200.0% saved)

bsearch1.0ms (0.0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.373425882486932e-38
9.943075804238601e-38
Compiler

Compiled 1 to 3 computations (-200.0% saved)

bsearch0.0ms (0.0%)

bsearch0.0ms (0.0%)

derivations212.0ms (4.4%)

Stop Event
fuel
Compiler

Compiled 9 to 51 computations (-466.7% saved)

preprocess54.0ms (1.1%)

Compiler

Compiled 46 to 548 computations (-1091.3% saved)

end0.0ms (0.0%)

gc877ms (18.0%)

Allocations
AllocatedPercentPhase
987.0 MiB20.5%reconstruct
949.1 MiB19.7%sample
686.8 MiB14.3%regimes
664.2 MiB13.8%series
465.3 MiB9.7%eval
452.7 MiB9.4%rewrite
199.0 MiB4.1%analyze
178.4 MiB3.7%prune
129.3 MiB2.7%preprocess
86.7 MiB1.8%derivations
10.5 MiB0.2%bsearch
0.9 MiB0.0%start
0.0 MiB0.0%end
4 809.8 MiB100.0%total

Profiling

Loading profile data...