xref: /aosp_15_r20/external/webrtc/third_party/crc32c/src/src/crc32c_config.h.in (revision d9f758449e529ab9291ac668be2861e7a55c2422)
1// Copyright 2017 The CRC32C Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file. See the AUTHORS file for names of contributors.
4
5#ifndef CRC32C_CRC32C_CONFIG_H_
6#define CRC32C_CRC32C_CONFIG_H_
7
8// Define to 1 if building for a big-endian platform.
9#cmakedefine01 BYTE_ORDER_BIG_ENDIAN
10
11// Define to 1 if the compiler has the __builtin_prefetch intrinsic.
12#cmakedefine01 HAVE_BUILTIN_PREFETCH
13
14// Define to 1 if targeting X86 and the compiler has the _mm_prefetch intrinsic.
15#cmakedefine01 HAVE_MM_PREFETCH
16
17// Define to 1 if targeting X86 and the compiler has the _mm_crc32_u{8,32,64}
18// intrinsics.
19#cmakedefine01 HAVE_SSE42
20
21// Define to 1 if targeting ARM and the compiler has the __crc32c{b,h,w,d} and
22// the vmull_p64 intrinsics.
23#cmakedefine01 HAVE_ARM64_CRC32C
24
25// Define to 1 if the system libraries have the getauxval function in the
26// <sys/auxv.h> header. Should be true on Linux and Android API level 20+.
27#cmakedefine01 HAVE_STRONG_GETAUXVAL
28
29// Define to 1 if the compiler supports defining getauxval as a weak symbol.
30// Should be true for any compiler that supports __attribute__((weak)).
31#cmakedefine01 HAVE_WEAK_GETAUXVAL
32
33// Define to 1 if CRC32C tests have been built with Google Logging.
34#cmakedefine01 CRC32C_TESTS_BUILT_WITH_GLOG
35
36#endif  // CRC32C_CRC32C_CONFIG_H_
37