forked from pytorch/pytorch
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcommon_avx512.cc
23 lines (20 loc) · 974 Bytes
/
common_avx512.cc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// This file is here merely to check that the flags are not mixed up: for
// example, if your compiler did not specify -mavx512f, -mavx512dq, and
// -mavx512vl you should not provide the CAFFE2_PERF_WITH_AVX512 macro.
#include "caffe2/core/common.h"
#ifdef CAFFE2_PERF_WITH_AVX512
#if !defined(__AVX512F__) || !defined(__AVX512DQ__) || !defined(__AVX512VL__)
#error( \
"You found a build system error: CAFFE2_PERF_WITH_AVX512 is defined" \
"but __AVX512F__, __AVX512DQ__, or __AVX512VL is not defined" \
"(via e.g. -mavx512f, -mavx512dq, and -mavx512vl).");
#endif
#endif // CAFFE2_PERF_WITH_AVX512
#if defined(__AVX512F__) && defined(__AVX512DQ__) && defined(__AVX512VL__)
#ifndef CAFFE2_PERF_WITH_AVX512
#error( \
"You found a build system error: __AVX512F__, __AVX512DQ__, __AVX512VL__ " \
"is defined (via e.g. -mavx512f, -mavx512dq, and -mavx512vl) " \
"but CAFFE2_PERF_WITH_AVX512 is not defined.");
#endif // CAFFE2_PERF_WITH_AVX512
#endif