*** execution plan:
testing/test_inline.lrdl:15:1: case
| then a 67:f32
| then a 68:f32
| then a 69:f32
| then a 70:f32
| then a 71:f32
testing/test_inline.lrdl:16:1: case
| then a -67:f32
| then a -68:f32
| then a -69:f32
| then a -70:f32
| then a -71:f32
set a f32
testing/test_inline.lrdl:18:1: case
| a x%0:f32
| merge
| | testing/test_inline.lrdl:5:1: case
| | | ge x%0:f32 0:f32 %1:Bool
| | | cond %1:Bool
| | | sub x%0:f32 69:f32 %2:f32
| | | div %2:f32 12:f32 %3:f32
| | | powf 2:f32 %3:f32 %4:f32
| | | mul 440:f32 %4:f32 %5:f32
| | testing/test_inline.lrdl:8:1: case
| | | lt x%0:f32 0:f32 %6:Bool
| | | cond %6:Bool
| | | sub -69:f32 x%0:f32 %7:f32
| | | div %7:f32 12:f32 %8:f32
| | | powf 2:f32 %8:f32 %9:f32
| | | mul 440:f32 %9:f32 %5:f32
| then z x%0:f32 %5:f32
set z f32 f32
*** z
-71 493.883
-70 466.164
-69 440
-68 415.305
-67 391.995
67 391.995
68 415.305
69 440
70 466.164
71 493.883
extern powf f32 f32 -> f32
inline mtof f32 f32
case
ge m 0.0
then mtof m (mul 440.0 (powf 2.0 (div (sub m 69.0) 12.0)))
case
lt m 0.0
then mtof m (mul 440.0 (powf 2.0 (div (sub -69.0 m) 12.0)))
set a f32
set z f32 f32
then a :: 67.0 68.0 69.0 70.0 71.0
then a :: -67.0 -68.0 -69.0 -70.0 -71.0
case
a x
then z x (mtof x)
dump z