Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(71)

Side by Side Diff: src/core/Sk4x.h

Issue 1021713004: Reorg Sk4x to match the pattern of SkPMFloat. (Closed) Base URL: https://skia.googlesource.com/skia@master
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | src/core/Sk4x_neon.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 "../opts/Sk4x_sse.h"
9 #elif defined(SK_ARM_HAS_NEON) 9 #elif defined(SK_ARM_HAS_NEON)
10 #include "Sk4x_neon.h" 10 #include "../opts/Sk4x_neon.h"
11 #else 11 #else
12 #include "Sk4x_portable.h" 12 #include "../opts/Sk4x_none.h"
13 #endif 13 #endif
14 #undef SK4X_PREAMBLE 14 #undef SK4X_PREAMBLE
15 15
16 template <typename T> class Sk4x; 16 template <typename T> class Sk4x;
17 typedef Sk4x<float> Sk4f; 17 typedef Sk4x<float> Sk4f;
18 typedef Sk4x<int32_t> Sk4i; 18 typedef Sk4x<int32_t> Sk4i;
19 19
20 // Some Sk4x methods are implemented only for Sk4f or Sk4i. 20 // Some Sk4x methods are implemented only for Sk4f or Sk4i.
21 // They might be unavailable, really slow, or just a bad idea. 21 // They might be unavailable, really slow, or just a bad idea.
22 // Talk to mtklein if you find yourself unable to link and 22 // Talk to mtklein if you find yourself unable to link and
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
87 // TODO: these are particularly efficient in SSE. Useful? Also efficient i n NEON? 87 // TODO: these are particularly efficient in SSE. Useful? Also efficient i n NEON?
88 // static Sk4x XAYB(const Sk4x& xyzw, const Sk4x& abcd); 88 // static Sk4x XAYB(const Sk4x& xyzw, const Sk4x& abcd);
89 // static Sk4x ZCWD(const Sk4x& xyzw, const Sk4x& abcd); 89 // static Sk4x ZCWD(const Sk4x& xyzw, const Sk4x& abcd);
90 90
91 private: 91 private:
92 // It's handy to have Sk4f and Sk4i be mutual friends. 92 // It's handy to have Sk4f and Sk4i be mutual friends.
93 template <typename S> friend class Sk4x; 93 template <typename S> friend class Sk4x;
94 94
95 #define SK4X_PRIVATE 1 95 #define SK4X_PRIVATE 1
96 #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2 96 #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2
97 #include "Sk4x_sse.h" 97 #include "../opts/Sk4x_sse.h"
98 #elif defined(SK_ARM_HAS_NEON) 98 #elif defined(SK_ARM_HAS_NEON)
99 #include "Sk4x_neon.h" 99 #include "../opts/Sk4x_neon.h"
100 #else 100 #else
101 #include "Sk4x_portable.h" 101 #include "../opts/Sk4x_none.h"
102 #endif 102 #endif
103 #undef SK4X_PRIVATE 103 #undef SK4X_PRIVATE
104 }; 104 };
105 105
106 #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2 106 #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2
107 #include "Sk4x_sse.h" 107 #include "../opts/Sk4x_sse.h"
108 #elif defined(SK_ARM_HAS_NEON) 108 #elif defined(SK_ARM_HAS_NEON)
109 #include "Sk4x_neon.h" 109 #include "../opts/Sk4x_neon.h"
110 #else 110 #else
111 #include "Sk4x_portable.h" 111 #include "../opts/Sk4x_none.h"
112 #endif 112 #endif
113 113
114 #endif//Sk4x_DEFINED 114 #endif//Sk4x_DEFINED
OLDNEW
« no previous file with comments | « no previous file | src/core/Sk4x_neon.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698