Caffe2 - C++ API
A deep learning, cross platform ML framework
int8_simd.h
1 #pragma once
2 
3 // We want to allow 128-bit wide SIMD if either NEON is available (as
4 // detected by GEMMLOWP_NEON), or whether SSE4.2 and Clang is
5 // available (in which case we will use the neon_sse.h library to
6 // share source between the two implementations). We use SSE4.2 to
7 // ensure we can use the full neon2sse library, and we use Clang as
8 // GCC has issues correctly compiling some parts of the neon2sse
9 // library.
10 
11 // Otherwise, the INT8_NEON_SIMD variable will be undefined.
12 
13 #include "gemmlowp/fixedpoint/fixedpoint.h"
14 #include "gemmlowp/public/gemmlowp.h"
15 
16 #ifdef GEMMLOWP_NEON
17 #define INT8_NEON_SIMD
18 #endif
19 
20 #if defined(__SSE4_2__) && defined(__clang__)
21 #include "NEON_2_SSE.h"
22 #define INT8_NEON_SIMD
23 #endif