Track separate ref kernel flags for each sub-config.

Details:
- Renamed CVECFLAGS variables in sub-configurations' make_defs.mk files
  to CKVECFLAGS.
- Added default defintions of two new make variables to most sub-
  configurations' make_defs.mk files--CROPTFLAGS and CRVECFLAGS--
  which correspond to reference kernel analogues of the CKOPTFLAGS
  and CKVECFLAGS, which track optimization and vectorization flags for
  optimized kernels. Currently, two sub-configurations (knl and skx)
  explicitly set CRVECFLAGS to non-default values (using AVX2 instead of
  AVX-512 for reference kernels. Thanks to Jeff Hammond, whose feedback
  prompted me to make this change (issue #187).
- Changed common.mk so that the get-refkern-cflags-for function returns
  the flags associated with the given sub-configuration's CROPTFLAGS
  and CRVECFLAGS (instead of CKOPTFLAGS and CKVECFLAGS).
This commit is contained in:
Field G. Van Zee
2018-04-06 18:51:43 -05:00
parent b9aebce194
commit bd0276752c
29 changed files with 160 additions and 58 deletions

View File

@@ -67,13 +67,13 @@ endif
CKOPTFLAGS := $(COPTFLAGS)
ifeq ($(CC_VENDOR),gcc)
CVECFLAGS :=
CKVECFLAGS :=
else
ifeq ($(CC_VENDOR),icc)
CVECFLAGS :=
CKVECFLAGS :=
else
ifeq ($(CC_VENDOR),clang)
CVECFLAGS :=
CKVECFLAGS :=
else
$(error gcc, icc, or clang is required for this configuration.)
endif