# Copyright 2021 Google LLC
#
# This source code is licensed under the BSD-style license found in the
# LICENSE file in the root directory of this source tree.

# AArch32 assembly
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_1x8__asm_aarch32_neon_mlal_lane_cortex_a7
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_1x8__asm_aarch32_neon_mlal_lane_cortex_a7_prfm
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_4x8__asm_aarch32_neon_mlal_lane_cortex_a53
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_4x8__asm_aarch32_neon_mlal_lane_cortex_a53_prfm
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_4x8__asm_aarch32_neon_mlal_lane_ld64
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_4x8__asm_aarch32_neon_mlal_lane_ld64_prfm
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8

# AArch64 assembly
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_4x16__asm_aarch64_neon_mlal_lane_cortex_a53
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_4x16__asm_aarch64_neon_mlal_lane_cortex_a53_prfm
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu16_ukernel_4x16__asm_aarch64_neon_mlal_lane_cortex_a53
  init: xnn_init_qu8_conv_minmax_rndnu16_scalar_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu16_ukernel_4x16__asm_aarch64_neon_mlal_lane_cortex_a53_prfm
  init: xnn_init_qu8_conv_minmax_rndnu16_scalar_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_4x16__asm_aarch64_neon_mlal_lane_cortex_a75
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_4x16__asm_aarch64_neon_mlal_lane_cortex_a75_prfm
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_4x16__asm_aarch64_neon_mlal_lane_ld64
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_4x16__asm_aarch64_neon_mlal_lane_ld64_prfm
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8

# ARM NEON
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_1x8__neon_mlal_lane
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_1x16__neon_mlal_lane
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu16_ukernel_1x16__neon_mlal_lane
  init: xnn_init_qu8_conv_minmax_rndnu16_scalar_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_2x8__neon_mlal_lane
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_2x16__neon_mlal_lane
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_3x8__neon_mlal_lane
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_3x16__neon_mlal_lane
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_4x8__neon_mlal_lane
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_4x16__neon_mlal_lane
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_6x8__neon_mlal_lane
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
- name: xnn_qu8_igemm_minmax_rndnu_ukernel_6x16__neon_mlal_lane
  init: xnn_init_qu8_conv_minmax_rndnu_neon_params
  pack: xnn_pack_qu8_conv_goki_w
  k-block: 8
