Frank Barchard cda9d38a4e xmmword cast for clang
clangcl use compare_win for 32 bit, allowing fallback and enabling avx2 code for clang.
move defines/protos to compare_row.h
fix issue with odd width ARGBCopyAlpha functions by copying destination to temp buffer, then doing alpha copy, then copy back to destination.

R=harryjin@google.com
TBR=harryjin@google.com
BUG=libyuv:484

Review URL: https://webrtc-codereview.appspot.com/59379004.
2015-08-18 11:13:12 -07:00
..
compare_common.cc xmmword cast for clang 2015-08-18 11:13:12 -07:00
compare_gcc.cc xmmword cast for clang 2015-08-18 11:13:12 -07: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 xmmword cast for clang 2015-08-18 11:13:12 -07:00
compare.cc xmmword cast for clang 2015-08-18 11:13:12 -07:00
convert_argb.cc Copy Alpha odd width support 2015-08-13 15:05:14 -07:00
convert_from_argb.cc ARGBToYJRow_AVX2 hooked up for ARGBToJ422 2015-04-07 00:39:25 +00:00
convert_from.cc Remove unused variable 'I422ToRGB565Row' that breaks osx builds. 2015-04-14 02:50:35 +00:00
convert_jpeg.cc libyuv::MJPGToI420() and libyuv::MJPGToARGB() return failure if callback to JPeg fails. 2014-01-28 03:08:59 +00:00
convert_to_argb.cc Remove Q420 fourcc support. 2015-02-11 18:20:54 +00:00
convert_to_i420.cc Remove Q420 fourcc support. 2015-02-11 18:20:54 +00:00
convert.cc disable faulty avx2 in argb conversions and box filter. and extend temporary buffer to 128 for an avx2 any function. 2015-07-07 15:40:24 -07:00
cpu_id.cc allow xgetbv to be disabled for drmemory testing 2015-08-04 15:00:39 -07:00
mjpeg_decoder.cc disable stucture padded warnings on win64 builds. 2015-04-28 23:18:07 +00:00
mjpeg_validate.cc ValidateJpeg check for valid pointer and size 2015-07-30 15:49:48 -07:00
planar_functions.cc Copy Alpha odd width support 2015-08-13 15:05:14 -07:00
rotate_any.cc rotate nv12 any width 2015-08-07 23:48:38 -07:00
rotate_argb.cc rotate include and proto cleanup 2015-07-22 18:09:04 -07:00
rotate_common.cc rotate include and proto cleanup 2015-07-22 18:09:04 -07:00
rotate_gcc.cc use visual c 32 bit code for clangcl 2015-08-11 10:10:45 -07:00
rotate_mips.cc rename rotate macros and functions to match 2015-07-27 17:00:41 -07:00
rotate_neon64.cc rotate include and proto cleanup 2015-07-22 18:09:04 -07:00
rotate_neon.cc remove align directives 2015-08-04 17:00:03 -07:00
rotate_win.cc use visual c 32 bit code for clangcl 2015-08-11 10:10:45 -07:00
rotate.cc rotate nv12 any width 2015-08-07 23:48:38 -07:00
row_any.cc xmmword cast for clang 2015-08-18 11:13:12 -07:00
row_common.cc const warning fix on dither, bump chromium deps and add files to ignore list generated by arm build 2015-07-27 11:47:01 -07:00
row_gcc.cc remove align directives 2015-08-04 17:00:03 -07:00
row_mips.cc remove align directives 2015-08-04 17:00:03 -07:00
row_neon64.cc Change Sobel to use JPeg Luma calculation instead of extracting G channel. Using luma produces a better sobel that respects all 3 channels of RGB. Historically the G channel was used to improve performance, and because the luma of I420 is a constrained range, hurting quality. Using the JPeg variation of YUV, the luma is more accurate, including cross platform, better optimized for AVX2 and odd widths, and full range. 2015-05-27 22:32:26 +00:00
row_neon.cc remove align directives 2015-08-04 17:00:03 -07:00
row_win.cc vpermq for avx2 ARGB4444ToARGB, ARGB1555ToARGB and RGB565ToARGB 2015-07-07 17:06:04 -07:00
scale_any.cc Box filter for YUV use rows with accumulation buffer for better memory behavior. The old code would do columns accumulated into registers, and then store the result once. This was slow from a memory point of view. The new code does a row of source at a time, updating an accumulation buffer every row. The accumulation buffer is small, and should fit cache. Before each accumulation of N rows, the buffer needs to be reset to zero. If the memset is a bottleneck, it would be faster to do the first row without an add, storing to the accumulation buffer, and then add for the remaining rows. 2015-06-09 01:05:18 +00:00
scale_argb.cc odd width support for scale by even scale factor and box scale down by 4. scale down by 4 uses scale down by 2 internally. 2015-05-26 17:56:51 +00:00
scale_common.cc Box filter for YUV use rows with accumulation buffer for better memory behavior. The old code would do columns accumulated into registers, and then store the result once. This was slow from a memory point of view. The new code does a row of source at a time, updating an accumulation buffer every row. The accumulation buffer is small, and should fit cache. Before each accumulation of N rows, the buffer needs to be reset to zero. If the memset is a bottleneck, it would be faster to do the first row without an add, storing to the accumulation buffer, and then add for the remaining rows. 2015-06-09 01:05:18 +00:00
scale_gcc.cc rename source files from row_posix.cc etc to row_gcc.cc to avoid gyp build filtering out source files from build when on windows with clang. The source code contained in row_gcc.cc is gcc syntax inline assembly available for any platform that supports gcc or clang for intel cpus. 2015-06-09 17:27:52 +00:00
scale_mips.cc remove align directives 2015-08-04 17:00:03 -07:00
scale_neon64.cc work arounds for ios 64 bit compiler where int passed into assembly needs to be explicitely cast to 'w' register. 2015-05-05 22:46:16 +00:00
scale_neon.cc remove align directives 2015-08-04 17:00:03 -07:00
scale_win.cc avx ifdef for scale HAS_SCALEADDROW_AVX2. 2015-07-31 17:17:14 -07:00
scale.cc Box filter for YUV use rows with accumulation buffer for better memory behavior. The old code would do columns accumulated into registers, and then store the result once. This was slow from a memory point of view. The new code does a row of source at a time, updating an accumulation buffer every row. The accumulation buffer is small, and should fit cache. Before each accumulation of N rows, the buffer needs to be reset to zero. If the memset is a bottleneck, it would be faster to do the first row without an add, storing to the accumulation buffer, and then add for the remaining rows. 2015-06-09 01:05:18 +00:00
video_common.cc Remove bayer format support from libyuv. This format is very rare and used on legacy hardware. Its not well optimized and has bugs related to odd widths. Removing the format will allow tests to pass under more circumstances, run faster and allow focus on higher priority quality and performance issues. 2015-02-09 19:58:19 +00:00