OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2006 The Android Open Source Project | 2 * Copyright 2006 The Android Open Source Project |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 | 7 |
8 // IWYU pragma: private, include "SkTypes.h" | 8 // IWYU pragma: private, include "SkTypes.h" |
9 | 9 |
10 #ifndef SkPreConfig_DEFINED | 10 #ifndef SkPreConfig_DEFINED |
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
186 | 186 |
187 #if defined(__aarch64__) && !defined(SK_BUILD_NO_OPTS) | 187 #if defined(__aarch64__) && !defined(SK_BUILD_NO_OPTS) |
188 #define SK_CPU_ARM64 | 188 #define SK_CPU_ARM64 |
189 #endif | 189 #endif |
190 | 190 |
191 // All 64-bit ARM chips have NEON. Many 32-bit ARM chips do too. | 191 // All 64-bit ARM chips have NEON. Many 32-bit ARM chips do too. |
192 #if !defined(SK_ARM_HAS_NEON) && !defined(SK_BUILD_NO_OPTS) && (defined(__ARM_NE
ON__) || defined(__ARM_NEON)) | 192 #if !defined(SK_ARM_HAS_NEON) && !defined(SK_BUILD_NO_OPTS) && (defined(__ARM_NE
ON__) || defined(__ARM_NEON)) |
193 #define SK_ARM_HAS_NEON | 193 #define SK_ARM_HAS_NEON |
194 #endif | 194 #endif |
195 | 195 |
| 196 // Really this __APPLE__ check shouldn't be necessary, but it seems that Apple's
Clang defines |
| 197 // __ARM_FEATURE_CRC32 for -arch arm64, even though their chips don't support th
ose instructions! |
| 198 #if defined(__ARM_FEATURE_CRC32) && !defined(__APPLE__) |
| 199 #define SK_ARM_HAS_CRC32 |
| 200 #endif |
| 201 |
196 ////////////////////////////////////////////////////////////////////// | 202 ////////////////////////////////////////////////////////////////////// |
197 | 203 |
198 #if !defined(SKIA_IMPLEMENTATION) | 204 #if !defined(SKIA_IMPLEMENTATION) |
199 #define SKIA_IMPLEMENTATION 0 | 205 #define SKIA_IMPLEMENTATION 0 |
200 #endif | 206 #endif |
201 | 207 |
202 #if !defined(SK_API) | 208 #if !defined(SK_API) |
203 #if defined(SKIA_DLL) | 209 #if defined(SKIA_DLL) |
204 #if defined(_MSC_VER) | 210 #if defined(_MSC_VER) |
205 #if SKIA_IMPLEMENTATION | 211 #if SKIA_IMPLEMENTATION |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
253 * | 259 * |
254 * NOTE: Clang/ARM (r161757) does not support the 'optimize' attribute. | 260 * NOTE: Clang/ARM (r161757) does not support the 'optimize' attribute. |
255 */ | 261 */ |
256 #if SK_HAS_ATTRIBUTE(optimize) | 262 #if SK_HAS_ATTRIBUTE(optimize) |
257 # define SK_ATTRIBUTE_OPTIMIZE_O1 __attribute__((optimize("O1"))) | 263 # define SK_ATTRIBUTE_OPTIMIZE_O1 __attribute__((optimize("O1"))) |
258 #else | 264 #else |
259 # define SK_ATTRIBUTE_OPTIMIZE_O1 /* nothing */ | 265 # define SK_ATTRIBUTE_OPTIMIZE_O1 /* nothing */ |
260 #endif | 266 #endif |
261 | 267 |
262 #endif | 268 #endif |
OLD | NEW |