# split @preserve "test:main" { let x: score = null; call %x run "test:sqrt", 4s; use %x; call %x run "test:sqrt", 25s; use %x; } "test:sqrt" score : score { # Setup let tmp0: score = val &0; let tmp1: score = val &0; let tmp2: score = val &0; let tmp3: score = val &0; let out: score = val &0; # Range-specific if lte &0, 13924s { sub %out, 1s; div %out, 119s; add %out, 1s; }; if and gte &0, 13925s, lte &0, 16777216s { sub %out, 13924s; div %out, 4214s; add %out, 118s; }; if gte &0, 16777217s { sub %out, 16777216s; div %out, 50436s; add %out, 4096s; }; # Run div %tmp0, %out; add %out, %tmp0; div %out, 2s; div %tmp1, %out; add %out, %tmp1; div %out, 2s; div %tmp2, %out; add %out, %tmp2; div %out, 2s; div %tmp3, %out; add %out, %tmp3; div %out, 2s; retv 0, %out; }