| OLD | NEW |
| 1 | 1 |
| 2 /* | 2 /* |
| 3 * Copyright 2006 The Android Open Source Project | 3 * Copyright 2006 The Android Open Source Project |
| 4 * | 4 * |
| 5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
| 6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
| 7 */ | 7 */ |
| 8 | 8 |
| 9 | 9 |
| 10 #ifndef SkPreConfig_DEFINED | 10 #ifndef SkPreConfig_DEFINED |
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 116 * SK_CPU_SSE_LEVEL | 116 * SK_CPU_SSE_LEVEL |
| 117 * | 117 * |
| 118 * If defined, SK_CPU_SSE_LEVEL should be set to the highest supported level. | 118 * If defined, SK_CPU_SSE_LEVEL should be set to the highest supported level. |
| 119 * On non-intel CPU this should be undefined. | 119 * On non-intel CPU this should be undefined. |
| 120 */ | 120 */ |
| 121 | 121 |
| 122 #define SK_CPU_SSE_LEVEL_SSE1 10 | 122 #define SK_CPU_SSE_LEVEL_SSE1 10 |
| 123 #define SK_CPU_SSE_LEVEL_SSE2 20 | 123 #define SK_CPU_SSE_LEVEL_SSE2 20 |
| 124 #define SK_CPU_SSE_LEVEL_SSE3 30 | 124 #define SK_CPU_SSE_LEVEL_SSE3 30 |
| 125 #define SK_CPU_SSE_LEVEL_SSSE3 31 | 125 #define SK_CPU_SSE_LEVEL_SSSE3 31 |
| 126 #define SK_CPU_SSE_LEVEL_SSE41 41 | |
| 127 #define SK_CPU_SSE_LEVEL_SSE42 42 | |
| 128 | 126 |
| 129 // Are we in GCC? | 127 // Are we in GCC? |
| 130 #ifndef SK_CPU_SSE_LEVEL | 128 #ifndef SK_CPU_SSE_LEVEL |
| 131 // These checks must be done in descending order to ensure we set the highes
t | 129 // These checks must be done in descending order to ensure we set the highes
t |
| 132 // available SSE level. | 130 // available SSE level. |
| 133 #if defined(__SSE4_2__) | 131 #if defined(__SSSE3__) |
| 134 #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSE42 | |
| 135 #elif defined(__SSE4_1__) | |
| 136 #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSE41 | |
| 137 #elif defined(__SSSE3__) | |
| 138 #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSSE3 | 132 #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSSE3 |
| 139 #elif defined(__SSE3__) | 133 #elif defined(__SSE3__) |
| 140 #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSE3 | 134 #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSE3 |
| 141 #elif defined(__SSE2__) | 135 #elif defined(__SSE2__) |
| 142 #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSE2 | 136 #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SSE2 |
| 143 #endif | 137 #endif |
| 144 #endif | 138 #endif |
| 145 | 139 |
| 146 // Are we in VisualStudio? | 140 // Are we in VisualStudio? |
| 147 #ifndef SK_CPU_SSE_LEVEL | 141 #ifndef SK_CPU_SSE_LEVEL |
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 253 * | 247 * |
| 254 * NOTE: Clang/ARM (r161757) does not support the 'optimize' attribute. | 248 * NOTE: Clang/ARM (r161757) does not support the 'optimize' attribute. |
| 255 */ | 249 */ |
| 256 #if SK_HAS_ATTRIBUTE(optimize) | 250 #if SK_HAS_ATTRIBUTE(optimize) |
| 257 # define SK_ATTRIBUTE_OPTIMIZE_O1 __attribute__((optimize("O1"))) | 251 # define SK_ATTRIBUTE_OPTIMIZE_O1 __attribute__((optimize("O1"))) |
| 258 #else | 252 #else |
| 259 # define SK_ATTRIBUTE_OPTIMIZE_O1 /* nothing */ | 253 # define SK_ATTRIBUTE_OPTIMIZE_O1 /* nothing */ |
| 260 #endif | 254 #endif |
| 261 | 255 |
| 262 #endif | 256 #endif |
| OLD | NEW |