OLD | NEW |
1 | 1 |
2 #include "SkColor.h" | 2 #include "SkColor.h" |
3 #include "SkColorPriv.h" | 3 #include "SkColorPriv.h" |
4 #include "SkBlitMask.h" | 4 #include "SkBlitMask.h" |
5 #include "SkUtilsArm.h" | 5 #include "SkUtilsArm.h" |
6 #include "SkBlitMask_opts_arm_neon.h" | 6 #include "SkBlitMask_opts_arm_neon.h" |
7 | 7 |
8 SkBlitMask::ColorProc SkBlitMask::PlatformColorProcs(SkBitmap::Config dstConfig, | 8 SkBlitMask::ColorProc SkBlitMask::PlatformColorProcs(SkBitmap::Config dstConfig, |
9 SkMask::Format maskFormat, | 9 SkMask::Format maskFormat, |
10 SkColor color) { | 10 SkColor color) { |
11 #if SK_ARM_NEON_IS_NONE | 11 #if SK_ARM_NEON_IS_NONE |
12 return NULL; | 12 return NULL; |
13 #else | 13 #else |
| 14 /* ** This has been disabled until we can diagnose and fix the SIGILL generated |
| 15 ** in the NEON code. See http://skbug.com/2067 for details. |
14 #if SK_ARM_NEON_IS_DYNAMIC | 16 #if SK_ARM_NEON_IS_DYNAMIC |
15 if (!sk_cpu_arm_has_neon()) { | 17 if (!sk_cpu_arm_has_neon()) { |
16 return NULL; | 18 return NULL; |
17 } | 19 } |
18 #endif | 20 #endif |
19 if ((SkBitmap::kARGB_8888_Config == dstConfig) && | 21 if ((SkBitmap::kARGB_8888_Config == dstConfig) && |
20 (SkMask::kA8_Format == maskFormat)) { | 22 (SkMask::kA8_Format == maskFormat)) { |
21 return D32_A8_Factory_neon(color); | 23 return D32_A8_Factory_neon(color); |
22 } | 24 } |
| 25 */ |
23 #endif | 26 #endif |
24 | 27 |
25 // We don't need to handle the SkMask::kLCD16_Format case as the default | 28 // We don't need to handle the SkMask::kLCD16_Format case as the default |
26 // LCD16 will call us through SkBlitMask::PlatformBlitRowProcs16() | 29 // LCD16 will call us through SkBlitMask::PlatformBlitRowProcs16() |
27 | 30 |
28 return NULL; | 31 return NULL; |
29 } | 32 } |
30 | 33 |
31 SkBlitMask::BlitLCD16RowProc SkBlitMask::PlatformBlitRowProcs16(bool isOpaque) { | 34 SkBlitMask::BlitLCD16RowProc SkBlitMask::PlatformBlitRowProcs16(bool isOpaque) { |
32 if (isOpaque) { | 35 if (isOpaque) { |
33 return SK_ARM_NEON_WRAP(SkBlitLCD16OpaqueRow); | 36 return SK_ARM_NEON_WRAP(SkBlitLCD16OpaqueRow); |
34 } else { | 37 } else { |
35 return SK_ARM_NEON_WRAP(SkBlitLCD16Row); | 38 return SK_ARM_NEON_WRAP(SkBlitLCD16Row); |
36 } | 39 } |
37 } | 40 } |
38 | 41 |
39 SkBlitMask::RowProc SkBlitMask::PlatformRowProcs(SkBitmap::Config dstConfig, | 42 SkBlitMask::RowProc SkBlitMask::PlatformRowProcs(SkBitmap::Config dstConfig, |
40 SkMask::Format maskFormat, | 43 SkMask::Format maskFormat, |
41 RowFlags flags) { | 44 RowFlags flags) { |
42 return NULL; | 45 return NULL; |
43 } | 46 } |
OLD | NEW |