OLD | NEW |
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 2259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2270 dst_frame[1] = src_y[0]; | 2270 dst_frame[1] = src_y[0]; |
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 | 2281 |
2281 #define ANYYUV(NAMEANY, ANY_SIMD, YUVCONSTANTS) \ | 2282 #define ANYYUV(NAMEANY, ANY_SIMD, YUVCONSTANTS) \ |
2282 void NAMEANY(const uint8* y_buf, \ | 2283 void NAMEANY(const uint8* y_buf, \ |
2283 const uint8* u_buf, \ | 2284 const uint8* u_buf, \ |
2284 const uint8* v_buf, \ | 2285 const uint8* v_buf, \ |
2285 uint8* dst_argb, \ | 2286 uint8* dst_argb, \ |
2286 int width) { \ | 2287 int width) { \ |
2287 ANY_SIMD(y_buf, u_buf, v_buf, dst_argb, &YUVCONSTANTS, width); \ | 2288 ANY_SIMD(y_buf, u_buf, v_buf, dst_argb, &YUVCONSTANTS, width); \ |
2288 } | 2289 } |
2289 | 2290 |
2290 #ifdef HAS_I422TOARGBMATRIXROW_NEON | 2291 #ifdef HAS_I422TOARGBMATRIXROW_NEON |
2291 ANYYUV(I422ToARGBRow_NEON, I422ToARGBMatrixRow_NEON, kYuvConstantsNEON) | 2292 ANYYUV(I422ToARGBRow_NEON, I422ToARGBMatrixRow_NEON, kYuvConstantsNEON) |
2292 //ANYYUV(J422ToARGBRow_NEON, I422ToARGBMatrixRow_NEON, kYuvJConstantsNEON) | 2293 ANYYUV(J422ToARGBRow_NEON, I422ToARGBMatrixRow_NEON, kYuvJConstantsNEON) |
2293 //ANYYUV(H422ToARGBRow_NEON, I422ToARGBMatrixRow_NEON, kYuvHConstantsNEON) | 2294 //ANYYUV(H422ToARGBRow_NEON, I422ToARGBMatrixRow_NEON, kYuvHConstantsNEON) |
2294 #endif | 2295 #endif |
2295 | 2296 |
2296 #ifdef HAS_I422TOARGBMATRIXROW_SSSE3 | 2297 #ifdef HAS_I422TOARGBMATRIXROW_SSSE3 |
2297 ANYYUV(I422ToARGBRow_SSSE3, I422ToARGBMatrixRow_SSSE3, kYuvConstants) | 2298 ANYYUV(I422ToARGBRow_SSSE3, I422ToARGBMatrixRow_SSSE3, kYuvConstants) |
2298 ANYYUV(J422ToARGBRow_SSSE3, I422ToARGBMatrixRow_SSSE3, kYuvJConstants) | 2299 ANYYUV(J422ToARGBRow_SSSE3, I422ToARGBMatrixRow_SSSE3, kYuvJConstants) |
2299 ANYYUV(H422ToARGBRow_SSSE3, I422ToARGBMatrixRow_SSSE3, kYuvHConstants) | 2300 ANYYUV(H422ToARGBRow_SSSE3, I422ToARGBMatrixRow_SSSE3, kYuvHConstants) |
2300 #endif | 2301 #endif |
2301 #ifdef HAS_I422TOARGBMATRIXROW_AVX2 | 2302 #ifdef HAS_I422TOARGBMATRIXROW_AVX2 |
2302 ANYYUV(I422ToARGBRow_AVX2, I422ToARGBMatrixRow_AVX2, kYuvConstants) | 2303 ANYYUV(I422ToARGBRow_AVX2, I422ToARGBMatrixRow_AVX2, kYuvConstants) |
(...skipping 422 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2725 } | 2726 } |
2726 if (width & 1) { | 2727 if (width & 1) { |
2727 dst[3] = src[0]; | 2728 dst[3] = src[0]; |
2728 } | 2729 } |
2729 } | 2730 } |
2730 | 2731 |
2731 #ifdef __cplusplus | 2732 #ifdef __cplusplus |
2732 } // extern "C" | 2733 } // extern "C" |
2733 } // namespace libyuv | 2734 } // namespace libyuv |
2734 #endif | 2735 #endif |
OLD | NEW |