Manojkumar Bhosale 54ce8f23d6 Add MSA optimized ARGB/ABGR/BGRA/RGBA To Y/UV row functions
R=fbarchard@google.com
BUG=libyuv:634

Performance Gain (vs C auto-vectorized)
ARGBToYJRow_MSA       - ~3.2x
ARGBToYJRow_Any_MSA   - ~2.7x
BGRAToYRow_MSA        - ~3.2x
BGRAToYRow_Any_MSA    - ~2.7x
ABGRToYRow_MSA        - ~3.2x
ABGRToYRow_Any_MSA    - ~2.6x
RGBAToYRow_MSA        - ~3.1x
RGBAToYRow_Any_MSA    - ~2.7x
ARGBToUVJRow_MSA      - ~5.5x
ARGBToUVJRow_Any_MSA  - ~4.5x
BGRAToUVRow_MSA       - ~2.1x
BGRAToUVRow_Any_MSA   - ~2.0x
ABGRToUVRow_MSA       - ~2.1x
ABGRToUVRow_Any_MSA   - ~1.9x
RGBAToUVRow_MSA       - ~2.2x
RGBAToUVRow_Any_MSA   - ~1.9x

Performance Gain (vs C non-vectorized)
ARGBToYJRow_MSA       - ~10.9x
ARGBToYJRow_Any_MSA   -  ~9.2x
BGRAToYRow_MSA        - ~10.9x
BGRAToYRow_Any_MSA    -  ~9.3x
ABGRToYRow_MSA        - ~11.0x
ABGRToYRow_Any_MSA    -  ~9.3x
RGBAToYRow_MSA        - ~10.9x
RGBAToYRow_Any_MSA    -  ~9.1x
ARGBToUVJRow_MSA      - ~12.4x
ARGBToUVJRow_Any_MSA  - ~10.5x
BGRAToUVRow_MSA       -  ~4.7x
BGRAToUVRow_Any_MSA   -  ~4.4x
ABGRToUVRow_MSA       -  ~4.7x
ABGRToUVRow_Any_MSA   -  ~4.5x
RGBAToUVRow_MSA       -  ~4.8x
RGBAToUVRow_Any_MSA   -  ~4.4x

Review-Url: https://codereview.chromium.org/2641153003 .
2017-02-01 10:31:28 +05:30
..
compare_common.cc xmmword cast for clang 2015-08-18 11:13:12 -07:00
compare_gcc.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
compare_neon64.cc xmmword cast for clang 2015-08-18 11:13:12 -07:00
compare_neon.cc xmmword cast for clang 2015-08-18 11:13:12 -07:00
compare_win.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
compare.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
convert_argb.cc Add MSA optimized NV12/21 To RGB row functions 2017-01-18 09:24:39 +05:30
convert_from_argb.cc Add MSA optimized ARGB/ABGR/BGRA/RGBA To Y/UV row functions 2017-02-01 10:31:28 +05:30
convert_from.cc Libyuv MIPS DSPR2 optimizations. 2017-01-11 12:19:13 -08:00
convert_jpeg.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
convert_to_argb.cc add Intel Code Analyst markers 2017-01-13 15:50:24 -08:00
convert_to_i420.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
convert.cc Add MSA optimized ARGB/ABGR/BGRA/RGBA To Y/UV row functions 2017-02-01 10:31:28 +05:30
cpu_id.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
mjpeg_decoder.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
mjpeg_validate.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
planar_functions.cc Add MSA optimized ARGB/ABGR/BGRA/RGBA To Y/UV row functions 2017-02-01 10:31:28 +05:30
rotate_any.cc Add MSA optimized rotate functions (used 16x16 transpose) 2017-01-13 15:50:02 +05:30
rotate_argb.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
rotate_common.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
rotate_dspr2.cc Rename mips source files to dspr2. 2017-01-27 23:11:43 +00:00
rotate_gcc.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
rotate_msa.cc Add MSA optimized rotate functions (used 16x16 transpose) 2017-01-13 15:50:02 +05:30
rotate_neon64.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
rotate_neon.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
rotate_win.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
rotate.cc Add MSA optimized rotate functions (used 16x16 transpose) 2017-01-13 15:50:02 +05:30
row_any.cc Add MSA optimized ARGB/ABGR/BGRA/RGBA To Y/UV row functions 2017-02-01 10:31:28 +05:30
row_common.cc Add comments for ARGBToUV_C and ARGBToUVJ_C 2017-01-30 23:44:05 +00:00
row_dspr2.cc Rename mips source files to dspr2. 2017-01-27 23:11:43 +00:00
row_gcc.cc Remove commented out code 2017-01-20 02:03:12 +00:00
row_msa.cc Add MSA optimized ARGB/ABGR/BGRA/RGBA To Y/UV row functions 2017-02-01 10:31:28 +05:30
row_neon64.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
row_neon.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
row_win.cc Libyuv MIPS DSPR2 optimizations. 2017-01-11 12:19:13 -08:00
scale_any.cc Libyuv MIPS DSPR2 optimizations. 2017-01-11 12:19:13 -08:00
scale_argb.cc Add MSA optimized ARGB scaling functions 2016-12-07 11:47:15 +05:30
scale_common.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
scale_dspr2.cc Rename mips source files to dspr2. 2017-01-27 23:11:43 +00:00
scale_gcc.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
scale_msa.cc Add MSA optimized remaining scale row functions 2016-12-21 13:39:44 +05:30
scale_neon64.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
scale_neon.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
scale_win.cc clang-format libyuv 2016-11-07 17:37:23 -08:00
scale.cc Libyuv MIPS DSPR2 optimizations. 2017-01-11 12:19:13 -08:00
video_common.cc clang-format libyuv 2016-11-07 17:37:23 -08:00