From f2b63298bdbff00ec3bfc133caa94d73933d4587 Mon Sep 17 00:00:00 2001 From: Will Barber Date: Wed, 5 Feb 2025 11:35:41 +0000 Subject: [PATCH] Move PairwiseAdd/Sub128 to blockwise --- g3doc/quick_reference.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/g3doc/quick_reference.md b/g3doc/quick_reference.md index 820cc36c66..4a32c9265e 100644 --- a/g3doc/quick_reference.md +++ b/g3doc/quick_reference.md @@ -560,16 +560,6 @@ from left to right, of the arguments passed to `Create{2-4}`. Return the results of a and b interleaved, such that `r[i] = a[i+1] - a[i]` for even lanes and `r[i] = b[i] - b[i-1]` for odd lanes. -* V **PairwiseAdd128**(D d, V a, V b): Add consecutive pairs of -* elements in a and b, and pack results in 128 bit blocks, such that - `r[i] = a[i] + a[i+1]` for 64 bits, followed by `b[i] + b[i+1]` for next 64 - bits and repeated. - -* V **PairwiseSub128**(D d, V a, V b): Subtract consecutive pairs - of elements in a and b, and pack results in 128 bit blocks, such that - `r[i] = a[i] + a[i+1]` for 64 bits, followed by `b[i] + b[i+1]` for next 64 - bits and repeated. - * `V`: `{i,u}{8,16,32},f{16,32}`, `VW`: `Vec>>` \ VW **SumsOf2**(V v) returns the sums of 2 consecutive lanes, promoting each sum into a lane of @@ -2222,6 +2212,16 @@ All other ops in this section are only available if `HWY_TARGET != HWY_SCALAR`: } ``` +* V **PairwiseAdd128**(D d, V a, V b): Add consecutive pairs of + elements in a and b, and pack results in 128 bit blocks, such that + `r[i] = a[i] + a[i+1]` for 64 bits, followed by `b[i] + b[i+1]` for next 64 + bits and repeated. + +* V **PairwiseSub128**(D d, V a, V b): Subtract consecutive pairs + of elements in a and b, and pack results in 128 bit blocks, such that + `r[i] = a[i] + a[i+1]` for 64 bits, followed by `b[i] + b[i+1]` for next 64 + bits and repeated. + #### Interleave Ops in this section are only available if `HWY_TARGET != HWY_SCALAR`: