P = 2^(t - L) and dS = P (dP - D), into S's registers (the products have
finished: the first operation waits for them)
571def sqScoreGradient = (lambda unrestricted tail : (family SM86Program) .
572 (saFor 32 (lambda unrestricted i : Nat .
573 (let unrestricted nt = (naturalDivideUnchecked i 4) in (let unrestricted h = (naturalDivideUnchecked (naturalModuloUnchecked i 4) 2) in
574 (let unrestricted b = (naturalModuloUnchecked i 2) in
575 (let unrestricted e = (saElem (saS nt) h b) in
576 (lambda unrestricted rest : (family SM86Program) .
577 (saFfma e e saScale (sqNegL h)
578 (saEx2 e e saWaitNone rest))))))))
579 (saFor 32 (lambda unrestricted i : Nat .
580 (let unrestricted nt = (naturalDivideUnchecked i 4) in (let unrestricted h = (naturalDivideUnchecked (naturalModuloUnchecked i 4) 2) in
581 (let unrestricted b = (naturalModuloUnchecked i 2) in
582 (let unrestricted e = (saElem (saS nt) h b) in (let unrestricted g = (saElem (sqDP nt) h b) in
583 (lambda unrestricted rest : (family SM86Program) .
584 (saFadd g g (sqNegD h) saWaitNone
585 (saFmul e e g (naturalSelect (naturalIsZero i) saWait4 saWaitNone) rest)))))))))
586 tail)))The compiler supplied declaration spans and resolved links from this source snapshot. This page does not assert that this file belongs to a checked closure.