public static void dec(Span128 <byte> src, Vec128 <byte> key, Span128 <byte> dst) { for (var block = 0; block < src.BlockCount; block++) { vstore(dec(src.LoadVec128(block), key), ref dst.Block(block)); } }
public static Span128 <ulong> add(ReadOnlySpan128 <ulong> lhs, ReadOnlySpan128 <ulong> rhs, Span128 <ulong> dst) { var blocks = dst.BlockCount; for (var block = 0; block < blocks; block++) { vstore(dinx.add(lhs.LoadVec128(block), rhs.LoadVec128(block)), ref dst.Block(block)); } return(dst); }
public static Span128 <double> fmul(ReadOnlySpan128 <double> lhs, ReadOnlySpan128 <double> rhs, Span128 <double> dst) { var blocks = dst.BlockCount; for (var block = 0; block < blocks; block++) { vstore(dfp.fmul(lhs.LoadVec128(block), rhs.LoadVec128(block)), ref dst.Block(block)); } return(dst); }
public static Span128 <T> sub <T>(ReadOnlySpan128 <T> lhs, ReadOnlySpan128 <T> rhs, Span128 <T> dst) where T : struct { var blocks = dst.BlockCount; for (var block = 0; block < blocks; block++) { store(ginx.sub(ginx.lddqu128(in lhs.Block(block)), ginx.lddqu128(in rhs.Block(block))), ref dst.Block(block)); } return(dst); }