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

Side by Side Diff: third_party/libwebp/dsp/dsp.h

Issue 95873002: skip neon code in libwebp when neon is explicitly unavailable (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: don't forget arm_neon_optional Created 7 years 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 | Annotate | Revision Log
« no previous file with comments | « third_party/libwebp/dsp/dec.c ('k') | third_party/libwebp/dsp/enc.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2011 Google Inc. All Rights Reserved. 1 // Copyright 2011 Google Inc. All Rights Reserved.
2 // 2 //
3 // Use of this source code is governed by a BSD-style license 3 // Use of this source code is governed by a BSD-style license
4 // that can be found in the COPYING file in the root of the source 4 // that can be found in the COPYING file in the root of the source
5 // tree. An additional intellectual property rights grant can be found 5 // tree. An additional intellectual property rights grant can be found
6 // in the file PATENTS. All contributing project authors may 6 // in the file PATENTS. All contributing project authors may
7 // be found in the AUTHORS file in the root of the source tree. 7 // be found in the AUTHORS file in the root of the source tree.
8 // ----------------------------------------------------------------------------- 8 // -----------------------------------------------------------------------------
9 // 9 //
10 // Speed-critical functions. 10 // Speed-critical functions.
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after
153 uint8_t* top_dst, uint8_t* bottom_dst, int len); 153 uint8_t* top_dst, uint8_t* bottom_dst, int len);
154 154
155 #ifdef FANCY_UPSAMPLING 155 #ifdef FANCY_UPSAMPLING
156 156
157 // Fancy upsampling functions to convert YUV to RGB(A) modes 157 // Fancy upsampling functions to convert YUV to RGB(A) modes
158 extern WebPUpsampleLinePairFunc WebPUpsamplers[/* MODE_LAST */]; 158 extern WebPUpsampleLinePairFunc WebPUpsamplers[/* MODE_LAST */];
159 159
160 // Initializes SSE2 version of the fancy upsamplers. 160 // Initializes SSE2 version of the fancy upsamplers.
161 void WebPInitUpsamplersSSE2(void); 161 void WebPInitUpsamplersSSE2(void);
162 162
163 #if defined(WEBP_USE_NEON)
163 // NEON version 164 // NEON version
164 void WebPInitUpsamplersNEON(void); 165 void WebPInitUpsamplersNEON(void);
166 #endif
165 167
166 #endif // FANCY_UPSAMPLING 168 #endif // FANCY_UPSAMPLING
167 169
168 // Point-sampling methods. 170 // Point-sampling methods.
169 typedef void (*WebPSampleLinePairFunc)( 171 typedef void (*WebPSampleLinePairFunc)(
170 const uint8_t* top_y, const uint8_t* bottom_y, 172 const uint8_t* top_y, const uint8_t* bottom_y,
171 const uint8_t* u, const uint8_t* v, 173 const uint8_t* u, const uint8_t* v,
172 uint8_t* top_dst, uint8_t* bottom_dst, int len); 174 uint8_t* top_dst, uint8_t* bottom_dst, int len);
173 175
174 extern const WebPSampleLinePairFunc WebPSamplers[/* MODE_LAST */]; 176 extern const WebPSampleLinePairFunc WebPSamplers[/* MODE_LAST */];
(...skipping 22 matching lines...) Expand all
197 uint8_t* rgba, int alpha_first, int w, int h, int stride); 199 uint8_t* rgba, int alpha_first, int w, int h, int stride);
198 200
199 // Same, buf specifically for RGBA4444 format 201 // Same, buf specifically for RGBA4444 format
200 extern void (*WebPApplyAlphaMultiply4444)( 202 extern void (*WebPApplyAlphaMultiply4444)(
201 uint8_t* rgba4444, int w, int h, int stride); 203 uint8_t* rgba4444, int w, int h, int stride);
202 204
203 // To be called first before using the above. 205 // To be called first before using the above.
204 void WebPInitPremultiply(void); 206 void WebPInitPremultiply(void);
205 207
206 void WebPInitPremultiplySSE2(void); // should not be called directly. 208 void WebPInitPremultiplySSE2(void); // should not be called directly.
209
210 #if defined(WEBP_USE_NEON)
207 void WebPInitPremultiplyNEON(void); 211 void WebPInitPremultiplyNEON(void);
212 #endif
208 213
209 //------------------------------------------------------------------------------ 214 //------------------------------------------------------------------------------
210 215
211 #if defined(__cplusplus) || defined(c_plusplus) 216 #if defined(__cplusplus) || defined(c_plusplus)
212 } // extern "C" 217 } // extern "C"
213 #endif 218 #endif
214 219
215 #endif /* WEBP_DSP_DSP_H_ */ 220 #endif /* WEBP_DSP_DSP_H_ */
OLDNEW
« no previous file with comments | « third_party/libwebp/dsp/dec.c ('k') | third_party/libwebp/dsp/enc.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698