diff --git a/include/libyuv/row.h b/include/libyuv/row.h index b7493370a..7f69e2b40 100644 --- a/include/libyuv/row.h +++ b/include/libyuv/row.h @@ -75,9 +75,6 @@ extern "C" { (defined(_M_IX86) || defined(__x86_64__) || defined(__i386__)) // Conversions: #define HAS_ABGRTOYROW_SSSE3 -#if !defined(LIBYUV_BIT_EXACT) -#define HAS_ABGRTOUVROW_SSSE3 -#endif #define HAS_ARGB1555TOARGBROW_SSE2 #define HAS_ARGB4444TOARGBROW_SSE2 #define HAS_ARGBEXTRACTALPHAROW_SSE2 @@ -92,12 +89,6 @@ extern "C" { #define HAS_ARGBTOYJROW_SSSE3 #define HAS_ARGBTOYROW_SSSE3 #define HAS_BGRATOYROW_SSSE3 -#if !defined(LIBYUV_BIT_EXACT) -#define HAS_ARGBTOUV444ROW_SSSE3 -#define HAS_ARGBTOUVJROW_SSSE3 -#define HAS_ARGBTOUVROW_SSSE3 -#define HAS_BGRATOUVROW_SSSE3 -#endif #define HAS_COPYROW_ERMS #define HAS_COPYROW_SSE2 #define HAS_H422TOARGBROW_SSSE3 @@ -125,16 +116,13 @@ extern "C" { #define HAS_NV21TORGB24ROW_SSSE3 #define HAS_RAWTOARGBROW_SSSE3 #define HAS_RAWTORGB24ROW_SSSE3 +#define HAS_RAWTOYJROW_SSSE3 #define HAS_RAWTOYROW_SSSE3 #define HAS_RGB24TOARGBROW_SSSE3 +#define HAS_RGB24TOYJROW_SSSE3 #define HAS_RGB24TOYROW_SSSE3 #define HAS_RGB565TOARGBROW_SSE2 #define HAS_RGBATOYROW_SSSE3 -#if !defined(LIBYUV_BIT_EXACT) -#define HAS_RGB24TOYJROW_SSSE3 -#define HAS_RAWTOYJROW_SSSE3 -#define HAS_RGBATOUVROW_SSSE3 -#endif #define HAS_SETROW_ERMS #define HAS_SETROW_X86 #define HAS_SPLITUVROW_SSE2 @@ -146,13 +134,18 @@ extern "C" { #define HAS_YUY2TOUV422ROW_SSE2 #define HAS_YUY2TOUVROW_SSE2 #define HAS_YUY2TOYROW_SSE2 +#if !defined(LIBYUV_BIT_EXACT) +#define HAS_ABGRTOUVROW_SSSE3 +#define HAS_ARGBTOUV444ROW_SSSE3 +#define HAS_ARGBTOUVJROW_SSSE3 +#define HAS_ARGBTOUVROW_SSSE3 +#define HAS_BGRATOUVROW_SSSE3 +#define HAS_RGBATOUVROW_SSSE3 +#endif // Effects: #define HAS_ARGBADDROW_SSE2 #define HAS_ARGBAFFINEROW_SSE2 -#if !defined(LIBYUV_BIT_EXACT) -#define HAS_ARGBATTENUATEROW_SSSE3 -#endif #define HAS_ARGBBLENDROW_SSSE3 #define HAS_ARGBCOLORMATRIXROW_SSSE3 #define HAS_ARGBCOLORTABLEROW_X86 @@ -177,6 +170,9 @@ extern "C" { #define HAS_SOBELXROW_SSE2 #define HAS_SOBELXYROW_SSE2 #define HAS_SOBELYROW_SSE2 +#if !defined(LIBYUV_BIT_EXACT) +#define HAS_ARGBATTENUATEROW_SSSE3 +#endif // The following functions fail on gcc/clang 32 bit with fpic and framepointer. // caveat: clangcl uses row_win.cc which works. @@ -202,17 +198,10 @@ extern "C" { #define HAS_ARGBSHUFFLEROW_AVX2 #define HAS_ARGBTORGB565DITHERROW_AVX2 #define HAS_ARGBTOYJROW_AVX2 -#define HAS_RAWTOYJROW_AVX2 -#define HAS_RGB24TOYJROW_AVX2 #define HAS_ARGBTOYROW_AVX2 -#if !defined(LIBYUV_BIT_EXACT) -#define HAS_ARGBTOUVJROW_AVX2 -#define HAS_ARGBTOUVROW_AVX2 -#endif #define HAS_COPYROW_AVX #define HAS_H422TOARGBROW_AVX2 #define HAS_HALFFLOATROW_AVX2 -// #define HAS_HALFFLOATROW_F16C // Enable to test halffloat cast #define HAS_I422TOARGB1555ROW_AVX2 #define HAS_I422TOARGB4444ROW_AVX2 #define HAS_I422TOARGBROW_AVX2 @@ -230,25 +219,32 @@ extern "C" { #define HAS_NV12TORGB565ROW_AVX2 #define HAS_NV21TOARGBROW_AVX2 #define HAS_NV21TORGB24ROW_AVX2 +#define HAS_RAWTOYJROW_AVX2 +#define HAS_RGB24TOYJROW_AVX2 #define HAS_SPLITUVROW_AVX2 #define HAS_UYVYTOARGBROW_AVX2 #define HAS_UYVYTOUV422ROW_AVX2 #define HAS_UYVYTOUVROW_AVX2 #define HAS_UYVYTOYROW_AVX2 #define HAS_YUY2TOARGBROW_AVX2 -#define HAS_YUY2TOUVROW_AVX2 #define HAS_YUY2TOUV422ROW_AVX2 +#define HAS_YUY2TOUVROW_AVX2 #define HAS_YUY2TOYROW_AVX2 +// #define HAS_HALFFLOATROW_F16C // Enable to test half float cast +#if !defined(LIBYUV_BIT_EXACT) +#define HAS_ARGBTOUVJROW_AVX2 +#define HAS_ARGBTOUVROW_AVX2 +#endif // Effects: #define HAS_ARGBADDROW_AVX2 -#if !defined(LIBYUV_BIT_EXACT) -#define HAS_ARGBATTENUATEROW_AVX2 -#endif #define HAS_ARGBMULTIPLYROW_AVX2 #define HAS_ARGBSUBTRACTROW_AVX2 #define HAS_ARGBUNATTENUATEROW_AVX2 #define HAS_BLENDPLANEROW_AVX2 +#if !defined(LIBYUV_BIT_EXACT) +#define HAS_ARGBATTENUATEROW_AVX2 +#endif #if defined(__x86_64__) || !defined(__pic__) || defined(__clang__) || \ defined(_MSC_VER) @@ -286,7 +282,6 @@ extern "C" { #if !defined(LIBYUV_DISABLE_X86) && (defined(__x86_64__) || defined(__i386__)) #define HAS_AB64TOARGBROW_SSSE3 #define HAS_ABGRTOAR30ROW_SSSE3 -#define HAS_ABGRTOUVJROW_SSSE3 #define HAS_ABGRTOYJROW_SSSE3 #define HAS_AR64TOARGBROW_SSSE3 #define HAS_ARGBTOAB64ROW_SSSE3 @@ -295,8 +290,8 @@ extern "C" { #define HAS_CONVERT16TO8ROW_SSSE3 #define HAS_CONVERT8TO16ROW_SSE2 #define HAS_DETILEROW_SSE2 -#define HAS_DETILETOYUY2_SSE2 #define HAS_DETILESPLITUVROW_SSSE3 +#define HAS_DETILETOYUY2_SSE2 #define HAS_HALFMERGEUVROW_SSSE3 #define HAS_I210TOAR30ROW_SSSE3 #define HAS_I210TOARGBROW_SSSE3 @@ -317,16 +312,17 @@ extern "C" { #define HAS_P410TOARGBROW_SSSE3 #define HAS_RAWTORGBAROW_SSSE3 #define HAS_RGB24MIRRORROW_SSSE3 -#if !defined(LIBYUV_BIT_EXACT) #define HAS_RGBATOYJROW_SSSE3 -#endif #define HAS_SPLITARGBROW_SSE2 #define HAS_SPLITARGBROW_SSSE3 +#define HAS_SPLITRGBROW_SSSE3 #define HAS_SPLITXRGBROW_SSE2 #define HAS_SPLITXRGBROW_SSSE3 -#define HAS_SPLITRGBROW_SSSE3 #define HAS_SWAPUVROW_SSSE3 #define HAS_YUY2TONVUVROW_SSE2 +#if !defined(LIBYUV_BIT_EXACT) +#define HAS_ABGRTOUVJROW_SSSE3 +#endif #if defined(__x86_64__) || !defined(__pic__) // TODO(fbarchard): fix build error on android_full_debug=1 @@ -341,14 +337,10 @@ extern "C" { #if !defined(LIBYUV_DISABLE_X86) && \ (defined(__x86_64__) || defined(__i386__)) && \ (defined(CLANG_HAS_AVX2) || defined(GCC_HAS_AVX2)) -#define HAS_ABGRTOAR30ROW_AVX2 -#if !defined(LIBYUV_BIT_EXACT) -#define HAS_ABGRTOUVROW_AVX2 -#define HAS_ABGRTOYROW_AVX2 -#endif #define HAS_AB64TOARGBROW_AVX2 -#define HAS_ABGRTOUVJROW_AVX2 +#define HAS_ABGRTOAR30ROW_AVX2 #define HAS_ABGRTOYJROW_AVX2 +#define HAS_ABGRTOYROW_AVX2 #define HAS_AR64TOARGBROW_AVX2 #define HAS_ARGBTOAB64ROW_AVX2 #define HAS_ARGBTOAR30ROW_AVX2 @@ -385,14 +377,16 @@ extern "C" { #define HAS_P210TOARGBROW_AVX2 #define HAS_P410TOAR30ROW_AVX2 #define HAS_P410TOARGBROW_AVX2 -#if !defined(LIBYUV_BIT_EXACT) #define HAS_RGBATOYJROW_AVX2 -#endif #define HAS_SPLITARGBROW_AVX2 -#define HAS_SPLITXRGBROW_AVX2 #define HAS_SPLITUVROW_16_AVX2 +#define HAS_SPLITXRGBROW_AVX2 #define HAS_SWAPUVROW_AVX2 #define HAS_YUY2TONVUVROW_AVX2 +#if !defined(LIBYUV_BIT_EXACT) +#define HAS_ABGRTOUVJROW_AVX2 +#define HAS_ABGRTOUVROW_AVX2 +#endif #if defined(__x86_64__) || !defined(__pic__) // TODO(fbarchard): fix build error on android_full_debug=1 @@ -421,7 +415,9 @@ extern "C" { #if !defined(LIBYUV_DISABLE_NEON) && \ (defined(__aarch64__) || defined(__ARM_NEON__) || defined(LIBYUV_NEON)) #define HAS_AB64TOARGBROW_NEON +#define HAS_ABGRTOUVJROW_NEON #define HAS_ABGRTOUVROW_NEON +#define HAS_ABGRTOYJROW_NEON #define HAS_ABGRTOYROW_NEON #define HAS_AR64TOARGBROW_NEON #define HAS_ARGB1555TOARGBROW_NEON @@ -442,10 +438,8 @@ extern "C" { #define HAS_ARGBTORGB565ROW_NEON #define HAS_ARGBTOUV444ROW_NEON #define HAS_ARGBTOUVJROW_NEON -#define HAS_ABGRTOUVJROW_NEON #define HAS_ARGBTOUVROW_NEON #define HAS_ARGBTOYJROW_NEON -#define HAS_ABGRTOYJROW_NEON #define HAS_ARGBTOYROW_NEON #define HAS_AYUVTOUVROW_NEON #define HAS_AYUVTOVUROW_NEON @@ -526,9 +520,9 @@ extern "C" { #define HAS_UYVYTOUVROW_NEON #define HAS_UYVYTOYROW_NEON #define HAS_YUY2TOARGBROW_NEON -#define HAS_YUY2TOUVROW_NEON #define HAS_YUY2TONVUVROW_NEON #define HAS_YUY2TOUV422ROW_NEON +#define HAS_YUY2TOUVROW_NEON #define HAS_YUY2TOYROW_NEON // Effects: @@ -538,13 +532,13 @@ extern "C" { #define HAS_ARGBCOLORMATRIXROW_NEON #define HAS_ARGBGRAYROW_NEON #define HAS_ARGBMIRRORROW_NEON -#define HAS_RGB24MIRRORROW_NEON #define HAS_ARGBMULTIPLYROW_NEON #define HAS_ARGBQUANTIZEROW_NEON #define HAS_ARGBSEPIAROW_NEON #define HAS_ARGBSHADEROW_NEON #define HAS_ARGBSHUFFLEROW_NEON #define HAS_ARGBSUBTRACTROW_NEON +#define HAS_RGB24MIRRORROW_NEON #define HAS_SOBELROW_NEON #define HAS_SOBELTOPLANEROW_NEON #define HAS_SOBELXROW_NEON @@ -554,12 +548,13 @@ extern "C" { // The following are available on AArch64 platforms: #if !defined(LIBYUV_DISABLE_NEON) && defined(__aarch64__) +#define HAS_GAUSSCOL_F32_NEON +#define HAS_GAUSSROW_F32_NEON #define HAS_INTERPOLATEROW_16TO8_NEON #define HAS_SCALESUMSAMPLES_NEON -#define HAS_GAUSSROW_F32_NEON -#define HAS_GAUSSCOL_F32_NEON #endif #if !defined(LIBYUV_DISABLE_MSA) && defined(__mips_msa) +#define HAS_ABGRTOUVJROW_MSA #define HAS_ABGRTOUVROW_MSA #define HAS_ABGRTOYROW_MSA #define HAS_ARGB1555TOARGBROW_MSA @@ -588,7 +583,6 @@ extern "C" { #define HAS_ARGBTORGB565ROW_MSA #define HAS_ARGBTOUV444ROW_MSA #define HAS_ARGBTOUVJROW_MSA -#define HAS_ABGRTOUVJROW_MSA #define HAS_ARGBTOUVROW_MSA #define HAS_ARGBTOYJROW_MSA #define HAS_ARGBTOYROW_MSA @@ -596,27 +590,25 @@ extern "C" { #define HAS_BGRATOYROW_MSA #define HAS_HALFFLOATROW_MSA #define HAS_I400TOARGBROW_MSA -#define HAS_I422TOUYVYROW_MSA -#define HAS_I422TOYUY2ROW_MSA -#define HAS_I422TOARGBROW_MSA -#define HAS_I422TORGBAROW_MSA #define HAS_I422ALPHATOARGBROW_MSA +#define HAS_I422TOARGB1555ROW_MSA +#define HAS_I422TOARGB4444ROW_MSA +#define HAS_I422TOARGBROW_MSA #define HAS_I422TORGB24ROW_MSA #define HAS_I422TORGB565ROW_MSA -#define HAS_I422TOARGB4444ROW_MSA -#define HAS_I422TOARGB1555ROW_MSA -#define HAS_NV12TOARGBROW_MSA -#define HAS_NV12TORGB565ROW_MSA -#define HAS_NV21TOARGBROW_MSA -#define HAS_YUY2TOARGBROW_MSA -#define HAS_UYVYTOARGBROW_MSA +#define HAS_I422TORGBAROW_MSA +#define HAS_I422TOUYVYROW_MSA +#define HAS_I422TOYUY2ROW_MSA #define HAS_I444TOARGBROW_MSA #define HAS_INTERPOLATEROW_MSA #define HAS_J400TOARGBROW_MSA #define HAS_MERGEUVROW_MSA #define HAS_MIRRORROW_MSA -#define HAS_MIRRORUVROW_MSA #define HAS_MIRRORSPLITUVROW_MSA +#define HAS_MIRRORUVROW_MSA +#define HAS_NV12TOARGBROW_MSA +#define HAS_NV12TORGB565ROW_MSA +#define HAS_NV21TOARGBROW_MSA #define HAS_RAWTOARGBROW_MSA #define HAS_RAWTORGB24ROW_MSA #define HAS_RAWTOUVROW_MSA @@ -636,113 +628,115 @@ extern "C" { #define HAS_SOBELXYROW_MSA #define HAS_SOBELYROW_MSA #define HAS_SPLITUVROW_MSA +#define HAS_UYVYTOARGBROW_MSA #define HAS_UYVYTOUVROW_MSA #define HAS_UYVYTOYROW_MSA +#define HAS_YUY2TOARGBROW_MSA #define HAS_YUY2TOUV422ROW_MSA #define HAS_YUY2TOUVROW_MSA #define HAS_YUY2TOYROW_MSA #endif #if !defined(LIBYUV_DISABLE_LSX) && defined(__loongarch_sx) -#define HAS_ARGB4444TOARGBROW_LSX +#define HAS_ABGRTOUVROW_LSX +#define HAS_ABGRTOYROW_LSX #define HAS_ARGB1555TOARGBROW_LSX -#define HAS_RGB565TOARGBROW_LSX -#define HAS_RGB24TOARGBROW_LSX -#define HAS_RAWTOARGBROW_LSX -#define HAS_ARGB1555TOYROW_LSX #define HAS_ARGB1555TOUVROW_LSX -#define HAS_RGB565TOYROW_LSX -#define HAS_RGB565TOUVROW_LSX -#define HAS_RGB24TOYROW_LSX -#define HAS_RGB24TOUVROW_LSX -#define HAS_RAWTOYROW_LSX -#define HAS_RAWTOUVROW_LSX +#define HAS_ARGB1555TOYROW_LSX +#define HAS_ARGB4444TOARGBROW_LSX +#define HAS_ARGBBLENDROW_LSX +#define HAS_ARGBCOLORMATRIXROW_LSX +#define HAS_ARGBEXTRACTALPHAROW_LSX +#define HAS_ARGBQUANTIZEROW_LSX +#define HAS_ARGBSETROW_LSX +#define HAS_ARGBTOUVJROW_LSX +#define HAS_ARGBTOYJROW_LSX +#define HAS_BGRATOUVROW_LSX +#define HAS_BGRATOYROW_LSX +#define HAS_I400TOARGBROW_LSX +#define HAS_I444TOARGBROW_LSX +#define HAS_INTERPOLATEROW_LSX +#define HAS_J400TOARGBROW_LSX +#define HAS_MERGEUVROW_LSX +#define HAS_MIRRORSPLITUVROW_LSX #define HAS_NV12TOARGBROW_LSX #define HAS_NV12TORGB565ROW_LSX #define HAS_NV21TOARGBROW_LSX +#define HAS_RAWTOARGBROW_LSX +#define HAS_RAWTORGB24ROW_LSX +#define HAS_RAWTOUVROW_LSX +#define HAS_RAWTOYROW_LSX +#define HAS_RGB24TOARGBROW_LSX +#define HAS_RGB24TOUVROW_LSX +#define HAS_RGB24TOYROW_LSX +#define HAS_RGB565TOARGBROW_LSX +#define HAS_RGB565TOUVROW_LSX +#define HAS_RGB565TOYROW_LSX +#define HAS_RGBATOUVROW_LSX +#define HAS_RGBATOYROW_LSX +#define HAS_SETROW_LSX #define HAS_SOBELROW_LSX #define HAS_SOBELTOPLANEROW_LSX #define HAS_SOBELXYROW_LSX -#define HAS_ARGBTOYJROW_LSX -#define HAS_BGRATOYROW_LSX -#define HAS_BGRATOUVROW_LSX -#define HAS_ABGRTOYROW_LSX -#define HAS_ABGRTOUVROW_LSX -#define HAS_RGBATOYROW_LSX -#define HAS_RGBATOUVROW_LSX -#define HAS_ARGBTOUVJROW_LSX -#define HAS_I444TOARGBROW_LSX -#define HAS_I400TOARGBROW_LSX -#define HAS_J400TOARGBROW_LSX -#define HAS_YUY2TOARGBROW_LSX -#define HAS_UYVYTOARGBROW_LSX -#define HAS_INTERPOLATEROW_LSX -#define HAS_ARGBSETROW_LSX -#define HAS_RAWTORGB24ROW_LSX -#define HAS_MERGEUVROW_LSX -#define HAS_ARGBEXTRACTALPHAROW_LSX -#define HAS_ARGBBLENDROW_LSX -#define HAS_ARGBQUANTIZEROW_LSX -#define HAS_ARGBCOLORMATRIXROW_LSX #define HAS_SPLITUVROW_LSX -#define HAS_SETROW_LSX -#define HAS_MIRRORSPLITUVROW_LSX +#define HAS_UYVYTOARGBROW_LSX +#define HAS_YUY2TOARGBROW_LSX #endif #if !defined(LIBYUV_DISABLE_LASX) && defined(__loongarch_asx) -#define HAS_I422TOARGBROW_LASX -#define HAS_I422TORGBAROW_LASX -#define HAS_I422ALPHATOARGBROW_LASX -#define HAS_I422TOYUY2ROW_LASX -#define HAS_I422TOUYVYROW_LASX -#define HAS_MIRRORROW_LASX -#define HAS_MIRRORUVROW_LASX +#define HAS_ARGB1555TOARGBROW_LASX +#define HAS_ARGB1555TOUVROW_LASX +#define HAS_ARGB1555TOYROW_LASX +#define HAS_ARGB4444TOARGBROW_LASX +#define HAS_ARGBADDROW_LASX +#define HAS_ARGBATTENUATEROW_LASX +#define HAS_ARGBGRAYROW_LASX #define HAS_ARGBMIRRORROW_LASX -#define HAS_I422TORGB24ROW_LASX -#define HAS_I422TORGB565ROW_LASX -#define HAS_I422TOARGB4444ROW_LASX -#define HAS_I422TOARGB1555ROW_LASX -#define HAS_YUY2TOUVROW_LASX -#define HAS_YUY2TOYROW_LASX -#define HAS_YUY2TOUV422ROW_LASX -#define HAS_UYVYTOYROW_LASX -#define HAS_UYVYTOUVROW_LASX -#define HAS_UYVYTOUV422ROW_LASX -#define HAS_ARGBTOYROW_LASX -#define HAS_ARGBTOUVROW_LASX -#define HAS_ARGBTORGB24ROW_LASX -#define HAS_ARGBTORAWROW_LASX -#define HAS_ARGBTORGB565ROW_LASX +#define HAS_ARGBMULTIPLYROW_LASX +#define HAS_ARGBSEPIAROW_LASX +#define HAS_ARGBSHADEROW_LASX +#define HAS_ARGBSHUFFLEROW_LASX +#define HAS_ARGBSUBTRACTROW_LASX #define HAS_ARGBTOARGB1555ROW_LASX #define HAS_ARGBTOARGB4444ROW_LASX -#define HAS_ARGBTOUV444ROW_LASX -#define HAS_ARGBMULTIPLYROW_LASX -#define HAS_ARGBADDROW_LASX -#define HAS_ARGBSUBTRACTROW_LASX -#define HAS_ARGBATTENUATEROW_LASX +#define HAS_ARGBTORAWROW_LASX +#define HAS_ARGBTORGB24ROW_LASX #define HAS_ARGBTORGB565DITHERROW_LASX -#define HAS_ARGBSHUFFLEROW_LASX -#define HAS_ARGBSHADEROW_LASX -#define HAS_ARGBGRAYROW_LASX -#define HAS_ARGBSEPIAROW_LASX -#define HAS_ARGB4444TOARGBROW_LASX -#define HAS_ARGB1555TOARGBROW_LASX -#define HAS_RGB565TOARGBROW_LASX -#define HAS_RGB24TOARGBROW_LASX -#define HAS_RAWTOARGBROW_LASX -#define HAS_ARGB1555TOYROW_LASX -#define HAS_ARGB1555TOUVROW_LASX -#define HAS_RGB565TOYROW_LASX -#define HAS_RGB565TOUVROW_LASX -#define HAS_RGB24TOYROW_LASX -#define HAS_RGB24TOUVROW_LASX -#define HAS_RAWTOYROW_LASX -#define HAS_RAWTOUVROW_LASX +#define HAS_ARGBTORGB565ROW_LASX +#define HAS_ARGBTOUV444ROW_LASX +#define HAS_ARGBTOUVJROW_LASX +#define HAS_ARGBTOUVROW_LASX +#define HAS_ARGBTOYJROW_LASX +#define HAS_ARGBTOYROW_LASX +#define HAS_I422ALPHATOARGBROW_LASX +#define HAS_I422TOARGB1555ROW_LASX +#define HAS_I422TOARGB4444ROW_LASX +#define HAS_I422TOARGBROW_LASX +#define HAS_I422TORGB24ROW_LASX +#define HAS_I422TORGB565ROW_LASX +#define HAS_I422TORGBAROW_LASX +#define HAS_I422TOUYVYROW_LASX +#define HAS_I422TOYUY2ROW_LASX +#define HAS_MIRRORROW_LASX +#define HAS_MIRRORUVROW_LASX #define HAS_NV12TOARGBROW_LASX #define HAS_NV12TORGB565ROW_LASX #define HAS_NV21TOARGBROW_LASX -#define HAS_ARGBTOYJROW_LASX -#define HAS_ARGBTOUVJROW_LASX +#define HAS_RAWTOARGBROW_LASX +#define HAS_RAWTOUVROW_LASX +#define HAS_RAWTOYROW_LASX +#define HAS_RGB24TOARGBROW_LASX +#define HAS_RGB24TOUVROW_LASX +#define HAS_RGB24TOYROW_LASX +#define HAS_RGB565TOARGBROW_LASX +#define HAS_RGB565TOUVROW_LASX +#define HAS_RGB565TOYROW_LASX +#define HAS_UYVYTOUV422ROW_LASX +#define HAS_UYVYTOUVROW_LASX +#define HAS_UYVYTOYROW_LASX +#define HAS_YUY2TOUV422ROW_LASX +#define HAS_YUY2TOUVROW_LASX +#define HAS_YUY2TOYROW_LASX #endif #if defined(_MSC_VER) && !defined(__CLR_VER) && !defined(__clang__)