#
# In this file, any line beginning with a '#' is ignored, but the # must be in
# column 0.  All multiple whitespace is reduced to one space (i.e. used only
# to distinguish where words begin/end).  Lines may be extended by putting '\'
# as the *last* character of line.
#
# The file has the following format:
# ROUT='routine name' AUTH='author names' COMP='compiler name' FLAGS='flags'
# ID=<id> YU=<yu> XU=<xu> minY=<#> minX=<#> alignX=<#> alignY=<#> alignA=<#>,
# SSE=[0,1,2,3] X87=[0,1] PREF[a,x,y]=[DIST,INSTDIST, INST] LDAMUL=<#>
# ALLALIGNXY=[0,1] GEMMBASED=[0,1] CONJDEF=[0,1] FYU=[0,1]
# ASM=[asmlist], eg., asmlist is "GAS_x8664,GAS_x8632" or "GAS_SPARC"
# ASM defaults to no assembly dialect required.
# If YU/XU is negative, then the routine can only handle multiples of YU/XU.
#
# Assuming M is the length of X, and N is the length of Y, all routines
# are assumed to handle any runtime value of N >= minY, M >= minX.
# They must respect the compile-time macros BETA0, BETA1, & BETAX.
# Some less-obvious keywords:
# LDAMUL    : Kernel will only work if lda is a multiple of # (in bytes)
# PFTUNEx   : Kernel uses pref_x(mem) macro for each op=x (A,y,x).  prefetch
#             inst can be varied wt this macro, as can fetch distance.
#             If set to INSTDIST, tune both distance and instruction type;
#             If set to INST, tune instruction type only
#             If set to DIST, tune distance only
# FYU       : if set, kernel can only handle N where N%YU == 0
ID=1 XU=16 YU=1  AUTH='R. Clint Whaley' ROUT='ATL_gerk_axpy.c'
ID=2 XU=4  YU=4  AUTH='R. Clint Whaley' ROUT='ATL_gerk_4x4_1.c'
ID=3 XU=1  YU=4  AUTH='R. Clint Whaley' ROUT='ATL_gerk_1x4_0.c'
ID=4 XU=8  YU=4  AUTH='R. Clint Whaley' ROUT='ATL_gerk_8x4_0.c'
