Refactor AVGPOOL micro-kernel parameters

- Rename f32_avgpool_params to f32_scaleminmax_params
- Rename multiplier->scale, output_min->min, output_max->max

PiperOrigin-RevId: 305611410
diff --git a/src/average-pooling-nhwc.c b/src/average-pooling-nhwc.c
index cdd0d63..f508237 100644
--- a/src/average-pooling-nhwc.c
+++ b/src/average-pooling-nhwc.c
@@ -366,8 +366,8 @@
   average_pooling_op->output_pixel_stride = output_pixel_stride;
 
   average_pooling_op->type = xnn_operator_type_average_pooling_nhwc_f32;
-  average_pooling_op->f32_avgpool_params =
-    xnn_init_f32_avgpool_params(1.0f / (float) pooling_size, output_min, output_max);
+  average_pooling_op->f32_scaleminmax_params =
+    xnn_init_f32_scaleminmax_params(1.0f / (float) pooling_size, output_min, output_max);
   const bool tf_same_padding = (flags & XNN_FLAG_TENSORFLOW_SAME_PADDING) != 0;
   if (any_padding || tf_same_padding) {
     average_pooling_op->f32_minmax_params =
@@ -602,7 +602,7 @@
         .zero = average_pooling_op->zero_buffer,
         .input_increment = (pooling_height * step_width - multipass_adjustment) * sizeof(void*),
         .output_increment = output_width_stride - (channels << log2_output_element_size),
-        .params.f32 = average_pooling_op->f32_avgpool_params,
+        .params.f32 = average_pooling_op->f32_scaleminmax_params,
       };
       memcpy(&average_pooling_op->context.average_pooling.params, params, params_size);
       if (pooling_size <= mr) {
@@ -687,7 +687,7 @@
   const bool is_pixelwise = average_pooling_op->ukernel.type == xnn_ukernel_type_pixelwise_average_pooling;
   if (is_pixelwise) {
     const size_t input_size = input_height * input_width;
-    xnn_update_f32_avgpool_params(&average_pooling_op->f32_avgpool_params, 1.0f / (float) input_size);
+    xnn_update_f32_scaleminmax_params(&average_pooling_op->f32_scaleminmax_params, 1.0f / (float) input_size);
   }
 
   return setup_average_pooling2d(
@@ -699,10 +699,10 @@
     &xnn_params.f32.avgpool,
     &xnn_params.f32.pavgpool,
     &xnn_params.f32.gavgpool,
-    is_pixelwise ? (const void*) &average_pooling_op->f32_minmax_params : (const void*) &average_pooling_op->f32_avgpool_params,
-    is_pixelwise ? sizeof(average_pooling_op->f32_minmax_params) : sizeof(average_pooling_op->f32_avgpool_params),
-    &average_pooling_op->f32_avgpool_params,
-    sizeof(average_pooling_op->f32_avgpool_params),
+    is_pixelwise ? (const void*) &average_pooling_op->f32_minmax_params : (const void*) &average_pooling_op->f32_scaleminmax_params,
+    is_pixelwise ? sizeof(average_pooling_op->f32_minmax_params) : sizeof(average_pooling_op->f32_scaleminmax_params),
+    &average_pooling_op->f32_scaleminmax_params,
+    sizeof(average_pooling_op->f32_scaleminmax_params),
     pthreadpool_get_threads_count(threadpool),
     is_pixelwise);
 }
diff --git a/src/f32-avgpool/9p8x-neon-c4.c b/src/f32-avgpool/9p8x-neon-c4.c
index c972673..b4014a3 100644
--- a/src/f32-avgpool/9p8x-neon-c4.c
+++ b/src/f32-avgpool/9p8x-neon-c4.c
@@ -21,15 +21,15 @@
     float* output,
     size_t input_increment,
     size_t output_increment,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(output_pixels != 0);
   assert(kernel_elements > 9);
   assert(channels != 0);
 
-  const float32x4_t vmultiplier = vld1q_dup_f32(&params->scalar.multiplier);
-  const float32x4_t voutput_min = vld1q_dup_f32(&params->scalar.output_min);
-  const float32x4_t voutput_max = vld1q_dup_f32(&params->scalar.output_max);
+  const float32x4_t vscale = vld1q_dup_f32(&params->scalar.scale);
+  const float32x4_t vmin = vld1q_dup_f32(&params->scalar.min);
+  const float32x4_t vmax = vld1q_dup_f32(&params->scalar.max);
 
   do {
     {
@@ -259,9 +259,9 @@
         const float32x4_t vsum0167a = vaddq_f32(vsum01a, vsum67);
         const float32x4_t vsum = vaddq_f32(vsum2345, vsum0167a);
 
-        float32x4_t vout = vmulq_f32(vsum, vmultiplier);
-        vout = vmaxq_f32(vout, voutput_min);
-        vout = vminq_f32(vout, voutput_max);
+        float32x4_t vout = vmulq_f32(vsum, vscale);
+        vout = vmaxq_f32(vout, vmin);
+        vout = vminq_f32(vout, vmax);
 
         vst1q_f32(output, vout); output += 4;
 
@@ -287,9 +287,9 @@
         const float32x4_t vsum0167a = vaddq_f32(vsum01a, vsum67);
         const float32x4_t vsum = vaddq_f32(vsum2345, vsum0167a);
 
-        float32x4_t vout = vmulq_f32(vsum, vmultiplier);
-        vout = vmaxq_f32(vout, voutput_min);
-        vout = vminq_f32(vout, voutput_max);
+        float32x4_t vout = vmulq_f32(vsum, vscale);
+        vout = vmaxq_f32(vout, vmin);
+        vout = vminq_f32(vout, vmax);
 
         float32x2_t vout_lo = vget_low_f32(vout);
         if (c & 2) {
diff --git a/src/f32-avgpool/9p8x-psimd-c4.c b/src/f32-avgpool/9p8x-psimd-c4.c
index f2a1df8..ea403b8 100644
--- a/src/f32-avgpool/9p8x-psimd-c4.c
+++ b/src/f32-avgpool/9p8x-psimd-c4.c
@@ -21,15 +21,15 @@
     float* output,
     size_t input_increment,
     size_t output_increment,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(output_pixels != 0);
   assert(kernel_elements > 9);
   assert(channels != 0);
 
-  const psimd_f32 vmultiplier = psimd_load_splat_f32(&params->scalar.multiplier);
-  const psimd_f32 voutput_min = psimd_load_splat_f32(&params->scalar.output_min);
-  const psimd_f32 voutput_max = psimd_load_splat_f32(&params->scalar.output_max);
+  const psimd_f32 vscale = psimd_load_splat_f32(&params->scalar.scale);
+  const psimd_f32 vmin = psimd_load_splat_f32(&params->scalar.min);
+  const psimd_f32 vmax = psimd_load_splat_f32(&params->scalar.max);
 
   do {
     {
@@ -286,9 +286,9 @@
         const psimd_f32 vsum0167a = psimd_add_f32(vsum01a, vsum67);
         const psimd_f32 vsum = psimd_add_f32(vsum2345, vsum0167a);
 
-        psimd_f32 vout = psimd_mul_f32(vsum, vmultiplier);
-        vout = psimd_max_f32(vout, voutput_min);
-        vout = psimd_min_f32(vout, voutput_max);
+        psimd_f32 vout = psimd_mul_f32(vsum, vscale);
+        vout = psimd_max_f32(vout, vmin);
+        vout = psimd_min_f32(vout, vmax);
 
         psimd_store_f32(output, vout);
         output += 4;
@@ -315,9 +315,9 @@
         const psimd_f32 vsum0167a = psimd_add_f32(vsum01a, vsum67);
         const psimd_f32 vsum = psimd_add_f32(vsum2345, vsum0167a);
 
-        psimd_f32 vout = psimd_mul_f32(vsum, vmultiplier);
-        vout = psimd_max_f32(vout, voutput_min);
-        vout = psimd_min_f32(vout, voutput_max);
+        psimd_f32 vout = psimd_mul_f32(vsum, vscale);
+        vout = psimd_max_f32(vout, vmin);
+        vout = psimd_min_f32(vout, vmax);
 
         if (c & 2) {
           psimd_store2_f32(output, vout);
diff --git a/src/f32-avgpool/9p8x-scalar-c1.c b/src/f32-avgpool/9p8x-scalar-c1.c
index 9fc8e9c..ca963d0 100644
--- a/src/f32-avgpool/9p8x-scalar-c1.c
+++ b/src/f32-avgpool/9p8x-scalar-c1.c
@@ -20,15 +20,15 @@
     float* output,
     size_t input_increment,
     size_t output_increment,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(output_pixels != 0);
   assert(kernel_elements > 9);
   assert(channels != 0);
 
-  const float vmultiplier = params->scalar.multiplier;
-  const float voutput_min = params->scalar.output_min;
-  const float voutput_max = params->scalar.output_max;
+  const float vscale = params->scalar.scale;
+  const float vmin = params->scalar.min;
+  const float vmax = params->scalar.max;
 
   do {
     {
@@ -259,9 +259,9 @@
         const float vsum0167a = vsum01a + vsum67;
         const float vsum = vsum2345 + vsum0167a;
 
-        float vout = vsum * vmultiplier;
-        vout = math_max_f32(vout, voutput_min);
-        vout = math_min_f32(vout, voutput_max);
+        float vout = vsum * vscale;
+        vout = math_max_f32(vout, vmin);
+        vout = math_min_f32(vout, vmax);
 
         *output++ = vout;
       } while (--c != 0);
diff --git a/src/f32-avgpool/9p8x-sse-c4.c b/src/f32-avgpool/9p8x-sse-c4.c
index 0e18f4c..18be35d 100644
--- a/src/f32-avgpool/9p8x-sse-c4.c
+++ b/src/f32-avgpool/9p8x-sse-c4.c
@@ -21,15 +21,15 @@
     float* output,
     size_t input_increment,
     size_t output_increment,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(output_pixels != 0);
   assert(kernel_elements > 9);
   assert(channels != 0);
 
-  const __m128 vmultiplier = _mm_load_ps(params->sse2.multiplier);
-  const __m128 voutput_min = _mm_load_ps(params->sse2.output_min);
-  const __m128 voutput_max = _mm_load_ps(params->sse2.output_max);
+  const __m128 vscale = _mm_load_ps(params->sse2.scale);
+  const __m128 vmin = _mm_load_ps(params->sse2.min);
+  const __m128 vmax = _mm_load_ps(params->sse2.max);
 
   do {
     {
@@ -284,9 +284,9 @@
         const __m128 vsum0167a = _mm_add_ps(vsum01a, vsum67);
         const __m128 vsum = _mm_add_ps(vsum2345, vsum0167a);
 
-        __m128 vout = _mm_mul_ps(vsum, vmultiplier);
-        vout = _mm_max_ps(vout, voutput_min);
-        vout = _mm_min_ps(vout, voutput_max);
+        __m128 vout = _mm_mul_ps(vsum, vscale);
+        vout = _mm_max_ps(vout, vmin);
+        vout = _mm_min_ps(vout, vmax);
 
         _mm_storeu_ps(output, vout);
         output += 4;
@@ -313,9 +313,9 @@
         const __m128 vsum0167a = _mm_add_ps(vsum01a, vsum67);
         const __m128 vsum = _mm_add_ps(vsum2345, vsum0167a);
 
-        __m128 vout = _mm_mul_ps(vsum, vmultiplier);
-        vout = _mm_max_ps(vout, voutput_min);
-        vout = _mm_min_ps(vout, voutput_max);
+        __m128 vout = _mm_mul_ps(vsum, vscale);
+        vout = _mm_max_ps(vout, vmin);
+        vout = _mm_min_ps(vout, vmax);
 
         if (c & 2) {
           _mm_storel_pi((__m64*) output, vout);
diff --git a/src/f32-avgpool/9p8x-wasm-c1.c b/src/f32-avgpool/9p8x-wasm-c1.c
index e4272ce..1e26ec1 100644
--- a/src/f32-avgpool/9p8x-wasm-c1.c
+++ b/src/f32-avgpool/9p8x-wasm-c1.c
@@ -20,15 +20,15 @@
     float* output,
     size_t input_increment,
     size_t output_increment,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(output_pixels != 0);
   assert(kernel_elements > 9);
   assert(channels != 0);
 
-  const float vmultiplier = params->scalar.multiplier;
-  const float voutput_min = params->scalar.output_min;
-  const float voutput_max = params->scalar.output_max;
+  const float vscale = params->scalar.scale;
+  const float vmin = params->scalar.min;
+  const float vmax = params->scalar.max;
 
   do {
     {
@@ -259,9 +259,9 @@
         const float vsum0167a = vsum01a + vsum67;
         const float vsum = vsum2345 + vsum0167a;
 
-        float vout = vsum * vmultiplier;
-        vout = __builtin_wasm_max_f32(vout, voutput_min);
-        vout = __builtin_wasm_min_f32(vout, voutput_max);
+        float vout = vsum * vscale;
+        vout = __builtin_wasm_max_f32(vout, vmin);
+        vout = __builtin_wasm_min_f32(vout, vmax);
 
         *output++ = vout;
       } while (--c != 0);
diff --git a/src/f32-avgpool/9x-neon-c4.c b/src/f32-avgpool/9x-neon-c4.c
index 66b1dab..7e7d653 100644
--- a/src/f32-avgpool/9x-neon-c4.c
+++ b/src/f32-avgpool/9x-neon-c4.c
@@ -20,16 +20,16 @@
     float* output,
     size_t input_increment,
     size_t output_increment,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(output_pixels != 0);
   assert(kernel_elements != 0);
   assert(kernel_elements <= 9);
   assert(channels != 0);
 
-  const float32x4_t vmultiplier = vld1q_dup_f32(&params->scalar.multiplier);
-  const float32x4_t voutput_min = vld1q_dup_f32(&params->scalar.output_min);
-  const float32x4_t voutput_max = vld1q_dup_f32(&params->scalar.output_max);
+  const float32x4_t vscale = vld1q_dup_f32(&params->scalar.scale);
+  const float32x4_t vmin = vld1q_dup_f32(&params->scalar.min);
+  const float32x4_t vmax = vld1q_dup_f32(&params->scalar.max);
 
   do {
     const float* i0 = input[0];
@@ -124,9 +124,9 @@
       const float32x4_t vsum01678 = vaddq_f32(vsum018, vsum67);
       const float32x4_t vsum = vaddq_f32(vsum2345, vsum01678);
 
-      float32x4_t vout = vmulq_f32(vsum, vmultiplier);
-      vout = vmaxq_f32(vout, voutput_min);
-      vout = vminq_f32(vout, voutput_max);
+      float32x4_t vout = vmulq_f32(vsum, vscale);
+      vout = vmaxq_f32(vout, vmin);
+      vout = vminq_f32(vout, vmax);
 
       vst1q_f32(output, vout); output += 4;
 
@@ -152,9 +152,9 @@
       const float32x4_t vsum01678 = vaddq_f32(vsum018, vsum67);
       const float32x4_t vsum = vaddq_f32(vsum2345, vsum01678);
 
-      float32x4_t vout = vmulq_f32(vsum, vmultiplier);
-      vout = vmaxq_f32(vout, voutput_min);
-      vout = vminq_f32(vout, voutput_max);
+      float32x4_t vout = vmulq_f32(vsum, vscale);
+      vout = vmaxq_f32(vout, vmin);
+      vout = vminq_f32(vout, vmax);
 
       float32x2_t vout_lo = vget_low_f32(vout);
       if (c & 2) {
diff --git a/src/f32-avgpool/9x-psimd-c4.c b/src/f32-avgpool/9x-psimd-c4.c
index 0fb294f..8b80149 100644
--- a/src/f32-avgpool/9x-psimd-c4.c
+++ b/src/f32-avgpool/9x-psimd-c4.c
@@ -20,16 +20,16 @@
     float* output,
     size_t input_increment,
     size_t output_increment,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(output_pixels != 0);
   assert(kernel_elements != 0);
   assert(kernel_elements <= 9);
   assert(channels != 0);
 
-  const psimd_f32 vmultiplier = psimd_load_splat_f32(&params->scalar.multiplier);
-  const psimd_f32 voutput_min = psimd_load_splat_f32(&params->scalar.output_min);
-  const psimd_f32 voutput_max = psimd_load_splat_f32(&params->scalar.output_max);
+  const psimd_f32 vscale = psimd_load_splat_f32(&params->scalar.scale);
+  const psimd_f32 vmin = psimd_load_splat_f32(&params->scalar.min);
+  const psimd_f32 vmax = psimd_load_splat_f32(&params->scalar.max);
 
   do {
     const float* i0 = input[0];
@@ -133,9 +133,9 @@
       const psimd_f32 vsum01678 = psimd_add_f32(vsum018, vsum67);
       const psimd_f32 vsum = psimd_add_f32(vsum2345, vsum01678);
 
-      psimd_f32 vout = psimd_mul_f32(vsum, vmultiplier);
-      vout = psimd_max_f32(vout, voutput_min);
-      vout = psimd_min_f32(vout, voutput_max);
+      psimd_f32 vout = psimd_mul_f32(vsum, vscale);
+      vout = psimd_max_f32(vout, vmin);
+      vout = psimd_min_f32(vout, vmax);
 
       psimd_store_f32(output, vout);
       output += 4;
@@ -162,9 +162,9 @@
       const psimd_f32 vsum01678 = psimd_add_f32(vsum018, vsum67);
       const psimd_f32 vsum = psimd_add_f32(vsum2345, vsum01678);
 
-      psimd_f32 vout = psimd_mul_f32(vsum, vmultiplier);
-      vout = psimd_max_f32(vout, voutput_min);
-      vout = psimd_min_f32(vout, voutput_max);
+      psimd_f32 vout = psimd_mul_f32(vsum, vscale);
+      vout = psimd_max_f32(vout, vmin);
+      vout = psimd_min_f32(vout, vmax);
 
       if (c & 2) {
         psimd_store2_f32(output, vout);
diff --git a/src/f32-avgpool/9x-scalar-c1.c b/src/f32-avgpool/9x-scalar-c1.c
index 96cc745..b725f3a 100644
--- a/src/f32-avgpool/9x-scalar-c1.c
+++ b/src/f32-avgpool/9x-scalar-c1.c
@@ -19,16 +19,16 @@
     float* output,
     size_t input_increment,
     size_t output_increment,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(output_pixels != 0);
   assert(kernel_elements != 0);
   assert(kernel_elements <= 9);
   assert(channels != 0);
 
-  const float vmultiplier = params->scalar.multiplier;
-  const float voutput_min = params->scalar.output_min;
-  const float voutput_max = params->scalar.output_max;
+  const float vscale = params->scalar.scale;
+  const float vmin = params->scalar.min;
+  const float vmax = params->scalar.max;
 
   do {
     const float* i0 = input[0];
@@ -123,9 +123,9 @@
       const float vsum01678 = vsum018 + vsum67;
       const float vsum = vsum2345 + vsum01678;
 
-      float vout = vsum * vmultiplier;
-      vout = math_max_f32(vout, voutput_min);
-      vout = math_min_f32(vout, voutput_max);
+      float vout = vsum * vscale;
+      vout = math_max_f32(vout, vmin);
+      vout = math_min_f32(vout, vmax);
 
       *output++ = vout;
     } while (--c != 0);
diff --git a/src/f32-avgpool/9x-sse-c4.c b/src/f32-avgpool/9x-sse-c4.c
index e37fd0a..f66ebee 100644
--- a/src/f32-avgpool/9x-sse-c4.c
+++ b/src/f32-avgpool/9x-sse-c4.c
@@ -20,16 +20,16 @@
     float* output,
     size_t input_increment,
     size_t output_increment,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(output_pixels != 0);
   assert(kernel_elements != 0);
   assert(kernel_elements <= 9);
   assert(channels != 0);
 
-  const __m128 vmultiplier = _mm_load_ps(params->sse2.multiplier);
-  const __m128 voutput_min = _mm_load_ps(params->sse2.output_min);
-  const __m128 voutput_max = _mm_load_ps(params->sse2.output_max);
+  const __m128 vscale = _mm_load_ps(params->sse2.scale);
+  const __m128 vmin = _mm_load_ps(params->sse2.min);
+  const __m128 vmax = _mm_load_ps(params->sse2.max);
 
   do {
     const float* i0 = input[0];
@@ -133,9 +133,9 @@
       const __m128 vsum01678 = _mm_add_ps(vsum018, vsum67);
       const __m128 vsum = _mm_add_ps(vsum2345, vsum01678);
 
-      __m128 vout = _mm_mul_ps(vsum, vmultiplier);
-      vout = _mm_max_ps(vout, voutput_min);
-      vout = _mm_min_ps(vout, voutput_max);
+      __m128 vout = _mm_mul_ps(vsum, vscale);
+      vout = _mm_max_ps(vout, vmin);
+      vout = _mm_min_ps(vout, vmax);
 
       _mm_storeu_ps(output, vout); output += 4;
 
@@ -161,9 +161,9 @@
       const __m128 vsum01678 = _mm_add_ps(vsum018, vsum67);
       const __m128 vsum = _mm_add_ps(vsum2345, vsum01678);
 
-      __m128 vout = _mm_mul_ps(vsum, vmultiplier);
-      vout = _mm_max_ps(vout, voutput_min);
-      vout = _mm_min_ps(vout, voutput_max);
+      __m128 vout = _mm_mul_ps(vsum, vscale);
+      vout = _mm_max_ps(vout, vmin);
+      vout = _mm_min_ps(vout, vmax);
 
       if (c & 2) {
         _mm_storel_pi((__m64*) output, vout);
diff --git a/src/f32-avgpool/9x-wasm-c1.c b/src/f32-avgpool/9x-wasm-c1.c
index 7d598ce..693da72 100644
--- a/src/f32-avgpool/9x-wasm-c1.c
+++ b/src/f32-avgpool/9x-wasm-c1.c
@@ -19,16 +19,16 @@
     float* output,
     size_t input_increment,
     size_t output_increment,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(output_pixels != 0);
   assert(kernel_elements != 0);
   assert(kernel_elements <= 9);
   assert(channels != 0);
 
-  const float vmultiplier = params->scalar.multiplier;
-  const float voutput_min = params->scalar.output_min;
-  const float voutput_max = params->scalar.output_max;
+  const float vscale = params->scalar.scale;
+  const float vmin = params->scalar.min;
+  const float vmax = params->scalar.max;
 
   do {
     const float* i0 = input[0];
@@ -123,9 +123,9 @@
       const float vsum01678 = vsum018 + vsum67;
       const float vsum = vsum2345 + vsum01678;
 
-      float vout = vsum * vmultiplier;
-      vout = __builtin_wasm_max_f32(vout, voutput_min);
-      vout = __builtin_wasm_min_f32(vout, voutput_max);
+      float vout = vsum * vscale;
+      vout = __builtin_wasm_max_f32(vout, vmin);
+      vout = __builtin_wasm_min_f32(vout, vmax);
 
       *output++ = vout;
     } while (--c != 0);
diff --git a/src/f32-gavgpool/7p7x-neon-c4.c b/src/f32-gavgpool/7p7x-neon-c4.c
index 44f57e8..576b7d1 100644
--- a/src/f32-gavgpool/7p7x-neon-c4.c
+++ b/src/f32-gavgpool/7p7x-neon-c4.c
@@ -19,7 +19,7 @@
     const float* zero,
     float* buffer,
     float* output,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(rows > 7);
   assert(channels != 0);
@@ -115,9 +115,9 @@
   if (rows <= 6) {
     i6 = zero;
   }
-  const float32x4_t vmultiplier = vld1q_dup_f32(&params->scalar.multiplier);
-  const float32x4_t voutput_min = vld1q_dup_f32(&params->scalar.output_min);
-  const float32x4_t voutput_max = vld1q_dup_f32(&params->scalar.output_max);
+  const float32x4_t vscale = vld1q_dup_f32(&params->scalar.scale);
+  const float32x4_t vmin = vld1q_dup_f32(&params->scalar.min);
+  const float32x4_t vmax = vld1q_dup_f32(&params->scalar.max);
 
   b = buffer;
   while (channels >= 4) {
@@ -140,9 +140,9 @@
 
     const float32x4_t vsum = vaddq_f32(vsum0123, vsum456a);
 
-    float32x4_t vout = vmulq_f32(vsum, vmultiplier);
-    vout = vmaxq_f32(vout, voutput_min);
-    vout = vminq_f32(vout, voutput_max);
+    float32x4_t vout = vmulq_f32(vsum, vscale);
+    vout = vmaxq_f32(vout, vmin);
+    vout = vminq_f32(vout, vmax);
 
     vst1q_f32(output, vout); output += 4;
 
@@ -168,9 +168,9 @@
 
     const float32x4_t vsum = vaddq_f32(vsum0123, vsum456a);
 
-    float32x4_t vout = vmulq_f32(vsum, vmultiplier);
-    vout = vmaxq_f32(vout, voutput_min);
-    vout = vminq_f32(vout, voutput_max);
+    float32x4_t vout = vmulq_f32(vsum, vscale);
+    vout = vmaxq_f32(vout, vmin);
+    vout = vminq_f32(vout, vmax);
 
     float32x2_t vout_lo = vget_low_f32(vout);
     if (channels & 2) {
diff --git a/src/f32-gavgpool/7p7x-psimd-c4.c b/src/f32-gavgpool/7p7x-psimd-c4.c
index dac3d95..ce7907c 100644
--- a/src/f32-gavgpool/7p7x-psimd-c4.c
+++ b/src/f32-gavgpool/7p7x-psimd-c4.c
@@ -19,7 +19,7 @@
     const float* zero,
     float* buffer,
     float* output,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(rows > 7);
   assert(channels != 0);
@@ -129,9 +129,9 @@
   if (rows <= 6) {
     i6 = zero;
   }
-  const psimd_f32 vmultiplier = psimd_load_splat_f32(&params->scalar.multiplier);
-  const psimd_f32 voutput_min = psimd_load_splat_f32(&params->scalar.output_min);
-  const psimd_f32 voutput_max = psimd_load_splat_f32(&params->scalar.output_max);
+  const psimd_f32 vscale = psimd_load_splat_f32(&params->scalar.scale);
+  const psimd_f32 vmin = psimd_load_splat_f32(&params->scalar.min);
+  const psimd_f32 vmax = psimd_load_splat_f32(&params->scalar.max);
 
   b = buffer;
   while (channels >= 4) {
@@ -162,9 +162,9 @@
 
     const psimd_f32 vsum = psimd_add_f32(vsum0123, vsum456a);
 
-    psimd_f32 vout = psimd_mul_f32(vsum, vmultiplier);
-    vout = psimd_max_f32(vout, voutput_min);
-    vout = psimd_min_f32(vout, voutput_max);
+    psimd_f32 vout = psimd_mul_f32(vsum, vscale);
+    vout = psimd_max_f32(vout, vmin);
+    vout = psimd_min_f32(vout, vmax);
 
     psimd_store_f32(output, vout);
     output += 4;
@@ -191,9 +191,9 @@
 
     const psimd_f32 vsum = psimd_add_f32(vsum0123, vsum456a);
 
-    psimd_f32 vout = psimd_mul_f32(vsum, vmultiplier);
-    vout = psimd_max_f32(vout, voutput_min);
-    vout = psimd_min_f32(vout, voutput_max);
+    psimd_f32 vout = psimd_mul_f32(vsum, vscale);
+    vout = psimd_max_f32(vout, vmin);
+    vout = psimd_min_f32(vout, vmax);
 
     if (channels & 2) {
       psimd_store2_f32(output, vout);
diff --git a/src/f32-gavgpool/7p7x-scalar-c1.c b/src/f32-gavgpool/7p7x-scalar-c1.c
index dd9ff99..1976e23 100644
--- a/src/f32-gavgpool/7p7x-scalar-c1.c
+++ b/src/f32-gavgpool/7p7x-scalar-c1.c
@@ -17,7 +17,7 @@
     const float* zero,
     float* buffer,
     float* output,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(rows > 7);
   assert(channels != 0);
@@ -114,9 +114,9 @@
   if (rows <= 6) {
     i6 = zero;
   }
-  const float vmultiplier = params->scalar.multiplier;
-  const float voutput_min = params->scalar.output_min;
-  const float voutput_max = params->scalar.output_max;
+  const float vscale = params->scalar.scale;
+  const float vmin = params->scalar.min;
+  const float vmax = params->scalar.max;
 
   b = buffer;
   do {
@@ -139,9 +139,9 @@
 
     const float vsum = vsum0123 + vsum456a;
 
-    float vout = vsum * vmultiplier;
-    vout = math_max_f32(vout, voutput_min);
-    vout = math_min_f32(vout, voutput_max);
+    float vout = vsum * vscale;
+    vout = math_max_f32(vout, vmin);
+    vout = math_min_f32(vout, vmax);
 
     *output++ = vout;
   } while (--channels != 0);
diff --git a/src/f32-gavgpool/7p7x-sse-c4.c b/src/f32-gavgpool/7p7x-sse-c4.c
index b8cdb14..101c55f 100644
--- a/src/f32-gavgpool/7p7x-sse-c4.c
+++ b/src/f32-gavgpool/7p7x-sse-c4.c
@@ -19,7 +19,7 @@
     const float* zero,
     float* buffer,
     float* output,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(rows > 7);
   assert(channels != 0);
@@ -129,9 +129,9 @@
   if (rows <= 6) {
     i6 = zero;
   }
-  const __m128 vmultiplier = _mm_load_ps(params->sse2.multiplier);
-  const __m128 voutput_min = _mm_load_ps(params->sse2.output_min);
-  const __m128 voutput_max = _mm_load_ps(params->sse2.output_max);
+  const __m128 vscale = _mm_load_ps(params->sse2.scale);
+  const __m128 vmin = _mm_load_ps(params->sse2.min);
+  const __m128 vmax = _mm_load_ps(params->sse2.max);
 
   b = buffer;
   while (channels >= 4) {
@@ -162,9 +162,9 @@
 
     const __m128 vsum = _mm_add_ps(vsum0123, vsum456a);
 
-    __m128 vout = _mm_mul_ps(vsum, vmultiplier);
-    vout = _mm_max_ps(vout, voutput_min);
-    vout = _mm_min_ps(vout, voutput_max);
+    __m128 vout = _mm_mul_ps(vsum, vscale);
+    vout = _mm_max_ps(vout, vmin);
+    vout = _mm_min_ps(vout, vmax);
 
     _mm_storeu_ps(output, vout);
     output += 4;
@@ -191,9 +191,9 @@
 
     const __m128 vsum = _mm_add_ps(vsum0123, vsum456a);
 
-    __m128 vout = _mm_mul_ps(vsum, vmultiplier);
-    vout = _mm_max_ps(vout, voutput_min);
-    vout = _mm_min_ps(vout, voutput_max);
+    __m128 vout = _mm_mul_ps(vsum, vscale);
+    vout = _mm_max_ps(vout, vmin);
+    vout = _mm_min_ps(vout, vmax);
 
     if (channels & 2) {
       _mm_storel_pi((__m64*) output, vout);
diff --git a/src/f32-gavgpool/7p7x-wasm-c1.c b/src/f32-gavgpool/7p7x-wasm-c1.c
index 1aa3922..58e4290 100644
--- a/src/f32-gavgpool/7p7x-wasm-c1.c
+++ b/src/f32-gavgpool/7p7x-wasm-c1.c
@@ -17,7 +17,7 @@
     const float* zero,
     float* buffer,
     float* output,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(rows > 7);
   assert(channels != 0);
@@ -114,9 +114,9 @@
   if (rows <= 6) {
     i6 = zero;
   }
-  const float vmultiplier = params->scalar.multiplier;
-  const float voutput_min = params->scalar.output_min;
-  const float voutput_max = params->scalar.output_max;
+  const float vscale = params->scalar.scale;
+  const float vmin = params->scalar.min;
+  const float vmax = params->scalar.max;
 
   b = buffer;
   do {
@@ -139,9 +139,9 @@
 
     const float vsum = vsum0123 + vsum456a;
 
-    float vout = vsum * vmultiplier;
-    vout = __builtin_wasm_max_f32(vout, voutput_min);
-    vout = __builtin_wasm_min_f32(vout, voutput_max);
+    float vout = vsum * vscale;
+    vout = __builtin_wasm_max_f32(vout, vmin);
+    vout = __builtin_wasm_min_f32(vout, vmax);
 
     *output++ = vout;
   } while (--channels != 0);
diff --git a/src/f32-gavgpool/7x-neon-c4.c b/src/f32-gavgpool/7x-neon-c4.c
index a957978..ba24cb0 100644
--- a/src/f32-gavgpool/7x-neon-c4.c
+++ b/src/f32-gavgpool/7x-neon-c4.c
@@ -17,7 +17,7 @@
     size_t input_stride,
     const float* zero,
     float* output,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(rows != 0);
   assert(rows <= 7);
@@ -48,9 +48,9 @@
   if (rows <= 6) {
     i6 = zero;
   }
-  const float32x4_t vmultiplier = vld1q_dup_f32(&params->scalar.multiplier);
-  const float32x4_t voutput_min = vld1q_dup_f32(&params->scalar.output_min);
-  const float32x4_t voutput_max = vld1q_dup_f32(&params->scalar.output_max);
+  const float32x4_t vscale = vld1q_dup_f32(&params->scalar.scale);
+  const float32x4_t vmin = vld1q_dup_f32(&params->scalar.min);
+  const float32x4_t vmax = vld1q_dup_f32(&params->scalar.max);
 
   while (channels >= 4) {
     const float32x4_t vi0 = vld1q_f32(i0); i0 += 4;
@@ -70,9 +70,9 @@
 
     const float32x4_t vsum = vaddq_f32(vsum016, vsum2345);
 
-    float32x4_t vout = vmulq_f32(vsum, vmultiplier);
-    vout = vmaxq_f32(vout, voutput_min);
-    vout = vminq_f32(vout, voutput_max);
+    float32x4_t vout = vmulq_f32(vsum, vscale);
+    vout = vmaxq_f32(vout, vmin);
+    vout = vminq_f32(vout, vmax);
 
     vst1q_f32(output, vout); output += 4;
 
@@ -96,9 +96,9 @@
 
     const float32x4_t vsum = vaddq_f32(vsum016, vsum2345);
 
-    float32x4_t vout = vmulq_f32(vsum, vmultiplier);
-    vout = vmaxq_f32(vout, voutput_min);
-    vout = vminq_f32(vout, voutput_max);
+    float32x4_t vout = vmulq_f32(vsum, vscale);
+    vout = vmaxq_f32(vout, vmin);
+    vout = vminq_f32(vout, vmax);
 
     float32x2_t vout_lo = vget_low_f32(vout);
     if (channels & 2) {
diff --git a/src/f32-gavgpool/7x-psimd-c4.c b/src/f32-gavgpool/7x-psimd-c4.c
index c9aa52a..f273840 100644
--- a/src/f32-gavgpool/7x-psimd-c4.c
+++ b/src/f32-gavgpool/7x-psimd-c4.c
@@ -17,7 +17,7 @@
     size_t input_stride,
     const float* zero,
     float* output,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(rows != 0);
   assert(rows <= 7);
@@ -48,9 +48,9 @@
   if (rows <= 6) {
     i6 = zero;
   }
-  const psimd_f32 vmultiplier = psimd_load_splat_f32(&params->scalar.multiplier);
-  const psimd_f32 voutput_min = psimd_load_splat_f32(&params->scalar.output_min);
-  const psimd_f32 voutput_max = psimd_load_splat_f32(&params->scalar.output_max);
+  const psimd_f32 vscale = psimd_load_splat_f32(&params->scalar.scale);
+  const psimd_f32 vmin = psimd_load_splat_f32(&params->scalar.min);
+  const psimd_f32 vmax = psimd_load_splat_f32(&params->scalar.max);
 
   while (channels >= 4) {
     const psimd_f32 vi0 = psimd_load_f32(i0);
@@ -77,9 +77,9 @@
 
     const psimd_f32 vsum = psimd_add_f32(vsum016, vsum2345);
 
-    psimd_f32 vout = psimd_mul_f32(vsum, vmultiplier);
-    vout = psimd_max_f32(vout, voutput_min);
-    vout = psimd_min_f32(vout, voutput_max);
+    psimd_f32 vout = psimd_mul_f32(vsum, vscale);
+    vout = psimd_max_f32(vout, vmin);
+    vout = psimd_min_f32(vout, vmax);
 
     psimd_store_f32(output, vout);
     output += 4;
@@ -104,9 +104,9 @@
 
     const psimd_f32 vsum = psimd_add_f32(vsum016, vsum2345);
 
-    psimd_f32 vout = psimd_mul_f32(vsum, vmultiplier);
-    vout = psimd_max_f32(vout, voutput_min);
-    vout = psimd_min_f32(vout, voutput_max);
+    psimd_f32 vout = psimd_mul_f32(vsum, vscale);
+    vout = psimd_max_f32(vout, vmin);
+    vout = psimd_min_f32(vout, vmax);
 
     if (channels & 2) {
       psimd_store2_f32(output, vout);
diff --git a/src/f32-gavgpool/7x-scalar-c1.c b/src/f32-gavgpool/7x-scalar-c1.c
index 24ab555..8c4f761 100644
--- a/src/f32-gavgpool/7x-scalar-c1.c
+++ b/src/f32-gavgpool/7x-scalar-c1.c
@@ -16,7 +16,7 @@
     size_t input_stride,
     const float* zero,
     float* output,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(rows != 0);
   assert(rows <= 7);
@@ -48,9 +48,9 @@
     i6 = zero;
   }
 
-  const float vmultiplier = params->scalar.multiplier;
-  const float voutput_min = params->scalar.output_min;
-  const float voutput_max = params->scalar.output_max;
+  const float vscale = params->scalar.scale;
+  const float vmin = params->scalar.min;
+  const float vmax = params->scalar.max;
   do {
     const float vi0 = *i0++;
     const float vi1 = *i1++;
@@ -69,9 +69,9 @@
 
     const float vsum = vsum016 + vsum2345;
 
-    float vout = vsum * vmultiplier;
-    vout = math_max_f32(vout, voutput_min);
-    vout = math_min_f32(vout, voutput_max);
+    float vout = vsum * vscale;
+    vout = math_max_f32(vout, vmin);
+    vout = math_min_f32(vout, vmax);
 
     *output++ = vout;
   } while (--channels != 0);
diff --git a/src/f32-gavgpool/7x-sse-c4.c b/src/f32-gavgpool/7x-sse-c4.c
index 712e8c4..cf240b5 100644
--- a/src/f32-gavgpool/7x-sse-c4.c
+++ b/src/f32-gavgpool/7x-sse-c4.c
@@ -17,7 +17,7 @@
     size_t input_stride,
     const float* zero,
     float* output,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(rows != 0);
   assert(rows <= 7);
@@ -48,9 +48,9 @@
   if (rows <= 6) {
     i6 = zero;
   }
-  const __m128 vmultiplier = _mm_load_ps(params->sse2.multiplier);
-  const __m128 voutput_min = _mm_load_ps(params->sse2.output_min);
-  const __m128 voutput_max = _mm_load_ps(params->sse2.output_max);
+  const __m128 vscale = _mm_load_ps(params->sse2.scale);
+  const __m128 vmin = _mm_load_ps(params->sse2.min);
+  const __m128 vmax = _mm_load_ps(params->sse2.max);
 
   while (channels >= 4) {
     const __m128 vi0 = _mm_loadu_ps(i0);
@@ -77,9 +77,9 @@
 
     const __m128 vsum = _mm_add_ps(vsum016, vsum2345);
 
-    __m128 vout = _mm_mul_ps(vsum, vmultiplier);
-    vout = _mm_max_ps(vout, voutput_min);
-    vout = _mm_min_ps(vout, voutput_max);
+    __m128 vout = _mm_mul_ps(vsum, vscale);
+    vout = _mm_max_ps(vout, vmin);
+    vout = _mm_min_ps(vout, vmax);
 
     _mm_storeu_ps(output, vout);
     output += 4;
@@ -104,9 +104,9 @@
 
     const __m128 vsum = _mm_add_ps(vsum016, vsum2345);
 
-    __m128 vout = _mm_mul_ps(vsum, vmultiplier);
-    vout = _mm_max_ps(vout, voutput_min);
-    vout = _mm_min_ps(vout, voutput_max);
+    __m128 vout = _mm_mul_ps(vsum, vscale);
+    vout = _mm_max_ps(vout, vmin);
+    vout = _mm_min_ps(vout, vmax);
 
     if (channels & 2) {
       _mm_storel_pi((__m64*) output, vout);
diff --git a/src/f32-gavgpool/7x-wasm-c1.c b/src/f32-gavgpool/7x-wasm-c1.c
index 39a9d9b..1564b77 100644
--- a/src/f32-gavgpool/7x-wasm-c1.c
+++ b/src/f32-gavgpool/7x-wasm-c1.c
@@ -16,7 +16,7 @@
     size_t input_stride,
     const float* zero,
     float* output,
-    const union xnn_f32_avgpool_params params[restrict static 1])
+    const union xnn_f32_scaleminmax_params params[restrict static 1])
 {
   assert(rows != 0);
   assert(rows <= 7);
@@ -48,9 +48,9 @@
     i6 = zero;
   }
 
-  const float vmultiplier = params->scalar.multiplier;
-  const float voutput_min = params->scalar.output_min;
-  const float voutput_max = params->scalar.output_max;
+  const float vscale = params->scalar.scale;
+  const float vmin = params->scalar.min;
+  const float vmax = params->scalar.max;
   do {
     const float vi0 = *i0++;
     const float vi1 = *i1++;
@@ -69,9 +69,9 @@
 
     const float vsum = vsum016 + vsum2345;
 
-    float vout = vsum * vmultiplier;
-    vout = __builtin_wasm_max_f32(vout, voutput_min);
-    vout = __builtin_wasm_min_f32(vout, voutput_max);
+    float vout = vsum * vscale;
+    vout = __builtin_wasm_max_f32(vout, vmin);
+    vout = __builtin_wasm_min_f32(vout, vmax);
 
     *output++ = vout;
   } while (--channels != 0);
diff --git a/src/global-average-pooling-nwc.c b/src/global-average-pooling-nwc.c
index 5f757ab..993a5f6 100644
--- a/src/global-average-pooling-nwc.c
+++ b/src/global-average-pooling-nwc.c
@@ -221,7 +221,7 @@
   global_average_pooling_op->channels = channels;
   global_average_pooling_op->input_pixel_stride = input_stride;
   global_average_pooling_op->output_pixel_stride = output_stride;
-  global_average_pooling_op->f32_avgpool_params = xnn_init_f32_avgpool_params(nanf(""), output_min, output_max);
+  global_average_pooling_op->f32_scaleminmax_params = xnn_init_f32_scaleminmax_params(nanf(""), output_min, output_max);
 
   global_average_pooling_op->type = xnn_operator_type_global_average_pooling_nwc_f32;
   global_average_pooling_op->ukernel.type = xnn_ukernel_type_global_average_pooling;
@@ -340,7 +340,7 @@
   global_average_pooling_op->input = input;
   global_average_pooling_op->output = output;
 
-  xnn_update_f32_avgpool_params(&global_average_pooling_op->f32_avgpool_params, 1.0f / (float) width);
+  xnn_update_f32_scaleminmax_params(&global_average_pooling_op->f32_scaleminmax_params, 1.0f / (float) width);
 
   const size_t input_stride_in_bytes = global_average_pooling_op->input_pixel_stride * sizeof(float);
   const size_t channels = global_average_pooling_op->channels;
@@ -353,7 +353,7 @@
       .channels = channels,
       .output = output,
       .output_batch_stride = global_average_pooling_op->output_pixel_stride * sizeof(float),
-      .params.f32 = global_average_pooling_op->f32_avgpool_params,
+      .params.f32 = global_average_pooling_op->f32_scaleminmax_params,
   };
   global_average_pooling_op->compute.type = xnn_parallelization_type_1d;
   global_average_pooling_op->compute.range[0] = batch_size;
diff --git a/src/xnnpack/avgpool.h b/src/xnnpack/avgpool.h
index d1a1e87..4ef2b7f 100644
--- a/src/xnnpack/avgpool.h
+++ b/src/xnnpack/avgpool.h
@@ -31,7 +31,7 @@
       float* output,                                            \
       size_t input_increment,                                   \
       size_t output_increment,                                  \
-      const union xnn_f32_avgpool_params* params);
+      const union xnn_f32_scaleminmax_params* params);
 
 DECLARE_F32_AVGPOOL_MULTIPASS_UKERNEL_FUNCTION(xnn_f32_avgpool_ukernel_9p8x__neon_c4)
 DECLARE_F32_AVGPOOL_MULTIPASS_UKERNEL_FUNCTION(xnn_f32_avgpool_ukernel_9p8x__sse_c4)
@@ -51,7 +51,7 @@
       float* output,                                          \
       size_t input_increment,                                 \
       size_t output_increment,                                \
-      const union xnn_f32_avgpool_params* params);
+      const union xnn_f32_scaleminmax_params* params);
 
 DECLARE_F32_AVGPOOL_UNIPASS_UKERNEL_FUNCTION(xnn_f32_avgpool_ukernel_9x__neon_c4)
 DECLARE_F32_AVGPOOL_UNIPASS_UKERNEL_FUNCTION(xnn_f32_avgpool_ukernel_9x__sse_c4)
diff --git a/src/xnnpack/compute.h b/src/xnnpack/compute.h
index ad0747f..45586fb 100644
--- a/src/xnnpack/compute.h
+++ b/src/xnnpack/compute.h
@@ -488,7 +488,7 @@
   size_t output_increment;
   union {
     union xnn_q8_avgpool_params q8;
-    union xnn_f32_avgpool_params f32;
+    union xnn_f32_scaleminmax_params f32;
   } params;
   union {
     xnn_avgpool_up_ukernel_function unipass_ukernel;
@@ -557,7 +557,7 @@
   size_t output_batch_stride;
   union {
     union xnn_q8_avgpool_params q8;
-    union xnn_f32_avgpool_params f32;
+    union xnn_f32_scaleminmax_params f32;
   } params;
   union {
     xnn_gavgpool_up_ukernel_function unipass_ukernel;
diff --git a/src/xnnpack/gavgpool.h b/src/xnnpack/gavgpool.h
index e50d7bb..2520d43 100644
--- a/src/xnnpack/gavgpool.h
+++ b/src/xnnpack/gavgpool.h
@@ -28,7 +28,7 @@
       const float* zero,                                         \
       float* buffer,                                             \
       float* output,                                             \
-      const union xnn_f32_avgpool_params* params);
+      const union xnn_f32_scaleminmax_params* params);
 
 DECLARE_F32_GAVGPOOL_MULTIPASS_UKERNEL_FUNCTION(xnn_f32_gavgpool_ukernel_7p7x__neon_c4)
 DECLARE_F32_GAVGPOOL_MULTIPASS_UKERNEL_FUNCTION(xnn_f32_gavgpool_ukernel_7p7x__sse_c4)
@@ -45,7 +45,7 @@
       size_t input_stride,                                     \
       const float* zero,                                       \
       float* output,                                           \
-      const union xnn_f32_avgpool_params* params);
+      const union xnn_f32_scaleminmax_params* params);
 
 DECLARE_F32_GAVGPOOL_UNIPASS_UKERNEL_FUNCTION(xnn_f32_gavgpool_ukernel_7x__neon_c4)
 DECLARE_F32_GAVGPOOL_UNIPASS_UKERNEL_FUNCTION(xnn_f32_gavgpool_ukernel_7x__sse_c4)
diff --git a/src/xnnpack/operator.h b/src/xnnpack/operator.h
index 15f8efd..3ca786a 100644
--- a/src/xnnpack/operator.h
+++ b/src/xnnpack/operator.h
@@ -243,10 +243,10 @@
     // Parameters for Global Average Pooling in CHW layout
     union xnn_f32_gavgpool_params f32_gavgpool_params;
     union xnn_f32_hswish_params f32_hswish_params;
-    // Pixelwise Average Pooling normally use f32_minmax_params, but also initialize f32_avgpool_params in case it needs
-    // to switch to Global Average Pooling operation.
+    // Pixelwise Average Pooling normally use f32_minmax_params, but also initialize
+    // f32_scaleminmax_params in case it needs to switch to Global Average Pooling operation.
     struct {
-      union xnn_f32_avgpool_params f32_avgpool_params;
+      union xnn_f32_scaleminmax_params f32_scaleminmax_params;
       union xnn_f32_minmax_params f32_minmax_params;
     };
     union xnn_f32_spchw_params f32_spchw_params;
diff --git a/src/xnnpack/params-init.h b/src/xnnpack/params-init.h
index e4086c5..0601618 100644
--- a/src/xnnpack/params-init.h
+++ b/src/xnnpack/params-init.h
@@ -248,35 +248,35 @@
   return params;
 }
 
-static inline void xnn_update_f32_avgpool_params(
-  union xnn_f32_avgpool_params* params,
-  float multiplier)
+static inline void xnn_update_f32_scaleminmax_params(
+  union xnn_f32_scaleminmax_params* params,
+  float scale)
 {
   #if XNN_ARCH_X86 || XNN_ARCH_X86_64
     for (uint32_t i = 0; i < 4; i++) {
-      params->sse2.multiplier[i] = multiplier;
+      params->sse2.scale[i] = scale;
     }
   #else
-    params->scalar.multiplier = multiplier;
+    params->scalar.scale = scale;
   #endif
 }
 
-static inline union xnn_f32_avgpool_params xnn_init_f32_avgpool_params(
-  float multiplier,
-  float output_min,
-  float output_max)
+static inline union xnn_f32_scaleminmax_params xnn_init_f32_scaleminmax_params(
+  float scale,
+  float min,
+  float max)
 {
-  union xnn_f32_avgpool_params params;
+  union xnn_f32_scaleminmax_params params;
   #if XNN_ARCH_X86 || XNN_ARCH_X86_64
     for (uint32_t i = 0; i < 4; i++) {
-      params.sse2.multiplier[i] = multiplier;
-      params.sse2.output_min[i] = output_min;
-      params.sse2.output_max[i] = output_max;
+      params.sse2.scale[i] = scale;
+      params.sse2.min[i] = min;
+      params.sse2.max[i] = max;
     }
   #else
-    params.scalar.multiplier = multiplier;
-    params.scalar.output_min = output_min;
-    params.scalar.output_max = output_max;
+    params.scalar.scale = scale;
+    params.scalar.min = min;
+    params.scalar.max = max;
   #endif
   return params;
 }
@@ -346,15 +346,15 @@
   #endif
 }
 
-static inline union xnn_f32_avgpool_params xnn_init_scalar_f32_avgpool_params(
-  float multiplier,
-  float output_min,
-  float output_max)
+static inline union xnn_f32_scaleminmax_params xnn_init_scalar_f32_scaleminmax_params(
+  float scale,
+  float min,
+  float max)
 {
-  union xnn_f32_avgpool_params params;
-  params.scalar.multiplier = multiplier;
-  params.scalar.output_min = output_min;
-  params.scalar.output_max = output_max;
+  union xnn_f32_scaleminmax_params params;
+  params.scalar.scale = scale;
+  params.scalar.min = min;
+  params.scalar.max = max;
   return params;
 }
 
diff --git a/src/xnnpack/params.h b/src/xnnpack/params.h
index 609b8a8..5ee1652 100644
--- a/src/xnnpack/params.h
+++ b/src/xnnpack/params.h
@@ -78,26 +78,19 @@
 #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
 };
 
-union xnn_f32_avgpool_params {
+union xnn_f32_scaleminmax_params {
   struct {
-    float multiplier;
-    float output_min;
-    float output_max;
+    float scale;
+    float min;
+    float max;
   } scalar;
 #if XNN_ARCH_X86 || XNN_ARCH_X86_64
   struct {
-    XNN_ALIGN(16) float multiplier[4];
-    XNN_ALIGN(16) float output_min[4];
-    XNN_ALIGN(16) float output_max[4];
+    XNN_ALIGN(16) float scale[4];
+    XNN_ALIGN(16) float min[4];
+    XNN_ALIGN(16) float max[4];
   } sse2;
 #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
-#if XNN_ARCH_ARM || XNN_ARCH_ARM64
-  struct {
-    XNN_ALIGN(16) float multiplier;
-    XNN_ALIGN(16) float output_min;
-    XNN_ALIGN(16) float output_max;
-  } neon;
-#endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
 };
 
 union xnn_f32_gavgpool_params {
@@ -761,7 +754,7 @@
     size_t input_stride,
     const float* zero,
     float* output,
-    const union xnn_f32_avgpool_params* params);
+    const union xnn_f32_scaleminmax_params* params);
 
 typedef void (*xnn_q8_gavgpool_up_ukernel_function)(
     size_t rows,
@@ -790,7 +783,7 @@
     const float* zero,
     float* buffer,
     float* output,
-    const union xnn_f32_avgpool_params* params);
+    const union xnn_f32_scaleminmax_params* params);
 
 typedef void (*xnn_q8_gavgpool_mp_ukernel_function)(
     size_t rows,
@@ -838,7 +831,7 @@
     float* output,
     size_t input_increment,
     size_t output_increment,
-    const union xnn_f32_avgpool_params* params);
+    const union xnn_f32_scaleminmax_params* params);
 
 typedef void (*xnn_q8_avgpool_up_ukernel_function)(
     size_t output_pixels,
@@ -876,7 +869,7 @@
     float* output,
     size_t input_increment,
     size_t output_increment,
-    const union xnn_f32_avgpool_params* params);
+    const union xnn_f32_scaleminmax_params* params);
 
 typedef void (*xnn_q8_avgpool_mp_ukernel_function)(
     size_t output_pixels,