OLD | NEW |
1 #ifndef Sk4x_DEFINED | 1 #ifndef Sk4x_DEFINED |
2 #define Sk4x_DEFINED | 2 #define Sk4x_DEFINED |
3 | 3 |
4 #include "SkTypes.h" | 4 #include "SkTypes.h" |
5 | 5 |
6 #define SK4X_PREAMBLE 1 | 6 #define SK4X_PREAMBLE 1 |
7 #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2 | 7 #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2 |
8 #include "Sk4x_sse.h" | 8 #include "Sk4x_sse.h" |
| 9 #elif defined(SK_ARM_HAS_NEON) |
| 10 #include "Sk4x_neon.h" |
9 #else | 11 #else |
10 #include "Sk4x_portable.h" | 12 #include "Sk4x_portable.h" |
11 #endif | 13 #endif |
12 #undef SK4X_PREAMBLE | 14 #undef SK4X_PREAMBLE |
13 | 15 |
14 template <typename T> class Sk4x; | 16 template <typename T> class Sk4x; |
15 typedef Sk4x<float> Sk4f; | 17 typedef Sk4x<float> Sk4f; |
16 typedef Sk4x<int32_t> Sk4i; | 18 typedef Sk4x<int32_t> Sk4i; |
17 | 19 |
18 // Some Sk4x methods are implemented only for Sk4f or Sk4i. | 20 // Some Sk4x methods are implemented only for Sk4f or Sk4i. |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
74 // static Sk4x XAYB(const Sk4x& xyzw, const Sk4x& abcd); | 76 // static Sk4x XAYB(const Sk4x& xyzw, const Sk4x& abcd); |
75 // static Sk4x ZCWD(const Sk4x& xyzw, const Sk4x& abcd); | 77 // static Sk4x ZCWD(const Sk4x& xyzw, const Sk4x& abcd); |
76 | 78 |
77 private: | 79 private: |
78 // It's handy to have Sk4f and Sk4i be mutual friends. | 80 // It's handy to have Sk4f and Sk4i be mutual friends. |
79 template <typename S> friend class Sk4x; | 81 template <typename S> friend class Sk4x; |
80 | 82 |
81 #define SK4X_PRIVATE 1 | 83 #define SK4X_PRIVATE 1 |
82 #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2 | 84 #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2 |
83 #include "Sk4x_sse.h" | 85 #include "Sk4x_sse.h" |
| 86 #elif defined(SK_ARM_HAS_NEON) |
| 87 #include "Sk4x_neon.h" |
84 #else | 88 #else |
85 #include "Sk4x_portable.h" | 89 #include "Sk4x_portable.h" |
86 #endif | 90 #endif |
87 #undef SK4X_PRIVATE | 91 #undef SK4X_PRIVATE |
88 }; | 92 }; |
89 | 93 |
90 #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2 | 94 #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2 |
91 #include "Sk4x_sse.h" | 95 #include "Sk4x_sse.h" |
| 96 #elif defined(SK_ARM_HAS_NEON) |
| 97 #include "Sk4x_neon.h" |
92 #else | 98 #else |
93 #include "Sk4x_portable.h" | 99 #include "Sk4x_portable.h" |
94 #endif | 100 #endif |
95 | 101 |
96 #endif//Sk4x_DEFINED | 102 #endif//Sk4x_DEFINED |
OLD | NEW |