| 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 480 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 491 } | 491 } |
| 492 #endif | 492 #endif |
| 493 #if defined(HAS_I422TORGBAROW_NEON) | 493 #if defined(HAS_I422TORGBAROW_NEON) |
| 494 if (TestCpuFlag(kCpuHasNEON)) { | 494 if (TestCpuFlag(kCpuHasNEON)) { |
| 495 I422ToRGBARow = I422ToRGBARow_Any_NEON; | 495 I422ToRGBARow = I422ToRGBARow_Any_NEON; |
| 496 if (IS_ALIGNED(width, 8)) { | 496 if (IS_ALIGNED(width, 8)) { |
| 497 I422ToRGBARow = I422ToRGBARow_NEON; | 497 I422ToRGBARow = I422ToRGBARow_NEON; |
| 498 } | 498 } |
| 499 } | 499 } |
| 500 #endif | 500 #endif |
| 501 #if defined(HAS_I422TORGBAROW_MIPS_DSPR2) | 501 #if defined(HAS_I422TORGBAROW_DSPR2) |
| 502 if (TestCpuFlag(kCpuHasMIPS_DSPR2) && IS_ALIGNED(width, 4) && | 502 if (TestCpuFlag(kCpuHasDSPR2) && IS_ALIGNED(width, 4) && |
| 503 IS_ALIGNED(src_y, 4) && IS_ALIGNED(src_stride_y, 4) && | 503 IS_ALIGNED(src_y, 4) && IS_ALIGNED(src_stride_y, 4) && |
| 504 IS_ALIGNED(src_u, 2) && IS_ALIGNED(src_stride_u, 2) && | 504 IS_ALIGNED(src_u, 2) && IS_ALIGNED(src_stride_u, 2) && |
| 505 IS_ALIGNED(src_v, 2) && IS_ALIGNED(src_stride_v, 2) && | 505 IS_ALIGNED(src_v, 2) && IS_ALIGNED(src_stride_v, 2) && |
| 506 IS_ALIGNED(dst_rgba, 4) && IS_ALIGNED(dst_stride_rgba, 4)) { | 506 IS_ALIGNED(dst_rgba, 4) && IS_ALIGNED(dst_stride_rgba, 4)) { |
| 507 I422ToRGBARow = I422ToRGBARow_MIPS_DSPR2; | 507 I422ToRGBARow = I422ToRGBARow_DSPR2; |
| 508 } | 508 } |
| 509 #endif | 509 #endif |
| 510 | 510 |
| 511 for (y = 0; y < height; ++y) { | 511 for (y = 0; y < height; ++y) { |
| 512 I422ToRGBARow(src_y, src_u, src_v, dst_rgba, yuvconstants, width); | 512 I422ToRGBARow(src_y, src_u, src_v, dst_rgba, yuvconstants, width); |
| 513 dst_rgba += dst_stride_rgba; | 513 dst_rgba += dst_stride_rgba; |
| 514 src_y += src_stride_y; | 514 src_y += src_stride_y; |
| 515 if (y & 1) { | 515 if (y & 1) { |
| 516 src_u += src_stride_u; | 516 src_u += src_stride_u; |
| 517 src_v += src_stride_v; | 517 src_v += src_stride_v; |
| (...skipping 363 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 881 } | 881 } |
| 882 #endif | 882 #endif |
| 883 #if defined(HAS_I422TOARGBROW_NEON) | 883 #if defined(HAS_I422TOARGBROW_NEON) |
| 884 if (TestCpuFlag(kCpuHasNEON)) { | 884 if (TestCpuFlag(kCpuHasNEON)) { |
| 885 I422ToARGBRow = I422ToARGBRow_Any_NEON; | 885 I422ToARGBRow = I422ToARGBRow_Any_NEON; |
| 886 if (IS_ALIGNED(width, 8)) { | 886 if (IS_ALIGNED(width, 8)) { |
| 887 I422ToARGBRow = I422ToARGBRow_NEON; | 887 I422ToARGBRow = I422ToARGBRow_NEON; |
| 888 } | 888 } |
| 889 } | 889 } |
| 890 #endif | 890 #endif |
| 891 #if defined(HAS_I422TOARGBROW_MIPS_DSPR2) | 891 #if defined(HAS_I422TOARGBROW_DSPR2) |
| 892 if (TestCpuFlag(kCpuHasMIPS_DSPR2) && IS_ALIGNED(width, 4) && | 892 if (TestCpuFlag(kCpuHasDSPR2) && IS_ALIGNED(width, 4) && |
| 893 IS_ALIGNED(src_y, 4) && IS_ALIGNED(src_stride_y, 4) && | 893 IS_ALIGNED(src_y, 4) && IS_ALIGNED(src_stride_y, 4) && |
| 894 IS_ALIGNED(src_u, 2) && IS_ALIGNED(src_stride_u, 2) && | 894 IS_ALIGNED(src_u, 2) && IS_ALIGNED(src_stride_u, 2) && |
| 895 IS_ALIGNED(src_v, 2) && IS_ALIGNED(src_stride_v, 2)) { | 895 IS_ALIGNED(src_v, 2) && IS_ALIGNED(src_stride_v, 2)) { |
| 896 I422ToARGBRow = I422ToARGBRow_MIPS_DSPR2; | 896 I422ToARGBRow = I422ToARGBRow_DSPR2; |
| 897 } | 897 } |
| 898 #endif | 898 #endif |
| 899 #if defined(HAS_ARGBTORGB565DITHERROW_SSE2) | 899 #if defined(HAS_ARGBTORGB565DITHERROW_SSE2) |
| 900 if (TestCpuFlag(kCpuHasSSE2)) { | 900 if (TestCpuFlag(kCpuHasSSE2)) { |
| 901 ARGBToRGB565DitherRow = ARGBToRGB565DitherRow_Any_SSE2; | 901 ARGBToRGB565DitherRow = ARGBToRGB565DitherRow_Any_SSE2; |
| 902 if (IS_ALIGNED(width, 4)) { | 902 if (IS_ALIGNED(width, 4)) { |
| 903 ARGBToRGB565DitherRow = ARGBToRGB565DitherRow_SSE2; | 903 ARGBToRGB565DitherRow = ARGBToRGB565DitherRow_SSE2; |
| 904 } | 904 } |
| 905 } | 905 } |
| 906 #endif | 906 #endif |
| (...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1158 default: | 1158 default: |
| 1159 return -1; // unknown fourcc - return failure code. | 1159 return -1; // unknown fourcc - return failure code. |
| 1160 } | 1160 } |
| 1161 return r; | 1161 return r; |
| 1162 } | 1162 } |
| 1163 | 1163 |
| 1164 #ifdef __cplusplus | 1164 #ifdef __cplusplus |
| 1165 } // extern "C" | 1165 } // extern "C" |
| 1166 } // namespace libyuv | 1166 } // namespace libyuv |
| 1167 #endif | 1167 #endif |
| OLD | NEW |