OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2012 The LibYuv Project Authors. All rights reserved. | 2 * Copyright 2012 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 365 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
376 ANY11(ARGBToRAWRow_Any_NEON, ARGBToRAWRow_NEON, 0, 4, 3, 7) | 376 ANY11(ARGBToRAWRow_Any_NEON, ARGBToRAWRow_NEON, 0, 4, 3, 7) |
377 ANY11(ARGBToRGB565Row_Any_NEON, ARGBToRGB565Row_NEON, 0, 4, 2, 7) | 377 ANY11(ARGBToRGB565Row_Any_NEON, ARGBToRGB565Row_NEON, 0, 4, 2, 7) |
378 ANY11(ARGBToARGB1555Row_Any_NEON, ARGBToARGB1555Row_NEON, 0, 4, 2, 7) | 378 ANY11(ARGBToARGB1555Row_Any_NEON, ARGBToARGB1555Row_NEON, 0, 4, 2, 7) |
379 ANY11(ARGBToARGB4444Row_Any_NEON, ARGBToARGB4444Row_NEON, 0, 4, 2, 7) | 379 ANY11(ARGBToARGB4444Row_Any_NEON, ARGBToARGB4444Row_NEON, 0, 4, 2, 7) |
380 ANY11(J400ToARGBRow_Any_NEON, J400ToARGBRow_NEON, 0, 1, 4, 7) | 380 ANY11(J400ToARGBRow_Any_NEON, J400ToARGBRow_NEON, 0, 1, 4, 7) |
381 ANY11(I400ToARGBRow_Any_NEON, I400ToARGBRow_NEON, 0, 1, 4, 7) | 381 ANY11(I400ToARGBRow_Any_NEON, I400ToARGBRow_NEON, 0, 1, 4, 7) |
382 #endif | 382 #endif |
383 #if defined(HAS_ARGBTORGB24ROW_MSA) | 383 #if defined(HAS_ARGBTORGB24ROW_MSA) |
384 ANY11(ARGBToRGB24Row_Any_MSA, ARGBToRGB24Row_MSA, 0, 4, 3, 15) | 384 ANY11(ARGBToRGB24Row_Any_MSA, ARGBToRGB24Row_MSA, 0, 4, 3, 15) |
385 ANY11(ARGBToRAWRow_Any_MSA, ARGBToRAWRow_MSA, 0, 4, 3, 15) | 385 ANY11(ARGBToRAWRow_Any_MSA, ARGBToRAWRow_MSA, 0, 4, 3, 15) |
| 386 ANY11(ARGBToRGB565Row_Any_MSA, ARGBToRGB565Row_MSA, 0, 4, 2, 7) |
| 387 ANY11(ARGBToARGB1555Row_Any_MSA, ARGBToARGB1555Row_MSA, 0, 4, 2, 7) |
| 388 ANY11(ARGBToARGB4444Row_Any_MSA, ARGBToARGB4444Row_MSA, 0, 4, 2, 7) |
386 #endif | 389 #endif |
387 #if defined(HAS_RAWTORGB24ROW_NEON) | 390 #if defined(HAS_RAWTORGB24ROW_NEON) |
388 ANY11(RAWToRGB24Row_Any_NEON, RAWToRGB24Row_NEON, 0, 3, 3, 7) | 391 ANY11(RAWToRGB24Row_Any_NEON, RAWToRGB24Row_NEON, 0, 3, 3, 7) |
389 #endif | 392 #endif |
390 #ifdef HAS_ARGBTOYROW_AVX2 | 393 #ifdef HAS_ARGBTOYROW_AVX2 |
391 ANY11(ARGBToYRow_Any_AVX2, ARGBToYRow_AVX2, 0, 4, 1, 31) | 394 ANY11(ARGBToYRow_Any_AVX2, ARGBToYRow_AVX2, 0, 4, 1, 31) |
392 #endif | 395 #endif |
393 #ifdef HAS_ARGBTOYJROW_AVX2 | 396 #ifdef HAS_ARGBTOYJROW_AVX2 |
394 ANY11(ARGBToYJRow_Any_AVX2, ARGBToYJRow_AVX2, 0, 4, 1, 31) | 397 ANY11(ARGBToYJRow_Any_AVX2, ARGBToYJRow_AVX2, 0, 4, 1, 31) |
395 #endif | 398 #endif |
(...skipping 383 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
779 #ifdef HAS_YUY2TOUV422ROW_SSE2 | 782 #ifdef HAS_YUY2TOUV422ROW_SSE2 |
780 ANY12(YUY2ToUV422Row_Any_SSE2, YUY2ToUV422Row_SSE2, 1, 4, 1, 15) | 783 ANY12(YUY2ToUV422Row_Any_SSE2, YUY2ToUV422Row_SSE2, 1, 4, 1, 15) |
781 ANY12(UYVYToUV422Row_Any_SSE2, UYVYToUV422Row_SSE2, 1, 4, 1, 15) | 784 ANY12(UYVYToUV422Row_Any_SSE2, UYVYToUV422Row_SSE2, 1, 4, 1, 15) |
782 #endif | 785 #endif |
783 #ifdef HAS_YUY2TOUV422ROW_NEON | 786 #ifdef HAS_YUY2TOUV422ROW_NEON |
784 ANY12(ARGBToUV444Row_Any_NEON, ARGBToUV444Row_NEON, 0, 4, 0, 7) | 787 ANY12(ARGBToUV444Row_Any_NEON, ARGBToUV444Row_NEON, 0, 4, 0, 7) |
785 ANY12(YUY2ToUV422Row_Any_NEON, YUY2ToUV422Row_NEON, 1, 4, 1, 15) | 788 ANY12(YUY2ToUV422Row_Any_NEON, YUY2ToUV422Row_NEON, 1, 4, 1, 15) |
786 ANY12(UYVYToUV422Row_Any_NEON, UYVYToUV422Row_NEON, 1, 4, 1, 15) | 789 ANY12(UYVYToUV422Row_Any_NEON, UYVYToUV422Row_NEON, 1, 4, 1, 15) |
787 #endif | 790 #endif |
788 #ifdef HAS_YUY2TOUV422ROW_MSA | 791 #ifdef HAS_YUY2TOUV422ROW_MSA |
| 792 ANY12(ARGBToUV444Row_Any_MSA, ARGBToUV444Row_MSA, 0, 4, 0, 15) |
789 ANY12(YUY2ToUV422Row_Any_MSA, YUY2ToUV422Row_MSA, 1, 4, 1, 31) | 793 ANY12(YUY2ToUV422Row_Any_MSA, YUY2ToUV422Row_MSA, 1, 4, 1, 31) |
790 ANY12(UYVYToUV422Row_Any_MSA, UYVYToUV422Row_MSA, 1, 4, 1, 31) | 794 ANY12(UYVYToUV422Row_Any_MSA, UYVYToUV422Row_MSA, 1, 4, 1, 31) |
791 #endif | 795 #endif |
792 #undef ANY12 | 796 #undef ANY12 |
793 | 797 |
794 // Any 1 to 2 with source stride (2 rows of source). Outputs UV planes. | 798 // Any 1 to 2 with source stride (2 rows of source). Outputs UV planes. |
795 // 128 byte row allows for 32 avx ARGB pixels. | 799 // 128 byte row allows for 32 avx ARGB pixels. |
796 #define ANY12S(NAMEANY, ANY_SIMD, UVSHIFT, BPP, MASK) \ | 800 #define ANY12S(NAMEANY, ANY_SIMD, UVSHIFT, BPP, MASK) \ |
797 void NAMEANY(const uint8* src_ptr, int src_stride_ptr, uint8* dst_u, \ | 801 void NAMEANY(const uint8* src_ptr, int src_stride_ptr, uint8* dst_u, \ |
798 uint8* dst_v, int width) { \ | 802 uint8* dst_v, int width) { \ |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
882 #endif | 886 #endif |
883 #ifdef HAS_UYVYTOUVROW_MSA | 887 #ifdef HAS_UYVYTOUVROW_MSA |
884 ANY12S(UYVYToUVRow_Any_MSA, UYVYToUVRow_MSA, 1, 4, 31) | 888 ANY12S(UYVYToUVRow_Any_MSA, UYVYToUVRow_MSA, 1, 4, 31) |
885 #endif | 889 #endif |
886 #undef ANY12S | 890 #undef ANY12S |
887 | 891 |
888 #ifdef __cplusplus | 892 #ifdef __cplusplus |
889 } // extern "C" | 893 } // extern "C" |
890 } // namespace libyuv | 894 } // namespace libyuv |
891 #endif | 895 #endif |
OLD | NEW |