679 Commits

Author SHA1 Message Date
fbarchard@google.com
b99bcab7f7 ARGBShuffle_AVX2 for speed up end swapping for Chrome/Java.
BUG=271
TESTED=ARGBShuffle unittest
R=mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2320005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@804 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-30 07:47:59 +00:00
fbarchard@google.com
446f91d040 Use vbroadcastf128 to copy m128 to ymm duplicating the value to high and low 128 bits. Allows shared variables.
BUG=none
TEST=avx2 unittests still pass.
R=mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2324004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@803 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-30 06:49:10 +00:00
fbarchard@google.com
0d19fc5ed3 disable lint warning on movzx instructions
BUG=none
TEST=lint
R=johannkoenig@google.com

Review URL: https://webrtc-codereview.appspot.com/2290004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@802 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-24 21:48:50 +00:00
fbarchard@google.com
2732591d46 Limit sobel maximum width to stride - kEdge
BUG=none
TEST=drmemory

Review URL: https://webrtc-codereview.appspot.com/2285004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@801 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-24 19:56:29 +00:00
fbarchard@google.com
a927c6fb87 DrMemory fix for Sobel overread.
BUG=262
TESTED=Sobel* unittests re-enabled.

Review URL: https://webrtc-codereview.appspot.com/2273008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@800 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-24 11:10:22 +00:00
fbarchard@google.com
47e856c632 Make I411ToARGB read 2 bytes to avoid overread.
BUG=262
TESTED=I411ToARGB
R=kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2278004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@799 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-24 10:07:16 +00:00
fbarchard@google.com
07c3fe2f61 Fix DrMemory errors in unittests that were not initializing memory.
BUG=263
TEST=set GYP_DEFINES=build_for_tool=drmemory target_arch=ia32 & drmemory out\debug\libyuv_unittest.exe --gtest_catch_exceptions=0 --gtest_filter=*
R=kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2270007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@798 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-24 07:39:10 +00:00
fbarchard@google.com
529558453f Add gcc 4.7 support for AVX2
BUG=269
TEST=g++ -c source/row_posix.cc -I include/
R=nfullagar@google.com

Review URL: https://webrtc-codereview.appspot.com/2273006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@797 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-24 01:13:43 +00:00
fbarchard@google.com
3cb6071cb9 Port Polynomial AVX2 code to GCC/NaCL
BUG=269
TESTED=untested
R=johannkoenig@google.com

Review URL: https://webrtc-codereview.appspot.com/2262004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@795 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-20 05:48:05 +00:00
fbarchard@google.com
afd1d6b4ec Fix 2 bugs with Luma scale
BUG=267
TEST=luma unittest improved
R=ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/2260005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@794 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-20 01:00:54 +00:00
fbarchard@google.com
7a0d01ef8b Luma Table optimized for SSSE3
BUG=267
TESTED=lUMA unittest
R=jingning@google.com, nfullagar@google.com

Review URL: https://webrtc-codereview.appspot.com/2257004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@793 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-19 17:55:54 +00:00
fbarchard@google.com
823548cb3b AVX2 hash using vex128 as first step.
BUG=none
TEST=BenchmarkDjb2_Opt
R=ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/2219004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@792 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-17 20:34:28 +00:00
fbarchard@google.com
a1ab194545 Color Table x86 reoptimized and ported to gcc.
BUG=266
TESTED=color table unittests
R=changjun.yang@intel.com

Review URL: https://webrtc-codereview.appspot.com/2216004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@791 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-16 17:01:02 +00:00
fbarchard@google.com
2bbb64df2c FMA3 version of Polynomial
BUG=265
TEST=cpuid and Polynomial unittest
R=changjun.yang@intel.com

Review URL: https://webrtc-codereview.appspot.com/2217004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@790 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-16 16:42:19 +00:00
fbarchard@google.com
851a702b39 Make static constants const for Visual C. Allows optimizer to collapse similar constants (SSE2 is subset of AVX2). GCC has compiler bug with const attributes, but Visual C does not.
BUG=254
TEST=windows build still passes and is smaller
R=cdelaunay@google.com

Review URL: https://webrtc-codereview.appspot.com/2200007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@788 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-12 01:07:42 +00:00
fbarchard@google.com
acce9ed482 Nacl port of Polynomial
BUG=265
TESTED=untested
R=nfullagar@google.com

Review URL: https://webrtc-codereview.appspot.com/2196009

git-svn-id: http://libyuv.googlecode.com/svn/trunk@787 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-11 23:36:17 +00:00
fbarchard@google.com
c3b04796c2 ARGBPolynomial ported to gcc
BUG=265
TESTED=try bots
R=changjun.yang@intel.com

Review URL: https://webrtc-codereview.appspot.com/2191007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@786 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-11 14:43:29 +00:00
fbarchard@google.com
7e7c7753ba Remove alignment from ARGBToRGB24 and ARGBToRAW to allow fast code to be used all of the time. Improves performance on Westmere and beyond, hurts performance for aligned buffers on older CPUs.
BUG=230
TESTED=try bot
R=nfullagar@google.com

Review URL: https://webrtc-codereview.appspot.com/2197007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@785 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-11 01:18:36 +00:00
fbarchard@google.com
b38b73d88c ARGBLumaColorTable function.
BUG=267
TEST=Luma*
R=thorcarpenter@google.com

Review URL: https://webrtc-codereview.appspot.com/2202004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@783 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-10 20:34:09 +00:00
fbarchard@google.com
c3c06ec328 polynomial sse2 do 2 pixels at a time.
BUG=265
TEST=*Poly*
R=changjun.yang@intel.com

Review URL: https://webrtc-codereview.appspot.com/2195004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@782 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-10 08:16:06 +00:00
fbarchard@google.com
5442018d64 Improved polynomial for avx2 using vpmovzxbd and remove movdqa.
BUG=265
TESTED=libyuvTest.TestARGBPolynomial
R=jingning@google.com, ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/2184005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@781 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-09 18:14:03 +00:00
fbarchard@google.com
6da76f3b34 AVX version of Polynomial
BUG=265
TEST=untested
R=thorcarpenter@google.com, yunqingwang@google.com

Review URL: https://webrtc-codereview.appspot.com/2166004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@780 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-07 07:05:06 +00:00
fbarchard@google.com
dcd87ffb8c Vertical-only scale for YUV.
BUG=260
TEST=ScaleDownByVertical2by3_Bilinear
R=jingning@google.com, thorcarpenter@google.com

Review URL: https://webrtc-codereview.appspot.com/2165004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@779 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-03 20:00:10 +00:00
fbarchard@google.com
ae0091e3a7 ARGBPolynomial for applying a 3 term polynomial matrix to pixels.
BUG=265
TEST=ARGBPolynomial
R=thorcarpenter@google.com

Review URL: https://webrtc-codereview.appspot.com/2159005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@778 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-03 19:20:47 +00:00
fbarchard@google.com
2154de414c Port InterpolateRows to AVX2
BUG=264
TEST=ARGBInterpolate*
R=changjun.yang@intel.com

Review URL: https://webrtc-codereview.appspot.com/2160004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@777 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-03 07:18:21 +00:00
fbarchard@google.com
7aa2bf9284 Scale avoid overread for DrMemory
BUG=263
TEST=Scale unittests still pass with same performance.
R=mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2153004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@776 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-09-02 10:32:27 +00:00
fbarchard@google.com
5fcf38cfc8 Scale a plane. Before eating an airplane, remove the scales, then fry and serve with tartar sauce.
BUG=260
TEST=try serving with lemon.
R=wuwang@google.com

Review URL: https://webrtc-codereview.appspot.com/2128005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@775 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-28 01:10:48 +00:00
fbarchard@google.com
c105bae792 Move header and rename function to more generic scaleplane
BUG=260
TEST=unittests
R=wuwang@google.com

Review URL: https://webrtc-codereview.appspot.com/2128004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@774 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-28 00:31:08 +00:00
fbarchard@google.com
49bbc1b4f3 Move vertical scaler to common code.
BUG=260
TEST=unittests build/run
R=ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/2123004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@773 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-27 16:32:22 +00:00
fbarchard@google.com
d1f2ef310d Scale specialized for 50/50 vertically and check x is integer
BUG=260
TESTED=manual test with LIBYUV_HEIGHT=1440
R=wuwang@google.com

Review URL: https://webrtc-codereview.appspot.com/2116004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@772 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-26 23:52:13 +00:00
fbarchard@google.com
eed5d8e92f Remove TESTING macro from posix
BUG=253
TEST=none
R=dingkai@google.com

Review URL: https://webrtc-codereview.appspot.com/2115004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@771 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-26 22:48:51 +00:00
fbarchard@google.com
3c11e185a8 Scale vertically only
BUG=260
TESTED=manually tested with LIBYUV_HEIGHT=270
R=dingkai@google.com, ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/2113004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@770 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-26 22:24:08 +00:00
nfullagar@google.com
607dc47533 Port HAS_ARGBTOUVROW_SSSE3 to Native Client
This CL also ports HAS_YUY2TOYROW_SSE2 and enables
HAS_BGRATOYROW_SSSE3 and many others.

TEST=libyuv_test,ncval,bots
BUG=253
R=fbarchard@google.com

Review URL: https://webrtc-codereview.appspot.com/2049005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@769 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-22 01:15:58 +00:00
fbarchard@google.com
196cc2e5c1 generate code for various instructions just to get byte codes.
BUG=253
TESTED=nacl build and dump
R=nfullagar@google.com

Review URL: https://webrtc-codereview.appspot.com/2079004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@768 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-21 01:38:25 +00:00
fbarchard@google.com
fc34ac5bb2 Fix for ARGBScale nacl validator
BUG=253
TESTED=ncval.exe newlib/Release/nacltest_x86_64.nexe
R=nfullagar@google.com

Review URL: https://webrtc-codereview.appspot.com/2066004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@767 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-19 22:29:33 +00:00
nfullagar@google.com
f6e1139921 Port scale_argb functions to Native Client.
BUG=253
TEST=libyuv_unittest,ncval,trybots
R=fbarchard@google.com

Review URL: https://webrtc-codereview.appspot.com/2054006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@766 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-19 20:44:14 +00:00
fbarchard@google.com
c140b9d150 CopyRow_SSE2 ported to Nacl with munging removed
BUG=253
TESTED=libyuvTest.TestCopyPlane
R=wuwang@google.com

Review URL: https://webrtc-codereview.appspot.com/2060006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@765 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-19 19:12:39 +00:00
nfullagar@google.com
1c710a0606 Port Sobel to Native Client
BUG=253
TEST=libyuvtest,trybots
R=fbarchard@google.com

Review URL: https://webrtc-codereview.appspot.com/2037004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@764 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-15 21:26:53 +00:00
fbarchard@google.com
bb5ea8e4df Unattenuate port to NaCL
BUG=253
TESTED=validator
R=nfullagar@google.com

Review URL: https://webrtc-codereview.appspot.com/2038004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@763 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-15 06:40:42 +00:00
nfullagar@google.com
f78509b3be Port Interpolate SSE2 to NaCl
BUG=253
TEST=libyuv_test,try bots
R=fbarchard@google.com

Review URL: https://webrtc-codereview.appspot.com/2013005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@762 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-14 23:09:44 +00:00
fbarchard@google.com
6f61eb6709 NaCL port of Affine
BUG=253
TESTED=ncval passed
R=dingkai@google.com

Review URL: https://webrtc-codereview.appspot.com/2035004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@761 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-14 21:43:44 +00:00
fbarchard@google.com
d593876b16 Disable assembly for rotate and scale
BUG=253
TEST=validator
R=nfullagar@google.com

Review URL: https://webrtc-codereview.appspot.com/2034004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@760 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-14 18:45:16 +00:00
nfullagar@google.com
9b0f0da083 InterpolateRow SSSE3 for Native Client
Fix bug in CumulativeSumToAverageRow
BUG=253
TEST=ncval,trybots
R=fbarchard@google.com

Review URL: https://webrtc-codereview.appspot.com/2004004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@759 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-14 18:19:04 +00:00
fbarchard@google.com
d459f382fd Align branch targets for NaCL validator.
BUG=253
TEST=validator
R=johannkoenig@google.com, ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/2033004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@758 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-14 17:58:33 +00:00
fbarchard@google.com
c4a70492c0 blur unittest and fix for negative height
BUG=256
TEST=*Blur*
R=ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/2027005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@757 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-14 16:16:39 +00:00
fbarchard@google.com
7fa21d677c More ifdefs to build all libyuv and not get link errors on missing assembly
BUG=253
TEST=nacl validator
R=nfullagar@google.com, ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/2024004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@756 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-13 21:54:23 +00:00
fbarchard@google.com
ee34d49b28 Fix for ret in rotate for nacl 32 bit
BUG=253
TESTED=VALID
R=nfullagar@google.com

Review URL: https://webrtc-codereview.appspot.com/2009005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@755 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-12 23:28:28 +00:00
nfullagar@google.com
e9a27403d4 First go at porting blur component to NaCl
BUG=253
TEST=ncvar
R=fbarchard@google.com

Review URL: https://webrtc-codereview.appspot.com/1995004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@754 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-09 18:21:57 +00:00
fbarchard@google.com
4b4b50fb44 Make unittests to 1280 pixels for simple planar tests, to get more realistic performance metrics than 256 pixels.
BUG=253
TEST=planar tests
R=nfullagar@google.com

Review URL: https://webrtc-codereview.appspot.com/1994004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@753 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-09 02:02:52 +00:00
fbarchard@google.com
0d41aee26b Port compare functions to Nacl
BUG=253
TEST=none
R=nfullagar@google.com

Review URL: https://webrtc-codereview.appspot.com/1998004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@752 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-08 23:52:34 +00:00
nfullagar@google.com
341b17a250 Fix for NaCl store string, which needs source reg.
BUG=253
TEST=ncval
R=fbarchard@google.com

Review URL: https://webrtc-codereview.appspot.com/1991004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@751 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-08 19:58:03 +00:00
nfullagar@google.com
22402bfa6f Support string instructions for NaCl
BUG=253
TEST=validator
R=fbarchard@google.com

Review URL: https://webrtc-codereview.appspot.com/1990004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@750 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-08 00:26:20 +00:00
fbarchard@google.com
e64c236250 Fix for Nacl version of blur
BUG=253
TEST=none
R=nfullagar@google.com

Review URL: https://webrtc-codereview.appspot.com/1987004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@749 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-07 21:18:01 +00:00
fbarchard@google.com
9335518f41 Port some of the conversion routines to nacl
BUG=253
TEST=validator
R=nfullagar@google.com, ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/1983004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@748 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-07 20:29:18 +00:00
fbarchard@google.com
b8ffdc9e57 ColorMatrix and friends ported to NaCL
BUG=253
TESTED=ncval_x86_64.exe newlib/Release/nacltest_x86_64.nexe
R=nfullagar@chromium.org

Review URL: https://webrtc-codereview.appspot.com/1981004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@747 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-06 22:27:01 +00:00
fbarchard@google.com
abfeea9b81 Math functions - add, substract, multiply and shade adapted to nacl friendly addressing.
BUG=253
TEST=out\release\libyuv_unittest --gtest_filter=*Add*
R=dingkai@google.com, nfullagar@chromium.org

Review URL: https://webrtc-codereview.appspot.com/1972004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@746 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-06 20:47:18 +00:00
fbarchard@google.com
008ecea4fe NaCL port of Attenuate
BUG=253
TEST=out\release\libyuv_unittest --gtest_filter=*Attenuate*
R=nfullagar@chromium.org

Review URL: https://webrtc-codereview.appspot.com/1970004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@745 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-06 00:51:26 +00:00
fbarchard@google.com
f8a86cb095 Enable AlphaBlend SSSE3 code for NaCL
BUG=253
TESTED=validator
R=nfullagar@chromium.org, ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/1968004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@744 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-06 00:08:01 +00:00
fbarchard@google.com
f2aa91a1ac replace static const with static to avoid internal compiler error with gcc
BUG=258
TEST=try bots
R=johannkoenig@google.com

Review URL: https://webrtc-codereview.appspot.com/1944004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@743 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-02 17:48:24 +00:00
fbarchard@google.com
465a5583ef use CONST macro for OSX.
BUG=254
TEST=none
R=johannkoenig@google.com

Review URL: https://webrtc-codereview.appspot.com/1942004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@742 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-02 00:44:29 +00:00
fbarchard@google.com
f0627d7107 syntax error fix
BUG=none
TEST=none
R=ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/1883004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@741 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-07-26 01:18:25 +00:00
fbarchard@google.com
4a1325ade5 Disable xgetbv on nacl for now as its not allowed under validator. Consider reenabling it when avx2 is allowed.
BUG=253
TEST=validator
R=ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/1881005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@740 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-07-26 00:59:52 +00:00
fbarchard@google.com
5520710ef7 Add RGBColorTable which is like ARGBColorTable but only does first 3 channels.
BUG=none
TEST=none
R=dingkai@google.com, thorcarpenter@google.com, wuwang@google.com

Review URL: https://webrtc-codereview.appspot.com/1858004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@739 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-07-24 21:35:57 +00:00
fbarchard@google.com
595c2427e8 Simple FixedDiv that does integer divide instruction with 64 bit dividend and 32 bit divisor to produce 32 bit result.
BUG=250
TEST=math_test
R=dingkai@google.com

Review URL: https://webrtc-codereview.appspot.com/1681006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@736 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-06-18 22:08:16 +00:00
fbarchard@google.com
e5d3e10ee8 Add rounding to FixedDiv
BUG=250
TEST=unittest more exact
R=dingkai@google.com, ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/1681005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@735 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-06-18 20:37:14 +00:00
fbarchard@google.com
c9f0d966ed FixedDiv port to gcc
BUG=250
TEST=*Div*
R=ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/1682005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@733 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-06-18 18:58:33 +00:00
fbarchard@google.com
747ceb9fa5 FixedDiv using integers
BUG=250
TEST=fixed div unittest
R=dingkai@google.com, ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/1681004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@732 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-06-18 17:12:15 +00:00
fbarchard@google.com
1140454596 add f to float constant
BUG=none
TEST=none
R=johannkoenig@google.com

Review URL: https://webrtc-codereview.appspot.com/1671005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@731 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-06-17 23:23:51 +00:00
fbarchard@google.com
a18ba50d23 Remove blank lint from OWNERS. Move FixedDiv into row functions to avoid changing build files.
BUG=none
TEST=none
R=johannkoenig@google.com

Review URL: https://webrtc-codereview.appspot.com/1680004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@730 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-06-17 23:04:13 +00:00
fbarchard@google.com
6f269a1a1b Expect off by one on 1/1080 and disable scaleup code for now.
BUG=none
TEST=libyuvTest.TestFixedDiv_Opt
R=shaowei@google.com

Review URL: https://webrtc-codereview.appspot.com/1677005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@729 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-06-17 17:21:26 +00:00
fbarchard@google.com
b3a08b3e05 include lint warning fixes
BUG=none
TEST=lint
R=ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/1676004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@728 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-06-17 16:37:39 +00:00
fbarchard@google.com
f2f9dbb644 FixedDiv function in C and benchmark
BUG=none
TEST=FixedDiv*
R=johannkoenig@google.com

Review URL: https://webrtc-codereview.appspot.com/1668004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@727 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-06-15 21:10:19 +00:00
fbarchard@google.com
e4d77322ab YUV to ARGB scaler low level function. Not hooked up to high level.
BUG=240
TEST=try bots compile function without errors.
R=ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/1659004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@724 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-06-13 21:05:47 +00:00
fbarchard@google.com
2c4e3993c0 Change vld and vst to specify only elements and size not sign for better arm compiler compatability.
BUG=none
TEST=none
R=kma@webrtc.org, mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1643004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@721 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-06-10 16:21:57 +00:00
fbarchard@google.com
eed4149e10 gcc msys compile ifdefs avoid Visual C inline
BUG=243
TEST=local compile with gcc
R=jkoleszar@google.com

Review URL: https://webrtc-codereview.appspot.com/1613004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@717 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-06-04 17:58:57 +00:00
fbarchard@google.com
97c9626107 Test yuv scaler with scale factor of 1
BUG=none
TEST=ScaleDownBy1
R=gangji@google.com

Review URL: https://webrtc-codereview.appspot.com/1592004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@715 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-06-03 15:09:58 +00:00
fbarchard@google.com
449eb230a2 When scaling a 1x1, dx/dy is 0. Switch to point sample
BUG=none
TEST=none
R=dingkai@google.com

Review URL: https://webrtc-codereview.appspot.com/1582007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@714 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-31 21:48:11 +00:00
fbarchard@google.com
e2115ac385 scaling from 1x1 will cause dx/dy to be 0. This was confusing the specialized scalers into calling the wrong function.
BUG=none
TEST=none
R=johannkoenig@google.com, noahric@chromium.org

Review URL: https://webrtc-codereview.appspot.com/1591004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@713 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-31 21:10:01 +00:00
fbarchard@google.com
37c0e648d2 Fix crash on wide images
BUG=239
TEST=LIBYUV_WIDTH=10000 out\release\libyuv_unittest
R=changjun.yang@intel.com, johannkoenig@google.com

Review URL: https://webrtc-codereview.appspot.com/1586006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@712 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-31 16:55:27 +00:00
fbarchard@google.com
314dbf71c3 ARGBScale to half size adjust address for filtering.
BUG=238
TEST=libyuvTest.ARGBScaleDownBy4_Bilinear
R=dingkai@google.com

Review URL: https://webrtc-codereview.appspot.com/1589004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@711 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-31 00:56:33 +00:00
fbarchard@google.com
b911428afd Adapt row interpolator to do YUV as well as ARGB without extrude so it can be used in I420Scale.
BUG=237
TEST=Scale*
R=ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/1587004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@710 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-30 23:42:27 +00:00
fbarchard@google.com
8ffe78abd2 Scale down by 4 used 3rd pixel
BUG=232
TEST=convert.exe -f 0 faces_640x480_P420.yuv face2_160x120_P420.yuv
R=changjun.yang@intel.com

Review URL: https://webrtc-codereview.appspot.com/1579005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@709 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-30 07:14:14 +00:00
fbarchard@google.com
8b54a8f9f2 Specialized scale down sample to 1 / 2 size adjust to match general purpose code which uses odd pixel (rounded up - nearest neighbor).
BUG=223
TEST=out\Debug\convert.exe -f 0 faces_640x480_P420.yuv face2_320x240_P420.yuv
R=johannkoenig@google.com

Review URL: https://webrtc-codereview.appspot.com/1583005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@708 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-29 19:29:46 +00:00
fbarchard@google.com
83408b85e4 Change point down sampling to x = dx / 2 which matches ffmpeg and is lossless on up and then down sample.
BUG=232
TEST=convert.exe -f 0 faces_640x480_P420.yuv face2_352x288_P420.yuv
R=johannkoenig@google.com, ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/1581005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@707 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-29 17:40:50 +00:00
fbarchard@google.com
fcc1b95592 Scale up point use step / 2 as initial coordinate, which is more symetric and matches ffmpeg exactly.
BUG=232
TEST=convert.exe -f 0 faces_352x288_P420.yuv faces_640x480_P420.yuv
R=ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/1580005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@706 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-29 17:05:42 +00:00
fbarchard@google.com
58f50df879 Add Rotate Plane
BUG=233
TEST=RotatePlane*
R=ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/1582004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@704 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-28 22:40:05 +00:00
fbarchard@google.com
031f05fd00 Add OSX fourcc for 32 and 24 bit big endian formats, using by camtwist
BUG=229
TEST=untested
Review URL: https://webrtc-codereview.appspot.com/1506004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@698 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-19 18:32:45 +00:00
fbarchard@google.com
9591f63a46 scale down filter row segment
BUG=226
TESTED=unittest
Review URL: https://webrtc-codereview.appspot.com/1498004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@697 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-17 18:53:21 +00:00
fbarchard@google.com
d45342f61e Remove getenv for scaling filter as its not needed now and is showing up on profiles.
BUG=228
TESTED=unittest and try bots
Review URL: https://webrtc-codereview.appspot.com/1496004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@696 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-17 09:12:29 +00:00
fbarchard@google.com
3db4588bf9 Scale horizontally by 2 but vertically anything.
BUG=none
TEST=set LIBYUV_WIDTH=320 set LIBYUV_HEIGHT=90 libyuvTest.ARGBScaleFrom640x360_Bilinear
Review URL: https://webrtc-codereview.appspot.com/1477006

git-svn-id: http://libyuv.googlecode.com/svn/trunk@695 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-15 19:51:33 +00:00
fbarchard@google.com
927eb2c1f6 scale argb clip
BUG=226
TESTED=libyuv scale unittests
Review URL: https://webrtc-codereview.appspot.com/1470004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@694 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-15 18:44:12 +00:00
fbarchard@google.com
306e984451 YUV scaler mirror horizontal if src_width is negative
BUG=
Review URL: https://webrtc-codereview.appspot.com/1449004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@692 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-13 17:57:27 +00:00
fbarchard@google.com
74df2a521d Point upsample uncentered so last pixel is same width as first.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1424004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@687 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-06 21:57:25 +00:00
fbarchard@google.com
ef888b7dba ARGBScale accept negative width for scaling to indicate mirror horizontally.
BUG=220
TEST=convert util and ARGBScale unittests with set LIBYUV_WIDTH=-1280
Review URL: https://webrtc-codereview.appspot.com/1409005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@685 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-06 17:48:25 +00:00
fbarchard@google.com
b432b7da2d Fix for clobber registers on SumSquareError_SSE2 used for PSNR
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1410004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@683 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-06 05:36:58 +00:00
fbarchard@google.com
4154163e20 make the lib self contained .a files
BUG=none
TEST=try
Review URL: https://webrtc-codereview.appspot.com/1380004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@682 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-01 19:14:28 +00:00
fbarchard@google.com
e25f991327 Fix for ARGBToI444 for arm
BUG=223
TEST=libyuv_unittest --gtest_filter=*I444ToARGB*
Review URL: https://webrtc-codereview.appspot.com/1353004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@680 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-04-25 18:04:17 +00:00
fbarchard@google.com
7c4ba13b31 remove empty last line
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1317007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@679 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-04-24 19:08:17 +00:00
fbarchard@google.com
77b0af36e4 roll chromium deps to a known good release (lkgr) and fix indent lint issue.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1321008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@677 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-04-23 21:35:07 +00:00
fbarchard@google.com
50c33eb601 YuvPixel for llvm use byte clamping branchless instead of int expression.
BUG=221
TEST=I420To*R*
Review URL: https://webrtc-codereview.appspot.com/1313011

git-svn-id: http://libyuv.googlecode.com/svn/trunk@676 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-04-23 07:06:45 +00:00