OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2013 The LibYuv Project Authors. All rights reserved. | 2 * Copyright 2013 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 904 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
915 } | 915 } |
916 #endif | 916 #endif |
917 #if defined(HAS_INTERPOLATEROW_NEON) | 917 #if defined(HAS_INTERPOLATEROW_NEON) |
918 if (TestCpuFlag(kCpuHasNEON)) { | 918 if (TestCpuFlag(kCpuHasNEON)) { |
919 InterpolateRow = InterpolateRow_Any_NEON; | 919 InterpolateRow = InterpolateRow_Any_NEON; |
920 if (IS_ALIGNED(dst_width_bytes, 16)) { | 920 if (IS_ALIGNED(dst_width_bytes, 16)) { |
921 InterpolateRow = InterpolateRow_NEON; | 921 InterpolateRow = InterpolateRow_NEON; |
922 } | 922 } |
923 } | 923 } |
924 #endif | 924 #endif |
925 #if defined(HAS_INTERPOLATEROW_MIPS_DSPR2) | 925 #if defined(HAS_INTERPOLATEROW_DSPR2) |
926 if (TestCpuFlag(kCpuHasMIPS_DSPR2) && | 926 if (TestCpuFlag(kCpuHasDSPR2) && |
927 IS_ALIGNED(src_argb, 4) && IS_ALIGNED(src_stride, 4) && | 927 IS_ALIGNED(src_argb, 4) && IS_ALIGNED(src_stride, 4) && |
928 IS_ALIGNED(dst_argb, 4) && IS_ALIGNED(dst_stride, 4)) { | 928 IS_ALIGNED(dst_argb, 4) && IS_ALIGNED(dst_stride, 4)) { |
929 InterpolateRow = InterpolateRow_Any_MIPS_DSPR2; | 929 InterpolateRow = InterpolateRow_Any_DSPR2; |
930 if (IS_ALIGNED(dst_width_bytes, 4)) { | 930 if (IS_ALIGNED(dst_width_bytes, 4)) { |
931 InterpolateRow = InterpolateRow_MIPS_DSPR2; | 931 InterpolateRow = InterpolateRow_DSPR2; |
932 } | 932 } |
933 } | 933 } |
934 #endif | 934 #endif |
935 for (j = 0; j < dst_height; ++j) { | 935 for (j = 0; j < dst_height; ++j) { |
936 int yi; | 936 int yi; |
937 int yf; | 937 int yf; |
938 if (y > max_y) { | 938 if (y > max_y) { |
939 y = max_y; | 939 y = max_y; |
940 } | 940 } |
941 yi = y >> 16; | 941 yi = y >> 16; |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
989 } | 989 } |
990 #endif | 990 #endif |
991 #if defined(HAS_INTERPOLATEROW_16_NEON) | 991 #if defined(HAS_INTERPOLATEROW_16_NEON) |
992 if (TestCpuFlag(kCpuHasNEON)) { | 992 if (TestCpuFlag(kCpuHasNEON)) { |
993 InterpolateRow = InterpolateRow_Any_16_NEON; | 993 InterpolateRow = InterpolateRow_Any_16_NEON; |
994 if (IS_ALIGNED(dst_width_bytes, 16)) { | 994 if (IS_ALIGNED(dst_width_bytes, 16)) { |
995 InterpolateRow = InterpolateRow_16_NEON; | 995 InterpolateRow = InterpolateRow_16_NEON; |
996 } | 996 } |
997 } | 997 } |
998 #endif | 998 #endif |
999 #if defined(HAS_INTERPOLATEROW_16_MIPS_DSPR2) | 999 #if defined(HAS_INTERPOLATEROW_16_DSPR2) |
1000 if (TestCpuFlag(kCpuHasMIPS_DSPR2) && | 1000 if (TestCpuFlag(kCpuHasDSPR2) && |
1001 IS_ALIGNED(src_argb, 4) && IS_ALIGNED(src_stride, 4) && | 1001 IS_ALIGNED(src_argb, 4) && IS_ALIGNED(src_stride, 4) && |
1002 IS_ALIGNED(dst_argb, 4) && IS_ALIGNED(dst_stride, 4)) { | 1002 IS_ALIGNED(dst_argb, 4) && IS_ALIGNED(dst_stride, 4)) { |
1003 InterpolateRow = InterpolateRow_Any_16_MIPS_DSPR2; | 1003 InterpolateRow = InterpolateRow_Any_16_DSPR2; |
1004 if (IS_ALIGNED(dst_width_bytes, 4)) { | 1004 if (IS_ALIGNED(dst_width_bytes, 4)) { |
1005 InterpolateRow = InterpolateRow_16_MIPS_DSPR2; | 1005 InterpolateRow = InterpolateRow_16_DSPR2; |
1006 } | 1006 } |
1007 } | 1007 } |
1008 #endif | 1008 #endif |
1009 for (j = 0; j < dst_height; ++j) { | 1009 for (j = 0; j < dst_height; ++j) { |
1010 int yi; | 1010 int yi; |
1011 int yf; | 1011 int yf; |
1012 if (y > max_y) { | 1012 if (y > max_y) { |
1013 y = max_y; | 1013 y = max_y; |
1014 } | 1014 } |
1015 yi = y >> 16; | 1015 yi = y >> 16; |
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1142 *dx = -*dx; | 1142 *dx = -*dx; |
1143 // src_width = -src_width; // Caller must do this. | 1143 // src_width = -src_width; // Caller must do this. |
1144 } | 1144 } |
1145 } | 1145 } |
1146 #undef CENTERSTART | 1146 #undef CENTERSTART |
1147 | 1147 |
1148 #ifdef __cplusplus | 1148 #ifdef __cplusplus |
1149 } // extern "C" | 1149 } // extern "C" |
1150 } // namespace libyuv | 1150 } // namespace libyuv |
1151 #endif | 1151 #endif |
OLD | NEW |