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 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
165 #define SK_ARM_ARCH 6 | 165 #define SK_ARM_ARCH 6 |
166 #elif defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) \ | 166 #elif defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) \ |
167 || defined(__ARM_ARCH_5E__) || defined(__ARM_ARCH_5TE__) \ | 167 || defined(__ARM_ARCH_5E__) || defined(__ARM_ARCH_5TE__) \ |
168 || defined(__ARM_ARCH_5TEJ__) || defined(_ARM_ARCH_5) | 168 || defined(__ARM_ARCH_5TEJ__) || defined(_ARM_ARCH_5) |
169 #define SK_ARM_ARCH 5 | 169 #define SK_ARM_ARCH 5 |
170 #elif defined(__ARM_ARCH_4__) || defined(__ARM_ARCH_4T__) || defined(_AR
M_ARCH_4) | 170 #elif defined(__ARM_ARCH_4__) || defined(__ARM_ARCH_4T__) || defined(_AR
M_ARCH_4) |
171 #define SK_ARM_ARCH 4 | 171 #define SK_ARM_ARCH 4 |
172 #else | 172 #else |
173 #define SK_ARM_ARCH 3 | 173 #define SK_ARM_ARCH 3 |
174 #endif | 174 #endif |
175 | |
176 #if defined(__thumb2__) && (SK_ARM_ARCH >= 6) \ | |
177 || !defined(__thumb__) && ((SK_ARM_ARCH > 5) || defined(__ARM_AR
CH_5E__) \ | |
178 || defined(__ARM_ARCH_5TE__) || defined(__ARM_ARCH_5TEJ__)) | |
179 #define SK_ARM_HAS_EDSP | |
180 #endif | |
181 #endif | 175 #endif |
182 #endif | 176 #endif |
183 | 177 |
184 // Disable ARM64 optimizations for iOS due to complications regarding gyp and iO
S. | 178 // Disable ARM64 optimizations for iOS due to complications regarding gyp and iO
S. |
185 #if defined(__aarch64__) && !defined(SK_BUILD_FOR_IOS) | 179 #if defined(__aarch64__) && !defined(SK_BUILD_FOR_IOS) |
186 #define SK_CPU_ARM64 | 180 #define SK_CPU_ARM64 |
187 #endif | 181 #endif |
188 | 182 |
189 // All 64-bit ARM chips have NEON. Many 32-bit ARM chips do too. | 183 // All 64-bit ARM chips have NEON. Many 32-bit ARM chips do too. |
190 // TODO: Why don't we want NEON on iOS? | 184 // TODO: Why don't we want NEON on iOS? |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
250 * | 244 * |
251 * NOTE: Clang/ARM (r161757) does not support the 'optimize' attribute. | 245 * NOTE: Clang/ARM (r161757) does not support the 'optimize' attribute. |
252 */ | 246 */ |
253 #if SK_HAS_ATTRIBUTE(optimize) | 247 #if SK_HAS_ATTRIBUTE(optimize) |
254 # define SK_ATTRIBUTE_OPTIMIZE_O1 __attribute__((optimize("O1"))) | 248 # define SK_ATTRIBUTE_OPTIMIZE_O1 __attribute__((optimize("O1"))) |
255 #else | 249 #else |
256 # define SK_ATTRIBUTE_OPTIMIZE_O1 /* nothing */ | 250 # define SK_ATTRIBUTE_OPTIMIZE_O1 /* nothing */ |
257 #endif | 251 #endif |
258 | 252 |
259 #endif | 253 #endif |
OLD | NEW |