fbarchard@google.com
cb5262dbc5
scale by even amounts using Neon
...
BUG=156
TEST=./libyuv_unittest --gtest_filter=*ARGBScale*
Review URL: https://webrtc-codereview.appspot.com/930019
git-svn-id: http://libyuv.googlecode.com/svn/trunk@492 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-16 01:41:35 +00:00
fbarchard@google.com
f08ac6bb09
Rename row functions so they are all SomethingRow_CPU
...
BUG=133
TEST=still builds
Review URL: https://webrtc-codereview.appspot.com/939020
git-svn-id: http://libyuv.googlecode.com/svn/trunk@491 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-15 00:21:14 +00:00
fbarchard@google.com
3e46444727
Mirror source to continuous destination with Neon
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/937020
git-svn-id: http://libyuv.googlecode.com/svn/trunk@488 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-14 02:03:49 +00:00
fbarchard@google.com
bdf7cb5914
RGB formats converted to YUV with Neon
...
BUG=none
TEST=convert_test
Review URL: https://webrtc-codereview.appspot.com/936013
git-svn-id: http://libyuv.googlecode.com/svn/trunk@471 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-05 23:40:11 +00:00
fbarchard@google.com
6c1b2d38c6
Mips port of libyuv. Includes functionality for convert, rotate, scale and memcpy.
...
BUG=126
TESTED=tested by mips
Review URL: https://webrtc-codereview.appspot.com/930005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@449 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-26 22:49:18 +00:00
fbarchard@google.com
62a961bee7
Neon version of I420ToNV12 and I420ToNV21. NV21ToI420 added as function. CopyRow changed to vld4.8 to allow unaligned copy.
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/922005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@435 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-22 17:24:50 +00:00
fbarchard@google.com
4862595764
More tests for NV12
...
BUG=none
TEST=*NV12*
Review URL: https://webrtc-codereview.appspot.com/885004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@419 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-14 07:19:31 +00:00
fbarchard@google.com
64ce0ab544
Move Neon source to its own files.
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/860009
git-svn-id: http://libyuv.googlecode.com/svn/trunk@396 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-09 00:05:29 +00:00
fbarchard@google.com
fc7314e86b
Add exports to allow libyuv to be built as a shared lib.
...
BUG=99
TEST=shared lib builds without impact and unittests link against import lib.
Review URL: https://webrtc-codereview.appspot.com/844005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@379 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-27 02:17:51 +00:00
fbarchard@google.com
142f6c4ed5
Move row.h to include and remove rotate_priv.h
...
BUG=93
TESTED=try server
Review URL: https://webrtc-codereview.appspot.com/811004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@360 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-18 20:56:51 +00:00
fbarchard@google.com
619ee4586b
YUV_DISABLE_ASM for NEON
...
BUG=70
TEST=none
Review URL: https://webrtc-codereview.appspot.com/710013
git-svn-id: http://libyuv.googlecode.com/svn/trunk@324 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-17 21:07:22 +00:00
fbarchard@google.com
b0c9797589
Update Copyright notice to follow new chromium conventions.
...
BUG=63
TEST=none
Review URL: https://webrtc-codereview.appspot.com/730004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@314 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-08 19:04:24 +00:00
fbarchard@google.com
d51c342521
Rotate ARGB using a scale function that reads with step, combining to form 16 bytes at a time.
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/674007
git-svn-id: http://libyuv.googlecode.com/svn/trunk@294 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-26 23:46:25 +00:00
fbarchard@google.com
5bf29b59db
p2align all loops, copy stride to local for scale, and copy last byte in bilinear more efficiently
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/547007
git-svn-id: http://libyuv.googlecode.com/svn/trunk@255 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-05-02 00:10:16 +00:00
fbarchard@google.com
d2f4413d29
Remove old alpha blend, expose GetARGB2Blend, fix ComputeSumSquareErrorPlane on SSE2
...
BUG=29
TEST=none
Review URL: https://webrtc-codereview.appspot.com/469005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@234 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-04-04 21:53:27 +00:00
fbarchard@google.com
f3fb7b6920
Lint cleanup for Neon and Visual C inline.
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/464002
git-svn-id: http://libyuv.googlecode.com/svn/trunk@231 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-29 23:19:34 +00:00
fbarchard@google.com
5b22506b14
With an asm() away lint, this cleans up most remaining issues.
...
BUG=none
TEST=lint filename
Review URL: https://webrtc-codereview.appspot.com/464001
git-svn-id: http://libyuv.googlecode.com/svn/trunk@230 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-29 02:19:26 +00:00
fbarchard@google.com
0945c57874
Rotate by 180 in place.
...
BUG=18
TEST=none
Review URL: https://webrtc-codereview.appspot.com/456010
git-svn-id: http://libyuv.googlecode.com/svn/trunk@227 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-28 02:58:26 +00:00
fbarchard@google.com
2b9c210803
lint fix test
...
BUG=none
TEST=gcl lint lintfix2
Review URL: https://webrtc-codereview.appspot.com/458003
git-svn-id: http://libyuv.googlecode.com/svn/trunk@220 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-22 22:36:44 +00:00
fbarchard@google.com
18184fd19d
switch looping to jg from ja to allow non-multiple of 16 to underflow to a negative
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/453001
git-svn-id: http://libyuv.googlecode.com/svn/trunk@214 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-12 18:53:19 +00:00
fbarchard@google.com
bd4a849bcb
fix for nv21 u, v order, align all loops, and make addrows support 1 row
...
BUG=17
TEST=none
Review URL: https://webrtc-codereview.appspot.com/435004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@208 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-07 19:19:03 +00:00
fbarchard@google.com
fe9f4ad808
alphablend test for opaque and transparent
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/436005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@205 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-07 02:43:18 +00:00
fbarchard@google.com
9198f3754b
rm for stride in addrows for clang on mac to not run out of registers
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/440001
git-svn-id: http://libyuv.googlecode.com/svn/trunk@204 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-06 20:18:27 +00:00
fbarchard@google.com
16a96645b4
splituv and mirroruv in row use 2 pixels at a time in C
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/432006
git-svn-id: http://libyuv.googlecode.com/svn/trunk@201 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-02 22:38:09 +00:00
fbarchard@google.com
f69e90a19e
mirror munging and avoid wait. scale addrows use 6 registers for mac
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/426007
git-svn-id: http://libyuv.googlecode.com/svn/trunk@200 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-03-02 19:07:15 +00:00
fbarchard@google.com
4e21867163
addrows improvements for general purpose down size box filter. scale sse avoid pushad. sub ecx before store to avoid wait
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/405007
git-svn-id: http://libyuv.googlecode.com/svn/trunk@191 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-02-28 00:29:02 +00:00
fbarchard@google.com
2d11d43a6e
shuffle functions so convert.h is all formats to I420 and convert_from.h is from I420 to all formats
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/395006
git-svn-id: http://libyuv.googlecode.com/svn/trunk@174 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-02-16 02:50:39 +00:00
fbarchard@google.com
42831e0aae
Mirror a plane at a time so each can check cpu/alignment independently
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/370001
git-svn-id: http://libyuv.googlecode.com/svn/trunk@148 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-01-21 02:54:17 +00:00
fbarchard@google.com
ba03e4d99e
Relax alignment checks especially when doing 2 step conversions
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/368004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@147 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-01-21 00:16:29 +00:00
fbarchard@google.com
0000a2ad52
.private_extern for OSX 32 bit but not for other platforms
...
BUG=none
TEST=build and run scale and rotate.
Review URL: http://webrtc-codereview.appspot.com/330014
git-svn-id: http://libyuv.googlecode.com/svn/trunk@119 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-12-21 18:30:15 +00:00
fbarchard@google.com
62e63b25ff
Remove .global from asm blocks to reduce external visibility
...
BUG=none
TEST=functions still build/link on 32 bit linux/osx
Review URL: http://webrtc-codereview.appspot.com/330011
git-svn-id: http://libyuv.googlecode.com/svn/trunk@116 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-12-21 00:04:04 +00:00
fbarchard@google.com
373cdbdc58
reorder stores for FastConvertYUVToABGRRow_SSSE3 and FastConvertYUVToBGRARow_SSSE3. ReverseRow_SSE2. cpu detect allow environment variable override set LIBYUV_DISABLE_SSSE3=1 set LIBYUV_DISABLE_SSE2=1. Reorder stores in rotate for core2
...
BUG=none
TEST=none
Review URL: http://webrtc-codereview.appspot.com/317010
git-svn-id: http://libyuv.googlecode.com/svn/trunk@107 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-12-14 21:10:07 +00:00
fbarchard@google.com
19a248ab63
fix for underscore on gcc 32 bit for linux
...
BUG=none
TEST=none
Review URL: http://webrtc-codereview.appspot.com/325001
git-svn-id: http://libyuv.googlecode.com/svn/trunk@102 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-12-12 20:21:52 +00:00
fbarchard@google.com
fe5ff7ed54
clang on linux prefers no args for rep movsl/stosl. ifdef for C that removes namespace. extern c allows c++ to be used to compile, including with namespace, but C program can link libyuv
...
BUG=none
TEST=none
Review URL: http://webrtc-codereview.appspot.com/320004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@101 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-12-10 07:45:58 +00:00
fbarchard@google.com
1d61cd91bb
mingw behaves like apple as far as labels go
...
BUG=none
TEST=none
Review URL: http://webrtc-codereview.appspot.com/322002
git-svn-id: http://libyuv.googlecode.com/svn/trunk@99 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-12-08 19:57:48 +00:00
frkoenig@google.com
e0bf6f0934
Fix build for OSX.
...
Clang defines __APPLE__, not OSX, use that
for platform specific code.
Removed spurious volatile that was giving a warning
when compiling for OSX.
Review URL: http://webrtc-codereview.appspot.com/305005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@98 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-12-07 01:54:13 +00:00
fbarchard@google.com
1c5136d069
use IS_ALIGNED for width and stride to avoid mod that generates 6 instructions
...
BUG=none
TEST=disassemble to confirm smaller/simplier alignment checks
Review URL: http://webrtc-codereview.appspot.com/287001
git-svn-id: http://libyuv.googlecode.com/svn/trunk@91 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-11-22 18:15:17 +00:00
fbarchard@google.com
12d048335d
I420Mirror rewrite, I420Copy movdqa, I444To420, I420To422
...
Review URL: http://webrtc-codereview.appspot.com/267025
git-svn-id: http://libyuv.googlecode.com/svn/trunk@89 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-11-21 23:54:38 +00:00
fbarchard@google.com
15c3d45cbe
Change WIN32 to _M_IX86 and use YUV_DISABLE_ASM consistently
...
BUG=none
TEST=none
Review URL: http://webrtc-codereview.appspot.com/277008
git-svn-id: http://libyuv.googlecode.com/svn/trunk@84 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-11-17 22:13:17 +00:00
fbarchard@google.com
2430e04e0a
fix internal compiler error on mac by removing const from vectors
...
BUG=none
TEST=compile on mac
Review URL: http://webrtc-codereview.appspot.com/266013
git-svn-id: http://libyuv.googlecode.com/svn/trunk@78 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-11-11 21:57:06 +00:00
fbarchard@google.com
eaedc1d727
remove mmx functions
...
BUG=none
TEST=builds
Review URL: http://webrtc-codereview.appspot.com/269010
git-svn-id: http://libyuv.googlecode.com/svn/trunk@77 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-11-11 18:41:47 +00:00
frkoenig@google.com
c82af4a59c
Order includes.
...
Use the following order.
local
system
libyuv
Review URL: http://webrtc-codereview.appspot.com/270007
git-svn-id: http://libyuv.googlecode.com/svn/trunk@76 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-11-11 00:54:34 +00:00
mikhal@webrtc.org
1b06484b4a
libyuv: clean up:
...
1. Removing libyuv:: when not needed
2. Test clean-up
Review URL: http://webrtc-codereview.appspot.com/279002
git-svn-id: http://libyuv.googlecode.com/svn/trunk@74 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-11-10 23:58:32 +00:00
fbarchard@google.com
f7a5048f54
align asm new line to column 48
...
BUG=none
TEST=builds
Review URL: http://webrtc-codereview.appspot.com/268008
git-svn-id: http://libyuv.googlecode.com/svn/trunk@73 16f28f9a-4ce2-e073-06de-1de4eb20be90
2011-11-10 22:41:20 +00:00
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