Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(335)

Unified Diff: include/libyuv/row.h

Issue 2636483002: Add MSA optimized NV12/21 To RGB row functions (Closed)
Patch Set: Incorporated review comments Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | source/convert_argb.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: include/libyuv/row.h
diff --git a/include/libyuv/row.h b/include/libyuv/row.h
index a182c7a256bdd8f836013e6c74799763ea545293..d6d68c8ffc6af03a4265ff41a7a4ca3381809667 100644
--- a/include/libyuv/row.h
+++ b/include/libyuv/row.h
@@ -428,6 +428,12 @@ extern "C" {
#define HAS_RGB565TOUVROW_MSA
#define HAS_RGB24TOUVROW_MSA
#define HAS_RAWTOUVROW_MSA
+#define HAS_NV12TOARGBROW_MSA
+#define HAS_NV12TORGB565ROW_MSA
+#define HAS_NV21TOARGBROW_MSA
+#define HAS_SOBELROW_MSA
+#define HAS_SOBELTOPLANEROW_MSA
+#define HAS_SOBELXYROW_MSA
#endif
#if defined(_MSC_VER) && !defined(__CLR_VER) && !defined(__clang__)
@@ -756,6 +762,21 @@ void I422ToARGB1555Row_MSA(const uint8* src_y,
uint8* dst_argb1555,
const struct YuvConstants* yuvconstants,
int width);
+void NV12ToARGBRow_MSA(const uint8* src_y,
+ const uint8* src_uv,
+ uint8* dst_argb,
+ const struct YuvConstants* yuvconstants,
+ int width);
+void NV12ToRGB565Row_MSA(const uint8* src_y,
+ const uint8* src_uv,
+ uint8* dst_rgb565,
+ const struct YuvConstants* yuvconstants,
+ int width);
+void NV21ToARGBRow_MSA(const uint8* src_y,
+ const uint8* src_vu,
+ uint8* dst_argb,
+ const struct YuvConstants* yuvconstants,
+ int width);
void ARGBToYRow_AVX2(const uint8* src_argb, uint8* dst_y, int width);
void ARGBToYRow_Any_AVX2(const uint8* src_argb, uint8* dst_y, int width);
@@ -2328,6 +2349,21 @@ void I422ToARGB1555Row_Any_MSA(const uint8* src_y,
uint8* dst_argb1555,
const struct YuvConstants* yuvconstants,
int width);
+void NV12ToARGBRow_Any_MSA(const uint8* src_y,
+ const uint8* src_uv,
+ uint8* dst_argb,
+ const struct YuvConstants* yuvconstants,
+ int width);
+void NV12ToRGB565Row_Any_MSA(const uint8* src_y,
+ const uint8* src_uv,
+ uint8* dst_argb,
+ const struct YuvConstants* yuvconstants,
+ int width);
+void NV21ToARGBRow_Any_MSA(const uint8* src_y,
+ const uint8* src_vu,
+ uint8* dst_argb,
+ const struct YuvConstants* yuvconstants,
+ int width);
void YUY2ToYRow_AVX2(const uint8* src_yuy2, uint8* dst_y, int width);
void YUY2ToUVRow_AVX2(const uint8* src_yuy2,
@@ -2817,6 +2853,10 @@ void SobelRow_NEON(const uint8* src_sobelx,
const uint8* src_sobely,
uint8* dst_argb,
int width);
+void SobelRow_MSA(const uint8* src_sobelx,
+ const uint8* src_sobely,
+ uint8* dst_argb,
+ int width);
void SobelToPlaneRow_C(const uint8* src_sobelx,
const uint8* src_sobely,
uint8* dst_y,
@@ -2829,6 +2869,10 @@ void SobelToPlaneRow_NEON(const uint8* src_sobelx,
const uint8* src_sobely,
uint8* dst_y,
int width);
+void SobelToPlaneRow_MSA(const uint8* src_sobelx,
+ const uint8* src_sobely,
+ uint8* dst_y,
+ int width);
void SobelXYRow_C(const uint8* src_sobelx,
const uint8* src_sobely,
uint8* dst_argb,
@@ -2841,6 +2885,10 @@ void SobelXYRow_NEON(const uint8* src_sobelx,
const uint8* src_sobely,
uint8* dst_argb,
int width);
+void SobelXYRow_MSA(const uint8* src_sobelx,
+ const uint8* src_sobely,
+ uint8* dst_argb,
+ int width);
void SobelRow_Any_SSE2(const uint8* src_sobelx,
const uint8* src_sobely,
uint8* dst_argb,
@@ -2849,6 +2897,10 @@ void SobelRow_Any_NEON(const uint8* src_sobelx,
const uint8* src_sobely,
uint8* dst_argb,
int width);
+void SobelRow_Any_MSA(const uint8* src_sobelx,
+ const uint8* src_sobely,
+ uint8* dst_argb,
+ int width);
void SobelToPlaneRow_Any_SSE2(const uint8* src_sobelx,
const uint8* src_sobely,
uint8* dst_y,
@@ -2857,6 +2909,10 @@ void SobelToPlaneRow_Any_NEON(const uint8* src_sobelx,
const uint8* src_sobely,
uint8* dst_y,
int width);
+void SobelToPlaneRow_Any_MSA(const uint8* src_sobelx,
+ const uint8* src_sobely,
+ uint8* dst_y,
+ int width);
void SobelXYRow_Any_SSE2(const uint8* src_sobelx,
const uint8* src_sobely,
uint8* dst_argb,
@@ -2865,6 +2921,10 @@ void SobelXYRow_Any_NEON(const uint8* src_sobelx,
const uint8* src_sobely,
uint8* dst_argb,
int width);
+void SobelXYRow_Any_MSA(const uint8* src_sobelx,
+ const uint8* src_sobely,
+ uint8* dst_argb,
+ int width);
void ARGBPolynomialRow_C(const uint8* src_argb,
uint8* dst_argb,
« no previous file with comments | « no previous file | source/convert_argb.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698