SVE/SME/Neon helpers commonly receive vd == vn (or vd == vn == vm) because the architectural instruction allows source and
destination registers to be the same. A reviewer who sees
uint8_t *d = vd; uint32_t *n = vn; with vd == vn may jump to
"in-place transformation corrupts the source". Before asserting
this, trace the order of operations within one iteration.
The lane-locked safe pattern looks like this: