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

Side by Side Diff: source/row_common.cc

Issue 1344393002: Add H422ToARGB armv7 neon version. (Closed) Base URL: https://chromium.googlesource.com/libyuv/libyuv@master
Patch Set: update comments. Created 5 years, 3 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 | « source/row_any.cc ('k') | source/row_neon.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2011 The LibYuv Project Authors. All rights reserved. 2 * Copyright 2011 The LibYuv Project Authors. All rights reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 2260 matching lines...) Expand 10 before | Expand all | Expand 10 after
2271 dst_frame[2] = src_v[0]; 2271 dst_frame[2] = src_v[0];
2272 dst_frame[3] = 0; 2272 dst_frame[3] = 0;
2273 } 2273 }
2274 } 2274 }
2275 2275
2276 extern struct YuvConstants kYuvConstants; 2276 extern struct YuvConstants kYuvConstants;
2277 extern struct YuvConstants kYuvJConstants; 2277 extern struct YuvConstants kYuvJConstants;
2278 extern struct YuvConstants kYuvHConstants; 2278 extern struct YuvConstants kYuvHConstants;
2279 extern struct YuvConstantsNEON kYuvConstantsNEON; 2279 extern struct YuvConstantsNEON kYuvConstantsNEON;
2280 extern struct YuvConstantsNEON kYuvJConstantsNEON; 2280 extern struct YuvConstantsNEON kYuvJConstantsNEON;
2281 extern struct YuvConstantsNEON kYuvHConstantsNEON;
2281 2282
2282 #define ANYYUV(NAMEANY, ANY_SIMD, YUVCONSTANTS) \ 2283 #define ANYYUV(NAMEANY, ANY_SIMD, YUVCONSTANTS) \
2283 void NAMEANY(const uint8* y_buf, \ 2284 void NAMEANY(const uint8* y_buf, \
2284 const uint8* u_buf, \ 2285 const uint8* u_buf, \
2285 const uint8* v_buf, \ 2286 const uint8* v_buf, \
2286 uint8* dst_argb, \ 2287 uint8* dst_argb, \
2287 int width) { \ 2288 int width) { \
2288 ANY_SIMD(y_buf, u_buf, v_buf, dst_argb, &YUVCONSTANTS, width); \ 2289 ANY_SIMD(y_buf, u_buf, v_buf, dst_argb, &YUVCONSTANTS, width); \
2289 } 2290 }
2290 2291
2291 #ifdef HAS_I422TOARGBMATRIXROW_NEON 2292 #ifdef HAS_I422TOARGBMATRIXROW_NEON
2292 ANYYUV(I422ToARGBRow_NEON, I422ToARGBMatrixRow_NEON, kYuvConstantsNEON) 2293 ANYYUV(I422ToARGBRow_NEON, I422ToARGBMatrixRow_NEON, kYuvConstantsNEON)
2293 ANYYUV(J422ToARGBRow_NEON, I422ToARGBMatrixRow_NEON, kYuvJConstantsNEON) 2294 ANYYUV(J422ToARGBRow_NEON, I422ToARGBMatrixRow_NEON, kYuvJConstantsNEON)
2294 //ANYYUV(H422ToARGBRow_NEON, I422ToARGBMatrixRow_NEON, kYuvHConstantsNEON) 2295 ANYYUV(H422ToARGBRow_NEON, I422ToARGBMatrixRow_NEON, kYuvHConstantsNEON)
2295 #endif 2296 #endif
2296 2297
2297 #ifdef HAS_I422TOARGBMATRIXROW_SSSE3 2298 #ifdef HAS_I422TOARGBMATRIXROW_SSSE3
2298 ANYYUV(I422ToARGBRow_SSSE3, I422ToARGBMatrixRow_SSSE3, kYuvConstants) 2299 ANYYUV(I422ToARGBRow_SSSE3, I422ToARGBMatrixRow_SSSE3, kYuvConstants)
2299 ANYYUV(J422ToARGBRow_SSSE3, I422ToARGBMatrixRow_SSSE3, kYuvJConstants) 2300 ANYYUV(J422ToARGBRow_SSSE3, I422ToARGBMatrixRow_SSSE3, kYuvJConstants)
2300 ANYYUV(H422ToARGBRow_SSSE3, I422ToARGBMatrixRow_SSSE3, kYuvHConstants) 2301 ANYYUV(H422ToARGBRow_SSSE3, I422ToARGBMatrixRow_SSSE3, kYuvHConstants)
2301 #endif 2302 #endif
2302 #ifdef HAS_I422TOARGBMATRIXROW_AVX2 2303 #ifdef HAS_I422TOARGBMATRIXROW_AVX2
2303 ANYYUV(I422ToARGBRow_AVX2, I422ToARGBMatrixRow_AVX2, kYuvConstants) 2304 ANYYUV(I422ToARGBRow_AVX2, I422ToARGBMatrixRow_AVX2, kYuvConstants)
2304 ANYYUV(J422ToARGBRow_AVX2, I422ToARGBMatrixRow_AVX2, kYuvJConstants) 2305 ANYYUV(J422ToARGBRow_AVX2, I422ToARGBMatrixRow_AVX2, kYuvJConstants)
(...skipping 421 matching lines...) Expand 10 before | Expand all | Expand 10 after
2726 } 2727 }
2727 if (width & 1) { 2728 if (width & 1) {
2728 dst[3] = src[0]; 2729 dst[3] = src[0];
2729 } 2730 }
2730 } 2731 }
2731 2732
2732 #ifdef __cplusplus 2733 #ifdef __cplusplus
2733 } // extern "C" 2734 } // extern "C"
2734 } // namespace libyuv 2735 } // namespace libyuv
2735 #endif 2736 #endif
OLDNEW
« no previous file with comments | « source/row_any.cc ('k') | source/row_neon.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698