Index: source/convert.cc |
diff --git a/source/convert.cc b/source/convert.cc |
index a33742d24d90f7f489406fd8a2dca6571b1de77b..ed3cd7fd0cc6191eaccec097015f83a5b16d9476 100644 |
--- a/source/convert.cc |
+++ b/source/convert.cc |
@@ -392,6 +392,16 @@ int YUY2ToI420(const uint8* src_yuy2, int src_stride_yuy2, |
} |
} |
#endif |
+#if defined(HAS_YUY2TOYROW_MSA) |
+ if (TestCpuFlag(kCpuHasMSA)) { |
+ YUY2ToYRow = YUY2ToYRow_Any_MSA; |
+ YUY2ToUVRow = YUY2ToUVRow_Any_MSA; |
+ if (IS_ALIGNED(width, 32)) { |
+ YUY2ToYRow = YUY2ToYRow_MSA; |
+ YUY2ToUVRow = YUY2ToUVRow_MSA; |
+ } |
+ } |
+#endif |
for (y = 0; y < height - 1; y += 2) { |
YUY2ToUVRow(src_yuy2, src_stride_yuy2, dst_u, dst_v, width); |
@@ -457,6 +467,16 @@ int UYVYToI420(const uint8* src_uyvy, int src_stride_uyvy, |
} |
} |
#endif |
+#if defined(HAS_UYVYTOYROW_MSA) |
+ if (TestCpuFlag(kCpuHasMSA)) { |
+ UYVYToYRow = UYVYToYRow_Any_MSA; |
+ UYVYToUVRow = UYVYToUVRow_Any_MSA; |
+ if (IS_ALIGNED(width, 32)) { |
+ UYVYToYRow = UYVYToYRow_MSA; |
+ UYVYToUVRow = UYVYToUVRow_MSA; |
+ } |
+ } |
+#endif |
for (y = 0; y < height - 1; y += 2) { |
UYVYToUVRow(src_uyvy, src_stride_uyvy, dst_u, dst_v, width); |