111 Commits

Author SHA1 Message Date
frkoenig@google.com
f7e74a1a6f Move neon rotate code from straight assembly to inline.
Allow assemblers with a slightly different syntax to use
the optimized neon routines.

Removed extra constraints on the calling of the optimized
routines.  All neon routines can load unaligned and handle
odd widths.

Align allocated buffers in rotate_test.cc

Add neon rotate file to gyp file for arm targets.
Review URL: http://webrtc-codereview.appspot.com/253007

git-svn-id: http://libyuv.googlecode.com/svn/trunk@59 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-11-03 22:41:59 +00:00
frkoenig@google.com
7aa6f06e70 Avoid using Q4-Q7 registers for NEON.
Was not paying attention to which registers were for scratch.
Avoid the need to preserve registers by not using registers
in the Q4-Q7 range.

Fix ScaleDown2Int_NEON by changing how rounding was applied.

ScaleDownRow4 changed to process 4 output pixels per loop.

No need to push/pop registers for UV Transpose, removed
functions.

Fix for CPU Flag for scale_test.cc to turn on/off optimizations
for timing.
Review URL: http://webrtc-codereview.appspot.com/259002

git-svn-id: http://libyuv.googlecode.com/svn/trunk@58 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-11-03 00:54:50 +00:00
fbarchard@google.com
4562b62caa Reduced usage of xmm6 and xmm7 which need to be saved on win64.
BUG=none
TEST=tested with talk unittests
Review URL: http://webrtc-codereview.appspot.com/261003

git-svn-id: http://libyuv.googlecode.com/svn/trunk@55 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-11-02 23:06:27 +00:00
fbarchard@google.com
79b18eecc5 ifdef fix for 32 bit gcc
BUG=none
TEST=build on linux
Review URL: http://webrtc-codereview.appspot.com/256003

git-svn-id: http://libyuv.googlecode.com/svn/trunk@52 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-10-31 22:13:36 +00:00
fbarchard@google.com
9394ed99fc ARGB To I420 and variations using row functions
BUG=none
TEST=media_unittests from talk used to benchmark
Review URL: http://webrtc-codereview.appspot.com/254001

git-svn-id: http://libyuv.googlecode.com/svn/trunk@51 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-10-31 21:36:47 +00:00
arphaxad.cy@gmail.com
7472021e53 git-svn-id: http://libyuv.googlecode.com/svn/trunk@50 16f28f9a-4ce2-e073-06de-1de4eb20be90 2011-10-31 20:54:44 +00:00
fbarchard@google.com
780203897c rotate for x86 and bayer refactored - 3x faster.
BUG=1
TEST=tested with talk unittests.
Review URL: http://webrtc-codereview.appspot.com/250004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@42 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-10-27 20:52:52 +00:00
fbarchard@google.com
fd4b315d5d 64 bit port of rotation and tweeks to planar
BUG=none
TEST=local tests
Review URL: http://webrtc-codereview.appspot.com/244008

git-svn-id: http://libyuv.googlecode.com/svn/trunk@38 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-10-21 22:26:48 +00:00
frkoenig@google.com
3de12ae1c6 I420 and NV12 rotate functions.
Consolidate rotate files.  Add unit tests for I420
and NV12 rotate functions.  Fix remaining pitch/stride
references.
Review URL: http://webrtc-codereview.appspot.com/239001

git-svn-id: http://libyuv.googlecode.com/svn/trunk@32 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-10-19 17:52:15 +00:00
fbarchard@google.com
a1280730c2 cleanup yuv for consistency. stride, return int, negative heights, inplace conversions, lower case names, filter enum, uint, planarfunction updates, remove common.h, remove common/ folder, cpuid header public, move headers into libyuv/, add libyuv.h, fixed header guards, remove internal timing from scale, tweaks for llvm build, videocommon simplified
BUG=none
TEST=Talk builds on all platforms against libyuv.
Review URL: http://webrtc-codereview.appspot.com/226003

git-svn-id: http://libyuv.googlecode.com/svn/trunk@31 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-10-14 17:50:12 +00:00
frkoenig@google.com
ed6edcab8b Fixed image rotators.
90, 180, 270 rotate of array with a minimum size of 8x8.
Also deinterleave on rotate for NV12/NV21 formats.
Review URL: http://webrtc-codereview.appspot.com/195002

git-svn-id: http://libyuv.googlecode.com/svn/trunk@23 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-10-12 21:37:43 +00:00