xref: /third_party/libjpeg-turbo/jconfigint.h (revision 3b921b29)
1/*
2 * Copyright (c) 2023 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16#ifndef THIRD_PARTY_LIBJPEG_TURBO_JCONFIGINT_H
17#define THIRD_PARTY_LIBJPEG_TURBO_JCONFIGINT_H
18
19
20/* libjpeg-turbo build number */
21#define BUILD  "20230329"
22
23/* Compiler's inline keyword */
24#undef inline
25
26/* How to obtain function inlining. */
27#ifdef _MSC_VER
28#define INLINE __forceinline
29#else
30#define INLINE  __inline__ __attribute__((always_inline))
31#endif
32
33/* How to obtain thread-local storage */
34#define THREAD_LOCAL
35
36/* Define to the full name of this package. */
37#define PACKAGE_NAME  "libjpeg-turbo"
38
39/* Version number of package */
40#define VERSION  "2.1.4"
41
42/* The size of `size_t', as computed by sizeof. */
43#ifdef __SIZEOF_SIZE_T__
44#define SIZEOF_SIZE_T __SIZEOF_SIZE_T__
45#elif __WORDSIZE==64 || defined(_WIN64)
46#define SIZEOF_SIZE_T 8
47#else
48#define SIZEOF_SIZE_T 4
49#endif
50
51/* Define if your compiler has __builtin_ctzl() and sizeof(unsigned long) == sizeof(size_t). */
52#define HAVE_BUILTIN_CTZL
53
54/* Define to 1 if you have the <intrin.h> header file. */
55/* #undef HAVE_INTRIN_H */
56
57#if defined(_MSC_VER) && defined(HAVE_INTRIN_H)
58#if (SIZEOF_SIZE_T == 8)
59#define HAVE_BITSCANFORWARD64
60#elif (SIZEOF_SIZE_T == 4)
61#define HAVE_BITSCANFORWARD
62#endif
63#endif
64
65#if defined(__has_attribute)
66#if __has_attribute(fallthrough)
67#define FALLTHROUGH  __attribute__((fallthrough));
68#else
69#define FALLTHROUGH
70#endif
71#else
72#define FALLTHROUGH
73#endif
74
75#endif
76