def rms_w

bendtorch@1.3.0.0 · main.bend:1583

import bendtorch@1.3.0.0/main.bend as Bendtorch
import Base

1583# y[off + j] = g[j] * (x[off + j] * r), j = jj..jj + k; rx and rg hold x[off + jj] and g[jj]
1584def rms_w(k: Nat, +j: U32, +off: U32, +r: F32, y: Array<F32>, rx: Array<F32> & F32, rg: Array<F32> & F32) -> R3:
1585  match k rx rg:
1586    case 0n Tuple{x, +a} Tuple{g, +b}:
1587      R3{x, g, Array.set(F32, y, (off + j : U32), (b * (a * r : F32) : F32))}
1588    case 1n+p Tuple{x, +a} Tuple{g, +b}:
1589      rms_w(p, (j + 1 : U32), off, r, Array.set(F32, y, (off + j : U32), (b * (a * r : F32) : F32)), Array.get(F32, x, ((off + j : U32) + 1 : U32)), Array.get(F32, g, (j + 1 : U32)))

Uses (11)

Used by (1)