Grok 10.0.5
Macros
detect_targets.h File Reference
#include "hwy/detect_compiler_arch.h"

Go to the source code of this file.

Macros

#define HWY_AVX3_DL   (1LL << 7)
 
#define HWY_AVX3   (1LL << 8)
 
#define HWY_AVX2   (1LL << 9)
 
#define HWY_SSE4   (1LL << 11)
 
#define HWY_SSSE3   (1LL << 12)
 
#define HWY_HIGHEST_TARGET_BIT_X86   14
 
#define HWY_SVE2_128   (1LL << 24)
 
#define HWY_SVE_256   (1LL << 25)
 
#define HWY_SVE2   (1LL << 26)
 
#define HWY_SVE   (1LL << 27)
 
#define HWY_NEON   (1LL << 28)
 
#define HWY_HIGHEST_TARGET_BIT_ARM   29
 
#define HWY_RVV   (1LL << 37)
 
#define HWY_HIGHEST_TARGET_BIT_RVV   38
 
#define HWY_PPC8   (1LL << 49)
 
#define HWY_HIGHEST_TARGET_BIT_PPC   51
 
#define HWY_WASM_EMU256   (1LL << 58)
 
#define HWY_WASM   (1LL << 59)
 
#define HWY_HIGHEST_TARGET_BIT_WASM   60
 
#define HWY_EMU128   (1LL << 61)
 
#define HWY_SCALAR   (1LL << 62)
 
#define HWY_HIGHEST_TARGET_BIT_SCALAR   62
 
#define HWY_DISABLED_TARGETS   0
 
#define HWY_BROKEN_TARGETS   0
 
#define HWY_ENABLED(targets)    ((targets) & ~((HWY_DISABLED_TARGETS) | (HWY_BROKEN_TARGETS)))
 
#define HWY_BROKEN_EMU128   0
 
#define HWY_BASELINE_SCALAR   HWY_EMU128
 
#define HWY_BASELINE_WASM   0
 
#define HWY_BASELINE_PPC8   0
 
#define HWY_BASELINE_SVE2   0
 
#define HWY_BASELINE_SVE   0
 
#define HWY_BASELINE_NEON   0
 
#define HWY_CHECK_SSSE3   0
 
#define HWY_CHECK_SSE4   0
 
#define HWY_CHECK_PCLMUL_AES   0
 
#define HWY_CHECK_BMI2_FMA   0
 
#define HWY_CHECK_F16C   0
 
#define HWY_BASELINE_SSSE3   0
 
#define HWY_BASELINE_SSE4   0
 
#define HWY_BASELINE_AVX2   0
 
#define HWY_BASELINE_AVX3   0
 
#define HWY_BASELINE_AVX3_DL   0
 
#define HWY_BASELINE_RVV   0
 
#define HWY_BASELINE_TARGETS
 
#define HWY_ENABLED_BASELINE   HWY_ENABLED(HWY_BASELINE_TARGETS)
 
#define HWY_STATIC_TARGET   (HWY_ENABLED_BASELINE & -HWY_ENABLED_BASELINE)
 
#define HWY_TARGET   HWY_STATIC_TARGET
 
#define HWY_HAVE_RUNTIME_DISPATCH   0
 
#define HWY_ATTAINABLE_AVX3_DL   0
 
#define HWY_ATTAINABLE_SVE   0
 
#define HWY_ATTAINABLE_SVE2   0
 
#define HWY_ATTAINABLE_TARGETS    (HWY_ENABLED_BASELINE | HWY_ATTAINABLE_SVE | HWY_ATTAINABLE_SVE2)
 
#define HWY_TARGETS    (HWY_ATTAINABLE_TARGETS & ((HWY_STATIC_TARGET - 1LL) | HWY_STATIC_TARGET))
 

Macro Definition Documentation

◆ HWY_ATTAINABLE_AVX3_DL

#define HWY_ATTAINABLE_AVX3_DL   0

◆ HWY_ATTAINABLE_SVE

#define HWY_ATTAINABLE_SVE   0

◆ HWY_ATTAINABLE_SVE2

#define HWY_ATTAINABLE_SVE2   0

◆ HWY_ATTAINABLE_TARGETS

#define HWY_ATTAINABLE_TARGETS    (HWY_ENABLED_BASELINE | HWY_ATTAINABLE_SVE | HWY_ATTAINABLE_SVE2)

◆ HWY_AVX2

#define HWY_AVX2   (1LL << 9)

◆ HWY_AVX3

#define HWY_AVX3   (1LL << 8)

◆ HWY_AVX3_DL

#define HWY_AVX3_DL   (1LL << 7)

◆ HWY_BASELINE_AVX2

#define HWY_BASELINE_AVX2   0

◆ HWY_BASELINE_AVX3

#define HWY_BASELINE_AVX3   0

◆ HWY_BASELINE_AVX3_DL

#define HWY_BASELINE_AVX3_DL   0

◆ HWY_BASELINE_NEON

#define HWY_BASELINE_NEON   0

◆ HWY_BASELINE_PPC8

#define HWY_BASELINE_PPC8   0

◆ HWY_BASELINE_RVV

#define HWY_BASELINE_RVV   0

◆ HWY_BASELINE_SCALAR

#define HWY_BASELINE_SCALAR   HWY_EMU128

◆ HWY_BASELINE_SSE4

#define HWY_BASELINE_SSE4   0

◆ HWY_BASELINE_SSSE3

#define HWY_BASELINE_SSSE3   0

◆ HWY_BASELINE_SVE

#define HWY_BASELINE_SVE   0

◆ HWY_BASELINE_SVE2

#define HWY_BASELINE_SVE2   0

◆ HWY_BASELINE_TARGETS

#define HWY_BASELINE_TARGETS
Value:
HWY_BASELINE_SVE2 | HWY_BASELINE_SVE | HWY_BASELINE_NEON | \
HWY_BASELINE_SSSE3 | HWY_BASELINE_SSE4 | HWY_BASELINE_AVX2 | \
HWY_BASELINE_AVX3 | HWY_BASELINE_AVX3_DL | HWY_BASELINE_RVV)
#define HWY_BASELINE_AVX2
Definition: detect_targets.h:328
#define HWY_BASELINE_SVE
Definition: detect_targets.h:220
#define HWY_BASELINE_RVV
Definition: detect_targets.h:352
#define HWY_BASELINE_PPC8
Definition: detect_targets.h:216
#define HWY_BASELINE_WASM
Definition: detect_targets.h:209
#define HWY_BASELINE_SSE4
Definition: detect_targets.h:321
#define HWY_BASELINE_NEON
Definition: detect_targets.h:221
#define HWY_BASELINE_AVX3_DL
Definition: detect_targets.h:346
#define HWY_BASELINE_SCALAR
Definition: detect_targets.h:196

◆ HWY_BASELINE_WASM

#define HWY_BASELINE_WASM   0

◆ HWY_BROKEN_EMU128

#define HWY_BROKEN_EMU128   0

◆ HWY_BROKEN_TARGETS

#define HWY_BROKEN_TARGETS   0

◆ HWY_CHECK_BMI2_FMA

#define HWY_CHECK_BMI2_FMA   0

◆ HWY_CHECK_F16C

#define HWY_CHECK_F16C   0

◆ HWY_CHECK_PCLMUL_AES

#define HWY_CHECK_PCLMUL_AES   0

◆ HWY_CHECK_SSE4

#define HWY_CHECK_SSE4   0

◆ HWY_CHECK_SSSE3

#define HWY_CHECK_SSSE3   0

◆ HWY_DISABLED_TARGETS

#define HWY_DISABLED_TARGETS   0

◆ HWY_EMU128

#define HWY_EMU128   (1LL << 61)

◆ HWY_ENABLED

#define HWY_ENABLED (   targets)     ((targets) & ~((HWY_DISABLED_TARGETS) | (HWY_BROKEN_TARGETS)))

◆ HWY_ENABLED_BASELINE

#define HWY_ENABLED_BASELINE   HWY_ENABLED(HWY_BASELINE_TARGETS)

◆ HWY_HAVE_RUNTIME_DISPATCH

#define HWY_HAVE_RUNTIME_DISPATCH   0

◆ HWY_HIGHEST_TARGET_BIT_ARM

#define HWY_HIGHEST_TARGET_BIT_ARM   29

◆ HWY_HIGHEST_TARGET_BIT_PPC

#define HWY_HIGHEST_TARGET_BIT_PPC   51

◆ HWY_HIGHEST_TARGET_BIT_RVV

#define HWY_HIGHEST_TARGET_BIT_RVV   38

◆ HWY_HIGHEST_TARGET_BIT_SCALAR

#define HWY_HIGHEST_TARGET_BIT_SCALAR   62

◆ HWY_HIGHEST_TARGET_BIT_WASM

#define HWY_HIGHEST_TARGET_BIT_WASM   60

◆ HWY_HIGHEST_TARGET_BIT_X86

#define HWY_HIGHEST_TARGET_BIT_X86   14

◆ HWY_NEON

#define HWY_NEON   (1LL << 28)

◆ HWY_PPC8

#define HWY_PPC8   (1LL << 49)

◆ HWY_RVV

#define HWY_RVV   (1LL << 37)

◆ HWY_SCALAR

#define HWY_SCALAR   (1LL << 62)

◆ HWY_SSE4

#define HWY_SSE4   (1LL << 11)

◆ HWY_SSSE3

#define HWY_SSSE3   (1LL << 12)

◆ HWY_STATIC_TARGET

#define HWY_STATIC_TARGET   (HWY_ENABLED_BASELINE & -HWY_ENABLED_BASELINE)

◆ HWY_SVE

#define HWY_SVE   (1LL << 27)

◆ HWY_SVE2

#define HWY_SVE2   (1LL << 26)

◆ HWY_SVE2_128

#define HWY_SVE2_128   (1LL << 24)

◆ HWY_SVE_256

#define HWY_SVE_256   (1LL << 25)

◆ HWY_TARGET

#define HWY_TARGET   HWY_STATIC_TARGET

◆ HWY_TARGETS

#define HWY_TARGETS    (HWY_ATTAINABLE_TARGETS & ((HWY_STATIC_TARGET - 1LL) | HWY_STATIC_TARGET))

◆ HWY_WASM

#define HWY_WASM   (1LL << 59)

◆ HWY_WASM_EMU256

#define HWY_WASM_EMU256   (1LL << 58)