# Copyright 2020 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_f32_gemm_ukernel_4x4__asm_aarch32_vfp_ld64
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 2
# WAsm SIMD
- name: xnn_f32_gemm_ukernel_1x8__wasmsimd_loadsplat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
- name: xnn_f32_gemm_ukernel_1x8__wasmsimd_splat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_1x8s4__wasmsimd
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_3x8__wasmsimd_loadsplat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
- name: xnn_f32_gemm_ukernel_3x8__wasmsimd_splat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_3x8s4__wasmsimd
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_4x2c4__wasmsimd
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_4x8__wasmsimd_loadsplat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
- name: xnn_f32_gemm_ukernel_4x8__wasmsimd_splat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_4x8s4__wasmsimd
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_5x8__wasmsimd_loadsplat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
- name: xnn_f32_gemm_ukernel_5x8__wasmsimd_splat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_5x8s4__wasmsimd
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_6x8__wasmsimd_loadsplat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
- name: xnn_f32_gemm_ukernel_6x8__wasmsimd_splat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_6x8s4__wasmsimd
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
# WAsm Relaxed SIMD
- name: xnn_f32_gemm_ukernel_1x8__wasmrelaxedsimd_fma_loadsplat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
- name: xnn_f32_gemm_ukernel_1x8__wasmrelaxedsimd_fma_splat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_1x8s4__wasmrelaxedsimd_fma
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_3x8__wasmrelaxedsimd_fma_loadsplat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
- name: xnn_f32_gemm_ukernel_3x8__wasmrelaxedsimd_fma_splat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_3x8s4__wasmrelaxedsimd_fma
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_4x2c4__wasmrelaxedsimd_fma
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_4x8__wasmrelaxedsimd_fma_loadsplat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
- name: xnn_f32_gemm_ukernel_4x8__wasmrelaxedsimd_fma_splat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_4x8s4__wasmrelaxedsimd_fma
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_5x8__wasmrelaxedsimd_fma_loadsplat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
- name: xnn_f32_gemm_ukernel_5x8__wasmrelaxedsimd_fma_splat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_5x8s4__wasmrelaxedsimd_fma
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_6x8__wasmrelaxedsimd_fma_loadsplat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
- name: xnn_f32_gemm_ukernel_6x8__wasmrelaxedsimd_fma_splat
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
- name: xnn_f32_gemm_ukernel_6x8s4__wasmrelaxedsimd_fma
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 4
# Scalar
- name: xnn_f32_gemm_ukernel_1x4__scalar
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
- name: xnn_f32_gemm_ukernel_2x4__scalar
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
- name: xnn_f32_gemm_ukernel_4x2__scalar
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
- name: xnn_f32_gemm_ukernel_4x4__scalar
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
# RISC-V
- name: xnn_f32_gemm_ukernel_1x4v__rvv
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
- name: xnn_f32_gemm_ukernel_7x4v__rvv
  pack: xnn_pack_f32_gemm_goi_w
  k-block: 1
