Rename ADD quantization parameters to ADDSUB

Prepare for re-use in quantized SUB microkernels

PiperOrigin-RevId: 395352416
diff --git a/src/qu8-vadd/gen/minmax-avx-mul16-ld64-x16.c b/src/qu8-vadd/gen/minmax-avx-mul16-ld64-x16.c
index d3d1c05..084fbde 100644
--- a/src/qu8-vadd/gen/minmax-avx-mul16-ld64-x16.c
+++ b/src/qu8-vadd/gen/minmax-avx-mul16-ld64-x16.c
@@ -11,7 +11,7 @@
 
 #include <smmintrin.h>
 
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__avx_mul16_ld64_x16(
@@ -19,7 +19,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m128i vbias = _mm_load_si128((const __m128i*) params->sse2.bias);
   const __m128i va_multiplier_lo = _mm_load_si128((const __m128i*) params->sse2.a_multiplier_lo);
diff --git a/src/qu8-vadd/gen/minmax-avx-mul16-ld64-x8.c b/src/qu8-vadd/gen/minmax-avx-mul16-ld64-x8.c
index 2f8e08e..a76b598 100644
--- a/src/qu8-vadd/gen/minmax-avx-mul16-ld64-x8.c
+++ b/src/qu8-vadd/gen/minmax-avx-mul16-ld64-x8.c
@@ -11,7 +11,7 @@
 
 #include <smmintrin.h>
 
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__avx_mul16_ld64_x8(
@@ -19,7 +19,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m128i vbias = _mm_load_si128((const __m128i*) params->sse2.bias);
   const __m128i va_multiplier_lo = _mm_load_si128((const __m128i*) params->sse2.a_multiplier_lo);
diff --git a/src/qu8-vadd/gen/minmax-avx-mul32-ld32-x16.c b/src/qu8-vadd/gen/minmax-avx-mul32-ld32-x16.c
index cc4b32a..398907e 100644
--- a/src/qu8-vadd/gen/minmax-avx-mul32-ld32-x16.c
+++ b/src/qu8-vadd/gen/minmax-avx-mul32-ld32-x16.c
@@ -12,7 +12,7 @@
 #include <immintrin.h>
 
 #include <xnnpack/intrinsics-polyfill.h>
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__avx_mul32_ld32_x16(
@@ -20,7 +20,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m128i vbias = _mm_load_si128((const __m128i*) params->sse4.bias);
   const __m128i va_multiplier = _mm_load_si128((const __m128i*) params->sse4.a_multiplier);
diff --git a/src/qu8-vadd/gen/minmax-avx-mul32-ld32-x8.c b/src/qu8-vadd/gen/minmax-avx-mul32-ld32-x8.c
index dad1691..1aac429 100644
--- a/src/qu8-vadd/gen/minmax-avx-mul32-ld32-x8.c
+++ b/src/qu8-vadd/gen/minmax-avx-mul32-ld32-x8.c
@@ -12,7 +12,7 @@
 #include <immintrin.h>
 
 #include <xnnpack/intrinsics-polyfill.h>
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__avx_mul32_ld32_x8(
@@ -20,7 +20,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m128i vbias = _mm_load_si128((const __m128i*) params->sse4.bias);
   const __m128i va_multiplier = _mm_load_si128((const __m128i*) params->sse4.a_multiplier);
diff --git a/src/qu8-vadd/gen/minmax-avx2-mul32-ld64-x16.c b/src/qu8-vadd/gen/minmax-avx2-mul32-ld64-x16.c
index 40c7550..e8e8512 100644
--- a/src/qu8-vadd/gen/minmax-avx2-mul32-ld64-x16.c
+++ b/src/qu8-vadd/gen/minmax-avx2-mul32-ld64-x16.c
@@ -12,7 +12,7 @@
 #include <immintrin.h>
 
 #include <xnnpack/intrinsics-polyfill.h>
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__avx2_mul32_ld64_x16(
@@ -20,7 +20,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m256i vbias = _mm256_load_si256((const __m256i*) params->avx2.bias);
   const __m256i va_multiplier = _mm256_load_si256((const __m256i*) params->avx2.a_multiplier);
diff --git a/src/qu8-vadd/gen/minmax-avx2-mul32-ld64-x8.c b/src/qu8-vadd/gen/minmax-avx2-mul32-ld64-x8.c
index 13ea608..5af1253 100644
--- a/src/qu8-vadd/gen/minmax-avx2-mul32-ld64-x8.c
+++ b/src/qu8-vadd/gen/minmax-avx2-mul32-ld64-x8.c
@@ -12,7 +12,7 @@
 #include <immintrin.h>
 
 #include <xnnpack/intrinsics-polyfill.h>
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__avx2_mul32_ld64_x8(
@@ -20,7 +20,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m256i vbias = _mm256_load_si256((const __m256i*) params->avx2.bias);
   const __m256i va_multiplier = _mm256_load_si256((const __m256i*) params->avx2.a_multiplier);
diff --git a/src/qu8-vadd/gen/minmax-avx512skx-mul32-ld128-x16.c b/src/qu8-vadd/gen/minmax-avx512skx-mul32-ld128-x16.c
index 0c52370..77b83b5 100644
--- a/src/qu8-vadd/gen/minmax-avx512skx-mul32-ld128-x16.c
+++ b/src/qu8-vadd/gen/minmax-avx512skx-mul32-ld128-x16.c
@@ -12,7 +12,7 @@
 #include <immintrin.h>
 
 #include <xnnpack/intrinsics-polyfill.h>
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__avx512skx_mul32_ld128_x16(
@@ -20,7 +20,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m512i vbias = _mm512_load_si512(params->avx512.bias);
   const __m512i va_multiplier = _mm512_load_si512(params->avx512.a_multiplier);
diff --git a/src/qu8-vadd/gen/minmax-avx512skx-mul32-ld128-x32.c b/src/qu8-vadd/gen/minmax-avx512skx-mul32-ld128-x32.c
index 49439a8..62485ed 100644
--- a/src/qu8-vadd/gen/minmax-avx512skx-mul32-ld128-x32.c
+++ b/src/qu8-vadd/gen/minmax-avx512skx-mul32-ld128-x32.c
@@ -12,7 +12,7 @@
 #include <immintrin.h>
 
 #include <xnnpack/intrinsics-polyfill.h>
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__avx512skx_mul32_ld128_x32(
@@ -20,7 +20,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m512i vbias = _mm512_load_si512(params->avx512.bias);
   const __m512i va_multiplier = _mm512_load_si512(params->avx512.a_multiplier);
diff --git a/src/qu8-vadd/gen/minmax-neon-ld128-x16.c b/src/qu8-vadd/gen/minmax-neon-ld128-x16.c
index 6049320..90cbacb 100644
--- a/src/qu8-vadd/gen/minmax-neon-ld128-x16.c
+++ b/src/qu8-vadd/gen/minmax-neon-ld128-x16.c
@@ -11,7 +11,7 @@
 
 #include <arm_neon.h>
 
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__neon_ld128_x16(
@@ -19,7 +19,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   #if XNN_ARCH_ARM64
     const uint8x16_t va_zero_point = vld1q_dup_u8(&params->neon.a_zero_point);
diff --git a/src/qu8-vadd/gen/minmax-neon-ld64-x16.c b/src/qu8-vadd/gen/minmax-neon-ld64-x16.c
index 51bcdd2..dd8ea97 100644
--- a/src/qu8-vadd/gen/minmax-neon-ld64-x16.c
+++ b/src/qu8-vadd/gen/minmax-neon-ld64-x16.c
@@ -11,7 +11,7 @@
 
 #include <arm_neon.h>
 
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__neon_ld64_x16(
@@ -19,7 +19,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const uint8x8_t va_zero_point = vld1_dup_u8(&params->neon.a_zero_point);
   const uint8x8_t vb_zero_point = vld1_dup_u8(&params->neon.b_zero_point);
diff --git a/src/qu8-vadd/gen/minmax-neon-ld64-x32.c b/src/qu8-vadd/gen/minmax-neon-ld64-x32.c
index f9a1997..0dc9c17 100644
--- a/src/qu8-vadd/gen/minmax-neon-ld64-x32.c
+++ b/src/qu8-vadd/gen/minmax-neon-ld64-x32.c
@@ -11,7 +11,7 @@
 
 #include <arm_neon.h>
 
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__neon_ld64_x32(
@@ -19,7 +19,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const uint8x8_t va_zero_point = vld1_dup_u8(&params->neon.a_zero_point);
   const uint8x8_t vb_zero_point = vld1_dup_u8(&params->neon.b_zero_point);
diff --git a/src/qu8-vadd/gen/minmax-neon-ld64-x8.c b/src/qu8-vadd/gen/minmax-neon-ld64-x8.c
index 6c4ccbe..6f19714 100644
--- a/src/qu8-vadd/gen/minmax-neon-ld64-x8.c
+++ b/src/qu8-vadd/gen/minmax-neon-ld64-x8.c
@@ -11,7 +11,7 @@
 
 #include <arm_neon.h>
 
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__neon_ld64_x8(
@@ -19,7 +19,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const uint8x8_t va_zero_point = vld1_dup_u8(&params->neon.a_zero_point);
   const uint8x8_t vb_zero_point = vld1_dup_u8(&params->neon.b_zero_point);
diff --git a/src/qu8-vadd/gen/minmax-scalar-x1.c b/src/qu8-vadd/gen/minmax-scalar-x1.c
index a2684e0..0bdc27d 100644
--- a/src/qu8-vadd/gen/minmax-scalar-x1.c
+++ b/src/qu8-vadd/gen/minmax-scalar-x1.c
@@ -10,7 +10,7 @@
 #include <assert.h>
 
 #include <xnnpack/math.h>
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__scalar_x1(
@@ -18,7 +18,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN
 {
   const int32_t vbias = params->scalar.bias;
   const int32_t va_multiplier = params->scalar.a_multiplier;
diff --git a/src/qu8-vadd/gen/minmax-scalar-x2.c b/src/qu8-vadd/gen/minmax-scalar-x2.c
index 00fd437..d27e573 100644
--- a/src/qu8-vadd/gen/minmax-scalar-x2.c
+++ b/src/qu8-vadd/gen/minmax-scalar-x2.c
@@ -10,7 +10,7 @@
 #include <assert.h>
 
 #include <xnnpack/math.h>
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__scalar_x2(
@@ -18,7 +18,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN
 {
   const int32_t vbias = params->scalar.bias;
   const int32_t va_multiplier = params->scalar.a_multiplier;
diff --git a/src/qu8-vadd/gen/minmax-scalar-x4.c b/src/qu8-vadd/gen/minmax-scalar-x4.c
index 5f9237e..5a0232c 100644
--- a/src/qu8-vadd/gen/minmax-scalar-x4.c
+++ b/src/qu8-vadd/gen/minmax-scalar-x4.c
@@ -10,7 +10,7 @@
 #include <assert.h>
 
 #include <xnnpack/math.h>
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__scalar_x4(
@@ -18,7 +18,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN
 {
   const int32_t vbias = params->scalar.bias;
   const int32_t va_multiplier = params->scalar.a_multiplier;
diff --git a/src/qu8-vadd/gen/minmax-sse2-mul16-ld64-x16.c b/src/qu8-vadd/gen/minmax-sse2-mul16-ld64-x16.c
index c59bc57..6496f37 100644
--- a/src/qu8-vadd/gen/minmax-sse2-mul16-ld64-x16.c
+++ b/src/qu8-vadd/gen/minmax-sse2-mul16-ld64-x16.c
@@ -11,7 +11,7 @@
 
 #include <emmintrin.h>
 
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__sse2_mul16_ld64_x16(
@@ -19,7 +19,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m128i vbias = _mm_load_si128((const __m128i*) params->sse2.bias);
   const __m128i va_multiplier_lo = _mm_load_si128((const __m128i*) params->sse2.a_multiplier_lo);
diff --git a/src/qu8-vadd/gen/minmax-sse2-mul16-ld64-x8.c b/src/qu8-vadd/gen/minmax-sse2-mul16-ld64-x8.c
index 68f1c8f..b80edde 100644
--- a/src/qu8-vadd/gen/minmax-sse2-mul16-ld64-x8.c
+++ b/src/qu8-vadd/gen/minmax-sse2-mul16-ld64-x8.c
@@ -11,7 +11,7 @@
 
 #include <emmintrin.h>
 
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__sse2_mul16_ld64_x8(
@@ -19,7 +19,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m128i vbias = _mm_load_si128((const __m128i*) params->sse2.bias);
   const __m128i va_multiplier_lo = _mm_load_si128((const __m128i*) params->sse2.a_multiplier_lo);
diff --git a/src/qu8-vadd/gen/minmax-sse41-mul16-ld64-x16.c b/src/qu8-vadd/gen/minmax-sse41-mul16-ld64-x16.c
index 260ae6c..441d3c0 100644
--- a/src/qu8-vadd/gen/minmax-sse41-mul16-ld64-x16.c
+++ b/src/qu8-vadd/gen/minmax-sse41-mul16-ld64-x16.c
@@ -11,7 +11,7 @@
 
 #include <smmintrin.h>
 
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__sse41_mul16_ld64_x16(
@@ -19,7 +19,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m128i vbias = _mm_load_si128((const __m128i*) params->sse2.bias);
   const __m128i va_multiplier_lo = _mm_load_si128((const __m128i*) params->sse2.a_multiplier_lo);
diff --git a/src/qu8-vadd/gen/minmax-sse41-mul16-ld64-x8.c b/src/qu8-vadd/gen/minmax-sse41-mul16-ld64-x8.c
index 70fcb29..19b9503 100644
--- a/src/qu8-vadd/gen/minmax-sse41-mul16-ld64-x8.c
+++ b/src/qu8-vadd/gen/minmax-sse41-mul16-ld64-x8.c
@@ -11,7 +11,7 @@
 
 #include <smmintrin.h>
 
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__sse41_mul16_ld64_x8(
@@ -19,7 +19,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m128i vbias = _mm_load_si128((const __m128i*) params->sse2.bias);
   const __m128i va_multiplier_lo = _mm_load_si128((const __m128i*) params->sse2.a_multiplier_lo);
diff --git a/src/qu8-vadd/gen/minmax-sse41-mul32-ld32-x16.c b/src/qu8-vadd/gen/minmax-sse41-mul32-ld32-x16.c
index e7809a6..98a5d85 100644
--- a/src/qu8-vadd/gen/minmax-sse41-mul32-ld32-x16.c
+++ b/src/qu8-vadd/gen/minmax-sse41-mul32-ld32-x16.c
@@ -12,7 +12,7 @@
 #include <immintrin.h>
 
 #include <xnnpack/intrinsics-polyfill.h>
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__sse41_mul32_ld32_x16(
@@ -20,7 +20,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m128i vbias = _mm_load_si128((const __m128i*) params->sse4.bias);
   const __m128i va_multiplier = _mm_load_si128((const __m128i*) params->sse4.a_multiplier);
diff --git a/src/qu8-vadd/gen/minmax-sse41-mul32-ld32-x8.c b/src/qu8-vadd/gen/minmax-sse41-mul32-ld32-x8.c
index 11fbc54..93901a4 100644
--- a/src/qu8-vadd/gen/minmax-sse41-mul32-ld32-x8.c
+++ b/src/qu8-vadd/gen/minmax-sse41-mul32-ld32-x8.c
@@ -12,7 +12,7 @@
 #include <immintrin.h>
 
 #include <xnnpack/intrinsics-polyfill.h>
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__sse41_mul32_ld32_x8(
@@ -20,7 +20,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m128i vbias = _mm_load_si128((const __m128i*) params->sse4.bias);
   const __m128i va_multiplier = _mm_load_si128((const __m128i*) params->sse4.a_multiplier);
diff --git a/src/qu8-vadd/gen/minmax-wasmsimd-x16.c b/src/qu8-vadd/gen/minmax-wasmsimd-x16.c
index 5df5c39..e37866e 100644
--- a/src/qu8-vadd/gen/minmax-wasmsimd-x16.c
+++ b/src/qu8-vadd/gen/minmax-wasmsimd-x16.c
@@ -11,7 +11,7 @@
 
 #include <wasm_simd128.h>
 
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__wasmsimd_x16(
@@ -19,7 +19,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const v128_t vbias = wasm_v128_load(params->wasmsimd.bias);
   const v128_t va_multiplier = wasm_v128_load(params->wasmsimd.a_multiplier);
diff --git a/src/qu8-vadd/gen/minmax-wasmsimd-x8.c b/src/qu8-vadd/gen/minmax-wasmsimd-x8.c
index 3fd1703..77dc684 100644
--- a/src/qu8-vadd/gen/minmax-wasmsimd-x8.c
+++ b/src/qu8-vadd/gen/minmax-wasmsimd-x8.c
@@ -11,7 +11,7 @@
 
 #include <wasm_simd128.h>
 
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__wasmsimd_x8(
@@ -19,7 +19,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const v128_t vbias = wasm_v128_load(params->wasmsimd.bias);
   const v128_t va_multiplier = wasm_v128_load(params->wasmsimd.a_multiplier);
diff --git a/src/qu8-vadd/gen/minmax-xop-mul32-ld32-x16.c b/src/qu8-vadd/gen/minmax-xop-mul32-ld32-x16.c
index 7d60fab..1a128da 100644
--- a/src/qu8-vadd/gen/minmax-xop-mul32-ld32-x16.c
+++ b/src/qu8-vadd/gen/minmax-xop-mul32-ld32-x16.c
@@ -17,7 +17,7 @@
 #endif
 
 #include <xnnpack/intrinsics-polyfill.h>
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__xop_mul32_ld32_x16(
@@ -25,7 +25,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m128i vbias = _mm_load_si128((const __m128i*) params->sse4.bias);
   const __m128i va_multiplier = _mm_load_si128((const __m128i*) params->sse4.a_multiplier);
diff --git a/src/qu8-vadd/gen/minmax-xop-mul32-ld32-x8.c b/src/qu8-vadd/gen/minmax-xop-mul32-ld32-x8.c
index 483db71..13a6999 100644
--- a/src/qu8-vadd/gen/minmax-xop-mul32-ld32-x8.c
+++ b/src/qu8-vadd/gen/minmax-xop-mul32-ld32-x8.c
@@ -17,7 +17,7 @@
 #endif
 
 #include <xnnpack/intrinsics-polyfill.h>
-#include <xnnpack/vadd.h>
+#include <xnnpack/vaddsub.h>
 
 
 void xnn_qu8_vadd_minmax_ukernel__xop_mul32_ld32_x8(
@@ -25,7 +25,7 @@
     const uint8_t* input_a,
     const uint8_t* input_b,
     uint8_t* output,
-    const union xnn_qu8_add_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
+    const union xnn_qu8_addsub_minmax_params params[restrict XNN_MIN_ELEMENTS(1)]) XNN_DISABLE_TSAN XNN_DISABLE_MSAN
 {
   const __m128i vbias = _mm_load_si128((const __m128i*) params->sse4.bias);
   const __m128i va_multiplier = _mm_load_si128((const __m128i*) params->sse4.a_multiplier);